1、单片机课程设计单片机课程设计 1 单片机应用与仿真训练设计单片机应用与仿真训练设计报告报告 多机温度检测系统设计多机温度检测系统设计 2011 年 11 月 23 日 单片机课程设计单片机课程设计 2 摘要摘要 本设计是采用 AT89S52 单片机作为控制核心设计了温度测量系统, 该系统由 温度检测模块、微控制器模块、串口通信模块、数码管显示和报警模块等四部分 组成,能对 0100范围的温度进行测量,同时利用 4 位八段数码管可以实 时显示环境温度。 系统硬件电路包括传感器数据采集、温度显示、模式选择、上、下限报警主 电路等。整个装置的控制核心是 AT89S52 单片机。温度传感器 DS18B
2、20 采用外 部电源供电,传感器输出引脚直接和单片机相连。电路支持模式选择功能,可以 选择设定报警极限值或显示当前温度值。当被测温度越限时,报警主电路产生声 光报警。拨动开关可以对设定报警极限值进行写保护。采用 2 片单片机,组成多 机温度检测系统;下位单片机采集温度,通过串行通信传送至上位单片机;上位 单片机用数码管显示温度大小;基本范围 0100;精度误差小于 0.5;可 以任意设定温度的上下限报警功能。 该系统精度高、测温范围广、报警及时,可广泛应用于基于单片机的测温报 警场合。系统抗干扰性强、设计灵活方便,适合在恶劣的环境下进行温度测量。 关键词:AT89S52;DS18B20 温度传
3、感器;共阴极 LED 显示;报警 单片机课程设计单片机课程设计 3 摘要摘要.2 1 概述概述 4 1.1 下位机温度采集发送系统 . 4 1.2 上位机显示及报警系统 4 2 系统方案设计系统方案设计 5 2.1 主控制部分设计 . 5 2.2 传感器部分设计. 5 3.系统总体方案及硬件设计系统总体方案及硬件设计 .7 3.1 系统总体方案 7 3.2 系统总体方案图 . 7 3.3 系统各部分硬件电路设计 8 3.3.1 AT89S52单片机及最小相系统 8 3.3.2数据显示电路 9 3.3.3 数字温度传感器DS18B20 10 3.4 整体电路. 14 4 软件设计软件设计 15
4、4.1 概述 . 15 4.2 主程序方案 15 4.3DS18B20 的相处理子程序 16 4.3.1DS18B20初始化 16 DS18B20初始化子程序:. 16 4.3.2 DS18B20的写操作 17 4.3.3 DS18B20的读操作. 17 5.PROTEUS 软件仿真软件仿真 . 19 5.1 系统仿真环境 . 19 5.2 器件参数选取 . 19 5.3 仿真结果. 19 6.课程设计体会课程设计体会. 21 参考文献参考文献. 22 附件一:源程序代码 23 附件二:系统原理图. 30 单片机课程设计单片机课程设计 4 1 1 概述概述 1.1 1.1 下位机温度采集发送系
5、统下位机温度采集发送系统 下位机温度采集发送系统是本系统的主要核心之一,它的主要功能是采集 DS18B20 的温度数据,进行转换,并通过串口发送出去。该温度测量系统采用 8051 内核 Atmel 公司的 AT89S52 八位单片机。 温度采集发送系统由温度检测模块、下位控制器模块、发送放大模块三部 分组成,如图 1-1 温度测量系统的系统框图: 图 温度测量系统的系统框图 温度检测模块中温度传感器 DS18B20 采集温度数据,通过 P2.3 口传给下位 单片机, 微控制模块进行数据转换, 得出十进制温度值, 然后通过串行口经MAX232 将数据发送出去。 1.21.2 上位机显示及报警系统
6、上位机显示及报警系统 上位机系统的主要功能是接收下位机发送过来的温度数据,与报警温度进 行比较,判断是否发送报警信号,并同时直接驱动四位八段数码管进行显示。 上位机系统由串口接收模块、处理控制模块、数码管显示模块和报警模块 四部分组成,如图 1-2 上位机系统框图: 图 上位机系统框图 温度 采集 下位机 控制模块 发送放 大模块 处 理 控 制 串 口 接 收 数码管显示 报警控制模块 单片机课程设计单片机课程设计 5 串行口接收数据后进行判断是否报警,并由 P0 口和 P2.0P2.3 直接驱动 数码管显示温度数据。 报警控制模块通过按钮电路可以改变报警温度的上下限实 现系统的灵活功能。 2 2 系统方案设计系统方案设计 2.12.1 主控制部分设计主控制部分设计 方案一: 此方案采用 PC 机实现。它可在线编程,可在线仿真的功能,这让调试变得 方便。且人机交互友好。但是 PC 机输出信号不能直接与 DS18B20 通信。需要通 过 RS232 电平转换兼容,硬件的合成在线调试,较为繁琐,很不简便。而且在一 些环境比较恶劣的场