msp430f2132硬件i2c 读传感器数据无应答

2019-03-24 14:04发布

想要用msp430 f2132读adxl345加速度计的数据,用的是自带的硬件i2c,遇到的问题是430发送start条件后,UCTXSTT不会清零,传感器无应答。代码是修改的ti提供的例程,部分代码: while (1) { UCB0I2CSA = 0x53; UCB0CTL1 |= UCTXSTT; while (UCB0CTL1 & UCTXSTT); //UCTXSTT没有清零 __bis_SR_register(CPUOFF + GIE); } }问题是i2c要求主机发送start后还要发送7位从机地址+写(0),还需要发送寄存器地址,然后再设置为读,可是TI给的例程中没有这一步,是因为硬件i2c可以自动在发送start条件后发送8位写地址吗? 那为什么这个STT无法清零? 还有应该如何看sda和sclk的波形?有示波器但怎么抓那几十微秒的波形呢? 新手刚接触msp430,所以问的有点多,望大神解答。。 [ 本帖最后由 carmackzhang 于 2012-7-7 21:39 编辑 ] 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
3条回答
Triton.zhang
2019-03-24 20:35
设置UCTXSTT位之后,硬件I2C模块自动发送7位地址+读写位。STT不由硬件清零。
如果想看I2C的波形,可以设置CLK的下降沿做触发。

一周热门 更多>

相关问题

    相关文章