




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数字温度计设计方案方案设计;设计规定LED数码管可以正常显示测试的温度。误差;±0.5℃。范围:-30℃~LED数码管直读显示,当温度为“负”,则显示负号。所用材料温度传感器DS18B20一种,AT89C52一种,四位共阳极数码管1个,电阻电容及导线若干。方案确定;
方案一:采用热敏电阻,可满足40摄氏度至90摄氏度测量范围,但热敏电阻精度、反复性、可靠性较差,对于检测不不小于1摄氏度的信号是不合用的。
方案二:采用温度传感器DS18B20。DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为0.5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用以便。
基于DS18b20的以上长处,我们决定选用DS18b20来测量温度。测量原理图如下;
工作原理:
运用单片机STC89C52单片机作为本系统的中控模块。单片机可把由DS18B20读来的数据运用软件来进行处理,从而把数据传播到LED数码管显示模块中,实现温度的显示。单片机模型图如下;温度测量传感器采用DALLAS企业DS18B20的单总线数字化温度传感器,测温范围为-55℃~125℃,精度;±0.5℃。可编程为9位~12位A/D转换精度,辨别率9~12Bbit测温辨别率到达0.0625℃,工作电源。3~5v;采用寄生电源工作方式,CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路DS18B20传感器模型图如下。LEDL温度传感器DS18B20温度传感器是美国DALLAS半导体企业推出的一种改善型智能温度传感器,与老式的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际规定通过简朴的编程实现9~12位的数字值读数方式。2.3.1DS18B20的性能特点如下:●独特的单线接口仅需要一种端口引脚进行通信;●多种DS18B20可以并联在惟一的三线上,实现多点组网功能;●不必外部器件;●可通过数据线供电,电压范围为3.0~5.5V;●零待机功耗;●温度以9或12位数字;●顾客可定义报警设置;●报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;2.3.2DS18B20详细引脚功能描述见下表。序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。2.3.3通信过程:(1)主机拉低单总线至少480us产生复位脉冲;(2)主机释放单总线,进入接受模式,释放时产生上升沿;(3)单总线器件检测到上升沿,延时15-60us;(4)单总线器件通过拉低总线60-240us来产生应答脉冲;(5)主机接受应答信号,对从机ROM进行命令和功能命令操作;所有读写时序至少60us,两个独立的时序间至少1us答复时间。2.3.4DS18B20的基本参数DS18B20的64位ROM的构造开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最终8位是前面56位的CRC检查码,这也是多种DS18B20可以采用一线进行通信的原因。温度报警触发器TH和TL,可通过软件写入户报警上下限。DS18B20温度传感器的内部存储器还包括一种高速暂存RAM和一种非易失性的可电擦除的EERAM。高速暂存RAM的构造为8字节的存储器,构造如图3所示。头2个字节包括测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换辨别率。DS18B20工作时寄存器中的辨别率转换为对应精度的温度数值。该字节各位的定义如图3所示。低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,顾客要去改动,R1和R0决定温度转换的精度位数,来设置辨别率。温度LSB温度MSBTH顾客字节1TL顾客字节2配置寄存器保留保留保留CRC
图3DS18B20字节定义由表2可见,DS18B20温度转换的时间比较长,并且辨别率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将辨别率和转换时间权衡考虑。高速暂存RAM的第6、7、8字节保留未用,体现为全逻辑1。第9字节读出前面所有8字节的CRC码,可用来检查数据,从而保证通信数据的对的性。当DS18B20接受到温度转换命令后,开始启动转换。转换完毕后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625当符号位S=0时,表达测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表达测得的温度值为负值,要先将补码变成原码,再计算十进制数值。表2是一部分温度值对应的二进制温度数据。表2DS18B20温度转换时间表DS18B20完毕温度转换后,就把测得的温度值与RAM中的TH、TL字节内容作比较。若T>TH或T<TL,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令作出响应。因此,可用多只DS18B20同步测量温度并进行报警搜索。在64位ROM的最高有效字节中存储有循环冗余检查码(CRC)。主机ROM的前56位来计算CRC值,并和存入DS18B20的CRC值作比较,以判断主机收到的ROM数据与否对的。DS18B20的测温原理是这这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显变化,所产生的信号作为减法计数器2的脉冲输入。器件中尚有一种计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数进而完毕温度测量。计数门的启动时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的一种基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在-55减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就反复上述过程,直到温度寄存器值大体被测温度值。表3一部分温度对应值表温度/℃二进制表达十六进制表达+125000001111101000007D0H+8500000101010100000550H+25.062500000001100100000191H+10.125000000001010000100A2H+0.500000000000000100008H000000000000010000000H-0.51111111111110000FFF8H-10.1251111111101011110FF5EH-25.06251111111001101111FE6FH-551111110010010000FC90H此外,由于DS18B20单线通信功能是分时完毕的,它有严格的时隙概念,因此读写时序很重要。系统对DS18B20的多种操作按协议进行。操作协议为:初使化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图4所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一种MOSFET管来完毕对总线的上拉。当DS18B20处在写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉启动时间最大为10us。采用寄生电源供电方式时VDD端接地。由于单线制只有一根线,因此发送接口必须是三态的。LED数码管。采用SM410564.四位数码管。2.2显示电路显示电路采用两只4位共阳极LED数码管和数码管的驱动芯片74LS245。二、硬件设计1、单片机最小系统最小系统包括晶体振荡电路、复位开关和电源部分。图为STC89C52单片机的最小系统。
工作原理:运用单片STC89C52单片机作为本系统的中控模块。单片机可把由74LS138读来的数据运用软件来进行处理,从而把数据传播到显示模块,实现中文胡显示。点阵LED电子显示屏显示屏为重要的显示模块,把单片机传来的数据显示出来。三、软件的设计及仿真1、仿真图2、流程图main: lcallreadtemp lcalltemptohex lcalldisplay ljmpmaintempto1: MOVLED1,#0BH tempto2: mova,temp_H anla,#00000111b movb,a mova,temp_L anla,#11110000b orla,b swapa movb,#100 divab jztempto3 movLED1,#1tempto3: mova,#10 xcha,b divab movLED2,a movLED3,b mova,temp_L anla,#0fh movdptr,#tab1 movca,@a+dptr movLED4,a retdisplay: mova,LED1 movdptr,#tab movca,@a+dptr movseg,a movcom,#7fh lcalldelay movcom,#0ffh ;movseg,#0ffh mova,LED2 ;movdptr,#tab movca,@a+dptr movseg,a movcom,#0bfh lcalldelay movcom,#0ffh ;movseg,#0ffh mova,LED3 ;movdptr,#tab movca,@a+dptr anla,#7fh movseg,a movcom,#0dfh lcalldelay movcom,#0ffh ;movseg,#0ffh mova,LED4 movdptr,#tab movca,@a+dptr movseg,a movcom,#0efh lcalldelay movcom,#0ffh ;movseg,#0ffh3、程序部分seg equ p0 com equ p1 DQ equ p2.0 R_COM EQU 50HLED1 equ 40h LED2 equ 41h LED3 equ 42h Led4 equ 43h count1 equ 44h count2 equ 45h temp_H equ 46htemp_L equ 47h org0000h ljmpstart org0030hstart: movLED2,#2 movLED3,#8 movLED4,5 movLED1,#11 movseg,#0fh movcom,#00hmain: lcallreadtemp lcalltemptohex lcalldisplay ljmpmaintemptohex: mova,temp_H anla,#11111000b jztempto1 movLED1,#0Ah mova,temp_L cpla adda,#01h movtemp_L,a mova,temp_H cpla addca,#00h movtemp_H,a ljmptempto2tempto1: MOVLED1,#0BH tempto2: mova,temp_H anla,#00000111b movb,a mova,temp_L anla,#11110000b orla,b swapa movb,#100 divab jztempto3 movLED1,#1tempto3: mova,#10 xcha,b divab movLED2,a movLED3,b mova,temp_L anla,#0fh movdptr,#tab1 movca,@a+dptr movLED4,a retreadtemp: lcallint mova,#0cch lcallwrite mova,#44h lcallwrite lcallint mova,#0cch lcallwrite mova,#0beh lcallwrite lcallread movtemp_L,a lcallread movtemp_H,a retint: clrDQ movcount1,#250l1: djnzcount1,l1 setbDQ movcount1,#30l2: djnzcount1,l2 clrc orlc,DQ jcint movr6,#80l3: orlc,DQ jcl4 djnzr6,l3 sjmpintl4: movcount1,#240l5: djnzcount1,l5 retwrite: movcount1,#8wr1: setbDQ movcount2,#8 rrca clrDQwr2: djnzcount2,wr2 movDQ,c movcount2,#20wr3: djnzcount2,wr3 djnzcount1,wr1 setbDQ retread: movcount1,#8re1: clrDQ movcount2,#4 nop setbDQre2: djnzcount2,re2 movc,DQ rrca movcount2,#30re3: djnzcount2,re3 djnzcount1,re1 setbDQ retdisplay: mova,LED1 movdptr,#tab movca,@a+dptr movseg,a movcom,#7fh lcalldelay movcom,#0ffh ;movseg,#0ffh mova,LED2 ;movdptr,#tab movca,@a+dptr movseg,a movcom,#0bfh lcalldelay movcom,#0ffh ;movseg,#0ffh mova,LED3 ;movdptr,#tab movca,@a+dptr anla,#7fh movseg,a movcom,#0dfh lcalldelay movcom,#0ffh ;movseg,#0ffh mova,LED4 movdptr,#tab movca,@a+dptr movseg,a movcom,#0efh lcalldelay
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 母婴护理初级复习试题含答案(一)
- 高级育儿试卷复习测试卷含答案
- 环保行业运营流程优化作业指导书
- 护师及主管护师练习卷含答案
- 奶茶店品牌评估营销手册
- 项目开发进度管理与计划安排
- 分析法律制定中权利约束边界
- 员工培训计划与实施细则
- 医疗敷料贴合度提高方法
- 三农村环境治理综合方案
- 2025年高考作文素材积累之《人民日报》4篇经典时评结构赏析
- 卫星定位导航原理知到智慧树章节测试课后答案2024年秋哈尔滨工业大学
- 研究生学术英语写作 课件 Chapter 7 Abstract;Chapter 8 Citation and Reference
- ISO45001管理体系培训课件
- 心力衰竭患者利尿剂抵抗诊断及管理中国专家共识2024解读
- 主任临床查房程序规范及评分标准
- 《望海潮》《扬州慢》导学案(含答案) 统编版高中语文选择性必修下册
- 土壤有机质的测定 编制说明
- 蒋诗萌小品《谁杀死了周日》台词完整版
- 医美机构转让合同模板
- 全国基层退役军人服务中心(站)工作人员职业技能竞赛考试题库-上(单选、多选题)
评论
0/150
提交评论