基于单片机的智能家居控制系统的研究与设计毕业设计论文 下载本文

第3章 智能家居的硬件系统设计

在很多场合可以替代51系列单片机。

(3)PIC系列:PIC最大的特点是不搞单纯的功能堆积,而是从实际出发,重视产品的性能与价格比,靠发展多种型号来满足不同层次的应用要求。

(4)ARM系列:ARM单片机是以ARM处理器为核心的一种单片微型计算机,是近年来随着电子设备智能化和网络化程度不断提高而出现的新兴产物。ARM单片机以其低功耗和高性价比的优势逐渐步入高端市场,成为了时下的主流产品。ARM单片机采用了新型的32位ARM核处理器,使其在指令系统,总线结构,调试技术,功耗以及性价比等方面都超过了传统的51系列单片机,同时arm单片机在芯片内部集成了大量的片内外设,所以功能和可靠性都大大提高。

考虑到本设计所需要的内存和I/O口数量,以及单片机的价格,综合各方面因素,本设计采用了ST公司生产的8位微控制器STM8,ST的8位微控制器平台基于高性能8位内核,配有先进的成套外设[12]。该平台采用ST的130 nm 嵌入式非易失性存储器专有技术。STM8通过增强型堆栈指针运算、先进的寻址模式和新指令实现快速、安全的开发。功能包括10位模数转换器,最多有16条通道,转换用时小于3微秒;先进的16位控制定时器可用于马达控制、捕获/比较和PWM功能。其它外设包括一个CAN2.0B接口、两个U(S)ART接口、一个I2C端口、一个SPI端口。STM8单片机如图3-11所示。

图3-11 STM8实物图

23

燕山大学本科生毕业设计(论文)

3.3 数据采集部分

本设计的数据采集由三个传感器模块和一个摄像头图像采集模块来完成,分别是DHT11数字温湿传感器、MQ-2烟雾检测传感器、MS1100甲醛检测传感器和OV7670图像传感器。

DHT11的数据输出端直接输出数字信号,可与单片机处理器直接传输,而MQ-2和MS1100具有双路输出:TTL输出和模拟信号输出,TTL输出端输出的是数字信号0或1,当测得的浓度值高于所设定的浓度值时,TTL输出低电平,即0,否则为1[13]。但是,TTL输出端输出的信号不能实时监测气体浓度,因此在本设计中,采用模拟信号输出端来收集数据信号,经过单片机内部的模数转换ADC信号通道,将信号转化为相应的浓度值数字,方便显示在显示屏上。

数据采集部分的电路连接图如3-12。如图中,各模块的电源和接地引脚均采用网络标号的方法表示连线,以避免线路交叉过多,不方便查看,同样,下文中的电路图也采用这种标注方法。

3.4 显示电路设计

本设计采用的显示器件是TM1638数码管和蓝屏LCD12864来显示数据。TM1638负责实时显示室内的温湿度等数字的显示部分,而LCD12864负责短信收发时,实时显示控制的实现流程。

3.4.1 TM1638数码管

首先介绍一下TM1638数码管。TM1638数码显示管是带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集成有MCU数字接 口、数据锁存器、LED高压驱动、键盘扫描等电路。主要应用于冰箱、空调、家庭影院等产品的高段位显示驱动。

24

第3章 智能家居的硬件系统设计

图3-12 数据采集部分的电路连接

TM1638数码管的管脚说明如表3-6所示。

符号 DIO STB

表3-6 TM1638数码管的管脚说明

管脚名称

数据输出/输入

片选

说明

在时钟上升沿输入/输出串行数据,从低位开始 在上升或下降沿初始化串行接口,随后等待接收指令。STB 为低后的第一个字节作为指令,当处理指令时,当前其它处理被终止。当STB 为高时,CLK 被忽

略 上升沿输入/输出串行数据 输入该脚的数据在显示周

期结束后被锁存

段输出(也用作键扫描),P

管开漏输出

段输出,P管开漏输出 位输出,N管开漏输出

5V±10% 接系统地

CLK K1~K3

SEG1/KS1~SEG8/KS8

SEG9~SEG10 GRID1~GRID8

VDD GND

时钟输入 键扫描数据输入 输出(段) 输出(段) 输出(位) 逻辑电源 逻辑地

25

燕山大学本科生毕业设计(论文)

TM1638数码管的显示寄存器地址如表3-7所示。

表3-7 TM1638数码管的显示寄存器地址

×

×

×

×

×

×

×

xxHL(低四位) xxHU(高四位) xxHL(低四位) xxHU(高四位)

B0

B1

B2 00HL 02HL 04HL 06HL 08HL 0AHL 0CHL 0EHL

B3

B4

B5

B6 00HU 02HU 04HU 06HU 08HU 0AHU 0CHU 0EHU

B7

B0

B1

B2 01HL 03HL 05HL 07HL 09HL 0BHL 0DHL 0FHL

B3

B4

B5

B6 01HU 03HU 05HU 07HU 09HU 0BHU 0DHU 0FHU

B7

GRID1 GRID2 GRID3 GRID4 GRID5 GRID6 GRID7 GRID8

TM1638数码管的键扫描和键扫数据寄存器:

键扫数据储存地址如表3-8所示,先发读键命令后,开始读取按键数据BYTE1—BYTE4字节,读数据从低位开始输出;芯片K和KS引脚对应的按键按下时,相对应的字节内的 BIT位为1。

表3-8 键扫数据储存地址

B0 K3

B1 K2 KS1 KS3 KS5 KS7

B2 K1

B3 X

B4 K3 KS2 KS4 KS6 KS8

B5 K2

B6 K1

B7 X BYTE1 BYTE2 BYTE3 BYTE4

M1638数码管的指令说明如表3-9所示。

26