欢迎来到天天文库
浏览记录
ID:24564832
大小:653.50 KB
页数:22页
时间:2018-11-15
《基于单片机的数字温度计设计(含程序、仿真图)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于单片机的数字温度计设计1引言随着现代信息技术的飞速发展和传统工业改造的逐步实现.能够独立工作的温度检测和显示系统应用于诸多领域。传统的温度检测以热敏电阻为温度敏感元件。热敏电阻的成本低,但需后续信号处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差。与传统的温度计相比,这里设计的数字温度计具有读数方便,测温范围广,测温精确,数字显示,适用范围宽等特点。选用AT89C51型单片机作为主控制器件,DSl8B20作为测温传感器通过4位共阳极LED数码管串口传送数据,实现温度显示。通过DSl8B20直接读取被测温度值,进行数据转换,该器件的物理化学性能
2、稳定,线性度较好,在0℃~100℃最大线性偏差小于0.1℃。该器件可直接向单片机传输数字信号,便于单片机处理及控制。另外,该温度计还能直接采用测温器件测量温度,从而简化数据传输与处理过程。2系统硬件设计方案根据系统功能要求,构造图1所示的系统原理结构框图。图1系统原理结构框图2.1单片机的选择AT89C51作为温度测试系统设计的核心器件。该器件是INTEL公司生产的MCS一5l系列单片机中的基础产品,采用了可靠的CMOS工艺制造技术,具有高性能的8位单片机,属于标准的MCS—51的CMOS产品。不仅结合了HMOS第21页共22页的高速和高密度技术及CHMOS的低功
3、耗特征,而且继承和扩展了MCS—48单片机的体系结构和指令系统。单片机小系统的电路图如图2所示。图2单片机小系统电路AT89C51单片机的主要特性:(1)与MCS-51兼容,4K字节可编程闪烁存储器;(2)灵活的在线系统编程,掉电标识和快速编程特性;(3)寿命为1000次写/擦周期,数据保留时间可10年以上;(4)全静态工作模式:0Hz-33Hz;(5)三级程序存储器锁定;(6)128*8位内部RAM,32可编程I/O线;(7)两个16位定时器/计数器,6个中断源;(8)全双工串行UART通道,低功耗的闲置和掉电模式;(9)看门狗(WDT)及双数据指针;(9)片内
4、振荡器和时钟电路;2.2温度传感器介绍DS18B20可以程序设定9~12位的分辨率,精度为±0.5°C。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EPROM第21页共22页中,掉电后依然保存。温度传感器DS18B20引脚如图3所示。8引脚封装TO-92封装图3温度传感器引脚功能说明:NC:空引脚,悬空不使用;VDD:可选电源脚,电源电压范围3~5.5V。当工作于寄生电源时,此引脚必须接地。DQ:数据输入/输出脚。漏极开路,常态下高电平。GND:为电源地DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的
5、温度报警触发器TH和TL、配置寄存器。光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。第21
6、页共22页这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM,后者存放高温度和低温度触发器TH、TL
7、和结构寄存器。暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位,第二个字节是温度的高八位。第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。第六、七、八个字节用于内部计算。第九个字节是冗余检验字节。该字节各位的意义如下:TMR1R011111低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如表1所示:(DS18B20出厂时被设置为12位)表
8、1DS18
此文档下载收益归作者所有