微机控制课程设计:基于DS18B20的温度控制系统

0 下载量 152 浏览量 更新于2024-06-28 收藏 472KB DOC 举报
"这是一份关于单片机课程设计的资料,主要涵盖了温度控制系统的实现,包括硬件电路设计、软件编程以及使用DS18B20数字温度传感器的数据采集。报告详细介绍了CPU如何与DS18B20通信,以及温度数据的显示方法,利用了74HC164移位寄存器进行LED动态显示。" 在单片机课程设计中,设计者黄兵斌构建了一个温度控制系统,该系统基于江西理工大学应用科学学院的微机控制课程。设计的核心在于使用DS18B20数字温度传感器,这是一种一线式传感器,能够提供-55°C至+125°C的宽温度测量范围,并且具有0.0625°C的高分辨率。DS18B20与单片机的通信需要遵循严格的时序和协议,包括初始化、ROM操作命令和存储器操作。在数据操作前,主机会对DS18B20进行复位,然后发送ROM指令,最后执行RAM指令来完成温度转换。 在硬件设计部分,DS18B20采用了三引脚PR-35封装,其Vcc连接外部+5V电源,GND接地,而I/O引脚与单片机的P1.4端口相连。这种设计减少了对微处理器端口的需求,简化了电路布局。 软件设计方面,温度数据的采集和处理是关键。DS18B20会将温度数据以16位补码的形式串行输出,CPU通过读取暂存器获取这些信息。具体操作包括启动温度转换、读取暂存器内容、写入暂存器以及复制暂存器。 显示模块使用了LED动态显示技术,共阴极的数码管通过74HC164移位寄存器进行控制。74HC164是一种8位串行输入、并行输出的移位寄存器,它的CLEAR端低电平时,所有输出为低电平。数据输入由A、B端控制,只有当A和B都为高电平时,新的数据才能在时钟脉冲上升沿时被接收并移位到输出端。通过这种方式,可以有效地节省单片机的I/O资源,同时实现多位数码管的动态显示。 总结来说,这份资料详细阐述了单片机如何实现温度控制系统的全过程,从传感器的选择、通信协议的解析,到数据处理和显示方案的设计,为学习单片机控制和嵌入式系统开发提供了宝贵的教学实例。