STMCU小助手
发布时间:2021-12-8 20:00
|
一、移植到STM32G473RC准备工作& j* a) }. \# V 1.1、Keil版本支持STM32 G系列- e0 c+ M/ j( q. ]' D- ~8 U % n$ p6 x8 h( t: N5 b
3 v& t4 J& G1 U, \7 i7 x2 b% w- N8 G9 z: Q 1.2 Keil下找到G系列文件并下载安装
- a) [4 D. o$ V6 }, M
1.3 安装成功 " N/ |" o: C/ y; f5 R7 ^
6 a0 i% ^( O/ i* i) ]7 P
6 y2 U O3 w" ?) n5 m) R2 B# c b 1.4 Keil版本过低,不支持新的DFP包造成的错误。(重新安装新版本即可,我尝试了MDK529.exe)
二、移植 2.1 安装STM32CubeMX,目前ST官方主推。 ! Z" j& R# j, p1 M" ]
" p1 ?6 v8 X4 X& J+ z0 @ 2.2 官方下载库文件(STM32G系列不再有std库,只有hal库): H; {/ }. J, n/ I" T5 \5 ~
2.3 导入库文件,打开STM32CubeMX,点击Help -> Manage embedded software packages 。 " f8 f2 m. Y, \- c 我这里是添加本地packages,即通过3.2已经有下载了hal库。 - x+ h/ A1 a8 A, ?0 x8 O - X& d& I# Y+ k- }
H* |( I" ]6 Y+ V! k+ i3 h- G 2.4 选择IC,然后在Middleware下选择FREERTOS,版本10.2.1,接口选择CMSIS_V2(V2与V1的区别可以参考百度其他文档)。
2.5 SYS下的Timebase Source选择TIMI1,否则生成code是会有警告提示,与FreeRTOSg HAL使用的是systick作为时钟源,现在使用了rtos,不建议hal库和rtos一起使用systick作为时钟源,否则会有冲突。: e" M! m+ D7 b/ j K 4 g' L- u# ~+ N$ r SYS Timebase选择Tim1. V+ u( I" K$ ~
2.6 选择MDK-ARM, 点击GENERATE CODE,生成工程。/ t5 C4 X& T' V" t$ m% z5 ^
4 y5 V- l4 v3 R1 w: _; R" C
点击生成:; X! y% e) ?, B' ~ 8 P8 y. x- q3 X8 p3 O, m8 N9 ^
2.7 打开MDK工程,编译。
三、源码下载(不使用STM32CubeMX移植的需要自行下载源码) 1、虽然FreeRTOS官方最新版本为 FreeRTOSv10.3.1.zip, 但手头项目还是决定基于V9.0开始。目前官方下载路径已经迁移的Githu1 O, L+ C a y, r R/ _
5 o0 R$ @9 ` Z" k, n 2、GIthub下载旧版本 (无需登录,游客下载); I+ N- y* d0 m+ K
, M9 y8 L5 ~: p+ U9 x7 i$ J6 G
6 U% A2 z$ g3 }+ ` |
经验分享 | 基于STM32G4芯片TIM+SPI+DMA应用示例
STM32G47x 双 Bank 模式下在线升级
DMA 原理从 0 到 1:为什么它能解放 CPU?一文讲透 DMA 的工作流程
【经验分享】STM32G4之基本定时器
NUCLEO-G474RE 扩展 LSM6DSO 传感器数据融合实操演示全解析
经验分享 | STM32G474 高精度定时器同步功能全解析 从内部互联到多芯片协同的实现方案
经验分享 | STM32G4双BANK启动应用演示
STM32G4 LPTIM+DMAMUX 实现并行输出应用示例
实战经验 | LAT1578 SAU对NSC分区的影响
经验分享 | STM32G474 HRTIM Triggered-half模式实现两相交错电源180°相位同步方案
微信公众号
手机版