请问Result register的返回值为何总是0
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
有新进展。设定CE10 读取却是C810 这是为何,有哪位大神指教
您好,对哪个寄存器设定CE10读取的是C 810的?
看起来好像时序不对,如果先对某个寄存器写再读的时序,那应该是start-7bit address+ Write +ACK+ Write register address +ACK+MSB data +ACK+LSB data + ACK+ Stop+ Repeat start+7bit slave address +Read bit+ ACK +MSBdata +ACK+ LSBdata+ NACK+Stop
因为要读取的寄存器的和写的寄存器是同一个,所以读取的时候不需要再发送寄存器地址,直 接对其进行读就可以了。
谢谢您的指教,我已知道哪里不好了
●不正确的送信方式(由于mode没有设置正确,所以数据·为0)
step①:0x45(I2C address),0x10(Configuration)送信
step②:0x45(I2C address),0xCE(設定値H),0x10(設定値L)送信
●正确的送信方式
0x45(I2C address),0x10(Configuration address),0xCE(設定値H),0x10(設定値L)送信
已经取得数据了。谢谢!
正确的送信方式
0x45(I2C address),0x10(Configuration address),0xCE(設定値H),0x10(設定値L)送信
是的,这个时序是没问题的。
非常感谢您的反馈,也很高兴您的问题得以解决,后续有什么问题我们再一起讨论。