升级流程详解-使用STM32+UCOS+LED进行版本更新(单任务)
在5.3版本中,我们将通过已有的STM32+UCOS+LED(单任务)程序来演示如何升级到最新版本。下面是详细的步骤:
1. 首先,将现有的STM32+UCOS+LED(单任务)项目复制一份,并命名为STM32+UCOS+LED(V2.90单任务),这样可以避免未来版本混淆。
2. 接着,从下载的uC/OS-II新版本附件中,复制Micrium-uCOS-II-V290MicriumSoftwareuCOS-IISource文件夹下除os_cfg_r.h和os_dbg_r.c之外的所有文件到我们的项目uCOS-IISource文件夹下,直接替换原有的文件。
3. 将os_cfg_r.h文件复制到我们的APP文件夹中。
4. 打开os_cfg_r.h文件进行配置和裁剪uC/OS-II。对于仅需简单的LED显示且不涉及通信等模块的情况,可以这样配置:
572. #define OS_APP_HOOKS_EN 0u
573. #define OS_DEBUG_EN 0u
574. #define OS_EVENT_MULTI_EN 0u
575. #define OS_EVENT_NAME_EN 0u
576.
577. #define OS_TICKS_PER_SEC 1000u
578. //设置每秒中断次数,建议设置为每1ms中断一次。
579.
580. /*裁剪其他模块*/
581. #define OS_FLAG_EN 0u
582. #define OS_MBOX_EN 0u
583. #define OS_MEM_EN 0u
584. #define OS_Q_EN 0u
585. #define OS_TMR_EN 0u
保存为os_cfg.h,该文件已存在,可直接覆盖保存。
5. 使用MDK打开工程并编译,如果提示出错:\"..OutputSTM32-DEMO.axf: Error: L6218E: Undefined symbol OSTaskReturnHook (referred from os_task.o)\",这表明可能未正确配置或链接OS任务返回钩子。
6. 检查并修正错误,确保所有模块和符号都被正确处理后重新编译。
7. 如果一切顺利,程序将成功更新到最新版本。