3 系统硬件电路设计
3.1 系统功能模块划分
根据系统功能要求,可大致画出系统所需硬件结构框图如图3-1所示:
图3-1 系统功能模块图
主控模块采用性价比较高的STC12C5A60S2单片机芯片,在其内部烧写好程序,可通过程序的运行控制测温模块进行测温;测温模块主要是由DS18B20构成,将其与所测对象进行接触即可获取被测对象的温度数据,而所测得的温度和时钟芯片测得的实时日历将通过显示模块的液晶显示器以数字形式显示;单片机调用程序,读取DS1302内寄存器,可以得到万年历的时间数据,经过程序处理就可以输出在LCD上;键盘电路可对实时日历进行调整;人体红外感应模块可以检测人体,当有人靠近时,就能打开LCD背光;蜂鸣器可以在闹钟定时中,作为声音提醒。
3.2 各单元模块功能分析及模块电路设计
3.2.1 时钟模块
DS1302的工作原理和单片机的接口:
6
DS1302为美国DALLAS公司的一种实时时钟芯片,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用32.768Hz晶振。它可以对年、月、日、星期、时、分、秒进行计时,且具有闰年补偿等多种功能。DS1302 用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录。这种记录对长时间的连续测控系统结果的分析以及对异常数据出现的原因的查找有重要意义。在本设计中,它的实际电路图如图3-2所示:
图3-2 DS1302与单片机的连接
DS1302需要外接32.768K的晶振,1号引脚接主电源VCC(5V)电源,8号引脚
接备用电池(3V),当主电源掉电后,备用电源为DS1302提供电源,维持DS1302内数据不丢失,这正是时钟芯片所必须的特性。
3.2.2 温度模块
传统的温度传感器系统大都采用放大、调理、A/D转换,转换后的数字信号送入计算机处理,处理电路复杂、可靠性相对较差,占用计算机的资源比较多,本设计测温模块采用一线制总线数字温度传感器DS18B20,可将温度信号直接转换成数字信号送给微处理器,电路简单,成本低,其电路原理图如图3-3所示:
7
图3-3 DS18B20温度模块
从图中可看出,将温度传感器的一线制总线通过端口2与本设计主控芯片STC12C5A6S2的端口标号为DS18B20的相连即可实现相互之间的通信。设计中的测温元件采用的是DS18B20测温元件,DS18B20是由DALLAS(达拉斯)公司生产的一种温度传感器。超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强,使得DS18B20很受欢迎。这是世界上第一片支持―一线总线‖接口的温度传感器。DS18B20数字温度计提供9位(二进制)温度读数,指示器件的温度。信息经过单线接口送入DS18B20或从DS18B20送出,因此从单片机到DS18B20仅需一条线连接即可。它可在1秒钟(典型值)内把温度变换成数字。 3.2.2.1 DS18B20的主要特征 1)DS18B20的主要特征: ①全数字温度转换及输出; ②先进的单总线数据通信;
③最高12位分辨率,精度可达土0.5℃; ?④12位分辨率时的最大工作周期为750毫秒; ?⑤可选择寄生工作方式;
?⑥检测温度范围为–55℃——+125℃; ?⑦内置EEPROM,限温报警功能;
?⑧64位光刻ROM,内置产品序列号,方便多机挂接; ?⑨多样封装形式,适应不同硬件系统。 2)DS18B20芯片其封装结构如下:
8
图3-4 DS18B20芯片封装图
由其引脚可看出,其3个引脚: GND为电压地直接接地;DQ为单数据总线用来与单片机相连接,本系统中DS与单片机P2.2接口连接,仅此一个连接就能保证DS18B20与单片机之间的数据交换;VDD引脚接电源电压。 3.2.2.2 DS18B20的工作原理
DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。一个工作周期可分为两个部分,即温度检测和数据处理。
DS18B20共有三种形态的存储器资源,分别是:ROM 只读存储器,用于存放DS18B20ID编码,其前8位是单线系列编码(DS18B20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56位的CRC码(冗余校验)。数据在出产时设置不由用户更改。DS18B20共64位ROM, RAM 数据暂存器,用于内部计算和数据存取,数据在掉电后丢失,DS18B20共9个字节RAM,每个字节为8位。第1、2个字节是温度转换后的数据值信息,第3、4个字节是用户EEPROM(常用于温度报警值储存)的镜像。在上电复位时其值将被刷新。第5个字节则是用户第3个EEPROM的镜像。第6、7、8个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是内部温度转换、计算的暂存单元。第9个字节为前8个字节的CRC码。EEPROM 非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,DS18B20共3位EEPROM,并在RAM都存在镜像,以方便用户操作。我们在每一次读温度之前都必须进行复杂的且精准时序的处理,因为DS18B20的硬件简单结果就会导致软件的巨大开消。
9
3.2.3 显示模块
本设计显示模块主要采用LCD12864液晶显示器,其电路原理图如下:
图3-5 LCD12864模块
LCD12864液晶显示器通过数据端口也即端口7~14与主控芯片STC12C5A60S2的I/O端口P2相连接实现数据与指令的传输,再通过控制端口RS、RW、EN也即端口4~6与主控芯片P3.6,P3.7,P4.0端口相接实现对数据和指令传输的控制 。显示模块采用12864液晶显示器可实现对温度和时间的直接显示,清晰明了。 3.2.3.1 LCD12864的特征
带中文字库的LCD12864是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块其显示分辨率为128×64, 内置8192个16*16点汉字和128个16*8 点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字,也可完成图形显示。低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简得多,且该模块的价格也略低于相同点阵的图形液晶模块。其基本特性如下:
??1低电源电压(VDD:+3.0-+5.5V) ○
??2显示分辨率:128×64点 ○
??3内置汉字字库,提供8192个16×16点阵汉字(简繁体可选) ○
10