找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機程序 為什么在這里必須把ds18b20釋放掉,不釋放掉接受的y信號“1”不還是可...

[復制鏈接]
跳轉到指定樓層
樓主
ID:1055423 發(fā)表于 2023-1-31 18:34 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
//接受一個位
unsigned char onewire_receive()
{
        int i;
        unsigned char Bit;
        DS18B20_DQ=0;
        i = 2;while (--i);//延遲5微秒
        DS18B20_DQ=1;//為什么在這里必須把ds18b20釋放掉,不釋放掉接受的y信號“1”不還是可以正常接受嗎?在我的理解里,請問各位可以給個講解么
        i = 2;while (--i);//延遲5微秒
        Bit=DS18B20_DQ;
        i = 24;while (--i);//延遲50微秒
        return Bit;
}
//ds18b20讀一個位的時序圖奉上






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

使用道具 舉報

沙發(fā)
ID:419968 發(fā)表于 2023-1-31 19:57 | 只看該作者
黑線表示主機拉低總線,灰線是18b20拉低總線,單主機拉低總線一定后,釋放總線然后等待18b20,可以判斷18
回復

使用道具 舉報

板凳
ID:419968 發(fā)表于 2023-1-31 19:58 | 只看該作者
B20是否存在,
回復

使用道具 舉報

地板
ID:161164 發(fā)表于 2023-1-31 22:17 | 只看該作者
傳統(tǒng)51單片機的準雙向IO結構
準雙向IO置1時是弱上拉,只能輸出很小的電流(150~270uA),外部容易拉低
準雙向IO置0時是對地短路,能接受比較大的電流(6~20mA),外部很難拉高
所以要讀取外部信號前要把IO置1
令外部電路有必要時可以拉低電平
回復

使用道具 舉報

5#
ID:1055423 發(fā)表于 2023-2-1 11:46 | 只看該作者
lkc8210 發(fā)表于 2023-1-31 22:17
傳統(tǒng)51單片機的準雙向IO結構
準雙向IO置1時是弱上拉,只能輸出很小的電流(150~270uA),外部容易拉低
準雙 ...

感謝您的回答
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表