温传感器DS18B20可以直接读出被测温度值采用三线制和单片机相连少了外部的硬件电路具有低成本和易使用的特点。
2
f单片机原理及系统课程设计报告
34总设计图
数字温度计系统的硬件总设计图如图3所示。
LCD1
LM016L
VSSVDDVEE
RSRWEp30456
123
C1
191
F
U1X1
CRYSTAL18XTAL1P00AD0P01AD1P02AD2P03AD3P04AD4P05AD5P06AD6P07AD7P20A8P21A9P22A10P23A11P24A12P25A13P26A14P27A15P30RXDP31TXDP32INT0P33INT1P34T0P35T1P36WRP37RD393837363534333221222324252627281011121314151617p20p21p22p23p24p25p26p27p30p37321
C2C3
1
F1uF
XTAL2
9
RST
R1Q1
10k293031PSENALEEA
MPS3702
LS1
12345678
P10T2P11T2EXP12P13P14P15P16P17AT89C52
p207p218p229p2310p2411p2512p2613p2714
D0D1D2D3D4D5D6D7
U2
VCCDQGNDDS18B20120
p37
SOUNDER
D1
LEDGREEN
图3总设计图
4数字温度计系统的软件设计及系统整体流程
整个系统的功能是由硬件电路配合软件来实现的,从软件的功能不同,可以分为两类:主程序和子程序。主程序是整个软件的核心,专门用来协调各个执行模块和操作者的联系。子程序是用来完成各种实质性的工作的,如读温度子程序、转换温度子程序、计算温度子程序等。各执行模块规划好以后,就可以规划监控软件了。首先要根据系统的总体功
3
f单片机原理及系统课程设计报告
能选择一种最合适的主程序结构,然后根据实时性的条件,合理安排监控软件和执行软件之间的调度关系。
41总体流程图
数字温度计系统总体流程图如图4所示。
图4主流序流程图
42子程序流程图
数字温度计系统子程序主要包含:读温度子程序、转换温度子程序、计算温
4
f单片机原理及系统课程设计报告
度子程序。(1)读温度子程序流程图读温度子程序流程图如图5所示。
开始
发DS18B20复位命令
发送ROM命令
发读取温度命令
读取操作
否9字节完?是否CRC校验正?是移入温度暂存器
结束
图5读温度子程序流程图
5
f单片机原理及系统课程设计报告
(2)转换温度子程序流程图转换温度子程序流程图如图6所示。
开始
发DS18B20复位命令
发跳过ROM命令
发温度转换开始命令
结束
图6转换温度子程序流程图
(3)计算温度子程序流程图计算温度子程序流程图如图7所示。
开始
温度零下?是温度值取补码置“”标志
否
温度置“”标志
计算小数位温度BCD值
计算整数位温度BCD值
结束
图7计算温度子程序流程图
6
f单片机原理及系统课程设计报告
5仿真结果
1正常温度显示温度计正常温度显示如图8所示。
LCD1
LM0r