新聞中心

        EEPW首頁 > 嵌入式系統 > 牛人業話 > 例說單片機數據通信之單總線數據傳輸

        例說單片機數據通信之單總線數據傳輸

        作者:liklon 時間:2013-12-20 來源:電子產品世界 收藏

          純干不了大事,必須得配上各種外設,那么了解與傳感器之間的就顯得必不可少了。常見的方式有SPI,IIC,RS232,單總線等等。每種通信方式都有相應的時序圖,分析時序圖并完成代碼的編寫是單片機學習者的必修課。本文以為例分析一下單總線數據傳輸,完整的程序以及仿真的下載鏈接:單片機單總線例子程序及仿真.zip

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

          是單總線數據傳輸,因此對于時序的要求就非常的高,學會分析其時序圖是非常有必要的。

          1.初始化時序圖分析:

          首先是由總線拉低總線,維持480us。在480us后釋放總線,由上拉電阻講總線拉高。等待5-60us后,開始響應,會將數據總線拉低60-240us.之后便釋放總線,由上拉電阻拉高總線。轉換為代碼如下:

        u8 dsbInit() //初始化,返回0表示DS18B20無反應,反之有響應
        {
          ????? dsbDQStat(0); //拉低總線
          ????? delay500us(); //拉低總線一段時間
          ????? dsbDQStat(1); //釋放總線
          ????? delay60us(); //等待DS18B20響應
          ????? if(dsb_DQ) //如果沒有相應直接返回0
          ????? {
          ????? return 0;
          }
          delay240us(); //有響應則等待響應結束
          return 1; //返回初始化狀態
        }

          2.讀時序圖分析:

        單片機相關文章:單片機教程


        單片機相關文章:單片機視頻教程


        單片機相關文章:單片機工作原理


        數字通信相關文章:數字通信原理


        通信相關文章:通信原理


        上拉電阻相關文章:上拉電阻原理

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 宝山区| 惠来县| 靖宇县| 陇西县| 盈江县| 和龙市| 兰西县| 黄平县| 黑龙江省| 云霄县| 张掖市| 金湖县| 南城县| 灵山县| 古蔺县| 丹凤县| 南充市| 拉萨市| 大姚县| 申扎县| 景德镇市| 罗田县| 岱山县| 山东| 仁寿县| 莆田市| 张家港市| 丰镇市| 华容县| 香河县| 罗定市| 专栏| 文登市| 玉树县| 德清县| 新丰县| 鲁甸县| 鸡泽县| 桦南县| 上杭县| 宿松县|