新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單總線協議(ds18b20)讀寫詳解

        單總線協議(ds18b20)讀寫詳解

        作者: 時間:2016-12-01 來源:網絡 收藏
        1、時序圖

        2、51c代碼
        3、總結

        本文引用地址:http://www.104case.com/article/201612/324225.htm

        1、時序圖
        1、初始化

        2、 寫

        3、 讀

        2、代碼

        #include
        sbit DQ = P2^0; //定義總線的I/O管腳
        void SendByte(unsigned char dat);
        void Delay4us() //延時4us
        {
        ;
        }
        void Delay(unsigned char j) //一個循環15us
        {
        unsigned char i;
        while(j--)
        {
        i = 5;
        while (--i);
        }
        }
        bit d18b20_qs() //18b20 起始
        {
        bit dat;
        DQ = 1; //DQ復位
        Delay4us();
        DQ = 0; //拉低總線
        Delay(35); //這里延時大概 525us
        DQ = 1; //拉高總線
        Delay(2); //這里延時大概 30us
        dat = DQ; //讀取返回值(0:有18b20存在 1:是沒有)
        Delay(2);
        return dat; //返回數值
        }

        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 阜宁县| 延安市| 郧西县| 当涂县| 鞍山市| 泰顺县| 阳城县| 彭州市| 三原县| 闸北区| 永德县| 泾源县| 吉林省| 罗山县| 宜川县| 香格里拉县| 灵寿县| 双鸭山市| 来宾市| 洞口县| 于都县| 双峰县| 南召县| 砀山县| 会宁县| 承德市| 金沙县| 福州市| 富源县| 泌阳县| 丹阳市| 彭州市| 朝阳市| 桂林市| 南昌市| 云南省| 安达市| 全州县| 阿图什市| 哈尔滨市| 德州市|