没有合适的资源?快使用搜索试试~ 我知道了~
首页MScomm控件使用详解(整理了好久)
MSComm控件使用详解 1 §1.1 MSComm控件两种处理通讯的方式 1 §1.1.1 事件驱动方式 2 §1.1.2 查询方式 2 §1.2 MSComm控件的常用属性 2 §1.3 MSComm控件属性详解 2 §1.3.1 CommPort属性 2 §1.3.2 PortOpen属性 3 §1.3.3 RThreshold 属性 3 §1.3.3 CTSHolding 属性 4 §1.3.4 SThreshold 属性 4 §1.3.5 Handshake 常数 4 §1.3.6 OnComm 常数 5 §1.3.7 Error 常数 5 §1.3.8 InputMode 常数 5 §1.3.9 CDHolding属性 5 §1.3.10 DSRHolding 属性 6 §1.3.11 Settings 属性 6 §1.3.12 InputLen 属性 7 §1.3.12 Output 属性 8 §1.3.13 EOFEnable 属性 9 §1.3.14 错误消息(MS Comm 控件) 9 §1.4 MSComm控件进行串行通信的一般步骤 10 §1.5 实例 10 §1.5.1 控件的初始化 11 §1.5.2 数据的发送和接收 11
资源详情
资源评论
资源推荐
版权所有,欢迎转载
控件使用详解
控件两种处理通讯的方式
控件通过串行端口传输和接收数据,为应用程序提供串行通讯
功能。 控件在串口编程时非常方便,程序员不必去花时间去了解较为
复杂的 函数,而且在 、、 等语言中均可 使用。
(以下简称 )是 公司提供的简化
下串行通信编程的 ! 控件,它为应用程序提供了通过串行接口
收发数据的简便方法。具体的来说,它提供了两种处理通信问题的方法:一是
事件驱动"# - $方法,一是查询法。
控件提供下列两种处理通讯的方式:事件驱动方式和查询方式。
e
事件驱动方式
事件驱动通讯是处理串行端口交互作用的一种非常有效的方法。在许多
情况下,在事件发生时需要得到通知,例如,在串口接收缓冲区中有字符,或
者"$或%&'"%'$线上一个字符到达或一个变化发
生时。在这些情况下,可以利用 控件的 OnComm 事件捕获并处理这
些通讯事件。( 事件还可以检查和处理通讯错误。所有通讯事件和通讯
错误的列表,参阅 # 属性。在编程过程中,就可以在 ( 事件
处理函数中加入自己的处理代码。这种方法的优点是程序响应及时,可靠性高。
每个 MSComm 控件对应着一个串行端口。如果应用程序需要访问多个串行端
口,必须使用多个控件。
)查询方式e
查询方式实质上还是事件驱动,但在有些情况下,这种方式显得更为便
捷。在程序的每个关键功能之后,可以通过检查 CommEvent 属性的值来查询
事件和错误。如果应用程序较小,并且是自保持的,这种方法可能是更可取的。
例如,如果写一个简单的电话拨号程序,则没有必要对每接收一个字符都产生
事件,因为唯一等待接收的字符是调制解调器的“确定”响应。e
) 控件的常用属性
控件有很多重要的属性,但首先必须熟悉几个属性。
设置并返回通讯端口号。e
*以字符串的形式设置并返回波特率、奇偶校验、数据位、停止位 。
)
版权所有,欢迎转载
e
(设置并返回通讯端口的状态。也可以打开和关闭端口。e
从接收缓冲区返回和删除字符。e
(向传输缓冲区写一个字符串。
+ 控件属性详解
+ 属性
设置并返回通讯端口号。
语法:,-. /" 一整型值,说明端口号。$0
说明:在设计时, 可以设置成从到1的任何数(缺省值为)。
但是如果用 PortOpen 属性打开一个并不存在的端口时,控件会产生
错误12(设备无效)。
注意:必须在打开端口之前设置属性。
+)( 属性
设置并返回通讯端口的状态(开或关)。在设计时无效。
(34打开端口
(34关闭端口并清除接收和传输缓冲区
说明:
设置 ( 属性为 ' 打开端口。设置为 5 关闭端口并清除接收
和传输缓冲区。当应用程序终止时,控件自动关闭串行端口。
在打开端口之前,确定属性设置为一个合法的端口号。如果
属性设置为一个非法的端口号,则当打开该端口时,控件
产生错误 12(设备无效)。
另外,串行端口设备必须支持 *属性当前的设置值。如果*
属性包含硬件不支持的通讯设置值,那么硬件可能不会正常工作。
如果在端口打开之前,'%#, 或 %'#, 属性设置为 ',当关
闭端口时,该属性设置为 5。否则,'% 和 %' 线保持其先前的状态。
数据类型:
PortOpen 属性示例:
下例以波特率 6177 打开 号通讯端口,没有奇偶检查,2 个数据位, 个
停止位。
*386177992984
34
(3'4
+
版权所有,欢迎转载
++%'属性
在 控件设置 # 属性为 # % 并产生 (
之前,设置并返回的要接收的字符数。
语 法 : ,-%.3 / ( 整 型 表 达 式 , 说 明 在 产 生
(事件之前要接收的字符数。)
说明:当接收字符后,若 % 属性设置为 7(缺省值)则不产生
( 事件。例如,设置 % 为 ,接收缓冲区收到每一个字符都会
使 控件产生 ( 事件。
++':*属性
确定是否可通过查询 '"'$线的状态发送数据。'
是调制解调器发送到相联计算机的信号,指示传输可以进行。该属性在设
计时无效,在运行时为只读。
语法:,-':*()
控件的':*属性设置值:''线为高电平。
e5'线为低电平。e
说明:如果 ' 线为低电平"':*35$并且超时时,
控件设置 # 属性为 # ''("''$
并产生 ( 事件。
'线用于 %';'"%&';'$硬件握手。
如果需要确定 '线的状态,':*属性给出一种手工查询的方
法。详细信息有关握手协议,请参阅:<*属性。
+='属性
控件设置 # 属性为 # 并产生 ( 事件
之前,设置并返回传输缓冲区中允许的最小字符数。
语法:,-'.3 /, 整形表达式,代表在 (
事件产生之前在传输缓冲区中的最小字符数。e
说明:若设置 属性为 7(缺省值),数据传输事件不会产生
( 事 件 。 若 设 置 属 性 为 , 当 传 输 缓 冲 区 完 全 空 时 ,
控 件 产 生 ( 事 件 。 如 果 在 传 输 缓 冲 区 中 的 字 符 数 小 于
, # 属 性 设 置 为 # , 并 产 生 ( 事 件 。
# 事件仅当字符数与 交叉时被激活一次。例如,如果
等于 >,仅当在输出队列中字符数从>降到=时,# 才发生。
如果在输出队列中从没有比多的字符,# 事件将绝不会发
生。
剩余10页未读,继续阅读
u011060617
- 粉丝: 1
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 2023年中国辣条食品行业创新及消费需求洞察报告.pptx
- 2023年半导体行业20强品牌.pptx
- 2023年全球电力行业评论.pptx
- 2023年全球网络安全现状-劳动力资源和网络运营的全球发展新态势.pptx
- 毕业设计-基于单片机的液体密度检测系统设计.doc
- 家用清扫机器人设计.doc
- 基于VB+数据库SQL的教师信息管理系统设计与实现 计算机专业设计范文模板参考资料.pdf
- 官塘驿林场林防火(资源监管)“空天地人”四位一体监测系统方案.doc
- 基于专利语义表征的技术预见方法及其应用.docx
- 浅谈电子商务的现状及发展趋势学习总结.doc
- 基于单片机的智能仓库温湿度控制系统 (2).pdf
- 基于SSM框架知识产权管理系统 (2).pdf
- 9年终工作总结新年计划PPT模板.pptx
- Hytera海能达CH04L01 说明书.pdf
- 数据中心运维操作标准及流程.pdf
- 报告模板 -成本分析与报告培训之三.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论10