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

標(biāo)題: ARDUINO的I2C通信詳解 [打印本頁]

作者: piaolin    時間: 2015-10-30 11:53
標(biāo)題: ARDUINO的I2C通信詳解
        最基本的功夫,今天可以坐下來做一個總結(jié)。
        I2C
是非常普通的通信方式,Arduino單片機集成了I2C庫,可以直接調(diào)用幾個函數(shù)實現(xiàn)I2C通信。Arduino MEGA2560開發(fā)板I2C接口,在班上對應(yīng)的20--SDA 21--SCL。





                                                                                       圖1


        Arduino的I2C庫是Wire.h。常用庫函數(shù)如下:
        Wire.beginTransmission(Addr);
        Wire.write(data);
        Wire.endTransmission(void);

        Wire.requestFrom(Addr, num);
        Wire.available();
        Wire.read()。
        每個數(shù)據(jù)發(fā)出后,都必須有應(yīng)答,只有在等到應(yīng)答后,才能發(fā)出下一個數(shù)據(jù)或者指令。
        下面是一段代碼:
        
Wire.beginTransmission(0x01);
        Wire.write(0xAA);
        如果0x01發(fā)出后I2C器件沒有應(yīng)答,那么0xAA就不能發(fā)送,這時候用示波器或者邏輯分析儀看,就只能看到發(fā)出了Start信號和數(shù)據(jù)0x01。
        Wire.beginTransmission(Addr)只發(fā)送起始信號和I2C地址,Addr是I2C總線地址。
        Wire.write(data)只發(fā)送數(shù)據(jù),data就是希望發(fā)送的數(shù)據(jù),而且是發(fā)一次,地址就自動加一。
        Wire.endTransmission(void)發(fā)送停止信號。
        Wire.requestFrom(Addr, num)向已知地址器件獲取連續(xù)num個數(shù)據(jù),這時候需要注意,數(shù)據(jù)只是存起來了,并沒有真正返回。
        Wire.read()就是用來讀回前面那些存起來的數(shù)據(jù),而且是讀一次地址自動加一。
        Wire.available()則返回已經(jīng)存了多少個數(shù)據(jù)。






作者: 1458040565    時間: 2018-12-10 14:33
能不能發(fā)送double類型或者float類型的數(shù)據(jù),write只能發(fā)送byte類型的數(shù)據(jù)




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产免费黄网 | 成人黄色电影在线播放 | 国产成人精品一区二区三区在线 | 国产精品视频999 | 男女爱爱福利视频 | 国产亚洲精品久久yy50 | 91国内精精品久久久久久婷婷 | 亚洲人人| 精品不卡 | 国产日产久久高清欧美一区 | 精品国产一二三区 | 婷婷久久综合 | 国产69精品久久99不卡免费版 | 免费成人在线网站 | 成人av网站在线观看 | 秋霞影院一区二区 | 一区二区三区在线播放 | 婷婷色网| 中文字幕成人免费视频 | www.狠狠干 | 中文字幕亚洲一区 | 激情网五月天 | 美日韩精品 | 久久精品欧美一区二区三区不卡 | 在线成人免费视频 | 天天爽天天操 | 久久专区 | av中文字幕在线 | 欧美一区二区大片 | 国产精品视频中文字幕 | 国产一区视频在线 | 91精品在线播放 | 福利视频网 | 亚洲一二三区精品 | 日本一二三区在线观看 | 成人免费视频 | 亚洲人人舔人人 | 精品国产一区二区三区久久久久久 | 欧美在线一区二区三区 | 欧美精选一区二区 | 国产综合在线视频 |