《電子技術應用》
您所在的位置:首頁 > 测试测量 > 设计应用 > 1-Wire温度传感器的快速编程
1-Wire温度传感器的快速编程
摘要: 一般来说,总线数越少,连接就越简单,因而串行总线嵌入式元件在许多应用场合颇受欢迎。但正因为只有1根线,该类元件的编程要紧扣硬件和时钟,难度大于I2C总线和SPI总线。本文以数字温度传感器DSl8B20为例,介绍一种实用和简单的编程方案。
Abstract:
Key words :

  引 言

  一般來說,總線數越少,連接就越簡單,因而串行總線嵌入式元件在許多應用場合頗受歡迎。但正因為只有1根線,該類元件的編程要緊扣硬件和時鐘,難度大于I2C總線和SPI總線。本文以數字溫度傳感器DSl8B20為例,介紹一種實用和簡單的編程方案。

  1 DS18B20的精簡編程考慮

  測溫分辨率:通過設置配置寄存器,DS18B20有0.5℃、0.25℃、0.125℃和0.062 5℃幾種溫度可供選擇。如果不作選擇,缺省值為12位,即最高分辨率0.062 5℃,這樣可省去相關寫EEPROM的命令。圖1為溫度格式。

  溫度報警高限TH和低限TL:如果設置了TH和TL,DS18B20將在溫度高于TH或低于TL時做出響應。這要用到寫入EEPROM的命令,將可改寫RAM(Scratchpad RAM)拷入EEPROM。其實,在很多應用場合,這樣的報警設置完全可以在MASTER(如單片機)中完成,從而節省DS18B20的編程。這只要不使用報警搜索命令(Alarm search command)即可。

  光刻ROM(lasered ROM)命令:一共有6個。對于只要單個DS18B20的場合,如果不考慮讀ROM中的序列號代碼,不允許報警等功能,只要進行測溫的話,用一個跳過ROM(Skip ROM)命令就足夠了。

  RAM有關的命令:一共有6個。如果在DS18B20的電源端專配電源,不設置高低溫報警,只需使用“ConvertT”和“Read Scratch”命令即可。前者開始進行溫度轉換(時間約需750 ms),后者將溫度值及循環冗余校驗碼CRC等9字節讀入MASTER(如單片機)。

  關鍵時序:盡管測量時可以作上述簡化,但DS18B20的時序必須嚴格遵循。最苛刻的時間要求應是讀時槽(read time slots):MASTER在數據線上發出一個下降沿表示讀時槽開始,時間至少保持1μs,然后停止驅動數據總線。DS18B20在數據線上輸出約15 μs的數據。在這一時間段內,MASTER必須及時采樣數據線。這樣的定時要求與之相連的單片機必須工作在較高的頻率,如主頻為32 kHz就無法滿足15μs內完成采樣的要求。

  2 一個簡單實用的程序設計方案

  采用上述精簡方案后,基于單片機PIC16F628A(主頻為4 MHz)實現的測溫程序如下:

  到此開始讀9個字節scratchpad,并檢查CRC。如無誤,再次調用rp子程序復位DS18B20,結束本次測量;如出錯,轉出錯處理子程序。為使系統具有一定的容錯能力,出錯時也可將上述程序再試一遍,如連續3次都出現CRC檢查錯則轉出錯處理子程序。

  以上方案已長期(數月)用于氣象溫度測量,正常可靠。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产在线播放不卡| 国产精品美女网站| 丝袜美腿精品国产二区| 国产成人中文字幕| 欧美日韩第二页| 国产精品美女视频网站| 蜜臀精品一区二区| 日韩色av导航| 国产自产在线视频一区| 欧美久久在线观看| 日韩精品视频一区二区在线观看| 国产成人在线免费看| 国产精品日韩在线一区| 麻豆成人av| 性高潮久久久久久久久 | 欧美日韩精品中文字幕一区二区| 韩国一区二区av| 日韩国产精品毛片| 天天干天天色天天爽| 精品少妇在线视频| 午夜精品一区二区三区av| 中文字幕精品一区日韩| 久久综合婷婷综合| 久久免费观看视频| 久久久久久久免费视频| 欧美激情亚洲国产| 久久精品99| 久久99国产精品| 色av中文字幕一区| 日本一区二区三区四区在线观看 | 国产精品久久精品视| 国产精品一区二区你懂得| 国产精品久久久久久久久粉嫩av | 日韩中文字幕一区二区| 亚洲欧洲久久| 日韩美女视频中文字幕| 久久资源av| 久99久在线| 操91在线视频| www国产无套内射com| 日韩中文字幕一区二区|