PB串口通讯初始化参数详解
需积分: 9 198 浏览量
更新于2024-08-16
收藏 117KB PPT 举报
"本文主要介绍了如何在PowerBuilder (PB) 中使用串行通讯,通过Mscomm控件进行编程。文章提供了串口通讯初始化参数的详细解释,并提到了串口通信的读写参数以及ONCOMM事件的处理方法。"
在PB中进行串口通讯时,首先需要对串行通讯端口进行初始化。以下是初始化的关键参数:
1. **Commport**:这个参数用于设定通信的串口编号,通常选择1或2,分别对应COM1和COM2。范围在1到99之间。
2. **Settings**:设置通信的波特率(如9600、19200等),奇偶校验(n代表无校验,o代表奇校验,e代表偶校验),数据位(通常有5、6、7、8位),以及停止位(通常为1或2位)。
3. **Handshaking**:硬件握手协议的选择,包括:
- 0:不进行流量控制。
- 1:在数据中嵌入特殊字符来控制。
- 2:通过硬件RTS信号线自动控制流量。
- 3:同时使用嵌入字符和硬件RTS控制。
4. **Eofenable**:如果设置为true,那么当检测到输入中出现EOF(文件结束符)时,会停止输入并触发oncomm事件。
5. **Portopen**:此参数用于打开或关闭串口。
串口通信还包括读写参数:
- **Inbuffersize**:定义接收缓冲区的大小,用于存储接收到的数据。
- **Inputmode**:决定接收数据的方式,0表示以文本形式,1表示以二进制形式。
- **Inbuffercount**:返回当前缓冲区中已接收但未被处理的字符数量。
- **Rthreshold**:读门限值,当接收缓冲区中的字节数达到或超过这个值时,触发oncomm事件。
- **Inputlen**:指定从接收缓冲区读取的字符数。
- **Input**:用于将缓冲区中的数据读取到变量中。
- **Outbuffersize**:设置发送缓冲区的大小,用于暂存待发送的数据。
- **Outbuffercount**:返回发送缓冲区中等待发送的字符数。
- **Sthreshold**:写门限值,当发送缓冲区的字节数达到或超过这个值时,触发oncomm事件。
- **Output**:用于向串口写入数据。
在编程中,**ONCOMM**事件扮演着重要角色。该事件可以捕捉并处理通信中的各种事件,比如数据的读写完成。通过检查`Commevent`标志,我们可以得知当前事件的类型,例如输出缓冲区字节数小于等于写门限值,或者输入缓冲区有新数据到达。
通过上述参数的配置和事件处理,PB中的串行通讯能够实现与外部设备的有效通信,确保数据的准确传输和流量控制。在实际应用中,开发者可以根据具体需求调整这些参数,以适应不同的通信场景。
2021-10-04 上传
2016-04-18 上传
362 浏览量
2011-11-22 上传
2009-04-25 上传
2024-06-24 上传
2022-08-03 上传
2011-07-29 上传
2023-05-31 上传
条之
- 粉丝: 24
- 资源: 2万+
最新资源
- Android圆角进度条控件的设计与应用
- mui框架实现带侧边栏的响应式布局
- Android仿知乎横线直线进度条实现教程
- SSM选课系统实现:Spring+SpringMVC+MyBatis源码剖析
- 使用JavaScript开发的流星待办事项应用
- Google Code Jam 2015竞赛回顾与Java编程实践
- Angular 2与NW.js集成:通过Webpack和Gulp构建环境详解
- OneDayTripPlanner:数字化城市旅游活动规划助手
- TinySTM 轻量级原子操作库的详细介绍与安装指南
- 模拟PHP序列化:JavaScript实现序列化与反序列化技术
- ***进销存系统全面功能介绍与开发指南
- 掌握Clojure命名空间的正确重新加载技巧
- 免费获取VMD模态分解Matlab源代码与案例数据
- BuglyEasyToUnity最新更新优化:简化Unity开发者接入流程
- Android学生俱乐部项目任务2解析与实践
- 掌握Elixir语言构建高效分布式网络爬虫