基于51单片机的数字温度计-副本内容摘要:
20 进行预定的操作。 复位要求 CPU 将数据线下拉 500μs ,然后释放, DS18B20 收到信号后等待 16~60μs ,发出 60~240μs 脉冲, CPU 收到此信号表示复位成功。 表 6 RAM 操作命令 RAM操作指令 指令代码 RAM操作指令 指令代码 Write Scratchpad (写暂存存储器 ) [4EH] Convert Temperature (温度变换 ) [44H] Read Scratchpad (读暂存存储器 ) [BEH] Recall EPROM (重新调出 ) [B8H] Copy Scratchpad (复制暂存存储器 ) [48H] Read Power Supply (读电源 ) [B4H] 系统总体构成图和系统总电路图如图 41 和图 42 图 41 系统总体构成图 STC89C52RC MAX282 电平转换 PC机 DS18B20 温度传感器 数码管显示 晶振电路 发光二极管 图 42 系统总电路图 数码管显示模块 数码管是一种半导体发光器件,其基本单元是发光二极管。 数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元( 多一个小数点显示);按能显示多少个“ 8”可分为 1位、 2位、 4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。 共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极 (COM)的数码管。 共阳数码管在应用时应将公共极 COM 接到 +5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。 当某一字段的阴极为高电平时,相应字段就不亮。 共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。 共阴数码管在应用时应将公共极 COM接到地线 GND 上,当某一字段发光二极管的阳极为高电 平时,相应字段就点亮。 当某一字段的阳极为低电平时,相应字段就不亮。 数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。 静态驱动也称直流驱动。 静态驱动是指每个数码管的每一个段码都由一个单片机的 I/O端口进行驱动,或者使用如 BCD码二 十进制译码器译码进行驱动。 静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 端口多,个数码管,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 数码管动态显示接口 是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的 8个显示笔划 a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极 COM 增加位选通控制电路,位选通由各自独立的 I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。 通过分时轮流控制各个数码管的的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动。 在轮流显示过程中,每位数码管的点亮时间为 1~ 2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的 I/O端口,而且功耗更低。 发光二极管报警 模块 发光二极管 (LightEmittingDiode,LED),是一种半导体组件。 初时多用作为指示灯、显示发光二极管板等;随着白光 LED 的出现,也被用作照明。 发光二极管的两根引线中较长的一根为正极,应接电源正极。 有的发光二极管的两根引线一样长,但管壳上有一凸起的小舌,靠近小舌的引线是正极。 与小白炽灯泡和氖灯相比,发光二极管的特点是:工作电压很低(有的仅一点几伏);工作电流很小(有的仅零点几毫安即可发光);抗冲击和抗震性能好,可靠性高,寿命长;通过调制通过的电流强弱可以方便地调制发光的强弱。 由于有这些特点,发光二极管在一些光电控制设备中用作光源,在许多电子设备中用作信号显示器。 把它的管心做成条状,用 7 条条状的发光管组成 7段式半导体数码管,每个数码管可显示 0~ 9十个数目字。 图 43发光二极管 5 系统软件设计 DS18B20 的 工作过程 DS18B20 复位初始化程序 → 读出转换后的温度值 → 写 DS18B20 程序 → 读 DS18B20程序。 DS18B20 实现温度转换读取温度数值程序流程图如图 51 所示。 图 51 DS18B20 实现温度转换读取温度数值程序流程图 主程序设计 主程序的主要功能是负责温度的实时显示,读出并处理 DS18B20 的测量的当前温度值,温度测量 1s进行一次。 这样可以在一秒之内测量一次被测温度,其程序流程如 52所示:开始 DS18B20 的初始化 启动温度转换 读取温度寄存器 跳过读序列号的操作 跳过读序列号的操作 DS18B20 的初始化 RET LOW低八位 HIGH高八位 图 52 对 DS18B20 读出温度 处理程序流程图 总结 本文重点介绍了单片机和数字传感器 DS18B20 的原理和功能,并用 DS18B20 与STC89C52RC单片机、数码管 、 发光二极管 组成数字温度计。 该系统具有更高速、更灵敏、更简捷地获取被分析、检测、控制对象的温度信息的能力,同时具有良好的抗干扰及环境适应能力。 判断温度 正温度 负温度 读出温度的地位 LSB,读出温度的高位 MSB 取出 tempH的 最高 位 判断是否为 1 补码转换,取反加一 读取 DS18B20 温度数据 将 十六 进制数转换成十进制 输出显示 Yes No 通过这次毕业设计使我学习到了很多的东西,不仅加深了对专业知识的理解,而且更好地把理论知识与实践相结合,提高了自身的动手能力和实践水平 ,增强了学习单片机系统开发与设计的兴趣。 由于本人的知识有限,在本设计中不可避免存在一些不足之处,我会在后的学习生活中不断加以完善。 参考文献 [1] 延安大学本科毕业论文(设计)指导手册 [N]. 教发( 2020) 61号 [2] 童诗白 .模拟电子技术基础 [M]. 北京 :高等教育出版社 , . [3] 阎石 .数字电子技术基础 [M]. 北京 :高等教育出版社 ,. [4] 余锡存 .单片机原理及接口技术 [M]. 西安 :西安电子科技大学出版社 ,. [5] 刘法制 .常用电子元 器件及典型芯片应用技术 [M]. 北京 :机械工业出版社, . [6] 党丰,王敬农,高国旺 .基于 DS18B20的数字式温度计的实现 [J] .应 用实践, 2020,( 6): 167- 173. [7] 江世明 , 刘先任 .基于 DS18B20的智能温度测量装置 [N] .邵阳学院学报(自然科学版), 20201225( 10) . [8] 李正浩,姜宝钧,邓兴成 .51单片机在 LED数码管显示中的应用 [J] .实验科学与技术, 2020,( 3):68- 72. [9] 王明慧 .数字温度传感器 DS18B20 在化学 工业现场温度检测中的应用 [J] .计算机与化学应用,2020,( 8): 82- 87. [10] Sha Zhanyou, Wang Design of Multiple Channel Dustlike Object Temperature Measure and Control System [M] . . 谢辞 首先 , 感谢我的指导老师,在整个设计过程中对我的热心指导和严格要求。 在选题、技术方案和系统总体设计上给了我许多宝贵的建议,帮助我建立了正确的设计思想,保证 了课题的顺利完成。 我从 他 那里不仅学到了学术方面的知识,更重要的是学到了严谨的 教 学态度。 再次, 我还要感谢学院的各位老师,正是由于他们一丝不苟、任劳任怨的付出,才会使我,通过四年的理论学习,完成了今天的毕业设计 , 感谢学院为我们毕业设计提供的良好环境和仪器设备,有了这些,我们才能高效的完成毕业设计任务。 最后,对毕业设计中,给于我帮助的老师和同学,致以诚挚的谢意。 (全文总共 9168 字 ) 附录:程序清单 include include define uint unsigned int define uchar unsigned char sbit POINT = P0^7。 sbit DQ = P3^6。 //温度输入口 sbit MOTOR = P1^5。 sbit LAMP = P1^4。 sbit SPEAK = P3^7。 uchar code LEDData[]= { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f }。 ///数码管 void DelayMS(uint ms) { uchar i。 while(ms) { for(i=0。 i120。 i++)。 } } void Display_Result(uchar key) { P2 = 0xf7。 P0 = LEDData[disbuf[1]]。 DelayMS(5)。 P2 = 0xfb。 P0 = LEDData[disbuf[2]]。 POINT = 1。 DelayMS(5)。 P2 = 0xfd。 if (disbuf[3]0) { P0 = LEDData[disbuf[3]]。 } else { P0 = 0x00。 } DelayMS(5)。 P2 = 0xfe。 if (key==1) { P0 = 0x40。 } else { P0 = 0x00。 } DelayMS(5)。 } void Delay(uint x) { while(x)。 } /* ******************************************************************************** ** 函数名称 : Init_DS18B20(void) ** 函数功能 : 初始化 ******************************************************************************** */ void Init_DS18B20(void) { unsigned char x=0。 DQ=1。 //DQ 先置高 Delay(8)。 //稍延时 DQ=0。 //发送复位脉冲 Delay(80)。 //延时( 480us) DQ=1。 //拉高数据线 Delay(5)。 //等待( 15~60us) x=DQ。 //用 X 的值来判断初始化有没有成功, 18B20 存在的话 X=0,否则 X=1 Delay(20)。 } /* ******************************************************************************** ** 函数名称 : ReadOneChar() ** 函数功能 : 读一个字节 ******************************************************************************** */ uchar ReadOneChar() //主机数据线先从高拉至低电平 1us 以上,再使数据线升为高电平,从而产生读信号 { unsigned char i=0。 //每个读周期最短的持续时间为 60us,各 个读周期之间必须有 1us 以上的高电平恢复期 unsigned char dat=0。 for (i=8。 i0。 i) //一个字节有 8位 { DQ=1。 Delay(1)。 DQ=0。 dat=1。 DQ=1。 if(DQ) dat|=。基于51单片机的数字温度计-副本
相关推荐
安居乐业 2 平安工地 法制为基 3 和谐建筑 温馨家园 4 依法建筑 和谐幸福 5 心中有法 成功道路 6 守法施工 防范未然 7 法在心中 贵在家中 8 法制准绳 触犯无情 9 建筑规章 平安守则 10 携手同行 守法共赢 11建筑守法 质量无悔 12 有法可依 建设为基 13知法守法 实惠大家 14 遵纪守法 来去平安 15偷工减料 损人害己 1 建精品工程 做守法标 兵 2 做精品工程
桥梁跨度 177。 20mm( L16m); 177。 10mm ( L≤ 16m) 桥面及挡碴墙内 侧 宽度 177。 10mm 检查 1/4L、跨中、 3/4L和梁两端 腹板厚度 +10mm、 5mm 检查 1/4L、跨中、 3/4L 底板宽度 177。 5mm 检查 1/4L、跨中、 3/4L和梁两端 桥面外侧偏离设计位置 ≤ 10mm 从支座螺栓中心放线,引向桥面 梁高 +10mm、
中要使用的主要有二甲基甲酰胺( DMF)、二苯基甲烷二异氰酸酯( MDI)、甲苯二异氰酸 酯( TDI)、丁酮( MEK)、甲苯( TOL)、 1, 4丁二醇( BDO)、己二酸( AA)、乙二醇( EG)以及在合成革生产中的一些添加剂(如渗透剂、流平剂、填充剂、消泡剂、染色剂)等。 聚氨酯合成革的工业化生产方法主要有干法和湿法两大类。 ( 1)干法 年产 1000 万米聚氨酯合成革工业设计 7
开发,加速经济发展,从而对所在地区的自然环境产生更加广泛的影响。 城市化过程对人文地理环境的影响主要表现为:( 1)改变了土地利用方式,原先的农业用地逐步演化为非农业用地,比如城市用地、工业用地和交通运输用地。 城市土地利用方式的 不同,形成了城市功能分区。 ( 2)改变了居民的就业方式,劳动力从第一产业向第二、第三产业大规模转移,区域产业活动以非农业活动为主体。
提交的投标保证金支付凭证(银行划款单复印件,加盖公章)的复印件。 ( 5) 对招标文件第二、四部分 做 出书面响应。 技术部分: ( 1) 地下管线普查的技术方案。 ( 2) 地下管线普查的工作程序、流程、队伍组建、人员配备、进度安排,外业施工安全、数据保密等的具体实施方案。 ( 3) 管线普查探测以及数据库建成后服务承诺及措施。 ( 4) 合理化建议。 14. 投标书