hcy 发表于 2024-5-29 20:05:44

求求大佬们帮帮忙,调2天了|已解决

本帖最后由 STCAI-32位8051 于 2024-5-30 13:12 编辑

之前是io口模拟的iic,现在想用硬件iic试一下,用示波器查看的时候发现波形是正确的。但是在keil里面仿真的iic的值是0xff,经过仿真调试发现ack应答位每次都是1,但是从机的芯片手册上ack回的是0,急需寻求帮助!!!程序就是按照资料上面写的。

乘风飞扬 发表于 2024-5-30 10:15:57

跟IO口模拟的信号做对比,先确认速度是否合适,有没有超出从机能接受的上限。
然后对比地址发送信号跟模拟是否一致,也就是从机地址是否正常发送。

神农鼎 发表于 2024-5-30 10:22:40

还是那句话,详细原理图的PDF发上来
大家帮分析后,给您相似的测试程序


型号也没有,原理图的PDF也没有,
如何分析

soma 发表于 2024-5-30 10:40:47

示波器sda数据都是对的

hcy 发表于 2024-5-30 11:00:04

神农鼎 发表于 2024-5-30 10:22
还是那句话,详细原理图的PDF发上来
大家帮分析后,给您相似的测试程序



单片机用的是stc8g1k08,想要读取温度,温度芯片选用的是tmp1075。a0,a1,a2都是接的地,下面是温度芯片的i2c时序图,还有我的keil程序,和仿真的结果,芯片资料上显示可以到400khz。程序都是按照例子写的。最后一张图是用软件iic仿真就是对的。

21cnsound 发表于 2024-5-30 11:04:21

单片机时钟降低后看卡是否能正常吧

hcy 发表于 2024-5-30 11:22:31

大佬们,好像找到问题了,这个仿真可能仿的有点问题,我直接拉到io口上,发现温度值是对的!!!谢谢各位大佬!!!

qike009 发表于 2024-5-30 12:51:36

{:4_168:}{:4_168:}不会 stc8、。。。
页: [1]
查看完整版本: 求求大佬们帮帮忙,调2天了|已解决