
1.准备好UCOSIII的源码,可从官网下载。1 B/ ^9 H4 s( r9 g6 q / S: j ^; G7 }; B/ A8 M 2.在工程里创建文件夹UCOSIII等文件夹,并添加文件。3 A) [. i6 w/ I5 Y9 f) c2 y ![]() ![]() ![]() ![]() 0 U' P+ e% I7 G# D5 G+ b 3.在MDK中创建路径并添加文件。 * B" o7 T$ M( n- J% n1 U) d1 h ![]() ![]() ! L( Z" v2 {* H" m , L/ x- y/ } S$ @, Y. C, `" t+ d 4.修改相关文件/ p% y5 p V4 m" b+ Y" D1 y a., I2 f4 u( Q' ~( [: U; b S- Z ! I$ v+ o* y; p: b bsp.c和bsp.h:这两个为系统外设的初始化文件,其实可以不用。 1 w4 b9 L+ c( b$ U b. os_cpu_a.asm汇编文件: : O7 P( a4 d* a5 g6 k y( l# j% S 函数类型 PUBLIC改为 EXPORT PUBLIC OS_CPU_FP_Reg_Push 和 PUBLIC OS_CPU_FP_Reg_Pop两个函数可以不用,可以注释掉。 ' ?" y1 H3 Q3 g" H! n4 `# E 代码导引区中的 RSEG CODE:CODE:NOROOT(2)8 c* A* R" x3 `& o+ g5 |, x ;THUMB1 c @: j9 r5 v5 G/ y. q* D8 a 修改为 AREA |.text|, CODE, READONLY, ALIGN=2" }! p- Y3 g# z* `6 q THUMB3 f# Z. C) W3 F" Z0 V* Q REQUIRE8 PRESERVE8 * J" a J g; _. y! M# L E 这个格式跟下面的汇编语言格式相对应,并且函数名后面的冒号要去掉。; v S4 g6 U2 n# V- g " H/ u \* Z* `- Q6 _ c.$ Q$ }) o# p: W1 r6 X* z4 e lib_mem_a.asm汇编文件:; l# ?, d# U$ B: r 和上面一样5 f0 e. c- z$ T Q/ d d./ R% r, h, [% J' u( } cpu.h: 5 J) |8 \3 V; Y; z3 _. n: P3 N7 Z' ? 注释掉不存在的头文件;修改, X/ M |' W/ {' Y% W 7 i% G; G' I. R$ s# l# [ #define CPU_INT_DIS() do { cpu_sr =CPU_SR_Save(); } while (0)' S/ H* n0 M) C0 \ #define CPU_INT_EN() do { CPU_SR_Restore(cpu_sr); } while (0) & D- a3 h0 D' A# S2 k% P 以及 ; \, k" r: l: x: }- D0 O, ^% w- V #define CPU_MB() _dsb(0xF)//__DSB()8 q- t( P# H! S5 L [3 l6 j #define CPU_RMB() _dsb(0xF)//__DSB()8 e7 [) _+ E5 |8 d0 w9 Q% v #define CPU_WMB() _dsb(0xF)//__DSB()2 L4 N4 W& F! ^2 X$ T0 S7 E7 F 9 c3 S* G! F& d0 y* ]5 ]" b% f0 i e.3 u0 i% g+ b( y' O5 i; Y. r; k ]5 n! m" l" F8 R! f cpu_cfg.h: * T/ A+ D1 R, ^: M# G$ [$ d4 o #if 1 #define CPU_CFG_INT_DIS_MEAS_EN 改为 #if 0 #endif0 Z% \* ?) z6 m- l: o8 g/ ]0 X. l f.& _, C% t5 a, q4 x- u) I2 Y3 ~ " x* u/ e% B! T8 } W3 N( ~7 p. E os_cpu.h:修改4 G; m' Y0 f, P. B2 p6 p% J' N , J6 H5 j" a) M- _& [9 f0 }6 T #define OS_TASK_SW_SYNC() __isb(0xF)+ ?, L' t6 l3 J' k o* X os_cfg.h:可以根据需要进行相应使能 g.在 上他们27xx_it.c文件中,进行滴答定时器中中断函数的配置,并保证工程中OS_CPU_PendSVHandler 和OS_CPU_SysTickHandler各处名称的一致。+ T1 Q8 ^3 B, ` * f. L! k/ P3 y3 A" g& E7 u
|
【STM32F769I-DISC1】开发板刷入Micropython并完成点灯、读取内部温度测试
【STM32F769I-DISC1】测评01:创建STM32cube IDE 工程,点个灯
【STM32F769】创建deepseek本地服务,并实现http请求
汇编浮点库qfplib移植STM32F769I-DISCO开发板与硬件浮点运算性能测试对比
coremark移植到STM32F769I-DISCO开发板的两种方法
【GUI板免费申请活动】【圣诞GUI】使用F746-DISO基于TouchGFX的圣诞树
刘氓兔的杂谈【001】-片上USB 高速PHY
【合集】STM32F7教程、资料大集合
基于STM32F746G-Discover的扩展电路板
F769 Discovery实现播放U盘音乐的播放器