0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【Z站推薦】基于 EsDA MPC-ZC1 快速實(shí)現(xiàn) I2C采集監(jiān)測(cè)

ZLG致遠(yuǎn)電子 ? 2022-10-18 10:11 ? 次閱讀

EsDA開發(fā)平臺(tái)為產(chǎn)品上線提供動(dòng)力。本文將基于EsDA開發(fā)平臺(tái),通過(guò)拖拽、連線方式,10分鐘快速搭建一個(gè)I2C數(shù)據(jù)采集監(jiān)測(cè)業(yè)務(wù),為客戶產(chǎn)品開發(fā)、部署、上線縮短周期。

32bcc244-4cc9-11ed-b116-dac502259ad0.jpg ?簡(jiǎn)介

I2C 是一種串行通信總線,只需SCK、SDA兩根雙向I/O線即可在連接到總線上的設(shè)備之間傳送信息。因其所需引腳少,可擴(kuò)展性強(qiáng),數(shù)據(jù)傳輸速率快等,所以現(xiàn)被廣泛使用于IC間的通訊。在各種嵌入式應(yīng)用場(chǎng)景中,使用I2C總線通信的傳感器也有很多。比如 eeprom、溫濕度傳感器、流量傳感器、壓力傳感器等。

EsDA 平臺(tái)在使用I2C總線通信時(shí)只需要通過(guò)拖拽節(jié)點(diǎn)、連線繪制流圖,即可實(shí)現(xiàn)從I2C從機(jī)讀取數(shù)據(jù),大大的簡(jiǎn)化了開發(fā)流程,縮短了項(xiàng)目開發(fā)周期,為客戶產(chǎn)品搶占市場(chǎng)提供先機(jī)。

本文基于EsDA開發(fā)平臺(tái),MPC_ZC1作為I2C主機(jī)設(shè)備,定時(shí)從TPS02RAH從機(jī)設(shè)備中去讀取溫度寄存器的值,并將采集到的溫度值上傳到ZWS云端,實(shí)現(xiàn)溫度實(shí)時(shí)監(jiān)控功能,該實(shí)驗(yàn)主要用了到timer、fscript、i2c_master_read、log和zws節(jié)點(diǎn),具體實(shí)現(xiàn)請(qǐng)見下文。


32c620dc-4cc9-11ed-b116-dac502259ad0.jpg I2C相關(guān)節(jié)點(diǎn)介紹

I2C外設(shè)共有3個(gè)幾點(diǎn),分別是i2c_master、i2c_master_read和i2c_master_write節(jié)點(diǎn)。i2c_master節(jié)點(diǎn)主要用來(lái)配置I2C的設(shè)備名稱以及設(shè)備參數(shù),i2c_master_read節(jié)點(diǎn)主要用于讀取從機(jī)設(shè)備的數(shù)據(jù),i2c_master_write節(jié)點(diǎn)主要用于向從機(jī)設(shè)備寫入數(shù)據(jù)。

1. i2c_master_write節(jié)點(diǎn)

I2C主機(jī)向從機(jī)設(shè)備寫數(shù)據(jù),可配置從機(jī)相關(guān)的設(shè)備信息和通信參數(shù)。

1.1 屬性

32d017b8-4cc9-11ed-b116-dac502259ad0.png

  • 名稱(name):節(jié)點(diǎn)名稱,用于索引查找本節(jié)點(diǎn);
  • 顯示名稱(displayName):用于畫布上顯示的名稱;
  • 主機(jī)配置(i2c master config):綁定一個(gè)I2C主機(jī)的配置節(jié)點(diǎn);
  • 從機(jī)地址(Slave address):從機(jī)設(shè)備的地址;
  • 地址位數(shù)(address bits):從機(jī)的地址位數(shù),由于7位尋址和10位尋址是兼容的所以可以在同一個(gè)I2C總線上同時(shí)使用7位和10位兩種不同模式的設(shè)備,可配為7位(7 bits);10位(10 bits);
  • 是否忽略從機(jī)應(yīng)答(whether to ignore the slave ack signal):可配:忽略從機(jī)應(yīng)答(ignore);不忽略從機(jī)應(yīng)答(do not ignore);
  • 從機(jī)設(shè)備寄存器地址位寬(SubAddressBitWidth):可配:do not set sub-address表示不設(shè)置從機(jī)的寄存器地址寬度;1 bytes sub-address表示從機(jī)具有1字節(jié)(8位)的寄存器地址寬度;2 bytes sub-address表示從機(jī)具有2字節(jié)(16位)的寄存器地址寬度;4 bytes sub-address表示從機(jī)具有4字節(jié)(32位)的寄存器地址寬度;
  • 從機(jī)設(shè)備寄存器地址(SubAddress):從機(jī)設(shè)備子地址(寄存器地址)。注意從機(jī)設(shè)備寄存器地址位寬為0則不能設(shè)置從機(jī)子地址。

