久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 10分鐘理解DS18B20數字溫度計模塊 [打印本頁]

作者: ppptalk    時間: 2018-4-11 15:57
標題: 10分鐘理解DS18B20數字溫度計模塊
1. 明確目的


DS18B20是美國DALLA半導體公司推出的一種數字化單總線器-數字溫度計。既然是數字溫度計,那么它一定具備這樣的能力-把周圍環境的溫度信號轉換成數字信號。那么這個轉換的結果放到哪里去了呢?存放到了一個叫做Scratchpad的上面,這個Scratchpad是什么意思不用去管它,只需要知道它是一個SRAM就可以了。這個Scratchpad一共有9個字節(BYTE0~BYTE8),轉換的數字信息就存放在BYTE0和BYTE1,如下圖所示。所以,目的就很明確了,對于DS18B20模塊就是去讀Scratchpad的BYTE0和BYTE1.




2. 思路分析


現在目的已經知道了,就是讀Scratchpad(read scratchpad)的BYTE0和BYTE1. 那么怎么樣Read Scratchpad呢?當然是去查看DS18B20的芯片手冊了。閱讀說明書你會發現Read Scratchpad是一個功能命令(DS18B20 FUNCTION COMMANDS),類似的還有其他很多功能命令,如下圖所示:




說明書上已經講的非常清楚了,要求每次在訪問DS18B20的時候一定要遵循以下步驟,如下所示,






簡單的講,你想發送一個功能命令Read Scratchpad, 那必須在它前面加兩步,初始化命令(Initialization)和ROM命令(ROM Command)。初始化命令只有一個,很容易確定,但是ROM命令有多個,需要找到一個與功能命令Read Scratchpad相匹配的ROM命令。如果總線上只有一個DS18B20模塊,選擇Skip ROM就可以了。
這樣整個步驟就很簡單了,先初始化,然后發送skip rom命令,緊接著發送read scratchpad命令,然后開始接收DS18B20傳送的數據,第0和第1個字節就是我們所需要的。這樣讀出來的全部是0和1組成的信號,我們還需要將這些0和1組成的信號翻譯成“溫度值”。怎么樣翻譯,去查看說明書上的溫度-數據對應表就可以了,如下所示:






注意這個表中的數據是補碼形式,如果你只是考慮溫度為正的情況,那么就不用去管原碼,反碼和補碼了。因為對于正數的原碼,反碼和補碼都是一樣的。


如果讀寫操作正確的話,此時計算出來的溫度應該是+85攝氏度。通過這個值可以判斷你的讀寫程序和溫度計算過程是否正確。那么為什么是+85攝氏度呢?在一上電的時候,DS18B20處在一個"idle state",簡單的講就是它沒有工作,沒有采集周圍環境的溫度。Scratchpad的BYTE0和BYTE1里面放的默認值是+85,所以你讀到的其實是它的默認值。如果你想讓DS18B20開始工作,那么很簡單,發送一個Convert T命令就可以了。注意Convert T也是一個功能命令(Function Command),同樣的按照前面的規則,給它添加初始化命令和ROM命令。


這樣整個過程是不是完了呢?注意DS18B20完成溫度的采集和轉換是需要時間的,好比你敲隔壁的門,那你發出“敲門”這個命令后,你同學過來開門是需要時間的,在這個過程中你要做的事情就是等待。同樣的,當你發送一個Convert T命令后,你需要等待DS18B20完成溫度采集和轉換的工作。那么等待多長呢,這個與你設置精度有關,精度越高,需要的時間越長,最多不超過750ms。當然這個過程中,你也可以采用忙信號檢測的方式來判斷。

3. 操作步驟


這樣整個操作步驟就非常簡單了,
  1. (1) initial                       (DS18B20初始化)
  2. (2) skip rom
  3. (3) convert T                 (讓DS18B20開始工作采集周圍溫度)
  4. (4) busy check              (等待DS18B20完成采集)
  5. (5)  initial                        (DS18B20初始化)
  6. (6) skip rom
  7. (7) read scratchpad       (發送讀scratchpad命令)
  8. (8) rcv data                     (接收DS18B20傳過來的數據)
  9. (9) cal                             (計算溫度值)
  10. (10) display                    (把這個值顯示出來)
復制代碼


4. 參考代碼

DS18B20參考代碼.rar (50.62 KB, 下載次數: 238)





上一篇:

10分鐘理解LCD1602液晶顯示模塊
10分鐘理解LCD1602如何顯示自定義字符
10分鐘理解OLED顯示模塊




作者: 15931666846    時間: 2018-4-11 17:36
很給力!
作者: 無時崩潰    時間: 2018-4-11 18:38
感謝樓主分享
作者: 那就微笑吧    時間: 2018-4-11 19:44
厲害厲害
作者: whdiy751124    時間: 2018-4-13 17:25
學習學習
作者: 一笑、    時間: 2018-4-13 20:06
給力      
作者: chaoself    時間: 2018-4-14 08:13
很給力!
作者: dicdoctor    時間: 2018-4-20 14:01
很有用謝謝。

