史上最详细UCOS-II移植教程STM32F103C8T6

 时间:2024-11-20 11:25:49

1、Step1:在UCOS官网下载源码,这里选择Micrium_uC-Eva盟敢势袂l-STM32F107_uCOS-II,版本是V2.92.07

2、Step2:使用STM32CubeMX快速配置1个LED闪烁的例程,板卡有4个LED,系统时钟配置为72MHz,Systick我们用作UCOS的心跳,另外开启一个定时器作为HAL库的时基。详细配置过程查看附件里面的文档;

史上最详细UCOS-II移植教程STM32F103C8T6
史上最详细UCOS-II移植教程STM32F103C8T6
史上最详细UCOS-II移植教程STM32F103C8T6

3、Step3:生成IAR工程,在其根目录创建文件夹UCOSII,在里面再创建3个文件夹:CONFIG、CORE、PORT,如下所示:

史上最详细UCOS-II移植教程STM32F103C8T6
史上最详细UCOS-II移植教程STM32F103C8T6

4、Step4:拷贝UCOS-II源码到工程文件夹,分为三步:

史上最详细UCOS-II移植教程STM32F103C8T6
史上最详细UCOS-II移植教程STM32F103C8T6
史上最详细UCOS-II移植教程STM32F103C8T6

5、Step5:在IAR里面添加文件分组并添加编译路径;

史上最详细UCOS-II移植教程STM32F103C8T6
史上最详细UCOS-II移植教程STM32F103C8T6

6、Step6:修改os_cpu_a.asm文件,如下:

史上最详细UCOS-II移植教程STM32F103C8T6

7、Step7:修改includes.h,把不需要的头文件注释掉,如下:

史上最详细UCOS-II移植教程STM32F103C8T6

8、Step8:修改stm32f1xx_it.c文件,注释掉void Pen蟠校盯昂dSV_Handler(void)挣窝酵聒函数,在void SysTick_Handler(void)函数里面调用OSTimeTick();

史上最详细UCOS-II移植教程STM32F103C8T6
史上最详细UCOS-II移植教程STM32F103C8T6

9、至此UCOS-II移植完毕,接下来编写4个LED Blinking任务测试:Step1:在main.h添加LED控制宏:

史上最详细UCOS-II移植教程STM32F103C8T6

10、包含OS相关头文件:

史上最详细UCOS-II移植教程STM32F103C8T6

11、Step2:定义任务堆栈和优先级:

史上最详细UCOS-II移植教程STM32F103C8T6

12、Step3:编写LED任务,LED1每100ms翻转1次,LED2每200ms翻转1次,LED3每300ms翻转1次,LED4每500ms翻转1次:

史上最详细UCOS-II移植教程STM32F103C8T6

13、Step4:初始化OS,创建任务,启动调度器:

史上最详细UCOS-II移植教程STM32F103C8T6

14、Step5:编译,无错误和警告后,烧录调试:

史上最详细UCOS-II移植教程STM32F103C8T6
  • js如何改变时间的默认格式
  • 小兔鲜生注册
  • 小蓝鸟怎样关闭上头条
  • python语音识别教程
  • winform中获取路径
  • 热门搜索
    元宵手抄报 我爱祖国的手抄报 民风民俗手抄报 英语手抄报图片大全 38妇女节手抄报 开学了手抄报 手抄报的花边 初中数学手抄报 抗击疫情手抄报内容 小学生环保手抄报