CMSIS-RTOS V2是keil软件自带的操作系统,相较其他操作系统,该系统的有点在于移植方便,代码开源,可实时响应中断,之前查看网上资料,发现这个系统的内容特别少,个人用了一段时间,感觉特别好,写一下学习笔记,作为备用吧。写的有什么问题的,希望大神及时指正。接下来是操作系统的学习笔记。 7 C/ J( u7 }) X* w: h# h% n9 `+ o 第一篇:操作系统的移植 第一步:添加操作系统API,勾选CMSIS—RTOS2—keil RTX5' Y! |: C$ j4 j7 ^) V" q# y# R# d " i: W/ i5 }9 ~: d" [0 j5 p* c6 C 9 i# W" k) V, R3 L) t5 q8 K, r 完成以后如下图显示 ) J. T! H6 R' n1 j6 l第二步:添加头文件, #include"cmsis_os2.h" #include"RTE_Components.h" #include CMSIS_device_header 第三步:添加main函数,V2操作系统中,有两层main函数,第一层是系统的main函数,系统上电以后,首次进入main函数,进行初始化时钟和操作系统,同时启动第二次main函数。第二层main函数是用户创建的main函数,进行用户函数的初始化和任务的创建。 //第一层main函数,不需要修改 int main (void) { // System Initialization SystemCoreClockUpdate();//初始化系统时钟 // ... osKernelInitialize();//初始化系统 osThreadNew(app_main,(void *)1,0);//启动main进程 osKernelStart();//启动系统 for (;;); } //第二层main函数,初始化用户底层驱动,建立任务等 voidapp_main(void *argument){ osKernelInitialize(); // initialize peripherals here /* 初始化外设 */ } : V4 ?+ f9 Q# D2 c. R' b7 P3 y 至此,操作系统的移植完成。 需要注意的是原工程里面不能有SysTick,PendSV和SVC三个系统中断的使用,因为RTX系统要使用这三个中断。 |
åµå ¥å¼å®æ¶æä½ç³»ç»uCOS-II[éµè´è´].pdf
下载4.33 MB, 下载次数: 62
参与人数 1 | ST金币 +2 | 收起 理由 |
---|---|---|
wu18946796976 | + 2 |
5 s# f7 H6 Y. [9 e
附件是例程
系统是CMSIS RTOS2
keil版本5.28
例程只是空模板 5 g% w9 u! u5 m6 S7 ^9 _. z6 J
' F) q7 T" T# w% A9 r- T% H
Demo.rar
2020-3-12 13:13 上传
点击文件名下载附件
871.72 KB, 下载次数: 37
Thank you so much!
感谢分享,学习学习。。