PowerBuilder实现免配置串口通信的代码教程

需积分: 5 8 下载量 25 浏览量 更新于2024-10-11 收藏 33KB RAR 举报
资源摘要信息:"PB实现串口通信程序代码" 知识点: 1. PowerBuilder简介: PowerBuilder是由美国PowerSoft公司开发的一种快速应用开发工具(RAD),主要用于客户端/服务器数据库应用的开发。其具有可视化设计环境,通过拖放控件、编写少量代码即可完成复杂应用的开发。PowerBuilder支持多种数据库连接,如Oracle、SQL Server、DB2等,并且提供了强大的数据窗口技术用于数据展示和处理。 2. 串口通信基础: 串口通信(Serial Communication)是一种常见的数据传输方式,广泛应用于计算机与其他设备之间的通信,如调制解调器、路由器、嵌入式设备等。串口通信的主要特点是使用串行数据线进行数据传输,即数据以位为单位按序发送和接收。 3. Windows API函数: Windows API(应用程序编程接口)是操作系统提供的一系列函数和协议,它允许应用程序与Windows操作系统直接交互,完成各种系统功能。在PowerBuilder中调用Windows API函数,可以实现对操作系统底层资源的访问和控制,包括串口操作、文件管理、网络通信等。 4. MSCOMM控件: MSCOMM是Microsoft Communications Control的缩写,是一个ActiveX控件,提供了串口通信的基本功能。它通过简单的属性和事件来控制串口,使用比较方便,很多基于Windows的编程环境(比如VB)都可以直接使用MSCOMM控件进行串口编程。 5. PB实现串口通信: 在PowerBuilder中,没有内置的串口控件,但可以通过调用Windows API来实现串口通信的功能。这种方法可以避免注册和配置环境的复杂性,实现更高效的串口数据传输。 具体实现步骤可能包括: - 使用CreateFile函数打开串口设备。 - 使用SetCommState函数配置串口的参数,如波特率、校验位、数据位、停止位等。 - 使用ReadFile和WriteFile函数进行数据的读取和发送。 - 使用CloseHandle函数关闭串口。 6. PB12版本支持: PB12指的是PowerBuilder的第12个版本,这个版本在数据窗口控件、报表设计等方面有所增强,同时在与多种数据库的集成以及Web服务支持方面也有所改进。在串口通信方面,PB12版本与早期版本相比,能够提供更好的性能和稳定性,以及更丰富的API支持。 7. 无注册免配置环境: 所谓的“免注册免配置环境”意味着在使用PowerBuilder进行串口通信开发时,不需要在系统中注册特定的驱动或者组件,也无需对操作系统环境做特别的配置,这样可以减少部署的复杂性和提高开发效率。 8. 文件名称含义: “pbcomm串口通讯PB12版本”这一文件名称提示我们,这是一个专门为PowerBuilder 12版本制作的串口通信示例程序。文件中的“pbcomm”可能是指PowerBuilder串口通信的缩写,代表该文件是关于如何在PowerBuilder中使用API函数来实现串口通信的具体代码或例子。 通过对以上知识点的了解和掌握,开发者可以更加深入地理解PB实现串口通信程序代码的内部机制,以及如何在PowerBuilder环境中利用Windows API实现高效、便捷的串口数据传输。
2008-04-01 上传
原先的程序数据缓冲区采用String类型,因此无法发送H00,现将数据缓冲区修改为BLOB类型,可以发送任意数据。 在原先程序的基础上,增加了两个对象:pfc_n_cst_numerical,uo_bit_operator Email: leio88@126.com 以下是原作者的话---------------------------------- 本程序通过调用WINDOWS API函数,实现了类似MSCOMM控件的功能。使PB可以很方便地访问串口。由于所有功能都是PB代码实现的,因此比使用OCX控件访问串口的方式更稳定。 为了方便使用已将所有功能都封装在uo_comm._control用户对象中。使用时只需在窗口中像放置普通对象(如:按钮)一样放置一个uo_comm_control对象即可对串口进行访问。 访问串口时先调用of_setcommport(string commport)和of_setcommsettings(string commsettings)来设置要访问的端口及端口初始化参数,然后调用of_open()初始化端口。或直接使用of_open(string comport,string commsettings)带参数初始化端口。端口初始化成功后即可使用of_send(string sendstring)向串口发送数据,或使用of_read()读取串口数据。当串口有数据到达时,触发ue_received事件,该事件提供给用户用来存放读取串口数据的代码(值得注意的是,当数据到达接收端时,由于发送的数据很长或通讯速率较低,会多次触发ue_receieved事件,并且在ue_received事件中使用of_read()得到的数据仅只是整个发送数据的一部分,需要将多次接收到的数据连接起来才是完整的接收数据)。若对串口所有操作结束不再需要对串口进行操作,则调用of_close()将端口关闭。 Email: blazingstar@sina.com