营口西门子模块一级总代理商
专业销售西门子S7-200/300/400/1200/1500PLC,ET200分布式I/O:ET200S、ET200M、ET200SP、ET200PRO、3RW系列软启动器(3RW30/3RW40/3RW44/3RW31)、3RK系列电机启动器、数控系统、变频器(MM420/MM430/MM440/S110/S120/G120/G120C/V10/V20/V60/V80/V90/G130/G150)、人机界面、触摸屏、伺服、电机、西门子通讯电缆、现场总线、DP接头、工控机,西门子低压电器,仪器仪表等,并可提供西门子维修服务,欢迎来电垂询。
作为****的工业自动化和数字化解决方案提供商,西门子PLC控制器在工业自动化领域具有广泛的应用。作为西门子PLC控制器的全国代理商,我们引入了西门子PLC模块总代理,提供*新的西门子PLC控制器和西门子PLC模块,我们致力于为客户提供*优质的西门子PLC控制器产品,也提供各种控制面板和自动化系统的设计、开发和集成服务,帮助客户提高生产效率和管理效益。
应该注意,若传输的是二进制数据,标志字符也有可能在数据流中出现而引起误操作,这是软件流控制的缺陷,而硬件流控制不会有这个问题
Delphi是一种具有功能强大、简便易用和代码执行速度快等优点的可视化快速应用开发工具,它在构架企业信息系统方面发挥着越来越重要的作用,许多程序员愿意选择Delphi作为开发工具编制各种应用程序。美中不足之处是Delphi没有自带的串口通信控件,在它的帮助文档里也没有提及串口通信,这就给编制通信程序的开发人员带来许多不便。
目前,利用 Delphi实现串口通信的常用的方法有 3种:一是利用控件,如 MSCOMM控件和 SPCOMM控件;二是使用API函数;三是调用其他串口通信程序。其中利用 API编写串口通信程序较为复杂,需要掌握大量的通信知识。相比较而言,利用SPCOMM控件则相对较简单,并且该控件具有丰富的与串口通信密切相关的属性及事件,提供了对串口的各种操作,还支持多线程。下面本文结合实例详细介绍SPCOMM控件的使用。
SPCOMM的安装
在 Unit file name处填写 SPCOMM控件所在的路径,其他各项可用默认值,点击 OK按钮。
2.安装后,在 System控件面板中将出现一个红色控件 COM。现在就可以像 Delphi自带控件一样使用COM控件了。
SPCOMM的属性、方法和事件
1.属性
●CommName:表示 COM1、 COM2等串口的名字;
●BaudRate:根据实际需要设定的波特率,在串口打开后也可更改此值,实际波特率随之更改;
●ParityCheck:表示是否需要奇偶校验;
●ByteSize:根据实际情况设定的字节长度;
●Parity:奇偶校验位;
●StopBits:停止位;
●SendDataEmpty:这是一个布尔型属性,为 true时表示发送缓存为空,或者发送队列里没有信息;为false时表示发送缓存不为空,或者发送队列里有信息。
2.方法
●Startcomm方法用于打开串口,当打开失败时通常会报错。错误主要有7种:⑴串口已经打开;⑵打开串口错误;⑶文件句柄不是通信句柄;⑷不能够安装通信缓存;⑸不能产生事件;⑹不能产生读进程;⑺不能产生写进程;
●StopComm方法用于关闭串口,没有返回值;
●WriteCommData(pDataToWrite: PChar;dwSizeofDataToWrite:Word)方法是个带有布尔型返回值的函数,用于将一个字符串发送到写进程,发送成功返回 true,发送失败返回false。执行此函数将立即得到返回值,发送操作随后执行。该函数有两个参数,其中 pDataToWrite是要发送的字符串,dwSizeofDataToWrite是发送字符串的长度。
3.事件
●OnReceiveData :procedure (Sender: Tbbbbbb;Buffer:Pointer;BufferLength: Word) of bbbbbb
当有数据输入缓存时将触发该事件,在这里可以对从串口收到的数据进行处理。 Buffer中是收到的数据,BufferLength是收到的数据长度。
●OnReceiveError : procedure(Sender: Tbbbbbb; EventMask :DWORD)
当接收数据出现错误时将触发该事件
营口西门子模块一级总代理商