STC12366 发表于 2026-3-2 20:05:21

STC32G8K64的IIC作为从机问题

当STC32G8K64的IIC作为从机时候,能否用其他单片机的IO模拟IIC主机去读取STC32G8K64的IIC的数据?

谢谢!

晓飛飛 发表于 2026-3-2 21:07:50

当然可以,符合I2C时序要求即可。

STC12366 发表于 2026-3-3 10:43:28

晓飛飛 发表于 2026-3-2 21:07
当然可以,符合I2C时序要求即可。

我测试了 数据获取有时是错的

王昱顺 发表于 2026-3-3 10:47:24

STC12366 发表于 2026-3-3 10:43
我测试了 数据获取有时是错的

这么做是没问题的,原因应该是sda线上的上拉电阻值太大导致上拉能力不足,使用更小阻值的上拉电阻就行了,出现错误数据,应该是读到干扰了

STC12366 发表于 2026-3-3 13:58:51

王昱顺 发表于 2026-3-3 10:47
这么做是没问题的,原因应该是sda线上的上拉电阻值太大导致上拉能力不足,使用更小阻值的上拉电阻就行了 ...

王工 您好!我两块同样的板子 硬件一样 IIC上拉都是10K 两者对接,如果用官方的硬件主从代码读取不会出问题,如果主机采取模拟IIC就会出现问题 上拉电阻值改为多少?谢谢!

王昱顺 发表于 2026-3-3 17:57:57

STC12366 发表于 2026-3-3 13:58
王工 您好!我两块同样的板子 硬件一样 IIC上拉都是10K 两者对接,如果用官方的硬件主从代码读取不会出问 ...

建议改成1k,且模拟读取时,记得io模式要正确配置为开漏模式

STC12366 发表于 2026-3-3 18:55:42

王昱顺 发表于 2026-3-3 17:57
建议改成1k,且模拟读取时,记得io模式要正确配置为开漏模式
好的 我试试 谢谢

STC12366 发表于 2026-3-4 08:08:56

王昱顺 发表于 2026-3-3 17:57
建议改成1k,且模拟读取时,记得io模式要正确配置为开漏模式

王工,您好!昨晚我用STM32的IO模拟IIC主机读取STC32G8的从机IIC发现大概每隔3分钟会出现读取数据255,从机代码是官方例子从机中断例子,代码也在前面附件里面
此外如果STM32的SCL设置成开漏输出 则读取255频繁 设置成推挽输出就是前面问题
目前设置如下
SCL 推挽输出
SDA 开漏输出
但出现偶尔255的情况
上拉电阻目前只有一组10K
谢谢!

STC12366 发表于 2026-3-4 08:17:02

昨晚代码做了改变
主机是STM32 PE14 PE15的IO模拟IICSCL推挽输出 SDA 开漏 且无上拉电阻
从机是STC32G8K64硬件IIC各有上拉电阻10K
问题如下:
大概每隔3~5分钟会出现读取到值255
当把SCL设置成开漏模式则频繁读到255
请问这是什么问题?怎么解决?
谢谢!

STC12366 发表于 2026-3-4 17:52:20

王昱顺 发表于 2026-3-3 17:57
建议改成1k,且模拟读取时,记得io模式要正确配置为开漏模式

王工 你好!目前模拟IIC会读到数据255
页: [1] 2
查看完整版本: STC32G8K64的IIC作为从机问题