两个程序同时开不同串口,通信干扰,怎么解决

两个程序同时开不同串口,通信干扰,怎么解决,第1张

这属于强电磁干扰,跟你几个串口没有任何关系

要避免外部干扰,你需要给通信线路加屏蔽层(采用屏蔽双绞线),屏蔽层接地.

通信线和供电线路要分开辐射,不能绞在一起

while (STOP==FALSE)

{

//在此处补充填写代码?实现读取串口数据、并将数据在标准终端上写出来

if(read(fd, data, ENDMINITERM)==0)

return data

}

while (STOP==FALSE)

{

c++

c %= 255

//在此处补充填写代码?实现写入串口数据

if(write(fd, data, ENDMINITERM) <0)

exit(1)

usleep(1000000)

}

//在此处补充填写代码?实现打开串口1的功能

fd = open(COM1,O_RDWR)

if(fd <0)

exit(1)

//在此处补充填写代码?实现创建键盘监控、接收、发送三个线程,并等待线程结束 th_a, th_b, th_c

if(pthread_create (&th_a, 0, keyboard, 0) != 0)

exit(1)

pthread_join(th_a,NULL)

if(pthread_create (&th_b, 0, receive, 0) != 0)

exit(1)

pthread_join(th_b,NULL)

if(pthread_create (&th_c, 0, send, 0) != 0)

exit(1)

pthread_join(th_c,NULL)

//在此处补充填写代码?实现关闭串口功能

close(fd)

请参考,希望能帮到你。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9012190.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存