两个进程可以读取同一个串口吗?

chenpeng   2009-9-2 12:22 楼主
操作系统:WinCE5.0
硬件环境:arm 9处理器
软件环境:EVC4.0

导航仪中的有一个串口是用来接收GPS上的0183协议的。我的一个程序通过这个串口也要用到这个数据包。我现在想请问下:在开着导航软件的同时,打开我自己的程序,都可以读取这个数据包?这样可行吗?
在不导航软件代码未知的情况下,感觉这应该做不到吧?
大家是怎么想的?

回复评论 (15)

关注!
点赞  2009-9-2 12:40
应用程序不可能同时打开一个串口的,串口资源应该是独占的!你想的情况,其实可以通过其他方法解决,比如楼上的建议!总有方法可以在进程之间进行通信的!
点赞  2009-9-2 13:59
up
点赞  2009-9-2 14:15
串口复用嘛
改驱动或者在应用层做一个后台程序都可以
点赞  2009-9-2 15:42
当然可以实现。只要使用虚拟串口技术就行了。
点赞  2009-9-2 17:28
引用: 引用 8 楼 aijie099 的回复:
当然可以实现。只要使用虚拟串口技术就行了。


哈哈...,终于有人给出正确答案了
做一个类似于驱动的东东
点赞  2009-9-2 17:30
两个同时读肯定是可以的,估计写不行。
PC机上有串口监视工具,就可以在其他进程读写串口的时候进行监视。
点赞  2009-9-2 20:33
引用: 引用 8 楼 aijie099 的回复:
当然可以实现。只要使用虚拟串口技术就行了。


不知道怎么做到!!!
点赞  2009-9-2 22:00
采用线程间通讯应该是最简单的方式
点赞  2009-9-3 08:57
谢谢各位,我有点明白了~~
点赞  2009-9-3 11:33
是的,可以做一个 串口服务程序,谁需要使用串口就与谁来进行数据交换
点赞  2009-9-2 14:11
引用: 引用 9 楼 91program 的回复:
引用 8 楼 aijie099 的回复:
当然可以实现。只要使用虚拟串口技术就行了。


哈哈...,终于有人给出正确答案了
做一个类似于驱动的东东


很多事情说出来很简单,做起来就难。
点赞  2009-9-2 17:52
现在想了想,这个想法有点幼稚~~~
点赞  2009-9-2 13:14
变通一下呗,一个进程读出来数据之后,把原始数据copy一份出来传递给另外一个进程
点赞  2009-9-2 13:16
用串口交换机就可以了
这个是Windows上的和WINCE一样吧。
点赞  2009-11-1 22:32
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复