电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者电子文章传感技术温度传感器DSl8B20在Proteus中的仿真

温度传感器DSl8B20在Proteus中的仿真

11-20 00:38:33 | http://www.5idzw.com | 传感技术 | 人气:209
标签:传感技术知识,传感器与检测技术,http://www.5idzw.com 温度传感器DSl8B20在Proteus中的仿真,http://www.5idzw.com

  若还要读其他芯片的温度,则从②~⑤开始循环。其中,reset()为调用初始化子程序;send_com()为机向从机发送1字节的子程序;send_num()为主机向从机发送64位器件序列号的子程序;delay()为延时子程序;check()为主机判断所有从机的温度是否全部读取完毕的子程序。

  3.2 Proteus仿真

  在Proteus中使用多个DSl8B20时,必须改变器件的属性,使仿真中每个器件的序列号各不相同。具体作法是:右击DSl8B20,选中Edit Properties选项,在其中改变ROM Serial Numbet的值;还可改变Granularity的数值,即改变每次调整温度的额度。在Proteus中,可以人为改变3个字节的器件序列号。要想得到全部8个字节,一个简单的方法就是每一次总线上只连接一个器件,利用Ox33读器件序列号的命令在程序中得到完整的器件序列号。具体的程序如下所示:



  其中,send_com()为主机向从机发送一个字节的子程序,read_dat()为主机读取从机一个字节的子程序。例如,将器件序列号改为B8C530,在MPLAB IDE中的Watch窗口中可直接观察到该器件的完整的器件序列号,如图3所示。


  本系统*使用12个DSl8B20,序列号为B8C530~B8C53B。通过上述的方法可得到所有器件的序列号,然后组成一个数组,在读取温度程序中就可直接使用。数组如下所示:


  在MPLAB IDE中,使用Proteus VSM仿真模式。根据上述读取温度程序的过程,编写读取温度的程序,经编译、运行,即可得到仿真结果。

  结语

  经验证,在Proteus中的仿真结果和实际实验结果完全一致。这充分说明该软件仿真结果真实性很高,在缺乏硬件的情况下,这是款非常实用的仿真软件。其仿真的原理图和结果经实验验证后可直接应用到实际项目中。

  单总线数字式温度传感器DSl8B20具有体积小、动态范围宽、测量精度高等特点,分辨率可根据实际的需求进行相应的设置。单总线器件连接简单,且具有很强的扩展性,可以组建多点的温度检测网络,在电子产品各部件特别是半导体器件的温度测量领域具有良好的应用前景。


上一页  [1] [2] 

,温度传感器DSl8B20在Proteus中的仿真