📄 ds18b20的硬件连接及软件编程rn -前程无忧论文网-免费论文库.htm
字号:
<BR><BR>一般测温电缆线采用屏蔽4芯双绞线,其中一对接地线与信号线,另一对接VDD和地线,屏蔽层在源端单点接地。 <BR><BR>表1 DS18B20温度/数据对应关系表 <BR><BR>温度(℃) 输出的二进制码 对应的十六进制码 <BR>+125 0000 0111 1101 0000 07D0H <BR>+85 0000 0101 0101 0000 0550H <BR>+25.0625 0000 0001 1001 0001 0191H <BR>10.125 0000 0000 1010 0010 00A2H <BR>0.5 0000 0000 0000 1000 0008H <BR>0 0000 0000 0000 0000 0000H <BR>-0.5 1111 1111 1111 1000 FFF8H <BR>-10.125 1111 1111 0101 1110 FF5EH <BR>-25.0625 1111 1110 0110 1111 FF6FH <BR>-55 1111 1100 1001 0000 FC90H <BR><BR>表2 DS18B20分辨率设置表 <BR><BR>R1 R0 温度分辨率 最大转换时间 <BR>0 0 9位 93.75ms <BR>0 1 10位 187.5ms <BR>1 0 11位 375ms <BR>1 1 12位 750ms <BR><BR>四、DS18B20软件编程<BR><BR>1、DS18B20的工作过程 <BR><BR>DS18B20的工作遵循严格的单总线协议。主机首先发一复位脉冲,使信号线上所有的DS18B20芯片都被复位,接着发送ROM操作命令,使序列号编码匹配的DS18B20被激活,准备接收下面的内存访问命令。内存访问命令控制选中的DS18B20的工作状态,完成整个温度转换、读取等工作(单总线在ROM命令发送之前存储命令和控制命令不起作用)。其工作流程图如图4所示。在对DS18B20进行操作的整个过程中,主要包括三个关键过程:主机搜索DS18B20序列号、启动在线DS18B20作温度转换、读取在线DS18B20温度值。其中主机启动温度转换并读取温度值的流程图如图5所示。 <BR><BR><BR><BR>工作中系统对DS18B20的操作以ROM命令和存储器命令形式出现。其中ROM操作命令均为8位长,命令代码分别为:读ROM(33H)、匹配ROM(55H)、跳过ROM(CCH)、搜索ROM(F0H)和告警搜索( ECH)命令。存储器操作命令为:写暂存存储器(4EH)、读暂存存储器(BEH)、复制暂存存储器(48H)、温度变换(44H)、重新调出EERAM(B8H)和读电源供电方式(B4H)命令。 <BR><BR>2、工作时序 <BR><BR>由于DS18B20的测温分辨率提高了(12位),因此对时序及电特性参数要求较高,必须严格按照DS18B20的时序要求去操作。与DS1820相同,DS18B20数据的读写也是由主机读写特定时间片来完成的,包括初始化、读时间片和写时间片。 <BR><BR>主机控制DS18B20完成任何操作之前必须先初始化,即主机发一复位脉冲(最短为480ms的低电平),接着主机释放总线进入接收状态,DS18B20在检测到I/O引脚上的上升沿之后,等待15~60ms然后发出存在脉冲(60~240ms的低电平)。时序图如图6所示。 <BR><BR>读/写时间片: <BR><BR>写时间片:将数据线从高电平拉至低电平,产生写起始信号。在15ms之内将所需写的位送到数据线上,在15ms到60ms之间对数据线进行采样,如果采样为高电平,就写1,如果为低电平,写0就发生。在开始另一个写周期前必须有1ms以上的高电平恢复期。时序图如图7所示。 <BR><BR>读时间片:主机将数据线从高电平拉至低电平1ms以上,再使数据线升为高电平,从而产生读起始信号。主机在读时间片下降沿之后15ms内完成读位。每个读周期最短的持续期为60ms,各个读周期之间也必须有1ms以上的高电平恢复期。时序图如图7所示。 <BR><BR>3、基本子程序设计<BR><BR>DS18B20三个基本子程序为:DS18B20初始化程序、读DS18B20子程序、写DS18B20子程序。分别设计如下: <BR><BR>(1)DS18B20的初始化子程序(PSW.5=1表示DS18B20存在,PSW.5=0表示不存在) <BR>RESET:CLR P1.0 ;发送复位脉冲 <BR><BR> MOV R7,#32 ;延时500ms <BR><BR> LCALL DELAY15 <BR><BR> SETB P1.0 <BR><BR> MOV R7,#4 ;等待60ms <BR><BR> LCALL DELAY15 <BR><BR> CLR PSW.5 ;PSW.5=0 <BR><BR> JB P1.0,RET1 ;P1.0=1不存在,跳转 <BR><BR> SETB PSW.5 ;存在DS18B20 <BR><BR> MOV R7,#28 <BR><BR> LCALL DELAY15 <BR><BR>RET1: RET <BR><BR>延时子程序(fOSC=12MHz) <BR><BR>DELAY15: MOV R6,#6 <BR><BR>DEL151: DJNZ R6,DEL151 <BR><BR> DJNZ R7,DELAY15 ;延时R7*15 ms <BR><BR> RET <BR><BR> (2)DS18B20的读子程序 <BR><BR>RD1820:CLR C <BR><BR> MOV R1,#9 <BR><BR> MOV R0,#TEMPLSB <BR><BR>RD18201:MOV R2,#8 <BR><BR>RD18202:SETB P1.0 <BR><BR> NOP <BR><BR> NOP <BR><BR> CLR P1.0 ;产生读信号 <BR><BR> NOP <BR><BR> NOP <BR><BR> SETB P1.0 ;准备输入数据 <BR><BR> MOV R7,#1 <BR><BR> LCALL DELAY15<BR><BR> MOVC,P1.0 RRC A <BR><BR>RRC A <BR> <BR> <BR><BR> <BR><BR><BR><BR><BR> DJNZ R2,RD18202 ;判一个字节是否读完<BR><BR> MOVX @R0,A ;保存结果 <BR><BR> INC R0 <BR><BR> DJNZ R1,RD18201 ;判9个字节是否读完 <BR><BR> RET <BR><BR> (3)DS18B20的写子程序 <BR><BR>WR1820:CLR C <BR><BR> MOV R1,#8 <BR><BR>WR18201:CLR P1.0 ;产生写信号 <BR><BR> MOV R7,#1 <BR><BR> LCALL DELAY15 <BR><BR> RRC A <BR><BR> MOV P1.0,C ;发送一位数据给DS18B20 <BR><BR> MOV R7,#1 <BR><BR> LCALL DELAY15 <BR><BR> SETB P1.0 <BR><BR> NOP <BR><BR> DJNZ R1,WR18201 ;1字节数据是否发送完 <BR><BR> SETB P1.0 <BR><BR> RET <BR><BR>四、结束语 <BR><BR>DS18B20是目前最流行的单总线温度传感器之一。它的接口电路简单、可靠,因此在温度检测系统以及测控网络中将会有广泛的应用前景。 <BR><BR><BR>参考文献 <BR><BR>[1] Dallas Corp., DS18B20 Programmable Resolution One—Wire Digital Thermometer. <BR><BR>[2] 金伟正,《单线数字温度传感器的原理及应用》 <BR><BR>[3] 《DS18B20在51单片机系统中的应用》 <BR><BR><BR><IMG height=1 src="DS18B20的硬件连接及软件编程-前程无忧论文网-免费论文库.files/down_info.htm" width=1 border=0></DIV></TD></TR></TBODY></TABLE> <TABLE height=40 cellSpacing=5 cellPadding=0 width="100%" align=center border=0> <TBODY> <TR> <TD align=middle>文章页数:<A class=page href="http://www.wypaper.com/info/1414-1.htm">[1]</A> </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><TABLE class=border cellSpacing=0 cellPadding=0 width=778 border=0> <TBODY> <TR> <TD align=middle height=10> <TABLE class=pagelighter cellSpacing=0 cellPadding=0 width=766 border=0> <TBODY> <TR> <TD height=10> <TABLE class=listtitle cellSpacing=0 cellPadding=1 width="100%" border=0> <TBODY> <TR> <TD> <TABLE class=docParameter cellSpacing=0 cellPadding=6 width="100%" border=0> <TBODY> <TR> <TD><FONT color=red>特别注意</FONT>:论文资源均为免费,仅供学术参考,本站所提供所有论文,一切版权归于作者所有.禁止盗链本站论文资源.抄袭论文所导致的法律责任均与本站没有任何关系.如作者不愿意我站登出您的版权论文,请与我站联系,我们会尽快取消本站对您论文的转载. </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE> <TABLE class=border cellSpacing=0 cellPadding=0 width="100%" border=0> <TBODY> <TR> <TD><IMG height=6 src="DS18B20的硬件连接及软件编程-前程无忧论文网-免费论文库.files/spacer.gif" width=6></TD></TR></TBODY></TABLE> <TABLE class=docParameter cellSpacing=0 cellPadding=4 width="100%" border=0> <TBODY> <TR> <TD></TD> <TD align=right> <A href="javascript:window.print()"><IMG height=18 alt=打印 src="DS18B20的硬件连接及软件编程-前程无忧论文网-免费论文库.files/printer.gif" width=49 border=0></A> <A href="javascript:this.location.reload()"><IMG height=18 alt=刷新 src="DS18B20的硬件连接及软件编程-前程无忧论文网-免费论文库.files/reload.gif" width=49 border=0></A><FONT color=#2c5810><SPAN class=weby> </SPAN></FONT><A href="javascript:window.scroll(0,0)"><IMG height=18 alt=返回顶部 src="DS18B20的硬件连接及软件编程-前程无忧论文网-免费论文库.files/top.gif" width=49 border=0></A> <A href="javascript:window.close()"><IMG height=18 alt=关闭 src="DS18B20的硬件连接及软件编程-前程无忧论文网-免费论文库.files/close.gif" width=49 border=0></A> </TD> <TD align=right width=20><INPUT onclick=scrollit1() type=image alt=向上滚屏 src="DS18B20的硬件连接及软件编程-前程无忧论文网-免费论文库.files/buttonF1.jpg" value=向上滚屏 name=button22> </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><TABLE class=border height=6 cellSpacing=0 cellPadding=0 width=778 border=0> <TBODY> <TR> <TD><IMG height=1 src="DS18B20的硬件连接及软件编程-前程无忧论文网-免费论文库.files/spacer.gif" width=1></TD></TR></TBODY></TABLE><TABLE class=border id=table100 cellSpacing=1 cellPadding=0 width=778 border=0><TBODY> <TR> <TD class=listContent align=middle> <HR color=#008080 noShade SIZE=0> </TD></TR> <TR> <TD class=listContent align=middle><A href="http://www.wypaper.com/help/aboutus.htm">关于我们</A> - <A href="http://www.wypaper.com/help/banquan.htm">版权声明</A> - <A href="http://www.wypaper.com/help/gg.htm">广告服务</A> - <A href="http://www.wypaper.com/help/lianxi.htm">联系我们</A> - <A href="http://www.wypaper.com/help/friend.htm">友情链接</A> - <A href="http://www.wypaper.com/help/job.htm">人才招聘</A></TD></TR></TBODY></TABLE><TABLE class=border id=table101 cellSpacing=6 cellPadding=0 width=778 border=0><TBODY> <TR> <TD class=navLight> <TABLE id=table102 cellSpacing=6 cellPadding=0 width="100%" border=0> <TBODY> <TR> <TD width="74%"><FONT color=#ffffff>© CopyRight 2005-2008 NETLW.COM.Inc All Rights Reserved</FONT></TD> <TD align=right width="26%"><FONT color=#ffffff>前程无忧论文网</FONT> </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -