科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件使用Visual Basic开发通讯软件(一)

使用Visual Basic开发通讯软件(一)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

windows系统提供中断方式驱动的串行通信驱动程序comm.drv。通信程序无需直接对串行端口进行操作,而是通过驱动程序这一编程接口进行间接操作。

作者:enet 来源:soft6 2008年5月14日

关键字: 通讯 开发 VB vb.net Windows

  • 评论
  • 分享微博
  • 分享邮件

一、pc串行通信程序机制 常用的pc串行通信程序大多利用biosint14h中断,以查询i/o方式完成异步串行通信。

  windows系统提供中断方式驱动的串行通信驱动程序comm.drv。通信程序无需直接对串行端口进行操作,而是通过驱动程序这一编程接口进行间接操作。

  windows操作系统中,串行通信采用“事件通知”方式,支持数据按块传送。进行通信时,windows开辟一个用户定义的输入输出缓冲区,每接收一个字符就产生一个低级硬件中断,串行驱动程序立即取得控制权,并将字符放入输入数据缓冲区,然后将控制权返还正在运行的应用程序。如果输入数据缓冲区满了,驱动程序用当前定义的流控制机制通知发送方停止发送数据。发送数据也采用类似的处理方式,应用程序将需要发送的数据放入输出数据缓冲区,串口每发送一个字符就产生一个低级硬件中断。

二、pc串行口远程通信的硬件配置

  串行通信数据链中,计算机一端称为dte,即数据终端设备;调制解调器一端称为dce,即数据通信设备。pc串行通信的硬件连接方式分为零modem连接和modem连接。

  零modem连接即直接用调制解调器电缆将两台设备连接起来,modem连接则通过dce(modem)将两台pc连接起来。

  零modem连接用于距离15m内两台dte或dce设备之间的连接。而modem连接则通过电话网或专线用于长距离的通信。

  txd和rxd信号线用于计算机和modem间传输数据信息;rts从计算机端发送信号到modem,表示希望把数据传给modem,若modem能接收这个数据,它将发送cts信号给计算机;dtr从计算机端发送信号到modem,表示计算机已作好通信准备,modem将dtr信号作为初始化自己的信号,然后给计算机回送数据设置就绪信号dsr;当本地modem接收到远地modem的呼叫,则发送ring信号给计算机;modem应答呼叫后,发送数据载波检测dcd信号到计算机,表示已建立连接。

  modem的工作状态分为命令状态和在线状态。处于命令状态时,modem对串口发送的信息进行解释,可通过pc串口向modem发送at命令对其进行初始化、设置和操作。

  例如,初始化命令为:“atqov1wosoκ1&c1&d2&yo&wo”,其含义为:

qo:返回结果码;

v1:以字符形式显示结果码;

wo:不返回协商进程结果码;

soκ1:振铃一次,即应答;

&c1:追踪数据载波信号cd;

&d2当dtr从开到关时,modem挂机进入命令状态;

&yo:modem上电时重新调出用户方案;

&wo:将以上设置存为动态设置用户方案0;

  一旦本地modem与远地modem建立连接,modem即处于在线状态,可进行数据传输。此时,modem不响应at命令,直接传送所收到的数据。


 

[下一页]


 

三、modem连接远程通信软件的编制

通信过程中大部分的工作由串行通信驱动软件承担。

  本文软件的运行环境为ast+4/66d,hayes公司的accura144+fax144modem,windows3.2,vb3.0专业版。vb3.0专业版中提供了一个mscomm.vbx通信控件。它使用户能很方便地通过对控件属性的设置、检测,访问串行通信驱动程序的大多数特性,而不必考虑其实现细节。该控件为“事件驱动”,只响应“oncomm”事件,该事件可对已发生的事件或错误进行处理,与commevent属性紧密相关。

通信软件、通信驱动软件和modem之间的通信关系

  以下程序实现了通信的基本过程。包括初始化串口和modem,上位机拨号呼叫下位机,下位机应答并开始定时传输数据,挂机停止传输等功能。

vb3.0编制的通信软件清单如下:

上位机控件清单:

控件名称 属性

form1form1caption ″上位机通信″

mscomm comm1

commandbutton1callcaption ″拨号″

commandbutton2hangcaption ″挂机″

commandbutton3exitcaption ″退出″

下位机控件清单

控件名称 属性

form1form1caption ″下位机通信″

mscomm comm1

commandbutton1hangcaption ″挂机″

commandbutton2exitcaption ″退出″

timer1timer1interval 3000

text(i)text(i)

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章