串口通讯 突然读不到数据

GOGOxiaozhu 2011-10-11 09:24:40
情况如此:
程序运行着,突然间(周期不定)上位机接收到的下位机回复信息为乱码,之后就收到空信息。此时重启上位机程序是无效的,必须重新启动上位机或者下位机。

前提:
上位机程序采用C#
下位机为欧姆龙PLC

提前解答:
不存在关闭上位机程序时进程未退出导致再次启动程序时端口被占用
无任何错误被捕捉。既突然间遇到该问题
...全文
285 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
GOGOxiaozhu 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 sdl2005lyx 的回复:]
你把出问题时,上位机程序向下位机发送的命令记录下来,或者一组报文,交给写下位机程序的人,
要他直接用下位机仿真调试,这下你懂了吧。。。
[/Quote]


好的 这个日志我有。。
GOGOxiaozhu 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 builderc 的回复:]
1. 检查引脚是否牢固,不行就重做
2. 用示波器量一下电平,看看线路周边是不是有干扰源
3. 考虑在接收和发射上加个上拉电阻
4. 再不行就换PLC吧
[/Quote]
OK 我照做 感谢
sdl2005lyx 2011-10-11
  • 打赏
  • 举报
回复
你把出问题时,上位机程序向下位机发送的命令记录下来,或者一组报文,交给写下位机程序的人,
要他直接用下位机仿真调试,这下你懂了吧。。。
trentliu 2011-10-11
  • 打赏
  • 举报
回复
1. 检查引脚是否牢固,不行就重做
2. 用示波器量一下电平,看看线路周边是不是有干扰源
3. 考虑在接收和发射上加个上拉电阻
4. 再不行就换PLC吧
GOGOxiaozhu 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 sdl2005lyx 的回复:]
那这基本确定问题处在下位机上,你要写下位机程序的人自己好好测试。。。
[/Quote]

那请问,下位机出现个怎么样的问题?
因为搞电气的现在也不知道是个什么情况
sdl2005lyx 2011-10-11
  • 打赏
  • 举报
回复
那这基本确定问题处在下位机上,你要写下位机程序的人自己好好测试。。。
GOGOxiaozhu 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sdl2005lyx 的回复:]
估计问题处在下位机上,你直接用串口调试工具,模拟上位机向它发送命令,应该能跟踪到这种结果。。。
[/Quote]
将自己的软件关闭后 用监控工具测试,回复信息要不是乱码要不就是空。一定要关闭下位机和上位机才行
GOGOxiaozhu 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 mabaolin 的回复:]
同时用串口调试工具监控看看,是否上位机处理不过来了
[/Quote]

将自己的软件关闭后 用监控工具测试,回复信息要不是乱码要不就是空。一定要关闭下位机和上位机才行
sdl2005lyx 2011-10-11
  • 打赏
  • 举报
回复
估计问题处在下位机上,你直接用串口调试工具,模拟上位机向它发送命令,应该能跟踪到这种结果。。。
mabaolin 2011-10-11
  • 打赏
  • 举报
回复
同时用串口调试工具监控看看,是否上位机处理不过来了

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