1.2輸入

payload :輸入數(shù)據(jù)流,存放需要寫入的數(shù)據(jù)。此節(jié)點(diǎn)接收如下類型的數(shù)據(jù):binary type(二進(jìn)制類型); wbuffer object type(指針類型); string type(字符串類型);

payloadLength :需要寫入的數(shù)據(jù)長(zhǎng)度,單位字節(jié);

  • subAddress :從機(jī)設(shè)備子地址(寄存器地址)。注意從機(jī)設(shè)備寄存器地址位寬為0則不能設(shè)置從機(jī)子地址。

1.3輸出

sink類型節(jié)點(diǎn)一般并不具備數(shù)據(jù)輸出。

2.i2c_master_read節(jié)點(diǎn)

I2C主機(jī)向從機(jī)設(shè)備中讀數(shù)據(jù):對(duì)從機(jī)的設(shè)備地址等進(jìn)行輸入/配置,最后將從機(jī)中讀取到數(shù)據(jù)和長(zhǎng)度等信息進(jìn)行輸出。

2.1 屬性

32f81204-4cc9-11ed-b116-dac502259ad0.png

名稱(name):節(jié)點(diǎn)名稱,用于索引查找本節(jié)點(diǎn);

顯示名稱(displayName):用于畫布上顯示的名稱;

主機(jī)配置(i2c master config):綁定一個(gè)I2C主機(jī)的配置節(jié)點(diǎn);

從機(jī)地址(Slave address):從機(jī)設(shè)備的地址;

地址位數(shù)(address bits):從機(jī)的地址位數(shù),可配為7位(7 bits);10位(10 bits);

是否忽略從機(jī)應(yīng)答(whether to ignore the slave ack signal):可配:忽略從機(jī)應(yīng)答(ignore);不忽略從機(jī)應(yīng)答(do not ignore);

是否發(fā)送應(yīng)答(whether send nak):當(dāng)主機(jī)讀取數(shù)據(jù)時(shí)主機(jī)是否發(fā)送給從機(jī)的應(yīng)答ACK信號(hào); do not send表示不發(fā)送主機(jī)ACK信號(hào); send表示發(fā)送主機(jī)的ACK信號(hào);

從機(jī)設(shè)備寄存器地址位寬(SubAddressBitWidth):可配:do not set sub-address表示不設(shè)置從機(jī)的寄存器地址寬度;1 bytes sub-address表示從機(jī)具有1字節(jié)(8位)的寄存器地址寬度;2 bytes sub-address表示從機(jī)具有2字節(jié)(16位)的寄存器地址寬度;4 bytes sub-address表示從機(jī)具有4字節(jié)(32位)的寄存器地址寬度;

從機(jī)設(shè)備寄存器地址(SubAddress):從機(jī)設(shè)備子地址(寄存器地址)。注意從機(jī)設(shè)備寄存器地址位寬為0則不能設(shè)置從機(jī)子地址。

2.2輸入

Length :讀的數(shù)據(jù)長(zhǎng)度,單位字節(jié);

subAddress :從機(jī)設(shè)備子地址(寄存器地址)。注意從機(jī)設(shè)備寄存器地址位寬為0則不能設(shè)置從機(jī)子地址;

2.3輸出

payload :讀緩沖區(qū),用于存放接受讀取到的數(shù)據(jù),類型pointer.如果下一個(gè)節(jié)點(diǎn)為fscript,則可以使用rbuffer讀取數(shù)據(jù);

