| 域名空间 下载中心 社区论坛 信息公告 my小屋 |
![]() |
联系我们 设为首页 加入收藏 |
|
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿 论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图 专题 | 应用软件 | 聊天通讯 | q q 专栏 | 建站经验 | 在线工具 | 站长club | 注 册 表 | 旧版 社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 网络赚钱 | 网站地图 | 广告服务 | 服务 |
| 新版上线![旧版] | |||||
注:打开慢时请稍等
|
在工业控制中,串口是常用的计算机与外部串行设备之间的数据传输通道,由于串行通信方便易行,所以应用广泛。 本文将介绍在windows平台下串行通信的工作机制和用visual c++设计串行通信程序的编程方法及通信方式。 vc中实现串行通信的编程技术,以下我们将介绍vc中几种实现串行通信的编程技术: 利用vc++的标准通信函数 利用vc++的标准通信函数_inp和_outp可实现串口通信。下面是一个串口初始化的程序: void init_com(port) {char i; outp(port+3,0x80); outp(port,0x0c); outp(port+1,0); outp(port+3 ,0x3a); outp(port+3 ,0x03); i=inp(port+5) && 0xfe; outp(port+5,i);} 使用串行通信控件mscomm 串行通信控件mscomm32.ocx提供了使用rs-232来进行数据通信的所有协议,vc为该控件提供了标准的事件处理函数、过程,并通过属性和方法提供了串行通信的设置。它使用户能够方便地访问windows串行通信驱动程序的大多数特性,包括输入、输出缓冲区的大小及决定何时使用流控制命令挂起数据传输等。 在classwizard中为新创建的通信控件定义成员对象(cmscomm m_serial),通过该对象便可以对串口属性进行设置,mscomm控件共有27个属性。以下是通过设置控件属性对串口进行初始化的实例: bool csampledlg:: portopen() { bool m_opened; ...... m_serial.setcommport(2); // 指定串口号 m_serial.setsettings("4800,n,8,1"); // 通信参数设置 m_serial.setinbuffersize(1024); // 指定接收缓冲区大小 m_serial.setinbuffercount(0); // 清空接收缓冲区 m_serial.inputmode(1); // 设置数据获取方式 m_serial.setinputlen(0); // 设置读取方式 m_opened=m_serail.setportopen(1); // 打开指定的串口 return m_opened;} 打开所需串口后,我们需要考虑串口通信的时机。在接收或发送数据过程中,可能需要监视并响应一些事件和错误,所以事件驱动是处理串行端口交互作用的一种非常有效的方法。使用oncomm事件和commevent属性捕捉并检查通信事件和错误的值。发生通信事件或错误时将触发oncomm事件,commevent属性的值将被改变,应用程序通过检查commevent属性值并作出相应的反应。 共3页。 1 2 3 8 : 编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部] 上一篇:vc下使用icmp实现路由跟踪 下一篇:vc编程用upd协议实现广播通信 转载请注明来源:www.iyit.net 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。 |
| 最新更新 | 热点排行 | 推荐新闻 | |||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| 友情链接 | ||||||
| 设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接 |
| |||||||