论文部分内容阅读
近年来,嵌入式系统的使用越来越广泛,在控制领域也是如此。μC/OS-Ⅱ是一个著名的开源嵌入式操作系统,但是缺乏对网络功能的支持。LwIP是一个开源TCP/IP协议栈,其实现的重点是在支持TCP/IP协议栈主要功能的基础上减少对RAM的需求, LwIP很适合使用在嵌入式系统中,因此μC/OS-Ⅱ与LwIP的结合可以为资源有限的嵌入式系统提供良好的网络功能支持。在一般情况下,μC/OS-Ⅱ上设计的控制程序需要和内核一起编译,当下载到嵌入式系统后就很难更改,若需要比较灵活的控制功能,只能设计一个考虑周全的复杂系统或是根据需要下载不同的控制程序。本文首先分析了μC/OS-Ⅱ操作系统的内核,任务管理,同步与通信,内存管理和移植接口,并讨论了其在ARM 9上的移植。其次分析了LwIP协议栈的结构框架,内存管理和应用接口。接着为DM9000网络芯片编写了适用于LwIP的驱动程序,并使用μC/OS-Ⅱ提供的系统函数实现了LwIP的操作系统模拟层,从而将LwIP移植到μC/OS-Ⅱ操作系统上。随后实现了一个位于嵌入式系统中的服务器程序和一个位于PC上的客户程序,服务器程序和客户程序通过一些预定义的消息进行通信,利用PC上的客户程序不但可以使得嵌入式系统动态加载运行控制程序,还可以控制和查询这些程序的运行状态。最后通过一系列的测试证实了本文实现的基于μC/OS-Ⅱ的远程控制系统能够执行预期的功能,其灵活性有了比较显著的提升。