<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > I2C總線(xiàn)之(三)---以C語(yǔ)言理解IIC

I2C總線(xiàn)之(三)---以C語(yǔ)言理解IIC

作者: 時(shí)間:2016-12-16 來(lái)源:網(wǎng)絡(luò ) 收藏
void init()//總線(xiàn)初始化 將總線(xiàn)都拉高一釋放總線(xiàn) 發(fā)送啟動(dòng)信號前,要先初始化總線(xiàn)。即總有檢測到總線(xiàn)空閑才開(kāi)始發(fā)送啟動(dòng)信號 { sda=1; delay(); scl=1; delay(); } //*************************************************************************** void write_byte(uchar date) //寫(xiě)一個(gè)字節 { uchar i,temp; temp=date; for(i=0;i<8;i++) { temp=temp<<1; scl=0;//拉低SCL,因為只有在時(shí)鐘信號為低電平期間按數據線(xiàn)上的高低電平狀態(tài)才允許變化;并在此時(shí)和上一個(gè)循環(huán)的scl=1一起形成一個(gè)上升沿 delay(); sda=CY; delay(); scl=1;//拉高SCL,此時(shí)SDA上的數據穩定 delay(); } scl=0;//拉低SCL,為下次數據傳輸做好準備 delay(); sda=1;//釋放SDA總線(xiàn),接下來(lái)由從設備控制,比如從設備接收完數據后,在SCL為高時(shí),拉低SDA作為應答信號 delay(); } //*************************************************************************** uchar read_byte()//讀一個(gè)字節 { uchar i,k; scl=0; delay(); sda=1; delay(); for(i=0;i<8;i++) { scl=1;//上升沿時(shí),IIC設備將數據放在sda線(xiàn)上,并在高電平期間數據已經(jīng)穩定,可以接收啦 delay(); k=(k<<1)|sda; scl=0;//拉低SCL,使發(fā)送端可以把數據放在SDA上 delay(); } return k; } //*************************************************************************** void write_add(uchar address,uchar date)//任意地址寫(xiě)一個(gè)字節 { start();//啟動(dòng) write_byte(0xa0);//發(fā)送從設備地址 respons();//等待從設備的響應 write_byte(address);//發(fā)出芯片內地址 respons();//等待從設備的響應 write_byte(date);//發(fā)送數據 respons();//等待從設備的響應 stop();//停止 } //*************************************************************************** uchar read_add(uchar address)//讀取一個(gè)字節 { uchar date; start();//啟動(dòng) write_byte(0xa0);//發(fā)送發(fā)送從設備地址 寫(xiě)操作 respons();//等待從設備的響應 write_byte(address);//發(fā)送芯片內地址 respons();//等待從設備的響應 start();//啟動(dòng) write_byte(0xa1);//發(fā)送發(fā)送從設備地址 讀操作 respons();//等待從設備的響應 date=read_byte();//獲取數據 stop();//停止 return date;//返回數據 }


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: I2C總線(xiàn)C語(yǔ)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>