数字式温度计设计说明书概要.doc
《数字式温度计设计说明书概要.doc》由会员分享,可在线阅读,更多相关《数字式温度计设计说明书概要.doc(15页珍藏版)》请在三一办公上搜索。
1、学习情境三数字式温度计制作与调试说明书电子1034班组别:第四组 组员:XXXXXX 2012年3月8日目录一、工作任务- 3 -二、总体设计思路- 3 -2.1整体功能说明- 3 -2.2总体框图- 3 -三、硬件设计- 3 -3.1硬件模块组成- 3 -3.2各模块说明- 3 -1)主控制器- 3 -2)显示驱动与显示电路- 4 -3)测温模块- 4 -4)报警电路- 4 -5)复位电路- 5 -四、软件设计- 5 -4.1程序结构- 5 -4.2各模块说明及流程图- 6 -1)主程序流程图- 6 -2)读出温度子程序流程图- 6 -3)显示数据刷新子程序流程图- 7 -4)计算温度子程序
2、流程- 7 -5)温度转换命令子程序流程图- 8 -4.3程序清单- 8 -五、调试过程- 13 -5.1调试方法与步骤- 13 -5.2调试结果- 13 -六、附件- 14 -一、 工作任务开发完成一个简易的数字式温度计。二、 总体设计思路2.1整体功能说明开发完成一个简易的数字式温度计。测温范围在55125,误差在0.5以内。温度测量间隔时间选择12s。通过键盘扩展(行列式或独立式按键),有温度上下限值及温度报警功能。在数字式温度计的制作中主要以51单片机(AT89C51)来控制,用温度传感器检测外界的温度,软件的显示子程序用四位一体数码管显示出来,精确到1位小数点,在超出测温范围时,进行
3、报警功能。2.2总体框图三、硬件设计3.1硬件模块组成本电路由单片机,测温电路,复位电路,报警电路,显示驱动与显示电路等组成了数字式温度计。3.2各模块说明1) 主控制器:单片机AT89C51具有低电压和小体积等特点,两个端口刚好满足系统的设计需要痕适合便携手持式产品的设计使用。2)显示驱动与显示电路:采用共阳四位LED数码管,用三极管做驱动3)测温模块:DS18B20温度传感器是智能温度传感器,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现912位的数字值读数方式。4)报警电路:运用直流的蜂鸣器,发光二极管组成,用于电路在超限的情况下发出光报警,也可通过取反来实现电路的闪烁报警。
4、5)复位电路:采用按键手动复位电路,外接电容电阻与点动开关。四、软件设计4.1程序结构软件设计分为主程序、读出温度子程序、温度转换命令子程序、计算温度子程序和显示数据刷新子程序 4.2各模块说明及流程图1)主程序流程图说明:主程序的主要 功能是负责温度的实时显示、读出并处理 DS18B20 的测量温度值温度测量每1s进行一次。 这样可以在1s之内测量一次被测温度。2)读出温度子程序流程图读出温度子程序的主要功能是读出 RAM 中的 9 字节。在读出时须进行 CRC 校验,校验有错时不进行温度数据的改写。 发出DS18B20复位命令发出读取温度命令移入温度暂存器发出跳过ROM命令读取操作,CRC
5、校验9字节完?CR3校验正确结束YYNN3)显示数据刷新子程序流程图显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高数据显示位为0时,将符号显示位移入下一位。4)计算温度子程序流程计算温度子程序将 RAM 中读取值进行 BCD 码的转换运算,并进行温度值正负的判定。5)温度转换命令子程序流程图温度转换命令子程序主要是发温度转换开始命令。当采用 12 位分辨率时,转换时间约为 750 ms 。在本程序设计中,采用 1s显示程序延时法等待转换的完成。4.3程序清单;*; 常数定义;* TIMEL EQU 0E0H ;20MS,定时器 0 时间常数 TIMEH EQU 0B1H
6、; TEMPHEAD EQU 36H ;*; 工作内存定义;* BITST DATA 20H TIME1SOK BIT BITST.1 TEMPONEOK BIT BITST.2 TEMPL DATA 26H TEMPH DATA 27H TEMPHC DATA 28H TEMPLC DATA 29H;*; 引脚定义;* TEMPDIN BIT P3.4;* ORG 0000H AJMP MAIN ORG 0003H AJMP INT_0 ORG 000BH DJNZ R6, $ ; MOV R6,#3CHLOOP1820: MOV C, TEMPDIN ; JC INITDS1820OUT
7、; DJNZ R6,LOOP1820 MOV R6, #064H ; DELAY 200us DJNZ R6, $ ; SJMP INITDS1820 ; RET ;INITDS1820OUT: SETB TEMPDIN ; RET ;读DS18B20的程序, 从DS18B20中读出一个字节的数据READDS1820: MOV R7, #08H ; SETB TEMPDIN ; NOP ; NOP ;READDS1820LOOP: CLR TEMPDIN ; NOP ; NOP ; NOP ; SETB TEMPDIN ; MOV R6, #07H ; DELAY 15us DJNZ R6,
8、$ ; MOV C, TEMPDIN ; MOV R6, #3CH ; DELAY 120us DJNZ R6, $ ; RRC A ; SETB TEMPDIN ; DJNZ R7, READDS1820LOOP MOV R6, #3CH ; DELAY 120us DJNZ R6, $ ; RET ; 写DS18B20的程序, 从DS18B20中写一个字节的数据WRITEDS1820: MOV R7, #08H ; SETB TEMPDIN ; NOP ; NOP ;WRITEDS1820LOP: CLR TEMPDIN ; MOV R6, #07H ; DELAY 15us DJNZ R
9、6, $ ; RRC A AJMP T_B ORG 0013H AJMP INT_1 ORG 0030H MAIN:MOV TMOD,#00H MOV TH0,#63H MOV TL0,#18H MOV R5,#100 SETB 07H SETB IT0 SETB IT1 SETB EX0 SETB EX1 SETB ET0 SETB EA SETB TR0 LCALL READTEMP LOOP:LCALL CF LCALL DIS AJMP LOOP T_B: MOV TH0,#63H MOV TL0,#18H DJNZ R5,LOOP8 MOV R5,#100 LCALL READTEM
10、P LCALL READTEMP1 CALL CONVTEMP LOOP8:RETI INT_0: CLR 05H INT_1: JB 05H,;*; 子程序区;*; RESET DS18B20;*INITDS1820: SETB TEMPDIN ; NOP ; NOP ; CLR TEMPDIN ; MOV R6, #0A0H ; DELAY 480us DJNZ R6, $ MOV R6, #0A0H DJNZ R6, $ ; SETB TEMPDIN ; MOV R6, #32H ; DELAY 70usCRC8CAL: PUSH ACC ; MOV R7, #08H ; Number
11、Bits In ByteCRC8LOOP1: XRL A, B ; Calculate CRC RRC A ; Move To Carry MOV A, B ; Get The Last CRC Value JNC CRC8LOOP2 ; Skip If Data = 0 XRL A, #18H ; Update The CRC ValueCRC8LOOP2: RRC A ; Position The New CRC MOV B, A ; Store The New CRC POP ACC ; Get The Remaining Bits RR A ; Position The Next Bi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字式 温度计 设计 说明书 概要
链接地址:https://www.31ppt.com/p-4281810.html