TC 写的DOS 串口传输程序,换了机器就用不起来了?

carol1980 2004-03-04 04:22:38
问题好像处在对串口波特率设置的地方

程序是用tc写的我用了 outportb 来对串口进行波特率的修改。
如 115200, 19200, 9600...

在我的机器上(win2k),所有的波特率都可以成功收发数据。
可是在其他的机器上(win2k),115200 还可以传,换成 19200 就不稳定了, 9600 就肯定失败了,换成 2400 又好了 :(

如果换到 win98 的机器上,115200 也跑不起来

纯dos, 还没试过 。。。

1。 是不是 outportb, inportb 所编的程序,不是在每台机器上都能运行的?
2。 还有没有其他方法,来改变串口的设置?

谢谢大家,谢谢大家~~~
...全文
54 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
carol1980 2004-04-06
  • 打赏
  • 举报
回复
to Dev(东方云龙): 呵呵,说得对阿,linux上的程序我是另外写的。我的意思是在国外很多人不用windows, 我的程序可能只是在纯dos上跑,是针对这种开发的。

to relatium(光速蜗牛): 串口收发的程序都是我自己写的,用的都是最普通的“115200,N,8,1” 应该不是校验的问题

谢谢大家 @_@


relatium 2004-04-04
  • 打赏
  • 举报
回复
可能是校念有问题吧
Dev 2004-04-03
  • 打赏
  • 举报
回复
"要开发一些不依赖window的东西。"
可是你这样的程序在unix上也跑不了啊!
^_^
netsys2 2004-03-19
  • 打赏
  • 举报
回复
可能是有操作系统的问题。

outportb inportb 是DOS下的指令,WINDOWS不支持。

你在WINDOWS 2000下开的DOS窗口实际上是虚拟机,内核还是WINDOWS的。

建议你换成WINDOWS的程序,DOS的东西没有前途,别再用了!
carol1980 2004-03-19
  • 打赏
  • 举报
回复
在网上看到一些文章,好像就是因为 outportb inportb 不是在所有机器上都能用的起来的,
具体的机制,我看不懂

http://www.cppfans.com/articles/system/portrw_winio.asp

http://cdf.51.net/software/softeng/development/c++io.htm
carol1980 2004-03-19
  • 打赏
  • 举报
回复
谢谢楼上

我已经用 win32 api 写了个串口通讯的程序,可以在windows的平台上成功运行了

做纯dos的程序,是因为产品的需要 —— 在国外,有的机器不装windows的,所以我们要开发一些不依赖window的东西。

4,356

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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