×
嵌入式 > 技术百科 > 详情

基于LPC2294处理器的嵌入式PLC功能设计(中)

发布时间:2023-01-12 发布时间:
|

2 嵌入式PLC的软件系统设计

嵌入式PLC的软件分为运行系统软件和开发系统软件两部分。运行系统负责对整个系统的管理和对用户程序的编译执行,并保存所有的数据,完成与外界通讯。开发系统面对用户,完成对PLC程序的编辑和转换。

2.1 PLC运行系统软件

该系统负责为应用程序分配内存,把该应用程序加载到分配好的内存里,然后开始执行该程序的指令。如果该程序要求位于底层的操作系统提供服务,该运行系统还必须负责处理有关的服务请求。该运行系统是基于嵌入式操作系统μC/OS-II来开发的,选用嵌入式操作系统提高了软件系统的抗干扰性,系统的可靠性及应用软件的开发效率,缩短了开发周期。μC/OS-II的移植的主要工作是修改与ARM处理器相关部分的代码,它们集中在3个文件中。

1,OS_CPU.H文件该文件包含了用#define定义的与处理器相关的常量、宏和类型定义。

2,OS_CPU_C.C文件该文件中的任务栈结构初始化函数OSTaskStkInit (),必须根据移植时统一定义的任务堆栈结构进行初始化。另外还有9个系统规定的钩子函数必须声明,但可以不包含任何代码,这些钩子函数在本移植中全为空函数。

3,OS_CPU_A.S文件的移植共包括4个函数:多任务启动函数中调用的OSStartHighRdy ()、任务切换函数OSCtxSw()、中断任务切换函数OSIntCtxSw ()、时钟节拍服务函数OSTickISR ()。

至此整个μC/OS-II内核移植完成。以后的用户程序都是在这个基础上进行的扩充。

2.2 PLC开发系统软件

该系统的主要任务是让用户编写PLC程序,所以还需要设计与该系统相对应的编程平台。编程平台的设计主要包括编程界面的设计、编辑器的设计、转换模块的设计、编译器的设计和通信模块的设计等。软件系统结构图如图7所示。

用户在编程平台里编写PLC程序。这里借用FX系列PLC的编程软件SWOPC-FXGP/WIN-C作为编程平台,编程语言可以使用梯形图和指令表。然后通过转换程序把编译后的目标文件转化成C语言。转换程序其实就是一个解释系统,通过逐条翻译编程软件的指令表,生成和处理器指令系统无关的用户指令。使用这样的方式作为上位机编程平台,节省了工作量。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
FPGA及CPLD应用领域不断拓展