VB程序如何向外部设备发送信号或数据,又如何从外设读入信号或数据。

作者&投稿:检孔 (若有异议请与网页底部的电邮联系)
~ 利用VB开发通信程序主要的方法有两种:一是利用VB本身提供的控件(CONTRALS);另一种方法是利用Windows API应用程序接口。Windows API 主要提供了三个动态连接库(KERNEL.EXE、USER.EXE、GDI.EXE)供开发人员调用,其中KERNEL.EXE 主要包括一些底层操作函数,完成一些资源管理、任务、内存等操作;USER.EXE包含了一些与Windows管理有关的函数,如通信、菜单、消息、光标、插入符、计时器以及绝大多数非显示函数;GDI.EXE图形设备接口库,主要内容为与设备输出有关的函数。和串口通信有关系的函数BuilidCommDCB、ClearCommBreak、SetCommBreak、FlushComm、GetCommError、GetCommState、WriteComm、ReadComm、SetCommState、CloseComm等均在 \Windows\system 子目录下的USER.EXE动态连接库中,在VB调用之前应该先在全局变量定义处声明API通信函数、定义常量。

在VB的控件工具箱中,提供了一个使用非常方便的串行通信控件MSComm,它提供了一个事件OnComm,该事件可以截取串口的任何消息,转入事件处理程序。OnComm事件是唯一的,OnComm可以捕获通信时发生的串口事件和错误信息,当有串口事件或错误发生时,VB会立刻触发一个OnComm事件,程序就会自动转入OnComm事件处理程序中。CommEvent属性是OnComm事件的指示器,该属性在设计时不能使用,在程序运行时为只读,CommEvent 属性存有最近的事件或错误的数值代码,可以在程序中随时读取CommEvent 属性值来了解通信的状况,OnComm事件是和CommEvent属性密切相关、一起使用,当任何一个OnComm 事件或错误发生时,都会使得CommEvent属性值改变,在OnComm事件处理过程中,可以通过判断CommEvent属性值,对于不同的属性值转入不同的事件处理过程,一般采用的办法是SELECT CASE.......END SELECT。

楼上说的很明白,利用MSComm1_OnComm事件,触发comEvReceive接收事件来处理接收.将需发送的命令赋值于MSComm1的属性Output进行发送.在使用MSComm控件时需注意接收是以ASCII码或二进制码,发送同样.本人建议外部设备为主动方式,VB的通讯收发程序处于被动,以保证通过串口的通讯处于正常.VB的接收窗体模块需隔一段时间(30-60秒间)自动卸载,然后由VB程序唤醒.由于代码较长,在此上传也不易说清,请详细参考"人民邮电出版社"的"VISUAL BASIC 6.0串行通讯实例导航"一书的"第一章 串口调试精灵",对其代码须修改能满足你的要求.
Private Sub MSComm1_OnComm()
Select Case frmMain.MSComm1.CommEvent
Case comEvReceive
'此处添加处理接收的代码
End Select
End Sub
'发送主代码
frmMain.MSComm1.Output = bytSendByte


我想知道BIOS设置的各个选项都是什么意思,都有什么作用
为了完成这些操作,BIOS必须直接与计算机的I\/O设备打交道,它通过端口发出命令,向各种外部设备传送数据以及从它们那儿接收数据,使程序能够脱离具体的硬件操作,而硬件中断处理则分别处理PC机硬件的需求,因此这两部分分别为软件和硬件服务,组合到一起,使计算机系统正常运行。 BIOS的服务功能是通过调用中断服务程序来实现的,...

电脑如何设置
应用程序设置是针对不同应用程序的设置。在Windows系统中,可以通过控制面板中的程序和功能来进行应用程序设置。在Mac系统中,可以通过应用程序中的偏好设置来进行应用程序设置。在进行应用程序设置时,需要根据不同的应用程序进行调整,以便更好地使用应用程序。5. 外设设置 外设设置是针对电脑外部设备的设置...

如何设置BIOS
设成EGA\/VGA吧,不要尝试改为Mono,会减慢启动速度的。 二、BIOS FEATURES SETUP(BIOS特征设备) 1、Virus Warning\/Anti-Virus Protection(病毒警告\/反病毒保护) 选项:Enabled(开启),Disabled(关闭),ChipAway(芯片控制) 这项设置可防止外部程序对启动区和硬盘分区表的写入,当发生写入操作时,系统会自动产生警告并提示...

设计一个用8250实现串口通信
关于主机端口如何安排总线事务可以查阅参考文献[1]。以下着重介绍设备端数据的调度过程。数据帧的接收转存过程主要由DSP负责,DSP在外部SRAM中建立了一个数据帧的队列,如图4所示。系统主要工作在中断驱动模式下,与同步串行口相关的中断服务程序负责建立队列的尾部,对应于ISP1581中断引脚INT的中断服务程序负责建立队列的头部...

如何进入主板BIOS设置,然后让主板恢复出厂设置
如果用户希望能加快启动速度的话,可以把它设为“No Errors”,即不检查任何周边设备错误。Advanced BIOS Features (高级BIOS设置)Virus Warning(病毒警告)选项:Enabled(开启),Disabled(关闭)这个项目可以防止外部程序对硬盘引导扇区和硬盘分区表中的内容进行写入,当发生写入操作时,系统会自动发出警告并暂时中断程序的执行...

