多串口数据 同时写队列 可能冲突的 问题

2020-01-19 19:42发布

      公司有一个场景应用:一个固定扫描枪 把扫描数据通过串口发给电脑,另一个手动扫描枪把数据也通过串口发给电脑。过去这两个串口不能同时使用。又因为现在的电脑上有4个串口,于是本人设想通过两个串口接收两个扫描枪的数据,然后把数据写入到接收队列中,在队列的另一端,取出数据发送给另一个串口,这个串口用作输出数据。
    那么问题来了。两个输入串口写进程同时 写接收队列和 输出读队列时,是否会冲突?怎么解决。想听听大家的建议,谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
litguy
1楼-- · 2020-01-20 01:35
可以数据组成包,包前面加通道编号。更好的方法是,每个串口用不同的接收缓存队列。
ldj7501
2楼-- · 2020-01-20 02:16
litguy 发表于 2015-8-19 09:31
可以数据组成包,包前面加通道编号。更好的方法是,每个串口用不同的接收缓存队列。 ...

用两个队列是好方法。但是在每一个队列中,如果同时读写,在简单的数组做的队列中我看可能会出现问题,而在环形队列中不会出现。
ldj7501
3楼-- · 2020-01-20 05:22
 精彩回答 2  元偷偷看……

一周热门 更多>