图11-1 串行通信方式在同步通信中,为了使发送和接收保持一致,串行数据在发送和接收两端使用的时钟应同步。异步通信协议规定每个数据以相同的位串形式传输,每个串行数据由起始位、数据位、奇偶校验位和停止位组成,串行数据的位串格式如图11-2所示,具体定义如下:图11-2 串行数据位串定义当通信线上没有数据传输时应处于逻辑“1”状态,表示线路空闲。规定的波特率有50、75、110、150、300、600、1200、2400、4800、9600和19200等几种。......
2023-11-26
例11-1:双机串行通信。
本例使用两台计算机进行通信,一台计算机作为服务器,通过串口向外发送数据;另一台计算机作为客户机,接收由服务器发送来的数据。两台计算机之间利用一条串口数据线连接起来,串口数据线两端的串口引脚的接线顺序如图11-12所示。
两台计算机之间的串行通信流程图如图11-13所示。
图11-12 最简单的串口连接方式
图11-13 串行通信流程图
服务器的前面板及程序框图如图11-14和图11-15所示。
客户机的前面板及程序框图如图11-16和图11-17所示。
图11-14 串行通信服务器程序前面板
图11-15 串行通信服务器程序框图
图11-16 串行通信客户机程序前面板
图11-17 串行通信客户机程序框图(www.chuimin.cn)
例11-2:与PLC进行串行通信。
PLC的全称是Programmable Logic Controller(可编程控制器),是一种成熟的工业控制技术,在工业控制领域得到了广泛的应用。PLC利用串口与计算机进行通信,本例以松下FP0-C32小型PLC进行串行通信为例,介绍在LabVIEW中如何使用串行通信功能实现与PLC的通信。PLC与计算机之间通过一条串口数据线相连接。
本例中,向PLC发送一条命令,将PLC中的0号寄存器R0000中的数据位置1,并接受PLC返回的信息。发送的命令是“%01#WCSR0000123\r”,PLC收到该命令后,返回响应字符串“%01$WC14\r”。其通信过程如下。
初始化串口,设置串口的通信阐述与PLC的串行通信参数一致。
向PLC中发送命令字符串“%01#WCSR0000123\r”。
延时50ms,等待PLC执行命令,并返回相应字符串。
从串口输入缓存中读出PLC的响应字符串。
关闭串口。
本例的程序框图及结果如图11-18和图11-19所示。
图11-18 与PLC进行串行通信程序前面板
图11-19 与PLC进行串行通信程序框图
值得一提的是,PLC在工业控制中具有举足轻重的地位,具有其他控制技术无法比拟的优势,而LabVIEW在测控软件方面也有其独到的优势,因此,利用PLC作为控制系统的硬件核心,利用LabVIEW开发控制系统软件,将二者有机结合起来,发挥各自的优势,可以开发出一套功能强大的控制系统。建议该领域的用户在开发工业控制系统时,采用PLC+LabVIEW的方案。
另外,会有一点值得注意的是,串口只要初始化一次即可,要尽量避免重复初始化串口(除非改变其参数),否则有可能降低系统的运行效率。注意
当在LabVIEW中利用VISA Configure Serial Port.vi节点初始化了一个串口后,若在串行通信结束后没有利用VISA Close节点将该串口关闭,那么,只要没有退出LabVIEW,LabVIEW会一直占用该串口资源,其他外部的程序在此时是不能访问该串口的。
有关LabVIEW 2012中文版虚拟仪器从入门到精通的文章
图11-1 串行通信方式在同步通信中,为了使发送和接收保持一致,串行数据在发送和接收两端使用的时钟应同步。异步通信协议规定每个数据以相同的位串形式传输,每个串行数据由起始位、数据位、奇偶校验位和停止位组成,串行数据的位串格式如图11-2所示,具体定义如下:图11-2 串行数据位串定义当通信线上没有数据传输时应处于逻辑“1”状态,表示线路空闲。规定的波特率有50、75、110、150、300、600、1200、2400、4800、9600和19200等几种。......
2023-11-26
LabVIEW中用于串行通信的节点实际上是VISA节点,为了方便用户使用LabVIEW将这些VISA节点单独组成一个子选板,包括8个节点,分别实现配置串口、串口写入、出口读取、关闭串口、检测串口缓冲区和设置串口缓冲区等。10表示停止位为1位,15表示停止位为1.5位,20表示停止位为2位。图11-11 VISA清空I/O缓冲区的节点图标及端口定义屏蔽:指明要清空的缓冲区。......
2023-11-26
异步串口通信的字符格式数据传送分为串行和并行,通信又分为异步和同步。异步串行通信是一帧接一帧进行的,传送既可以是连续的,也可以是断续的。串行通信的传送速率及通信波特率的计算MCS51系列单片机串行接口组成的通信系统是一种异步通信系统。波特率在串行口异步通信中是一个由用户决定的保证通信可靠的重要参数。1)串行接口控制寄存器SCON设置串行接口控制寄存器SCON是一个可位寻址的专业寄存器,用于串行数据通信控制。......
2023-11-07
计算机与外部设备或计算机与计算机之间的数据交换称为通信。1.异步串行通信的字符格式在异步串行通信中,信息的两种状态分别以mark和space标志。图中给出的是8位数据位、1位奇偶校验位和1位停止位,加上1位起始位,共11位组成一个传输帧。图9-1异步串行通信的字符格式1)起始位。2.异步串行通信的传送速率异步串行通信的传送速率用于表示数据传送的快慢。在全双工方式下,通信双方需要两根数据线进行数据传送。......
2023-11-17
8051系列单片机内部集成的串行通信接口全称为“通用异步收发器”,它既可作异步传输使用,也可作同步移位寄存器使用,还可用于数据的组网通信。图9-7 8051系列单片机通用异步收发器的内部结构UART工作时,定时器T1用于产生通信需要的时钟,控制寄存器用于对串行口的工作状态进行相应的监控和设置。......
2023-11-17
在MCS-51单片机中,与串行通信有关的控制寄存器有3个,分别是串行控制寄存器SCON、串行口电源控制寄存器PCON和中断允许寄存器IE。1.串行控制寄存器SCONSCON是一个可位寻址的专用寄存器,用于串行数据通信的控制。2.串行口电源控制寄存器PCONPCON主要是为CHMOS型单片机8051的电源控制而设置的。表9-4串行口电源控制器寄存器在电源控制寄存器PCON中只有1位SMOD与串行口工作有关,SMOD是串行口波特率的倍增位,当SMOD=1时,串行口波特率加倍。......
2023-11-17
通过自动检测端口事件发现中断并转入中断处理。冗余数据校验、奇偶校验、校验和、循环冗余校验等都是串行通信中常用的差错检验方法。奇偶校验串行通信中经常采用奇偶校验来进行错误检查。校验和通常只有一个字节,因而不会对通信量有明显的影响。CRC循环冗余校验也是串行通信中常用的检错方法,它采用比校验和更为复杂的数学计算,其校验结果也更加可靠。......
2023-11-20
S5PV210处理器中采用的是异步串行通信方式。异步串行通信通常以字符为单位组成字符帧传送。在串行通信中,数据位的发送和接收分别由发送时钟脉冲和接收时钟脉冲进行定时控制。......
2023-11-19
相关推荐