ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:146.80KB ,
资源ID:1845712      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1845712.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(毕业设计基于51单片机用lcd1602显示的ds18b20课程设计键控上下限报警功能.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

毕业设计基于51单片机用lcd1602显示的ds18b20课程设计键控上下限报警功能.docx

1、毕业设计基于51单片机用lcd1602显示的ds18b20课程设计键控上下限报警功能单片机课程设计 DS18B20数字温度计设计 专业 电子信息科学与技术 班级 11级2班 学号 姓名 1课题的设计目的。 -2对于课题的总体构想。 -3DS18B20温度传感器简介。 -4STC89C51单片机简介。 -5系统总仿真电路。 -6总程序。 -7心得体会。 -8参考文献。 -一课题的设计目的1. 巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力。2. 培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力。3. 通过对课题设

2、计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。2对课题的总体构想 采用数字温度芯片DS18B20 测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。DS18B20 的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器STC89C52构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。 采用51 单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。既可以单独对多DS18B20控制工作,还可以与PC 机通信上传数据,另外STC

3、89C52 在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。3DS18B20温度传感器简介DS18B20功能特点:1. 采用单总线技术,与单片机通信只需要一根I/O线,在一根线上可以挂接多个DS18B20。2. 每只DS18B20具有一个独有的,不可修改的64位序列号,根据序列号访问地应的器件。3. 低压供电,电源范围从35V,可以本地供电,也可以直接从数据线上窃取电源(寄生电源方式)。4. 测温范围为-55+125,在-1085范围内误差为0.5。5. 可编辑数据为912位,转换12位温度时间为750ms(最大)。6. DS18B20可将检测到温度值直接转化为数字量,

4、并通过串行通信的方式与主控制器进行数据通信。DS18B20引脚如图所示。四DS18B20时序图1初始化时序2写时序3读时序五STC89C51单片机简介。89C52单片机主要特性1. 一个8 位的微处理器(CPU)。2. 片内数据存储器RAM(128B),用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据等,SST89 系列单片机最多提供1K 的RAM。3. 片内程序存储器ROM(4KB),用以存放程序、一些原始数据和表格。但也有一些单片机内部不带ROM/EPROM,如8031,8032,80C31 等。目前单片机的发展趋势是将RAM 和ROM 都集成在单片机里面,这样既方便了用

5、户进行设计又提高了系统的抗干扰性。SST 公司推出的89 系列单片机分别集成了16K、32K、64K Flash 存储器,可供用户根据需要选用。4. 四个8 位并行IO 接口P0P3,每个口既可以用作输入,也可以用作输出。5. 两个定时器计数器,每个定时器计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制。为方便设计串行通信,目前的52 系列单片机都会提供3 个16 位定时器/计数器。6. 五个中断源的中断控制系统。现在新推出的单片机都不只5 个中断源,例如SST89E58RD 就有9 个中断源。7. 一个全双工UART(通用异步

6、接收发送器)的串行IO 口,用于实现单片机之间或单机与微机之间的串行通信。8. 片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率为12MHz。SST89V58RD 最高允许振荡频率达40MHz,因而大大的提高了指令的执行速度。5系统总仿真电路。6总程序 (分模块写)1.main.c#include#includelcd.h#includetemp.hvoid LcdDisplay(int);sbit K1=P20;sbit K2=P21;sbit K3=P22;sbit K4=P23;extern int th=20;extern int tl=-10;sbit bee

7、p=P10;void main() LcdInit(); LcdWriteCom(0xc7); LcdWriteData(C); while(1) if(K1=0) Delay1ms(500); if(K1=0); th+; if(K2=0) Delay1ms(500); if(K2=0); th-; if(K3=0) Delay1ms(500); if(K3=0); tl+; if(K4=0) Delay1ms(500); if(K4=0); tl-; LcdDisplay(Ds18b20ReadTemp(); void LcdDisplay(int temp) int i,tt,rr,mm

8、; unsigned char datas = 0, 0, 0, 0,datas1 = 0, 0, 0,datas2 = 0, 0, 0; float tp; if(temp 0) LcdWriteCom(0xc0); LcdWriteData(-); i=1; temp=temp-1; temp=temp; tp=temp; temp=tp*0.0625*10+0.5; mm=-temp; else LcdWriteCom(0xc0); LcdWriteData(+); tp=temp; temp=tp*0.0625*10+0.5; mm=temp; datas0 = temp / 1000

9、; datas1 = temp % 1000 / 100; datas2 = temp % 100 / 10; datas3 = temp% 10; if(th 0) LcdWriteCom(0x89); LcdWriteData(-); tt=-th; else LcdWriteCom(0x89); LcdWriteData(+); tt=th; datas10 = tt / 100; datas11 = tt% 100 / 10; datas12 = tt % 10; LcdWriteCom(0x87); LcdWriteData(H); LcdWriteCom(0x88); LcdWri

10、teData(:); LcdWriteCom(0x8a); LcdWriteData(0+datas10); LcdWriteCom(0x8b); LcdWriteData(0+datas11); LcdWriteCom(0x8c); LcdWriteData(0+datas12); if(tl =(th*10)|mm=(tl*10)|th=tl) beep=0; else beep=1; LcdWriteCom(0x80); LcdWriteData(T); LcdWriteCom(0x81); LcdWriteData(A); LcdWriteCom(0x82); LcdWriteData(I); LcdWriteData( ); LcdWriteCom(0x84); LcdWriteData(A); LcdWriteCom(0x85); LcdWriteData(N); LcdWriteCom(0xc1); LcdWriteData(0+datas0); LcdWriteCom(0xc2); LcdWriteData(0+datas1); LcdWriteCom(0xc3); LcdWriteData(0+datas2); LcdWriteCom(0xc4); LcdWriteData(.); LcdWriteCom(0xc5); LcdWriteData(0

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1