CMSIS-RTOS V2是keil软件自带的操作系统,相较其他操作系统,该系统的有点在于移植方便,代码开源,可实时响应中断,之前查看网上资料,发现这个系统的内容特别少,个人用了一段时间,感觉特别好,写一下学习笔记,作为备用吧。写的有什么问题的,希望大神及时指正。接下来是操作系统的学习笔记。 - ]4 C3 Q5 r, Z# G9 c / |% K3 {. N/ q( ]. H1 I 7 @" x& c9 \0 i% Y) w& E 第一篇:操作系统的移植 ! J) j. ]7 o0 X" L: z) }6 K 第一步:添加操作系统API,勾选CMSIS—RTOS2—keil RTX5$ c( D3 P1 H8 W. {/ f6 J# l# \& g 0 _& a& ?2 F0 a: W) V/ w , m: e3 F3 b) c- n# K 完成以后如下图显示 " w# B/ o2 O0 \7 g8 r 第二步:添加头文件, #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 /* 初始化外设 */ } ! O' Z1 I7 r8 q' O. }6 O4 d 至此,操作系统的移植完成。 需要注意的是原工程里面不能有SysTick,PendSV和SVC三个系统中断的使用,因为RTX系统要使用这三个中断。 |
åµå ¥å¼å®æ¶æä½ç³»ç»uCOS-II[éµè´è´].pdf
下载4.33 MB, 下载次数: 62
参与人数 1 | ST金币 +2 | 收起 理由 |
---|---|---|
wu18946796976 | + 2 |
9 r3 L( g' H; U( d0 ?; Q1 l: h
附件是例程
$ c$ Y; |4 r3 v* G% \; v
系统是CMSIS RTOS2
# n9 x, X, |% ]' U6 l
keil版本5.28
例程只是空模板
Demo.rar
2020-3-12 13:13 上传
点击文件名下载附件
871.72 KB, 下载次数: 37
Thank you so much!
感谢分享,学习学习。。