⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_60035.htm

📁 vc
💻 HTM
字号:
<p>
序号:60035 发表者:小晕 发表日期:2003-11-11 16:19:28
<br>主题:菜鸟问操作系统与串口通信的关系
<br>内容:请问编写串口通信时98系统和2000系统下编写有什么不同吗?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:墙外徘徊 回复日期:2003-11-11 16:31:07
<br>内容:应该没有吧,都是用CreateFile,ReadFile等等函数。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sha 回复日期:2003-11-11 16:37:35
<br>内容:应该是有区别的,有时候2000和xp都不兼容,需要重新编译。<BR>建议用api,底层函数自己写。 
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:夏雪宜 回复日期:2003-11-11 16:51:43
<br>内容:有一些关系,98、95下直接可以对串口进行操作_inp()、_outp(),当然也可以用控件或api,但在2000、xp下不能直接对串口进行操作,可以用控件或api函数进行通信。考虑到兼容性的问题,一般用winApi函数或控件比较方便,各个系统下都能够运行。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:小晕 回复日期:2003-11-11 21:57:39
<br>内容:那楼上的意思是在95和98下允许用户直接控制串口的中断是吗?跟DOS下一样是吗?那就是可以直接操作硬件设备吗?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:夏雪宜 回复日期:2003-11-12 17:07:47
<br>内容:我不是很清楚,但我看见过用_inp()、_outp()写程序时候,可以直接对串口的寄存器操作。如状态寄存器、控制寄存器等,但没见过如何控制中断,我不知道是否可以。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:小晕 回复日期:2003-11-12 20:00:15
<br>内容:谢谢夏雪宜:)希望还有人来帮我们解决这个问题
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:mm2003 回复日期:2003-11-13 08:29:06
<br>内容:楼上说用_inp()或_outp()来读写串口寄存器的方法在过去DOS中经常使用,而在Window下早已经不用了,Window下的方法是1楼所说的
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:夏雪宜 回复日期:2003-11-13 09:28:14
<br>内容:mm2003 说的对,但我看见很多地方还用_inp(),_outp()函数写串口通信,但由于该函数只能够在95/98下使用,所以我还做了修改,将他们修改为ReadFile,WriteFile等,来解决系统兼容性的问题。小晕可以在网上搜搜,有关这方面的文章挺多的。你也可以看看用_inp()和_outp()怎样写串口通信程序。实际上我觉得计算机一般在串口通信时应该采用的是中断方式。考虑到效率问题,系统一般不太可能让你设置为查询方式。而且这种方式可能是系统已经设置的。一般对单片机进行编程时考虑采用中断、还是查询方式。计算机上的串行通信接口一般用8251A,它的控制寄存器中好像没什么地方可以设置通信方式,你可以找找有关资料看看。不管是用_inp()、Outp()函数还是winAPI函数,实际上最后应该操作的都是串行通信接口芯片8251A里面的寄存器进行操作的。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:刘冀成 回复日期:2003-11-13 09:55:20
<br>内容:好像写一个DLL可以解决问题的
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:小晕 回复日期:2003-11-13 16:25:35
<br>内容:谢谢各位的帮助!~~~~~
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:菜牛 回复日期:2003-11-13 17:15:38
<br>内容:据我所知关于上面的各种方法还有个通讯速度的问题,请高手指点
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -