Stm32具有IIC接口,接口有以下主要特性多主機(jī)功能:該模塊既可做主設(shè)備也可做從設(shè)備主設(shè)備功能C地址檢測產(chǎn)生和檢測7位/10位地址和廣播呼叫支持不同的通訊速度狀態(tài)標(biāo)志:發(fā)送器/接收器模式標(biāo)志字節(jié)發(fā)送結(jié)束標(biāo)志總線忙標(biāo)
LPC2478的IIC使用LPC2478帶有三個(gè)IIC接口,每個(gè)IIC都可以工作在主機(jī)或者從機(jī)模式下,LPC的IIC的架構(gòu)是一種狀態(tài)機(jī)的形式,在不同的的時(shí)間做不同的工作之后有不同的狀態(tài)來表示,簡單來說,就是發(fā)送起始字節(jié)之后會(huì)有一個(gè)狀態(tài)
在許多帖子里看到許多人在使用I2C設(shè)備時(shí),都是使用模擬的I2C,因?yàn)镾T為了規(guī)避專利而把它設(shè)計(jì)得很難用!本人今天也嘗試了一下官方生成的I2C,使用的是CUBEMX生成的I2C,在生成后也遇到了一些小問題,在這里貼出來,為
這里咱們說3個(gè)點(diǎn)1.檢查IIC總線上是否有指定地址的器件2.IIC讀取數(shù)據(jù)3.IIC寫數(shù)據(jù)下面來一個(gè)一個(gè)詳細(xì)說明1.檢查IIC總線上是否有指定地址的器件1.判斷是否總線忙,如果忙則等待2.產(chǎn)生起始位3.等待起始位產(chǎn)生完成4.發(fā)送器
S3C2440A RISC微處理器可以支持一個(gè)多主控IIC總線串行接口。一條專用串行數(shù)據(jù)線(SDA)和一條專用串行時(shí)鐘線(SCL)傳遞連接到IIC總線的總線主控和外設(shè)之間的信息。SDA和SCL線都為雙向的圖上可見,IIC時(shí)鐘從PCLK產(chǎn)生,
1 /**2 * @brief 寫一個(gè)字節(jié)到I2C設(shè)備中3 * @param 4 * @arg pBuffer:緩沖區(qū)指針5 * @arg WriteAddr:寫地址6 * @retval 正常返回1,異常返回07 */8 uint8_t I2C_ByteWrite(u8 pBuffer, u8 WriteAddr)9