payloadLength :讀的數(shù)據(jù)長(zhǎng)度,單位字節(jié);

  • subAddress :從機(jī)設(shè)備子地址(寄存器地址)。注意從機(jī)設(shè)備寄存器地址位寬為0則沒有從機(jī)子地址。

3.i2c_master配置節(jié)點(diǎn)

I2C主機(jī)的通用配置。

3.1 屬性

330028cc-4cc9-11ed-b116-dac502259ad0.png

名稱(name):節(jié)點(diǎn)名稱,用于索引查找本節(jié)點(diǎn),在某些aw_flow_designer的版本被隱藏起來(lái)了,只能通過(guò)點(diǎn)擊i2c_master_read和i2c_master_write這兩個(gè)節(jié)點(diǎn)主機(jī)配置去顯現(xiàn);

顯示名稱(displayName):用于畫布上顯示的名稱;

設(shè)備名(Devname):I2C主機(jī)設(shè)備路徑名;

時(shí)鐘頻率(clock frequency):I2C設(shè)備的SCK時(shí)鐘頻率。

3.2輸入

config配置節(jié)點(diǎn)一般不具備數(shù)據(jù)輸入。

3.3輸出

config配置節(jié)點(diǎn)一般不具備數(shù)據(jù)輸出。


32c620dc-4cc9-11ed-b116-dac502259ad0.jpg 業(yè)務(wù)開發(fā)

1. 采集PT100的實(shí)時(shí)溫度

MPC_ZC1作為I2C主機(jī)設(shè)備,定時(shí)從TPS02RAH從機(jī)設(shè)備中去讀取溫度寄存器的值,并將采集到的溫度值上傳到ZWS云端,實(shí)現(xiàn)溫度實(shí)時(shí)監(jiān)控。

該實(shí)驗(yàn)主要用到timer、fscript、i2c_master_read、log和zws節(jié)點(diǎn):

  • timer:timer節(jié)點(diǎn)用于定時(shí)觸發(fā)采集PT100的溫度;
  • i2c_master_read:i2c_master_read節(jié)點(diǎn)主要用于從從機(jī)設(shè)備讀取數(shù)據(jù);
  • fscript:fscript節(jié)點(diǎn)主要用于對(duì)TPS02RAH從機(jī)設(shè)備讀取的數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理
  • 和對(duì)i2c_master_read節(jié)點(diǎn)進(jìn)行輸入配置(配置要讀取的字節(jié)長(zhǎng)度);
  • log:log對(duì)采集到的溫度值進(jìn)行打印顯示;
  • zws:zws節(jié)點(diǎn)將fscript節(jié)點(diǎn)輸出溫度值上報(bào)到zws云端。

1.1添加節(jié)點(diǎn)并連線周期性的去讀取I2C從機(jī)TPS02RAH設(shè)備溫度寄存器的值,將timer,fscript,i2c_master_read,log節(jié)點(diǎn)添加到畫布中,并連線繪圖。330c520a-4cc9-11ed-b116-dac502259ad0.png1.2?配置節(jié)點(diǎn)雙擊timer節(jié)點(diǎn),打開屬性面板設(shè)置定時(shí)周期(ms),周期性的去讀取TPS02的溫度值。雙擊i2c_master_read的輸入節(jié)點(diǎn)fscript,并查看TPS02RAH溫度傳感器的數(shù)據(jù)手冊(cè)。得知TPS02RAH溫度寄存器的值有6個(gè)字節(jié),且數(shù)據(jù)傳輸順序:先傳輸高字節(jié)后傳輸?shù)妥止?jié),可知前3個(gè)字節(jié)存儲(chǔ)通道1的溫度測(cè)試結(jié)果,后3個(gè)字節(jié)存儲(chǔ)通道2的溫度測(cè)試結(jié)果。所以i2c_master_read節(jié)點(diǎn)的輸入:fscript需讀取兩個(gè)通道6個(gè)字節(jié)的數(shù)據(jù)。其他的參數(shù)可在i2c_master_read節(jié)點(diǎn)的屬性中配置。33171dca-4cc9-11ed-b116-dac502259ad0.png雙擊i2c_master_read節(jié)點(diǎn),打開屬性面板根據(jù)TPS02RAH的數(shù)據(jù)手冊(cè)設(shè)置如下圖所示,并點(diǎn)擊I2C主機(jī)配置的鉛筆圖標(biāo)去設(shè)置I2C主機(jī)設(shè)備路徑名和時(shí)鐘頻率。331fd564-4cc9-11ed-b116-dac502259ad0.png雙擊i2c_master_read的輸出消費(fèi)者節(jié)點(diǎn)fscript,將讀取到溫度寄存器的兩個(gè)通道溫度根據(jù)下面的溫度轉(zhuǎn)換公式將溫度輸出并打印到log中。TPS02ARH的溫度轉(zhuǎn)換公式:兩通道六字節(jié)數(shù)據(jù),前三位字節(jié)數(shù)據(jù)對(duì)應(yīng)通道 1,后三位字節(jié)數(shù)據(jù)對(duì)應(yīng)通道 2,操作方法一樣,取通道一數(shù)據(jù)分析如下:3329dadc-4cc9-11ed-b116-dac502259ad0.png當(dāng) value≥223?時(shí),即當(dāng)前測(cè)量溫度為負(fù)溫度值:3334735c-4cc9-11ed-b116-dac502259ad0.png