作者: luxujin    時間: 2018-4-20 20:03
很有用謝謝。
作者: liuwenwu    時間: 2018-4-21 10:06
謝謝!剛好用到
作者: VVSuperman    時間: 2018-4-21 19:44
總結的不錯

作者: yzh123    時間: 2018-4-23 11:43
感謝樓主分享
作者: love1120909472    時間: 2018-4-23 16:28
謝謝分享
作者: 虛妄XW    時間: 2018-4-23 21:39
正在學習這個溫度傳感器,感謝樓主分享
作者: 青青之歌    時間: 2018-4-23 23:21
講得很通俗易懂
作者: ZXHREG    時間: 2018-4-24 22:07
簡單

作者: 貝貝屋    時間: 2018-4-25 08:45
新手路過?纯磳W習下。。。。

作者: 此人ID不合法    時間: 2018-4-25 22:22
新人學習了
作者: qq383570990    時間: 2018-4-26 11:26

很給力!
作者: 心有天下    時間: 2018-4-26 15:39
還有很多疑惑,希望讀完作者的思路。非常感謝樓主。
作者: Juneral    時間: 2018-4-26 17:52
不錯的見解
作者: wu307105    時間: 2018-4-26 20:35
學到了謝謝
作者: jfb18331619    時間: 2018-4-27 11:47
好文章啊
作者: xushu1113551892    時間: 2018-4-27 13:02
新手路過
作者: kingdream    時間: 2018-4-27 14:01
很詳細,還是覺得第一個圖6啊
作者: 51heiRay    時間: 2018-4-28 18:12
漲知識
作者: 740014566    時間: 2018-4-29 11:03
學習下
作者: middfat    時間: 2018-4-29 12:20
好好學習,天天控制……
作者: aa11水喵    時間: 2018-5-1 22:29

感謝樓主分享!
作者: MJX74FBI    時間: 2018-5-1 22:44
寫的真好,樓主下回功夫了。
作者: 5f688    時間: 2018-5-2 15:18
理解一下
作者: f193876392    時間: 2018-5-2 16:22
看一下

作者: raymondau    時間: 2018-5-2 16:36
學習一下,放分享
作者: 2669020082    時間: 2018-5-2 16:59
學習學習學習
作者: 吖吖love    時間: 2018-5-2 19:39
正需要啊,學習到了

作者: lixinren45    時間: 2018-5-2 21:03
學習一下.
作者: cy_0211    時間: 2018-5-5 23:08
看看,,,,,,,
作者: 猛虎將軍    時間: 2018-5-6 13:36
好東西,謝謝分享
作者: benbird2011    時間: 2018-5-6 20:27
之前寫了個單1820的 現在需要個雙1820的
作者: qwertyui123    時間: 2018-5-6 23:22
看一看看
作者: yzcde    時間: 2018-5-6 23:33
學習了
作者: wx13808433053    時間: 2018-5-6 23:50
想學習這個,謝謝樓主
作者: 0858dll    時間: 2018-5-7 08:48
了解了解
作者: zhangyaolu    時間: 2018-5-7 16:57
聽說回復才能看到
作者: 18942352071    時間: 2018-5-9 17:50
想要,畢設做不出來,要哭了
作者: wxsky1997    時間: 2018-5-10 19:53
感謝分享
作者: qltk    時間: 2018-5-11 08:58
描述的非常通俗易懂,謝謝。!
作者: lon7085    時間: 2018-5-11 10:30
感謝樓主分享

作者: vstcg    時間: 2018-5-12 22:36
真的很清楚
作者: 黑人盤子    時間: 2018-5-12 23:31
之前就想過類似的做法就是找不到好的傳感器,講的很不錯的
作者: 玩什么玩學習去    時間: 2018-5-13 09:32
厲害厲害
作者: wuzixu    時間: 2018-5-13 20:12
講得很好
作者: 獨家記憶12138    時間: 2018-5-14 13:22
支持樓主
作者: w963135423    時間: 2018-5-14 14:22
寫的不錯,比網上查的更容易理解
作者: lxd951214    時間: 2018-5-14 21:31
10分鐘理解DS18B20數字溫度計模塊
作者: 秋高氣爽112233    時間: 2018-5-14 23:44
學習學習
作者: Live電子    時間: 2018-5-15 09:24
正要弄溫度計,學習了
作者: 劉廣書    時間: 2018-5-15 10:06
謝謝分享
作者: 564    時間: 2018-5-16 09:16
正在學習中
作者: 564    時間: 2018-5-16 09:18
樓主給力,學習學習
作者: 花花21    時間: 2018-5-17 09:08
學習真的很有用
作者: tanyaming    時間: 2018-5-17 10:44
非常好的分享
作者: lzl881005    時間: 2018-5-18 10:36
非常的詳細,支持樓主
作者: nameddd    時間: 2018-5-21 15:27
感謝分享
作者: YeHanWei    時間: 2018-5-21 19:55
講得挺好的,不知道為什么移植到其他板后,初始化總是有錯
作者: zhangtutu    時間: 2018-5-22 06:28
大佬大佬
作者: 西門米粉兒    時間: 2018-5-22 09:28
感謝分享
作者: Jokera    時間: 2018-5-22 12:53
樓主好厲害,總結的太到位了!
作者: HEIYOUB    時間: 2018-5-22 22:17
真的想了解這個芯片,不然這個項目會做的稀里糊涂的

