使用的是TM4C123G系列微处理器,在430中的这么一条语句
、smbus_readWord(0x2A, ch_num, &t_buf[0]);函数原型是这样的:
uint8_t smbus_readWord(uint8_t addr, uint8_t code, uint16_t * data) {
if (i2c_ready() == FALSE) return FALSE;
done = FALSE;
i2c_setAddr(addr);
buffer[0] = code;
txIndex = 0;
txPointer = &buffer[0];
txBytes = 1;
rxPointer = &buffer[1];
rxBytes = 2;
UCB1IE |= (UCALIE+UCTXIE);
UCB1CTL1 |= UCTR + UCTXSTT; // issue start
// block until ready
if (i2c_ready() == FALSE) return FALSE;
// save data
* data = buffer[2] | (buffer[1] << 8);
return TRUE;
}
M4中是用的模拟通信
I2C_sendbyte(uchar data);
能直接这样用吗?
附上一张截图
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
I2C通信协议总该是一样的啊
一周热门 更多>