當(dāng) value<223時(shí), 即當(dāng)前測(cè)量溫度為正溫度值:

333dc0a6-4cc9-11ed-b116-dac502259ad0.png

i2c_master_read的輸出消費(fèi)者節(jié)點(diǎn)fscript的內(nèi)容如下:

//將讀取的6個(gè)uint8_t類型的數(shù)據(jù)打印
rb = rbuffer_create(msg.payload, msg.payloadLength)

temperature1 = 0 //通道1的溫度
temperature2 = 0 //通道2的溫度
for (var i = 0; i < msg.payloadLength; i = i+1) {
    d = rbuffer_read_uint8(rb);
    if(i > 2){
        temperature2 = temperature2 + (u32(d)<<(8*(5-i)));
    }
     temperature1 = temperature1 + (u32(d)<<(8*(2-i)));
}
if (temperature1 < 8388608) {//temperature<2^23正溫度
    msg.temperature1 = temperature1/8192
} else {//負(fù)溫度
    msg.temperature1 = -(16777216 - temperature1)/8192
}
if (temperature2 < 8388608) {
    msg.temperature2 = temperature2/8192
} else {//負(fù)溫度
    msg.temperature2 = -(16777216 - temperature2)/8192
}
msg.payload = join(",","channel 1:",msg.temperature1,"channel 2:",msg.temperature2)

print(msg.payload)

1.3下載驗(yàn)證

選擇流圖下載接口,并點(diǎn)擊運(yùn)行按鈕。

33507912-4cc9-11ed-b116-dac502259ad0.png

完成流圖下載,根據(jù)實(shí)物連線可知PT100連接的是通道1,隨著手捂探頭,可以看到channel 1(通道1)的溫度從27.67上升到30.23,因?yàn)閏hannel 2(通道2)沒有接PT100的探頭所以數(shù)值保持850不變。

33597666-4cc9-11ed-b116-dac502259ad0.jpg

3380777a-4cc9-11ed-b116-dac502259ad0.png

3386712a-4cc9-11ed-b116-dac502259ad0.png

1.4接入zws云端

登錄:https://www.zlgcloud.com/按照EsDA MPC-ZC1應(yīng)用:IoT監(jiān)測(cè)控制系統(tǒng)(一)這篇文章中接入云端方法的介紹,在ZWS云端上為MPC-ZC1添加新的數(shù)據(jù)點(diǎn),如下圖所示:添加通道1 的溫度顯示:

338b4aba-4cc9-11ed-b116-dac502259ad0.png

添加通道2 的溫度顯示:

33b1bc4a-4cc9-11ed-b116-dac502259ad0.png

在AW_FLOW Designer畫布中添加zws_iot_data_out節(jié)點(diǎn)并連線。

33b97dcc-4cc9-11ed-b116-dac502259ad0.png

輸入對(duì)應(yīng)的三元組信息并選擇正確的數(shù)據(jù)上報(bào)方式和目標(biāo)鍵值對(duì)。

33bef86a-4cc9-11ed-b116-dac502259ad0.png

下載流圖并觀察云端設(shè)備列表的實(shí)時(shí)數(shù)據(jù)如下圖所示。

