版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于51单片机的DS18B20温度传感器的应用DS18B20是一种数字温度传感器,基于单线总线接口协议,能够以较高的精度测量环境温度。在嵌入式系统中,DS18B20广泛应用于温度监测、智能控制等方面。本文将介绍基于51单片机的DS18B20温度传感器的应用。一、硬件设计1.电路连接DS18B20与51单片机相连需要使用三根线。其中,一根线为VDD,连接至单片机的正电源,并在电路中添加滤波电容;另一根线为GND,连接至单片机的负电源;最后一根线为DQ,连接至单片机的IO口,作为数据传输的线路。2.电路图具体电路图如下所示:二、软件设计1.时序要求DS18B20采用单线总线接口协议,因此数据的传输需要严格遵守时序要求。具体的时序如下:通过上图可以看出,DS18B20的数据传输采用了采样保持技术(SamplingandHold),该技术可以较好地解决信号传输过程中的抖动问题。2.代码实现下面是DS18B20温度传感器的部分代码实现:```c#defineDQP0_5unsignedcharTemperH,TemperL;unsignedintTemper;/*DS18B20复位序列*/voidDS18B20_Reset(){unsignedchari;DQ=0;/*拉低DQ线*/for(i=250;i>0;i--);/*延时>=480us*/DQ=1;/*拉高DQ线*/for(i=250;i>0;i--);/*延时15~60us,保持高电平*/}/*数据传输*/unsignedcharDS18B20_DataTrans(unsignedchardat){unsignedchark=0,i;for(i=0;i<8;i++)/*8位数据传输*/{DQ=0;/*拉低DQ线,开始传输一位数据*/DQ=dat&0x01;/*写入数据*/for(k=250;k>0;k--);/*延时60us*/DQ=1;/*释放DQ线*/dat>>=1;}for(i=0;i<8;i++)/*读取应答信号*/{DQ=0;DQ=1;for(k=20;DQ&&k>0;k--);/*等待应答信号结束*/if(k==0)/*应答信号错误*/{break;}}if(i==8)/*应答信号有效*/{return1;}else{return0;}}/*读取一个字节*/unsignedcharDS18B20_ReadByte(){unsignedchark=0,i,dat=0;for(i=0;i<8;i++)/*8位数据传输*/{DQ=0;/*拉低DQ线,开始传输一位数据*/DQ=1;/*释放DQ线*/for(k=20;DQ&&k>0;k--);/*等待数据线的数据稳定*/dat>>=1;if(DQ){dat|=0x80;/*读入数据*/}}returndat;}/*DS18B20读取温度数据*/voidDS18B20_ReadTemper(){DS18B20_Reset();/*复位*/DS18B20_DataTrans(0xCC);/*跳过ROM操作命令*/DS18B20_DataTrans(0x44);/*温度转换命令*/while(!DS18B20_ReadByte());/*等待转换完成*/DS18B20_Reset();/*复位*/DS18B20_DataTrans(0xCC);/*跳过ROM操作命令*/DS18B20_DataTrans(0xBE);/*读暂存器命令*/TemperL=DS18B20_ReadByte();/*读低8位温度值*/TemperH=DS18B20_ReadByte();/*读高8位温度值*/Temper=(TemperH<<8)|TemperL;/*合成16位温度值*/}```三、应用示例在本次应用中,我们需要将DS18B20采集到的温度值显示在1602液晶屏上。以下是部分代码实现:```c/*1602液晶屏写命令*/voidWriteCMD(unsignedcharcmd){LCD_RS=0;/*选择命令寄存器*/LCD_RW=0;/*选择写操作*/LCD_DB=cmd;/*写入命令*/Delay1ms();LCD_EN=1;/*使能*/Delay1ms();LCD_EN=0;/*失能*/}/*1602液晶屏写数据*/voidWriteData(unsignedchardat){LCD_RS=1;/*选择数据寄存器*/LCD_RW=0;/*选择写操作*/LCD_DB=dat;/*写入数据*/Delay1ms();LCD_EN=1;/*使能*/Delay1ms();LCD_EN=0;/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 接插件零件制造工班组管理测试考核试卷含答案
- 水文地质调查员操作评估竞赛考核试卷含答案
- 有机实芯电阻器、电位器制造工安全文化强化考核试卷含答案
- 雷达装调工岗中安全专项考核试卷含答案
- 电力调度员岗位工作实操考核试卷含答案
- 营养师岗中协同应用考核试卷含答案
- 水声换能器制造工岗位技术基础考核试卷含答案
- 电视摄像员发展趋势水平考核试卷含答案
- 临床化学检验项目可行性研究报告
- 中药香囊生产线可行性研究报告
- 2026广东河源市龙川县恩波药械有限公司招聘8人考试备考试题及答案解析
- 2026年党支部书记党务工作培训练习题及答案
- 2026年中石化笔试题库(含答案)
- 高中美术必修《中国书法和中国画的密切关系》教学设计
- 2026秋沪科版(五四学制)八年级物理上册全册每课知识点清单
- 2026中银数字服务(南宁)有限公司招聘笔试模拟试题及答案详解
- RoHS 3.0 指令 2024-1020-EU 中文版(完整译文 + 新旧对比 + 2027 年实施时间表)
- 交管12123学法减分题库500题(含标准答案+解析2026全国)
- 高中入团积极分子考试题库
- 思想政治教育方法论考题
- 免疫规划知识普及课件
评论
0/150
提交评论