stm32f103c8t6移植uCOS-III遇到的问题总结
初学uCOS-III,记录下自己在移植过程中遇到的大大小小的问题,以防自己以后再次栽倒在这些小问题上。
一、基本工作
- Device选择stm32f103c8
- 启动文件选择startup_stm32f10x_md.s(不同类型芯片启动文件不同)
- Options中C/C++选项中定义STM32F10X_MD, USE_STDPERIPH_DRIVER(STM32F10X_MD也是因芯片类型而异,USE_STDPERIPH_DRIVER表示在应用中启用外设驱动)
二、遇到的问题
- lib_cfg.h文件中LIB_MEM_CFG_HEAP_SIZE可改为5u * 1024u(c8t6的RAM只有20K,不可超过)
- 启动文件中PendSV_Handler改为OS_CPU_PendSVHandler(自己粗心改成了OS_CPU_PendSV_Handler导致进入OSStartHang,找了半天错误才发现); SysTick_Handler 改为OS_CPU_SysTickHandler (启动文件后面还有一处,改动原理相同)