μC/OS-I移植需要编写的文件
移植μC/OS-II到一个新的体系结构上需要提供2个或3个文件:
OS_CPU.H(C语言头文件)
OS_CPU_C.C(C程序源文件)
OS_CPU_A.ASM(汇编程序源文件)
移植代码包括的内容
移植内容 |
类型 |
所属文件 |
描述 |
BOOLEAN、INT8U、INT8S、 … |
数据类型 |
OS_CPU.H |
与编译器无关的数据类型 |
OS_STK |
数据类型 |
OS_CPU.H |
堆栈的数据类型 |
OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL() |
宏 |
OS_CPU.H |
开关中断的代码 |
OS_STK_GROWTH |
常量 |
OS_CPU.H |
定义堆栈的增长方向 |
OS_TASK_SW |
函数 |
OS_CPU.H |
任务切换时执行的代码 |
OSTaskStkInit() |
函数 |
OS_CPU_C.C |
任务堆栈初始化函数 |
OSInitHookBegin()、OSInitHookEnd()、 … |
函数 |
OS_CPU_C.C |
μC/OS-II在执行某些操作时调用的用户函数,一般为空 |
OSStartHighRdy() |
函数 |
*OS_CPU_A.ASM |
进入多任务环境时运行优先级最高的任务, |
OSIntCtxSw() |
函数 |
*OS_CPU_A.ASM |
中断退出时的任务切换函数 |
OSTickISR() |
中断服务程序 |
*OS_CPU_A.ASM |
时钟节拍中断服务程序 |
不依赖于编译的数据类型
typedef unsigned char BOOLEAN;typedef unsigned char INT8U;typedef signed char INT8S;typedef unsigned short INT16U;typedef signed short INT16S;typedef unsigned int INT32U;typedef signed int INT32S;typedef float FP32;typedef double FP64;typedef INT32U OS_STK;
转载于:https://www.cnblogs.com/markmin214/archive/2013/04/03/2997454.html
μC/OS-I移植需要编写的文件相关推荐
- 【第3版emWin教程】第8章 emWin6.x的带OS方式移植(STM32H7之RGB接口)
教程不断更新中:http://www.armbbs.cn/forum.php?mod=viewthread&tid=98429 第8章 emWin6.x的带OS方式移植(STM32H7之R ...
- -uc/OS系统移植(基于STM32F103C8T6,超详细讲解)
完成STM32F103C8基于HAL库的-uc/OS系统移植 一.创建HAL库 二.下载uc/OSIII源码及移植准备 1.下载uc/OSIII源码 2.将uc/OS源码文件复制到工程 三.将uc/O ...
- T2080 U-BOOT与OS内核移植 准备篇(二)——开发调试环境入门(Trace32、QorIQ Linux SDK和QCVS)
T2080 U-BOOT与OS内核移植 准备篇(二)--开发调试环境入门(Trace32.QorIQ Linux SDK和QCVS) 一.Trace32 1. 工具配置和软件安装 2. 使用PRACT ...
- [转]如何编写 INF 文件
INF文件全称Information File文件,是Winodws操作系统下用来描述设备或文件等数据信息的文件.INF文件是由标准的ASCII码组成,您可以用任何一款文字编辑器查看修改其中的内容.一 ...
- 《C++ Primer 第五版》(第2.5节,第3.1-3.4节) ——采用预处理功能编写头文件,string初始化和字符操作,vector初始化和迭代器
1.采用预处理功能编写头文件 在头文件定义(头文件中的内容是只能被定义一次的实体)过程中,为了防止头文件重复包含的情况,采用预处理器的一个头文件保护符功能,格式为:{ #ifndef 预处理变量(通 ...
- 如何编写 INF 文件
如何编写 INF 文件INF文件全称Information File文件,是Winodws操作系统下用来描绘设备或文件等数据信息的文件.INF文件是由规范的ASCII码组成,您能够用任何一款文字编辑器 ...
- STM32F103-uc/OS系统移植
目录 前言 一.获取uc/OS-III源码 二.项目导入文件夹 2.1文件的整理 2.2导入源码 2.3STM32CubeMX创建框架 三.添加代码 3.1将源码文件复制到指定文件夹下 3 ...
- T2080 U-BOOT与OS内核移植 u-boot移植篇(一)——创建新目标板的u-boot工程
T2080 U-BOOT与OS内核移植 u-boot移植篇(一)--创建新目标板的u-boot工程 一.创建新目标板文件夹并修改相应文件 1.创建新目标板文件夹 2.修改t2080tpm文件夹中的相应 ...
- MATLAB编写ode文件,MATLABODE45问题M文件为br/functiondq 爱问知识人
编写M文件cdq.m function dy=cdq(x,y) dy=zeros(2,1); dy(1)=y(2); dy(2)=-2*y(2)-y(1) cos(x); 编写M文件cdq1. m f ...
最新文章
- MongoDB学习笔记~地图坐标的支持与附近点的查找
- 用ajax(vb.net) 实现dropdownlist二级无刷新联动~!
- 正则匹配不包含某字符串_如何替换JS字符串中匹配到多处中某一指定节点?
- Microsoft 帐户异常登录活动,QQ邮箱代收hotmail邮件不成功
- 代码下移快捷键_收藏细看!最全面的通达信快捷键一览
- Hive原理及其使用(六)
- [FPGA] 三位四选一数据选择器
- 通过MVC与MVP的对比,简述单一职责原则
- promise终止方案
- 深度学习中初始化权重
- 网站获取微信授权登录功能
- linux 格式化u盘 fat32,Ubuntu下格式化U盘的方法(基于格式化命令)
- 药店不停业盘点操作流程,海典盘点机PDA操作使用说明
- itunes显示app store无法连接服务器,无法连接到iTunes Store的解决方案
- connection reset by peer
- Spring Cloud 2.2.2 源码之二十九nacos客户端获取配置原理四
- 【拓扑学知识】1.拓扑空间与度量拓扑
- android模拟器MAC无法联网(安卓开发)
- 使用css实现渐变色背景
- 守护进程 - Supervisor的使用
热门文章
- mysql 使用不同引擎_mysql 不同引擎的比较
- music算法原理_大话FMCW雷达之区域检测原理
- mysql datediff多一天_MySQL DATEDIFF函数获取两个日期的时间间隔的方法
- 界面上下固定_基于ANSYS的胶粘结构界面开裂有限元计算
- Spring学习4之依赖注入(DI)
- android os一直唤醒,Android保持屏幕常亮唤醒状态
- linux 有空格的文件夹,Linux之删除带有空格的文件
- 关闭自动更新_Win10系统关闭自动更新方法
- 15.基于Hadoop的数据仓库Hive第2部分
- 【自动驾驶】毫米波雷达相关知识专题