TI中文支持网
TI专业的中文技术问题搜集分享网站

F28335 I2C读取问题

小弟最近在用F28335的I2C 来驱动MPU6050  我参考了德州仪器的例程i2c_eeprom  对其做了如下更改

1. 首先注释掉了 // Write data to EEPROM section // 因为我只想读取MPU6050 中的WHO_AM_I(地址0x75)寄存器的值

2.Uint16 I2CA_ReadData(struct I2CMSG *msg) 这个函数中:      I2caRegs.I2CCNT = 1;
                                                                                            I2caRegs.I2CDXR = WHO_AM_I;

我知道MPU6050 的读时序 如下图

我发现它和EEPROM的读数是一样的 在我的程序中 RA=0x75  在数据手册中 这个时候读取的 DATA的值应该为 0x68

但是我通过仿真器 看到I2CDRR 中的值每次都是0x6b 不知道哪里出问题了

还有 问题1: 当I2CCNT 的值减为0 时 F283335 进入中断?

       问题2 : 例程中设置     I2caRegs.I2CFFTX.all = 0x6000;
                                        I2caRegs.I2CFFRX.all = 0x2040; 有何种作用呢?

                

 

赞(0)
未经允许不得转载:TI中文支持网 » F28335 I2C读取问题
分享到: 更多 (0)