如何把外部辅助动作指令设置在数控系统中
大概是下面的1.顺序号字顺序号字也称程序段号。在程序段之首,以字母N开头,其后为一个2~4位的数字。需要注意的是,数控程序是按程序段的排列次序执行的,与顺序段号的大小次序无关,即程序段号实际上只是程序段的名称,而不是程序段执行的先后次序。2.准备功能字以字母G开头,后接一个两位数字...

如何安装外部来源应用程序?
4.点击“安装外部来源应用”按钮,并允许相关应用在您的手机上运行。5.您可以在应用商店中搜索您需要的应用程序,并找到相应的应用程序进行下载和安装。6.在安装过程中,您需要注意一些风险和隐私保护措施,以确保您的个人信息和数据的安全性。7.如果您发现某些应用存在安全隐患或者与法律法规不符,可以向...

计算机操作系统的主要功能是什么?
选择B,管理系统所有的软、硬件资源。为了使计算机系统能协调、高效和可靠地进行工作,同时也为了给用户一种方便友好地使用计算机的环境,在计算机操作系统中,通常都设有处理器管理、存储器管理、设备管理、文件管理、作业管理等功能模块,它们相互配合,共同完成操作系统既定的全部职能。

计算机的外部设备包括输入设备和输出设备和什么?
外存储器。外部设备是指连在计算机主机以外的设备,它一般分为输入设备、输出设备和外存储器,外部设备是计算机系统中的重要组成部分,起到信息传输、转入和存储的作用。1、硬盘存储器 硬盘存储器(硬盘)是指记录介质为硬质圆形盘片的磁表面存储设备。在计算机中,硬盘是必备的外存设备。它具有存储容量大、...

BIOS设置问题?
打开此功能后,如果有程序企图在此区中写入信息,BIOS会在屏幕上显示警告信息,并发出蜂鸣报警声。设定值有:Disabled,Enabled。 CPU L1 & L2 Cache(CPU一级和二级缓存) 此项允许您打开或关闭CPU内部缓存(L1)和外部缓存(L2)。设定值有:Enabled,Disabled。 CPU Hyper-Threading(CPU超线程, 845PE\/GE\/GV\/G芯片组...

宾县15110878011: VB怎么做向系统外界的东西发送信号的程序 -
稻欣赛治: 首先要有硬件,然后是通讯. 比如一个按钮,通过并口与电脑连接,或者通过专用的芯片与串口或者usb口连接. 然后在程序中,就是通讯处理了.vb可以串口通讯、可以调用api并口通讯.

宾县15110878011: 谁知道用vb程序怎么实现两台电脑连接或数据传送 -
稻欣赛治: 用winsock控件.部件里添加microsoft winsock什么的,然后放窗体里.至于具体语法,参照MSDN

宾县15110878011: 怎么在vb中通过mscomm控件的output 向外以十六进制发送“01”?是“01”不是“1”哦,今天在线等 -
稻欣赛治: 新建工程,在表单中放入Command1和Text1和MsComm1控件,并设置好通讯控件的Port和Settings,粘贴以下代码:Private Sub Command1_Click() Dim v(0) As Byte v(0) = &H1 MSComm1.Output = v End Sub Private Sub Form_Load() ...

宾县15110878011: 如何用VB实现串行通信 -
稻欣赛治: 收藏推荐 1串行通讯原理 计算机一般提供了一个或多个串行端口.在标准的PC中,鼠标通常被连接到coMI端口、调制解调器可能连接到CO刑口等等.串行端口提供了计算机与外部串行设备之间的数据传输通道,作为CPU和串行设备之间的编码...

宾县15110878011: 如何用VB串口通信收发文件、图片等 -
稻欣赛治: 图片文件都是二进制类型的.你需要做的工作就是: 1,把图片或者文件用二进制的格式读入缓冲或者是序列.然后顺序发送出去. 2.接收方接到后,首先判断二进制的文件头是否正确,如果正确就接受.知道接受到尾巴就把读取缓冲区的数据整理成文件或者图片保存. 仅供参考.谢谢

宾县15110878011: VB 如何向其它应用程序发送命令 -
稻欣赛治: 1、用 CreateObject("WScript.Shell").Run "d:\abc.exe", True 代替 Shell "d:\abc.exe"2、用API函数FindWindowEx找到千千静听界面上那些“上一曲”、“下一曲”、“暂停”这些按钮的句柄,然后用API函数SendMessage向这些按钮发送按下的消息就行了.

宾县15110878011: 求高手给段代码,vb如何实现16进制数据的发送和接受 -
稻欣赛治: 用winsock 控件的UDP协议来实现.

宾县15110878011: 如何VB编写数控程序 -
稻欣赛治: 数控程序多用来控制单片机或一些设备机械.一般用电脑的串口(com口)与这些设备相连.vb中通过利用comm控件,从串口发送接收信号来实现对设备的控制.具体编写方法就具体问题具体分析了.

宾县15110878011: VB中怎样用COM控件接收下位机信号和发送指令? -
稻欣赛治: 要用MSComm串口控件.MSComm1.Output = ”你的数据“ & Chr(13) '发出结束符控件这个过程Private Sub MSComm1_OnComm()Dim ShuXing As StringShuXing = Combo1(0) & "-" & Combo1(1) & "-" & Combo1(2) & "-" & Combo1(3...

宾县15110878011: 用vb程序怎样使电脑和非hid设备通过usb进行通讯,很急,在线等,就这些分了,全部给你吧 -
稻欣赛治: 没明白你的意思,你是不是把这个上位机和下位机的通信搞的太复杂了.如果你的STM32支持USB协议,那你可以用上位机的USB和你的单片机直接通讯的啊.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网