33c83c36-4cc9-11ed-b116-dac502259ad0.png

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 監(jiān)測(cè)
    +關(guān)注

    關(guān)注

    2

    文章

    3391

    瀏覽量

    44243
  • I2C
    I2C
    +關(guān)注

    關(guān)注

    28

    文章

    1452

    瀏覽量

    122272
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    I2C基本指南

    電子發(fā)燒友網(wǎng)站提供《I2C基本指南.pdf》資料免費(fèi)下載
    發(fā)表于 09-10 09:40 ?0次下載
    <b class='flag-5'>I2C</b>基本指南

    具有熱插拔功能和IEC ESD功能的隔離式I2C緩沖器如何改進(jìn)隔離式I2C

    電子發(fā)燒友網(wǎng)站提供《具有熱插拔功能和IEC ESD功能的隔離式I2C緩沖器如何改進(jìn)隔離式I2C.pdf》資料免費(fèi)下載
    發(fā)表于 09-07 09:58 ?0次下載
    具有熱插拔功能和IEC <b class='flag-5'>ESD</b>功能的隔離式<b class='flag-5'>I2C</b>緩沖器如何改進(jìn)隔離式<b class='flag-5'>I2C</b>

    為什么無(wú)法在PSoC4中為I2C操作配置SCB組件?

    塊配置為 I2C。 在此配置中,我希望實(shí)現(xiàn)從芯片 1 到芯片 2 基于 I2C 的讀/寫
    發(fā)表于 07-04 08:15

    ISL33001MSOPEVAL1Z I2C總線緩沖器評(píng)估板

    電子發(fā)燒友網(wǎng)站提供《ISL33001MSOPEVAL1Z I2C總線緩沖器評(píng)估板 .rar》資料免費(fèi)下載
    發(fā)表于 06-07 16:49 ?0次下載

    什么是I2C協(xié)議 I2C總線的控制邏輯

    在實(shí)際使用過(guò)程中,I2C比較容易出現(xiàn)的一個(gè)問(wèn)題就是死鎖 ,死鎖在I2C中主要表現(xiàn)為:I2C死鎖時(shí)表現(xiàn)為SCL為高,SDA一直為低。
    發(fā)表于 03-12 09:17 ?662次閱讀
    什么是<b class='flag-5'>I2C</b>協(xié)議 <b class='flag-5'>I2C</b>總線的控制邏輯

    I2C接口稱重采集單元

    本周帶來(lái)的是一款稱重采集變送器單元WeightI2CUnit。該傳感器內(nèi)部采用”STM32+HX711芯片”的方案,通過(guò)I2C通訊方式實(shí)現(xiàn)24位精度的重量測(cè)量。同時(shí)支持并聯(lián)多個(gè)設(shè)備到同
    的頭像 發(fā)表于 02-24 08:28 ?283次閱讀
    <b class='flag-5'>I2C</b>接口稱重<b class='flag-5'>采集</b>單元

    GD32 MCU硬件I2C不可靠不如軟件I2C?來(lái)看看紅楓派開發(fā)版的硬件I2C驅(qū)動(dòng)如何做到穩(wěn)得一批

    在一個(gè)評(píng)論中,看到網(wǎng)友對(duì)硬件I2C的討論,硬件I2C Busy找不到原因、軟件I2C穩(wěn)得一批。
    的頭像 發(fā)表于 02-23 09:37 ?2261次閱讀
    GD32 MCU硬件<b class='flag-5'>I2C</b>不可靠不如軟件<b class='flag-5'>I2C</b>?來(lái)看看紅楓派開發(fā)版的硬件<b class='flag-5'>I2C</b>驅(qū)動(dòng)如何做到穩(wěn)得一批

    ADE7880使用I2C讀取數(shù)據(jù),怎么設(shè)置I2C快速模式?

    ADE7880使用I2C讀取數(shù)據(jù)問(wèn)題,怎么設(shè)置I2C快速模式,謝謝。
    發(fā)表于 12-26 07:41

    I2C總線信號(hào)與測(cè)試案例(一)

    I2C bus是Inter-IC bus的縮寫,意思是IC器件之間的通訊總線;I2C 總線的特點(diǎn)如下
    的頭像 發(fā)表于 11-20 15:45 ?1510次閱讀
    <b class='flag-5'>I2C</b>總線信號(hào)與測(cè)試案例(一)

    UART、SPI、I2C比較 串口通信介紹

    ,較少用于遠(yuǎn)距離通信。 SPI實(shí)現(xiàn)要簡(jiǎn)單一些,UART需要固定的波特率,就是說(shuō)兩位數(shù)據(jù)的間隔要相等,而SPI則無(wú)所謂,因?yàn)樗怯袝r(shí)鐘的協(xié)議。 I2C的速度比SPI慢一點(diǎn),協(xié)議比SPI復(fù)雜一點(diǎn),但是連線也比標(biāo)準(zhǔn)的SPI要少。 UART一幀可以傳5/6/7/8位,
    的頭像 發(fā)表于 11-09 18:06 ?1079次閱讀
    UART、SPI、<b class='flag-5'>I2C</b>比較 串口通信介紹

    EsDA 應(yīng)用】快速實(shí)現(xiàn)串口轉(zhuǎn)HTTP請(qǐng)求

    本文將基于EsDA開發(fā)套件快速實(shí)現(xiàn)將串口數(shù)據(jù)轉(zhuǎn)換為HTTP請(qǐng)求的應(yīng)用開發(fā),實(shí)現(xiàn)串口設(shè)備與網(wǎng)絡(luò)服務(wù)的互聯(lián)互通,提供便捷和高效的串口數(shù)據(jù)轉(zhuǎn)換功能。項(xiàng)目簡(jiǎn)介HTTP協(xié)議是互聯(lián)網(wǎng)應(yīng)用最為廣泛的
    的頭像 發(fā)表于 11-09 08:25 ?707次閱讀
    【<b class='flag-5'>EsDA</b> 應(yīng)用】<b class='flag-5'>快速</b><b class='flag-5'>實(shí)現(xiàn)</b>串口轉(zhuǎn)HTTP請(qǐng)求

    I2C總線—電平轉(zhuǎn)換

    我們先來(lái)看一張圖,熟悉I2C的人一看,這不是I2C的level shifter電路嘛,在Philip的I2C標(biāo)準(zhǔn)里面有,沒有啥復(fù)雜的。
    的頭像 發(fā)表于 11-02 12:32 ?3851次閱讀
    <b class='flag-5'>I2C</b>總線—電平轉(zhuǎn)換

    I2C總線學(xué)習(xí)筆記

    I2C在小P以前接觸的設(shè)計(jì)中大多只用到400k的速率,EVB的設(shè)計(jì)中更經(jīng)常發(fā)現(xiàn)實(shí)現(xiàn)不了就降速到100k。現(xiàn)在突然再看看I2C,發(fā)現(xiàn)原來(lái)還有更高的速率規(guī)范,最高都已經(jīng)到5M了。
    的頭像 發(fā)表于 10-25 14:35 ?1329次閱讀
    <b class='flag-5'>I2C</b>總線學(xué)習(xí)筆記

    I2C總線原理詳解

    I2C兩線式串行總線通訊協(xié)議,它是由飛利浦開發(fā)的,主要用于連接微控制器及其外圍設(shè)備之間,它是由數(shù)據(jù)線SDA和信號(hào)線SCL構(gòu)成的,可發(fā)送和接收數(shù)據(jù)即在MUC和I2C設(shè)備之間,I2CI2C
    發(fā)表于 10-18 17:20 ?1953次閱讀
    <b class='flag-5'>I2C</b>總線原理詳解

    I2C讀寫時(shí)序分析和實(shí)現(xiàn)思路

    上篇推文對(duì)I2C總線的特性進(jìn)行了介紹和描述。對(duì)于開發(fā)者而言,最重要的是編碼I2C的讀寫時(shí)序驅(qū)動(dòng)。本篇推文主要總結(jié)和分享I2C總線主機(jī)端通信的編程實(shí)現(xiàn)思路,并不對(duì)應(yīng)特定MCU的硬件
    發(fā)表于 10-01 16:54 ?1365次閱讀
    <b class='flag-5'>I2C</b>讀寫時(shí)序分析和<b class='flag-5'>實(shí)現(xiàn)</b>思路