已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目 录1.课程设计的目的和要求11.1设计目的11.2课程设计题目描述和要求12.总体方案设计12.1总体设计框图12.2单片机AT89C51 22.3软件的设计32.3.1 DS18B20简介32.3.2 DS18B20的测温原理42.3.3温度转换计算方法举例52.3.4 DS18B20温度传感器与单片机的接口电路53.系统硬件电路设计63.1主板电路63.2显示电路74.系统软件的设计84.1主程序84.2读程序84.3温度转换命令子程序94.4计算温度子程序94.5显示数据刷新子程序95.总结11参考文献121.课程设计的目的和要求1.1设计目的熟练掌握51小系统开发应用;加强单片机的综合运用能力、提高单片机的件编程和调试能力,为以后的学习和开发工作打下强劲基础;掌握DS18B20温度传感器模块的工作原理及应用设计;掌握小系统开发设计的流程及设计思路;提高分析问题,解决问题能力,提高实践动手能力。1.2课程设计题目描述和要求题目:基于DS18B20的温度测试LED显示。实现的基本功能:(1) 测量基本范围-55125。(2) 精度误差小于0.5。(3) LED数码直接显示。2.总体方案的设计2.1总体设计框图 温度计电路设计总体设计方框图如图2-1所示,控制器采用单片机AT89C51,温度传感器采用DS18B20,用LED数码管以串口传送数据实现温度显示。图2-1 总体设计方框图2.2单片机AT89C51AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及89C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。 AT89C51具有如下特点:40个引脚如图2-2,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。 此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。图2-2 AT89C51管脚图2.3温度传感器DS18B20DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器,如图2-3。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果,其引脚功能如图2-4。2.3.1 DS18B20简介(1)独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 (2)在使用中不需要任何外围元件。 (3)可用数据线供电,电压范围:+3.0 +5.5 V。 (4)测温范围:-55 +125 。固有测温分辨率为0.5 。 (5)通过编程可实现912位的数字读数方式。 (6)用户可自设定非易失性的报警上下限值。 (7)支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。 (8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。图2-3 DS18B20的引脚排列图2-4 引脚功能描述2.3.2 DS18B20的测温原理低温度系数晶振的振荡频率受温度的影响很小1,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在 -55 所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。2.3.3温度转换计算方法举例例如当DS18B20采集到+125的实际温度后,输出为07D0H,则:实际温度=07D0H0.0625=20000.0625=125C。例如当DS18B20采集到-55的实际温度后,输出为FC90H,则应先将11位数据位取反加1得370H(符号位不变,也不作为计算),则:实际温度=370H0.0625=8800.0625=55CDS18B20工作过程一般遵循以下协议:初始化ROM操作命令存储器操作命令处理数据2.3.4 DS18B20温度传感器与单片机的接口电路DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的一脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图2-5所示单片机端口接单线总线,为保证有效的DS18B20始终周期内提供足够的电流,可以用一个MOSFET管来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。采用寄生电源供电方式时VDD端接地。由于单线制只有一根线,因此发送接口必须是三态的。图2-5 DS18B20与单片机接口3.系统硬件电路设计3.1主板电路系统整体硬件电路包括,传感器数据采集电路,温度显示电路,单片机主板电路等,如图3-1所示。图3-1 单片机主板电路3.2 显示电路显示电路是使用的串口显示,这种显示最大的优点就是使用口资源比较少,只用P1口的RXD和TXD串口的发送和接受,四只数码管采用74LS164右移寄存器驱动,显示比较清楚。如图3-2。图3-2 温度显示电路4.系统软件的设计4.1主程序主要功能是负责温度的实时显示,读出并处理DS18B20的测量的当前温度值,温度测量每1s进行一次,这样可以在一秒之内测量一次温度,其程序流程如图4-1所示。4.2读程序主要功能是读出RAM中的9字节,在读出时需要进行CRC校验,校验有错时不进行温度数据的改写。其程序流程图如图4-2。图4-1 主程序流程图 图4-2 读温度流程图4.3温度转换命令子程序主要是发温度转换开始命令,本程序采用1s显示程序延时法等待转换的完成。其程序流程图如图4-3。图4-3温度转换命令流程图4.4计算温度子程序将RAM中读取进行BCD码的转换运算,并进行温度值正负的判定,其程序流程图如图4-4。45显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。程序流程图如图图4-5。图4-4 计算温度流程图 图4-5 显示数据刷新流程图5.总结经过将近两周的单片机课程设计,我终于完成了数字温度计的设计,虽然没有完全达到设计要求,但从中学到了不少课堂上所学不到的实际知识。 我们认为,在这次的课程设计中,在收获知识的同时,还收获了阅历,收获了成熟,在此过程中,我们通过查找大量资料,请教老师,以及不懈的努力,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。 之所以使用单片机作为我们的执行核心,不仅是因为老师说单片机现在是社会上应用最广泛的工具,也因为想通过使用单片机锻炼自己的c语言编程能力,养成良好的c语言编程风格。不管怎样,这些都是一种锻炼,一种知识的积累,能力的提高。完全可以把这个当作基础东西,只有掌握了这些最基础的,才可以更进一步,取得更好的成绩。很少有人会一步登天吧。永不言弃才是最重要的。 而且,这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变的更加成熟,会面对需要面对的事情。与队友的合作更是一件快乐的事情,只有彼此都付出,彼此都努力维护才能将作品做的更加完美。而团队合作也是当今社会最提倡的。在为期两个星期的课程设计中,李老师对我们悉心的指导认真的解说详细的分析。衷心地感谢李老师对我们的教导!参考文献 1孙育才. MCS- 51 系列单片微型计算机及其应用. 南京:东南大学出版社,1999.2李朝青.单片机原理及接口技术(简明修订版).杭州:北京航空航天大学出版社,1998.3李广弟.单片机基础.北京:北京航空航天大学出版社,1994.4阎石.数字电子技术基础(第三版). 北京:高等教育出版社,1989.附录:#include reg52.htypedef unsigned char uint8;sbit CLK=P10;sbit DINA=P11;void DELAY();void sdelay();bdata uint8 kdat;sbit cc=kdat0;uint8 LED0,LED1,LED2,LED3;uint8 LED_Table18=0x3F,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71, 0xff,0x00,;sbit DQ = P14;void DELAY()unsigned int k,j;for(k=0;k500;k+)for(j=0;j200;j+);void sdelay()unsigned char k;for(k=0;k10;k+);void sendto(unsigned char dat)unsigned char i;CLK=0;kdat=dat; for(i=0;i1;/*DS18b20温度传感器读写程序*/void dsb20delay(int us) int s; for ( s=0; sus; s+);void rst(void) DQ = 1; dsb20delay(2); DQ = 0; dsb20delay(30); /精确延时 480960us DQ = 1; dsb20delay(8); unsigned int read(void) int i=0; unsigned int u=0; for (i=0;i= 1; DQ = 1; if(DQ) u|= 0x8000; dsb20delay(4); return(u);void write(unsigned char ku) int i = 0; for (i=0;i= 1; void read0(void) int t0,t1,t2; unsigned int tp; unsigned int lsb; rst(); write(0xCC); write(0x44); rst(); write(0xCC); write(0xBE); tp = read(); lsb = (unsigned int)(tp*6.25); t0 = lsb/1000; LED0 = LED_Tablet0; /第1位,最高位 t2 = lsb%1000; t1 = t2/100; LED1 = LED_Tablet1&0x7f; /第2位 t1 = t2%100; t2 = t1/10; LED2 = LED_Tablet2; /第3位,最低位 LED3 = LED_Tablet1%10;/第4位,最低位void main() while(1) uint8 j; read0(); sendto(LED3); sendto(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理文件书写的常见错误
- 支气管哮喘患者的自我监测与管理
- 船舶轮机员诚信竞赛考核试卷含答案
- 钽铌分离工操作安全竞赛考核试卷含答案
- 塑料模具工岗前技术综合考核试卷含答案
- 紫胶蒸发工安全生产知识测试考核试卷含答案
- 石英玻璃制品加工工岗前核心管理考核试卷含答案
- 基础护理学(新编第三版)课件
- 表面活性剂制造工安全宣教考核试卷含答案
- 熟料烧结工安全技能竞赛考核试卷含答案
- 2025年长春市轨道交通集团有限公司校园招聘笔试历年题库(693人)附答案解析
- 2025年江华县事业单位联考招聘考试历年真题附答案
- 吸入变应原皮下注射集群免疫治疗专家共识
- 借名贷款买车协议书
- 【MOOC】《大学物理的数学基础》(西南交通大学)章节期末慕课答案
- 水利工程建设安全监督工作指南(贵州省)
- 排水管网运维养护服务方案投标文件(技术标)
- 《衍生金融工具》课后习题答案
- 承包矿泉水厂合同协议书
- 2025年焊工(高级)证考试题库及答案
- 2025年文化馆招聘笔试考试重点
评论
0/150
提交评论