快乐兔 发表于 2026-6-30 18:06:24

STC8H库函数I2C例程主机读取从机数据出现第2字节丢失

STC8H库函数例程中独立程序“18-I2C主机模式访问AT24C02程序”作为主机,
连独立程序“17-I2C从机中断模式与IO口模拟I2C主机进行自发自收”作为从机,
主机写入从机时从机接收正确,但是主机读出从机数据时第2位会丢失。
这是从机的中断程序有问题而丢失了第2个字节,
把从机的中断程序改一下就能正常读出数据。


乘风飞扬 发表于 2026-7-1 09:37:24

这是直接烧录17例子里的hex文件,并按照例子说明测试的:

内部集成I2C串行总线控制器做从机模式,SCL->P2.5, SDA->P2.4;
IO口模拟I2C做主机模式,SCL->P0.0, SDA->P0.1;
通过外部飞线连接 P0.0->P2.5, P0.1->P2.4,实现I2C自发自收功能。



最好能将你的测试结果,修改的方法,以及修改后测试的结果发出来方便大家一起分析。

狂热主宰 发表于 2026-7-1 16:12:27

乘风飞扬 发表于 2026-7-1 09:37
这是直接烧录17例子里的hex文件,并按照例子说明测试的:

内部集成I2C串行总线控制器做从机模式,SCL->P2. ...

上述丢失数据的原因
中断的哪方面问题

狂热主宰 发表于 2026-7-1 16:15:01

乘风飞扬 发表于 2026-7-1 09:37
这是直接烧录17例子里的hex文件,并按照例子说明测试的:

内部集成I2C串行总线控制器做从机模式,SCL->P2. ...

上述认为中断程序设计需改进
但没有详细描述具体问题
也没有具体的解决
页: [1]
查看完整版本: STC8H库函数I2C例程主机读取从机数据出现第2字节丢失