The invention discloses a programmable control method based on St language pointer variable, including serial data receiving and sending process, which includes: defining the first pointer variable pdata1 and the second pointer variable pdata2 of type pointer; defining the first array data1 and the second array data2 of array length N and type byte; assigning the address of the first array data1 to The first pointer variable pdata1 assigns the address of the second array data2 to the second pointer variable pdata2; sends the N data pointed to by the first pointer variable pdata1 through the serial port; receives the data from the serial port to the address pointed to by the second pointer variable pdata2. The invention can greatly reduce the code amount, without defining the fixed address m area or defining the internal data block, realize dynamically, greatly enhance the flexibility of programming, and greatly improve the execution efficiency.
【技术实现步骤摘要】
基于ST语言指针变量的可编程控制的方法
本专利技术涉及可编程控制领域,特别涉及一种基于ST语言指针变量的可编程控制的方法。
技术介绍
可编程控制系统在我国已经有超过20年的应用,控制系统简称PLC。PLC控制系统采用可编程的标准语言,通常依据IEC61131-3标准,对控制器进行标准的语言开发应用。可编程控制器在机械、流程工业、工用工程、楼宇自控等等领域都有广泛的应用。随着PLC控制系统应用越来越广,控制系统的核心芯片性能需求也越来越高。在处理速度提升、控制器功耗降低、存储容量扩充、接口数量补充等方面,每年都有提高。因此,除了常规的输入输出点位以外,数据接口集成能力,也成了PLC控制系统的一大特色。对于PLC控制系统来说,编程语言早期普遍采用梯形图,适合电气工程师将二次电路图转换成梯形图。但是,近几年来,ST(结构化文本)语言基本被年轻工程师们接受。因为ST语言具有可读性强,方便加入注解,方便注释调试,方便写功能块函数等特点。通常中型规模的PLC控制系统,就要接入各种带通讯接口的设备,比如温湿度传感器、LED显示屏、电表、水表、空调主机、变频器等等设备,都需要通过串行接口接入。PLC在接入这些设备的时候,往往需要有一定的快速计算能力和数据存储能力。通常采用数组、连续地址变量和内部数据块组合的形式,对数据进行计算处理。但是,对于PLC语言来说,梯形图处理这些数据,基本没法看,又长又难读懂。一般采用ST语言来实现。但是ST语言规定的编程方法,对于数组、连续地址变量、内部数据块的复制、处理,也有一定的不足。比如数组与连续地址变量的转换,需要一个一个变量编写,代码 ...
【技术保护点】
1.一种基于ST语言指针变量的可编程控制的方法,其特征在于,应用于可编程控制系统,包括串行数据收发流程,所述串行数据收发流程包括如下步骤:A)定义类型为pointer的第一指针变量pdata1和第二指针变量pdata2;B)定义数组长度为N、类型为byte型的第一数组data1和第二数组data2;所述N为大于1的整数;C)将所述第一数组data1的地址赋值给所述第一指针变量pdata1,将所述第二数组data2的地址赋值给所述第二指针变量pdata2;D)将所述第一指针变量pdata1指向的N个数据通过串口发送出去;E)接收所述串口的数据至所述第二指针变量pdata2指向的地址。
【技术特征摘要】
1.一种基于ST语言指针变量的可编程控制的方法,其特征在于,应用于可编程控制系统,包括串行数据收发流程,所述串行数据收发流程包括如下步骤:A)定义类型为pointer的第一指针变量pdata1和第二指针变量pdata2;B)定义数组长度为N、类型为byte型的第一数组data1和第二数组data2;所述N为大于1的整数;C)将所述第一数组data1的地址赋值给所述第一指针变量pdata1,将所述第二数组data2的地址赋值给所述第二指针变量pdata2;D)将所述第一指针变量pdata1指向的N个数据通过串口发送出去;E)接收所述串口的数据至所述第二指针变量pdata2指向的地址。2.根据权利要求1所述的基于ST语言指针变量的可编程控制的方法,其特征在于,所述N的大小为100。3.根据权利要求2所述的基于ST语言指针变量的可编程控制的方法,其特征在于,所述步骤D)通过如下程序实现:sersend(EN:=1,CON:=1,DATA:=pdata1,LENGTH:=100);其中,sersend为串口数据发送功能块,EN为使能状态,CON为串口,DATA为数据指针,LENGTH为发送的字节数。4.根据权利要求3所述的基于ST语言指针变量的可编程控制的方法,其特征在于,所述步骤E)通过如下程序实现:SerRecv(EN:=1,CON:=1,DATA:=pdata2);其中,SerRe...
【专利技术属性】
技术研发人员:朱健,冯华强,姚立,孙京诰,
申请(专利权)人:苏州保控电子科技有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。