STMCU小助手
发布时间:2021-12-16 22:00
|
1.准备好UCOSIII的源码,可从官网下载。 + h8 |/ P: W+ d 2.在工程里创建文件夹UCOSIII等文件夹,并添加文件。
: s5 n% G! M5 r) Z 3.在MDK中创建路径并添加文件。 & w) }) L8 R: O3 W. ~9 G( I W
4 a) K% D/ v6 B* j 4.修改相关文件 4 p: |* e# s+ e0 [ c6 @% d- D7 }1 C a.. ^. s: j2 W& s" }/ n bsp.c和bsp.h:这两个为系统外设的初始化文件,其实可以不用。5 ~/ R0 g5 V9 b0 F6 } % ?. X9 P+ L& h9 P8 k0 o b. 1 E7 U2 I6 D+ N7 Q1 _ os_cpu_a.asm汇编文件: ' C0 c C1 R) J( t" j, @8 u 函数类型 PUBLIC改为 EXPORT PUBLIC OS_CPU_FP_Reg_Push 和 PUBLIC OS_CPU_FP_Reg_Pop两个函数可以不用,可以注释掉。4 P* j1 I. \6 f4 h/ u3 m 代码导引区中的 RSEG CODE:CODE:NOROOT(2)5 b5 T, H, |! q+ ]" q ;THUMB: g8 a: F' k' b t, O% S* w w 修改为# C3 G2 Y/ ]! n 8 A) E9 C9 O9 e; D, Y6 C# W AREA |.text|, CODE, READONLY, ALIGN=2- a0 a1 H$ c3 p: p& y% Y. D, Y( z# L1 k% n THUMB$ J I/ H) Y+ P o) J9 B7 L REQUIRE8$ W+ v% n) P$ M3 \) B: | PRESERVE84 t- [+ |7 w5 r% I0 U' P8 o' z: V 这个格式跟下面的汇编语言格式相对应,并且函数名后面的冒号要去掉。+ I7 o7 n' r9 U* A/ g ( h" ?. j' Y& U c.! \& b+ `% d$ P) y/ F $ M4 `: J" A! ]% V0 W8 p0 c lib_mem_a.asm汇编文件: 2 h. T& r! q" n1 p: U# S 和上面一样. S& K) c/ x3 i' @, c8 e* ^8 J d. cpu.h:3 p- _! O' j" f. `' } 注释掉不存在的头文件;修改 ) Q5 r6 s9 H: Z #define CPU_INT_DIS() do { cpu_sr =CPU_SR_Save(); } while (0): e( `4 z% w7 B# G$ L& |* }9 q/ r #define CPU_INT_EN() do { CPU_SR_Restore(cpu_sr); } while (0) ! Y( s0 x/ a8 c8 H' E- y 以及1 b% A! s+ T4 R8 ~5 F( q ! K/ M% b+ F! z9 t! k8 d #define CPU_MB() _dsb(0xF)//__DSB() #define CPU_RMB() _dsb(0xF)//__DSB()% o( C) u G$ \ #define CPU_WMB() _dsb(0xF)//__DSB()+ G3 q. P* b: V8 c8 m# b7 i5 K1 q e. 0 ?8 { a2 b- J5 z1 e. ^* u+ | cpu_cfg.h:& W+ c; g, D5 A: }$ a7 h + }+ |' [/ s# V: k #if 1 #define CPU_CFG_INT_DIS_MEAS_EN 改为 #if 06 `0 l* { W% z. E" z3 U #endif! V. r+ P$ M4 T2 ?0 e f.! G7 Z& ^5 C7 I4 K- ~ / O0 ?6 m: f( g8 A os_cpu.h:修改 ) y& _" }2 f2 [ #define OS_TASK_SW_SYNC() __isb(0xF): ]8 ?6 V4 _4 Q% b 2 N$ y$ p; n; _ os_cfg.h:可以根据需要进行相应使能 0 ^$ u Q# ~8 C7 _ m g.在 上他们27xx_it.c文件中,进行滴答定时器中中断函数的配置,并保证工程中OS_CPU_PendSVHandler 和OS_CPU_SysTickHandler各处名称的一致。 3 t. I" s: U% s" A( q
|
STM32F746G-DISCO移植lvgl9.0性能基准测试
STM32F745 USART1 Bootloader启动失败排查与解决的流程分析
STM32芯片命名规则
STM32 引脚到底有多少?为什么一个引脚能当好几个用?
入门嵌入式,为什么STM32是“优选起步”?
嵌入式-单片机-STM32 EXTI中断
STM32单片机进行除零运算,为何程序不崩溃?
STM32 LL为什么比HAL高效?
STM32时钟详解
2025国庆中秋活动体验报告2——TouchGFX的UI设计
微信公众号
手机版