作者: 5314039    時間: 2018-5-22 23:16
謝謝分享
作者: 1933823644    時間: 2018-5-23 00:48
厲害厲害
作者: kltws    時間: 2018-5-23 19:09
不錯的分享

作者: JokerMOMO    時間: 2018-5-24 16:44
棒棒噠
作者: LWSZ    時間: 2018-5-25 09:13
學習 學習
作者: yimiba    時間: 2018-5-25 09:44
感謝分享
作者: jason005    時間: 2018-5-25 11:21
感謝樓主分享
作者: jason005    時間: 2018-5-25 11:22
感謝樓主分享
作者: jason005    時間: 2018-5-25 11:23

感謝樓主分享
作者: tt98    時間: 2018-5-25 20:47
用這個芯片成本太高了,做產品要是對精度沒有太大要求的話還是用NTC劃算!
作者: lichengjie2015    時間: 2018-5-25 23:39
厲害了
作者: 老胖熊    時間: 2018-5-26 15:23
講的很清楚
作者: 萬般皆下品    時間: 2018-5-28 22:24
來學習學習
作者: smartphone    時間: 2018-5-28 22:50
謝謝 慢慢學習
作者: 807874484    時間: 2018-5-29 13:21
感謝

作者: BigWheels    時間: 2018-6-3 22:32
謝謝講授
作者: 837657313    時間: 2018-6-4 07:57
講的很清楚
作者: zsyzdx    時間: 2018-6-6 22:13
感謝樓主。。。。。。。。。。。。。。。。。。。。。。。。。。。。
作者: swzz    時間: 2018-6-7 16:01
正要學習18b20,謝謝
作者: 78336478    時間: 2018-6-7 19:32
6666666
作者: 轉角遇到dogs    時間: 2018-6-10 16:06
好資料,感謝
作者: manpingshui    時間: 2018-6-10 20:45
在哪呢我沒看見啊

作者: 杰克汗    時間: 2018-6-11 00:45
超級厲害很詳細
作者: yuki_ring    時間: 2018-6-11 08:23
很詳細,初步了解了,謝謝樓主
作者: dingqinhong    時間: 2018-6-24 11:12
感謝樓主分享 對我來說很有用
作者: 天霸動霸成    時間: 2018-6-24 22:12
66666666
作者: 沈經理    時間: 2018-6-24 22:57
寫的很好,簡潔明了
作者: gogo7707    時間: 2018-6-25 12:49
剛寫樓主分享
作者: 聽雪    時間: 2018-6-25 15:09
DS18B20傳感器剛好用到
作者: SKU    時間: 2018-6-25 17:55
看一看,瞧一瞧
作者: kkxyjf    時間: 2018-6-25 20:10
想看,想學習!




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 人人天天操| 日韩电影在线一区 | 国产亚洲精品久久久久动 | 欧美一区二区三区 | 亚洲精选一区二区 | 国产91视频免费 | 激情六月丁香婷婷 | 欧美一级黄色免费看 | 色婷婷久久综合 | 成人精品一区二区三区中文字幕 | 国产精品久久网 | 亚洲激情在线观看 | 午夜久久av| 国产精品成人久久久久 | 成人一区二区三区 | 国产精品不卡视频 | 99精品一区二区 | 日韩2020狼一二三 | 精品久久精品 | 国产第一页在线观看 | 亚洲国产精久久久久久久 | 一片毛片 | 狠狠操狠狠干 | 国产精品视频在线播放 | 91国内外精品自在线播放 | 成人激情免费视频 | 日韩在线中文字幕 | 日韩中文一区二区三区 | 九九久久精品 | 天天看天天摸天天操 | 欧美成视频 | 日本久久综合网 | 精品一区av | 成人久久18免费网站 | h漫在线观看 | 一区二区三区亚洲精品国 | 久久精品二区 | 羞羞视频免费在线观看 | 理论片免费在线观看 | 犬夜叉在线观看 | 国产精品九九九 |