紧急!!VxWorks串口通信问题

whut_lcy 2010-06-10 07:42:12
问题背景:
我在PC写了一个读写串口的WIN32程序,用来接收并解析vxworks的串口输出。如果解析出的串口数据与约定格式一致,就会通知vxworks后台已经准确收到数据,请继续发送;如果数据不一致,也会通知vxworks数据无效,请重新发送。

问题描述:
vxworks自带的tshell任务运行情况下,PC下发的所有串口数据都被shell任务接收了,而vxworks下原本接收后台串口数据的任务一直读取不到数据。更严重的是,shell作为“控制台”只接收vxworks下的命令输出,后台下发的数据不是命令,这样shell会打印输出类似“syntax error”这样的输出,我后台接收到解析不正确,继续下发,。。。恶性循环

如果shell挂起,PC又无法向vxworks写串口。。。


紧急,请帮助!!!
...全文
562 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
whut_lcy 2010-06-18
  • 打赏
  • 举报
回复
这个问题已经搞定了。代码自身问题,修改了即可

新话题:串口如何重定向。
xubo973109 2010-06-17
  • 打赏
  • 举报
回复
串口为什么要重定向??你把调试串口随便改一个就行了,不用shell
whut_lcy 2010-06-14
  • 打赏
  • 举报
回复
继续:如何串口重定向
whut_lcy 2010-06-11
  • 打赏
  • 举报
回复
已经解决。挂起shell任务就可以了。

至于PC无法向Vxworks下发消息是因为Vxworks侧代码原因。一次只读取一个字节,导致串口堵塞,PC无法写串口。



whut_lcy 2010-06-10
  • 打赏
  • 举报
回复
TO 3楼和4楼的:使用另一个串口的说法,是说vxworks也类似win一样有com1,com2这样的吗?
我知道用devs可以查看。

疑问:
1)到底有几个串口,是硬件决定的吗?win就是硬件决定的。
2)如果系统有2个串口,那么任何一个串口都可以接受pc的串口数据并向pc发串口数据吗



frank_zhou 2010-06-10
  • 打赏
  • 举报
回复
你的问题就是工作串口与控制台用的串口用的是同一个。
如果有多余的串口就用另外一个串口,没有的话就把tshell组件别包含进去或者重定向到其它设备上去
yangb2014# 2010-06-10
  • 打赏
  • 举报
回复
1、使用另一个串口;
2、重定向shell输出;

具体请google,网上有嵌入式linux的做法,可以参考,
whut_lcy 2010-06-10
  • 打赏
  • 举报
回复
自己顶!
BearKin 2010-06-10
  • 打赏
  • 举报
回复
都不懂 只能帮顶咯

2,184

社区成员

发帖
与我相关
我的任务
社区描述
xworks是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。
社区管理员
  • VxWorks开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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