Other Parts Discussed in Thread:EV2400
本人使用STM32F407
因使用硬体IIC一直无法成功,改用GPIO软体模拟IIC通信
1.IIC发送器件地址0x16,写操作,收到应答信号
2.IIC发送器件地址0x09命令,收到应答信号
3.IIC发送器件地址0x16,读操作,收到应答信号
4.资料回传皆为0
这是时序没错啊,怎么就收不到应答。
求IT大神指点一下~谢谢
Star Xu:
您好, 建议您用EV2400只读取一个数,如电池电压,然后用示波器把i2c的波形抓取下来。再抓一下自己软件编写的的i2c波形,同样读取这个电压,看看两者有什么区别,很快就能定位到问题。比如ACK信号有没有?发送地址对不对?发送命令时序对不对等。
MCU通讯请参考下面链接最下面的文档
e2e.ti.com/…/3152690
,
Miles Lin1:
我有用内建的MSP430发送相同命令,比对时序上对不对,无奈查不出个所以然…
,
user4745244:
你写地址 写命令 读数据不就一个完整的过程了吗?都有ACK应答了啊。你读完还有什么数据?
,
Miles Lin1:
我用内建MSP430写读动作得到的数据是有数值的,改用外接stm32写读动作得到都为0
,
user4745244:
改用外接stm32写读动作得到都为0————–那可能是你时序不对吧逻辑分析仪不是可以抓出来吗?
,
Miles Lin1:
没错,应该是时序不对,我后来改用stm32硬体IIC有成功收到资料回传了