大家帮看下怎么比较好地接收多路这种类似I2C的串行数据?

2019-12-11 18:33发布

这是数显百分表上的通讯数据,原本表可以配一根USB转串口数据线接电脑的,但是有4个表,在电脑上区分哪个串口对应哪个表比较费事。
所以想将4个表的数据,发送到STM32F103C8T6,STM32F103C8T6将4个表的数据封装成一帧往电脑发送,这样电脑处理数据就方便多了。
这时序图看起来还是比较简单的,每个时钟线的上升沿读一下数据线,时钟频率大概6.45KHz,高电平脉宽25us。

大家帮看下哪种比较好?
1. 类似模拟串口方式,在第一个时钟下降沿开启一个定时器,定时接收数据,接收到第4位,关闭定时器,重新等待下降沿再接收。(看时序图,第四位脉宽是其它位置的几倍,且每4位重复一次)
2. 在每个外部中断服务函数里面读下数据线电平,就是有4路数据输入,开启4个表对应引脚的外部中断。

0.02.jpg (30.62 KB, 下载次数: 0) 下载附件 2019-4-23 09:59 上传
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。