STMCU小助手
发布时间:2022-12-16 14:00
|
网上基于MDK的移植数不胜数,但是基于IAR的移植几乎没有,因为官方的例程就是基于IAR的,所以移植起来很简单,没人介绍,但还是得小心谨慎,一不小心就出错,对于新手来说,查找错误可不是那么容易的。IAR建立工程,这里就不介绍。 以下红色部分需要与MCU型号对应 (1)在官网下载适合自己STM32的uCOS-II库,连接如下,我用的MCU是STM32F103VCT6,属于大容量的,所以选择的库是STMicroelectronics STM32F103ZE。 (2)下载下来的是(.exe)文件,双击解压得到名称为Micrium的文件夹。 (3)在自己的工程中建立文件夹ucosii,里面包含3个子文件夹,分别是config,port,source,文件夹名称随意。 (4)将文件夹Micrium\Software\uCOS-II\Ports\ARM-Cortex-M3\Generic\IAR中的文件全部复制到port文件夹中。 将文件夹Micrium\Software\uCOS-II\Source中的文件全部复制到source文件夹中。 将文件夹Micrium\Software\EvalBoards\ST\STM3210E-EVAL\IAR\OS-Probe中的app_cfg.h和os_cfg.h复制到config文件夹中。 (STM3210E-EVAL此目录根据STM型号而定,型号不相符是否有影响,未测试) (5)为了防止修改错误,这里暂时可以将port和source这两个文件夹中的文件设置为只读,以后用的时候再取消。 (6)修改os_cfg.h中的第一个宏定义为#define OS_APP_HOOKS_EN 0 (取消钩子函数)。 (7)将启动程序startup_stm32f10x_hd.s中所有PendSV_Handler替换成OS_CPU_PendSVHandler,SysTick_Handler替换成OS_CPU_SysTickHandler。 注意:下面这种注释是错误的,会导致进入硬件错位中断,害的我浪费了好几天时间。 PUBWEAK OS_CPU_PendSVHandler endSV_HandlerSECTION .text:CODE:REORDER(1) OS_CPU_PendSVHandler endSV_HandlerB OS_CPU_PendSVHandler endSV_HandlerPUBWEAK OS_CPU_SysTickHandler;SysTick_Handler SECTION .text:CODE:REORDER(1) OS_CPU_SysTickHandler;SysTick_Handler B OS_CPU_SysTickHandler;SysTick_Handler (8)打开Micrium\Software\EvalBoards\ST\STM3210E-EVAL\IAR\BSP\bsp.c文件,复制函数CPU_INT32U BSP_CPU_ClkFreq (void)和INT32U OS_CPU_SysTickClkFreq (void)到main.c中。 (注意将所有CPU_INT32U修改为INT32U,不然会报错) (9)在main.c中创建任务。
———————————————— 版权声明:鱼入大海_ |
HRTIM 指南
使用 STM32 的 DWT 单元监控内存
DAC,COMP,HRTIM Fault 功能的使用
一个软件引起的 LSE 驱动不良的问题
STM32 GUI LTDC 最大像素时钟评估方法
STM32 Cordic 运算速度评估
全新OpenSTLinux 6.1版本发布
ST-LINK Utility介绍、下载、安装和使用教程
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
OpenBLT移植到STM32F405开发板
微信公众号
手机版