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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5028|回復: 2
打印 上一主題 下一主題
收起左側

實現在同一個STM32 IO口上接多個DS18B20,進行多點溫度測量教程

[復制鏈接]
跳轉到指定樓層
樓主
ID:457339 發表于 2020-3-4 13:18 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如何在32單片機上掛多個DS18B20,見鏈接附件
首先包保證對 DS18B20 讀寫操作的函數沒有問題基本的
//從 DS18B20 讀取一個位
//返回值:1/0
u8 DS18B20_Read_Bit(void)              // read one bit
{
u8 data;
DS18B20_IO_OUT();//SET PA0 OUTPUT DS18B20_DQ_OUT=0;
delay_us(2); DS18B20_DQ_OUT=1; DS18B20_IO_IN();//SET PA0 INPUT delay_us(12); if(DS18B20_DQ_IN)data=1;
else data=0;
delay_us(50);
return data;
}

//從 DS18B20 讀取一個字節
//返回值:讀到的數據

u8 DS18B20_Read_Byte(void)              // read one byte

{
u8 i,j,dat;
dat=0;
for (i=1;i<=8;i++)
{
j=DS18B20_Read_Bit();
dat=(j<<7)|(dat>>1);
}
return dat;
}

//寫一個字節到 DS18B20
//dat:要寫入的字節

void DS18B20_Write_Byte(u8 dat)

{
u8 j;
u8 testb;
DS18B20_IO_OUT();//SET PA0 OUTPUT;
for (j=1;j<=8;j++)
{
testb=dat&0x01;
dat=dat>>1;
if (testb)

{
}
else
{


}
}
}



DS18B20_DQ_OUT=0;// Write 1 delay_us(2); DS18B20_DQ_OUT=1; delay_us(60);
DS18B20_DQ_OUT=0;// Write 0 delay_us(60); DS18B20_DQ_OUT=1; delay_us(2);

因為單片機只對一個 DS18B20 進行操作,就不需要讀取 ROM 編碼以及匹配 ROM 編碼了, 只要用跳過 ROM(0XCC)命令。
再進行溫度的讀取和轉換就可以得到溫度值了

多點溫度讀取

但是有時我們做一個項目可能要測量多個位置的溫度,這個時候我們任然可以選用 DS18B20 來完成這項工作。每一個 DS18B20 都有自己的 48 位序列號,我們可以通過這個序 列號在同一個 IO 口上尋找不同的 DS18B20。然后接下來的操作就和讀取一個 DS18B20 溫度 的是一樣的。

得到一個 DS18B20 的光刻 ROM 是實現多點溫度采集的前提,首先初始化 DS18B20 的狀 態,在向 DS18B20 寫讀 ROM(0X33)的指令,再接收數據即可。如下圖。
讀取出的光刻 ROM 可以通過下面的函數進行檢驗是否正確

得到的光刻 ROM 可以通過串口,打印到上位機上
然后在上位機中可以看到這樣的數據(看不清可以放大 WORD 來看)
要知道 64 位的光刻 ROM 中有 8 位是產品類型標號,每個 DS18B20 都是一樣的,0X28。 要注意的問題是在上位機超過 9 的數字,并不是以a,b,c,d……..的形式顯示,而是以 10,
11,12…….的形式顯示。

然后在通過自己的轉換就可得到光刻 ROM 了。

得到了光刻 ROM 再借助這兩個函數就可以進行溫度讀取了

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:416950 發表于 2020-3-31 14:32 | 只看該作者
你好,請教你一個問題,這個匹配ROM函數從哪里看出如何匹配3個,顯示如何顯示三個的溫度。指點一下
回復

使用道具 舉報

板凳
ID:737981 發表于 2020-5-25 16:38 | 只看該作者
你好,沒有看到附件啊

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美视频二区 | 欧美色综合一区二区三区 | 亚洲一区二区三区 | 一级大黄色片 | 色婷婷国产精品综合在线观看 | 精品国产第一区二区三区 | 亚洲日本三级 | 亚洲色在线视频 | 91在线一区 | 中文在线а√在线8 | 三级在线免费观看 | 欧洲视频一区 | 欧美性视频在线播放 | 婷婷色国产偷v国产偷v小说 | 亚洲视频在线看 | 国产一区二区三区视频免费观看 | 五月婷婷在线播放 | 午夜爽爽爽男女免费观看影院 | www.操com| 亚洲视频二区 | 一区二区国产在线 | 国产999精品久久久久久 | 国产精品人人做人人爽 | 欧美性网站 | 国产一区二区精品在线观看 | 欧美视频在线播放 | 黄色成人免费看 | 日韩中文字幕免费在线 | 亚洲一区不卡 | 请别相信他免费喜剧电影在线观看 | 久久91av| 亚洲九色 | 亚洲精品免费视频 | 成人二区 | 久久九九99| 国产精品一区二区久久 | 日韩二区三区 | 亚洲精品99999| 精品熟人一区二区三区四区 | 国产精品视频久久 | 免费毛片网站在线观看 |