项目六多路测温系统的方案设计书.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
项目六 多路测温系统的设计 能力目标 1、能够设计字符型液晶显示器的接口电路及驱动程序。 2、能够利用数字温度传感器DS18B20设计电子温度计及多路测温系统。 任务一 用DS18B20设计电子温度计 DS18B20是美国DALLAS公司推出的数字温度传感器,传感器及相关的数字转换电路都被集成到了一起,外形如同一只三极管,具有微型化、低功耗、高性能、抗干抗性强等优点;它采用独特的单线接口方式,与单片机连接时,仅需一根口线;由于每片DS18B20均有唯一的产品序列号,所以允许在单总线上挂接数十至上百片数字式传感器,这样可以非常方便地构成多路温度测量系统。 一、初识数字温度传感器 1、 DS18B20的测温范围为-55℃~125℃,12位温度读数,分辨率为1/16℃,温度转换时间最多为750ms,其引脚如图6-1所示: DQ:数据输入输出,也在数据总线供电方式给设备提供电源。 VDD:可选的电源电压。DS18B20有两种供电方式:数据总线供电方式和外部供电方式。若采用数据总线供电方式,VDD应接地,这样可省一根线,但测温的时间较长。 GND:电源地 DS18B20与单片机的连接非常简单,如图6-2所示: 2、每片DS18B20均有一个唯一产品序列号,固化在内部的64位激光ROM中,其格式如下:开始8位是是产品的类型编号,接着是每个器件唯一的序号,共48位,最后8位是针对前面56位的CRC校验码,这也是多个DS18B20可以采用一条数据线进行通信的原因,只要单片机用匹配命令即可访问总线上的指定DS18B20。 8位CRC校验码 48位序列号 8位工厂代码 MSB LSB MSB LSB MSB LSB 3、DS18B20内部有 9个字节的暂存器,开始两个暂存器(TMSB、TLSB)存放当前测到的温度值,以16位补码形式表示12位温度读数,分辨率为1/16℃,(内部配置寄存器可以设置温度数据的位数为9、10、11、12,出厂时设置成12位温度读数),高位是温度值的符号扩展,单片机发出温度转换命令后,DS18B20将测得的温度值保存在TMSB、TLSB中,供单片机读取。温度与数字量的关系如表6-1所示: 表6-1 温度与数字量对应关系表 温度值(℃) 输出二进制码 十六进制表示 +125 0000 0111 1101 0000 07D0H +25.0625 0000 0001 1001 0001 0191H +0.5 0000 0000 0000 1000 0008H 0 0000 0000 0000 0000 0000H -0.5 1111 1111 1111 1000 FFF8H -25.0625 1111 1110 0110 1111 FE6FH -55 1111 1100 1001 0000 FC90H 二、读写时序 DS18B20与单片机之间的数据传送是靠严格的时序来实现的: 1、初始化时序(见图6-3) 与DS18B20的通信前,首先必须对其初始化,由单片机在t0时刻发出最短为480us的低电平有效的复位脉冲,在t1时刻释放总线并进入接收状态,DS18B20检测到总线变高后,等15到60us,在t2时刻发出低电平有效的存在脉冲响应。 初始化DS18B20bit reset(void) //初始化DS18B20 { bit err; DQ=0; //在数据线上产生600us的低电平 delay15(40); DQ=1; //数据线拉高 delay15(4); //延时60us err=DQ; //读取数据线状态,err=0:复位成功 delay15(18); // err=1:复位失败 return(err); } 2、写时序(图6-4) 单片机在t0时刻将总线拉至低电平,从t0时刻开始的15us之内应将要写的数据位送到总线上,DS18B20在t0后的15—60us内对总线采样,若为低电平,写入的是0;若为高电平,写入的为1。连续写2位之间的间隙应大于1us。 向DS18B20写入一个字节void wrbyte(uchar d) //向DS18B20写入一个字节 { uchar i; dat=d; for(i=8;i0;i--) //循环写8位(先低位,后高位) { D

您可能关注的文档

文档评论(0)

ipad0b + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档