嵌入式:UCOS移植+简单创建任务

简介: 嵌入式:UCOS移植+简单创建任务

一、UCOS操作系统

µC/OS Micrium 公司出品的实时操作系统, µC/OS 目前有两个版本: µC/OS-II µC/OS-IIIµC/OS 是一种基于优先级抢占式多任务实时操作系统,包含了实时内核、任务管理、时间管理、任务间通信同步(信号量,邮箱,消息队列)和内存管理等功能。它可以使各个任务独立工作,互不干涉,很容易实现准时而且无误执行,使实时应用程序的设计和扩展变得容易,使应用程序的设计过程大为减化。 µC /OS 是一个完整的、可移植、可固化、可裁剪的抢占式实时多任务内核µC/OS 绝大部分的代码是用 ANSII C 语言编写的,包含一小部分汇编代码,使之可供不同架构的微处理器使用。

注意:在移植之前,得先有一个建立不带STemwin GUI的工程

µC-CPU:这是和 CPU 紧密相关的文件,我们不需要使用。

µC-LIBMicrium 公司提供的官方库文件,如字符串操作、内存操作等函数接口,可用可不用。

µCOS-II:这是源码的关键目录文件,我们接下来要详细分析的文件,跟移植、使用密切相关的。

µC-SerialµC/OS-II 接口文件文件。

这个是os配置文件,我们也要移植,复制;

先复制到我们移植的文件一起

复制整个文件到我们的工程

打开工程,添加路径

添加ucos源文件进入工程

添加cpu源文件进入工程

编译工程:第一个错误修改

没用到的,注释掉就可以了

第二个错误:

没用都,注释掉

第三个错误:

注释掉:

第四个错误:

钩子控制调用函数:这些函数没有定义使用

修改钩子宏定义的值为0

第五个错误

注释掉即可

修改为我们的系统滴答初始化函数

复制

修改后

修改中断服务函数

注意:在汇编驱动文件内,是使用;分号进行注释代码的

初始化UCOS

初始化ucos要使用systick

调用ucos初始化函数

三、UCOS任务创建

验证工程是否成功--打开任务创建源文件,找到任务创建函数,如下:

编写创建任务函数的第一个参数:也就是我们要执行的任务

 


相关文章
|
6月前
|
小程序 Linux 芯片
实用的嵌入式 C 程序!建议收藏
实用的嵌入式 C 程序!建议收藏
41 0
|
缓存 Java C语言
嵌入式 LVGL移植到STM32F4
嵌入式 LVGL移植到STM32F4
|
6月前
|
Linux 编译器 测试技术
嵌入式 Linux 下的 LVGL 移植
嵌入式 Linux 下的 LVGL 移植
223 0
|
Linux 图形学 Windows
嵌入式课程实现Linux操作系统LVGL移植操作
嵌入式课程实现Linux操作系统LVGL移植操作
|
存储 Ubuntu Linux
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十五)驱动程序基石(下)
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十五)驱动程序基石
226 0
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十五)驱动程序基石(下)
|
Linux 调度 开发工具
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十五)驱动程序基石(上)
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十五)驱动程序基石
252 0
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十五)驱动程序基石(上)
|
Linux 程序员 调度
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十五)驱动程序基石(中)
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十五)驱动程序基石
224 0
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三十五)驱动程序基石(中)
|
Linux C++
ARM嵌入式学习笔记——《设备驱动基础》(二)
ARM嵌入式学习笔记——《设备驱动基础》
103 0
|
传感器 网络协议 Linux
ARM嵌入式学习笔记——《设备驱动基础》(三)
ARM嵌入式学习笔记——《设备驱动基础》
203 0
|
存储 Web App开发 Unix
ARM嵌入式学习笔记——《设备驱动基础》(一)
ARM嵌入式学习笔记——《设备驱动基础》
138 0