一、移植到STM32G473RC准备工作 1.1、Keil版本支持STM32 G系列 y2 }' _# \$ C* U - _- @# [: p7 _% ~9 u5 C/ B! e% O 1.2 Keil下找到G系列文件并下载安装 : z! R9 S' H `' q: o- W 1.3 安装成功 3 I2 _$ v- Y. J% J8 Y( A' Q ; R" ~* h$ y# }( Y5 S) a 1.4 Keil版本过低,不支持新的DFP包造成的错误。(重新安装新版本即可,我尝试了MDK529.exe) ) x0 b5 U3 [$ G1 l 二、移植 2.1 安装STM32CubeMX,目前ST官方主推。; e" }/ [2 h$ y% }' r2 S9 J ` 6 r3 i9 Q* E& C; Q8 Q / d* o' m$ @' l3 f9 _2 g2 M% n 2.2 官方下载库文件(STM32G系列不再有std库,只有hal库)* d0 _* Z- z2 v6 f9 L" f. H5 Y0 c0 _$ S 2.3 导入库文件,打开STM32CubeMX,点击Help -> Manage embedded software packages 。+ j. g5 V- R! r, M' { ; Y1 H2 I7 W/ X 我这里是添加本地packages,即通过3.2已经有下载了hal库。. Y$ A" P" s- l % ^4 \5 ^: a g! N7 ^ 4 u, B8 _9 x, M 2.4 选择IC,然后在Middleware下选择FREERTOS,版本10.2.1,接口选择CMSIS_V2(V2与V1的区别可以参考百度其他文档)。. ?+ S. |! i! g$ j p9 B* p; L ( {2 _6 c' L. T. ]3 |( o- | 2.5 SYS下的Timebase Source选择TIMI1,否则生成code是会有警告提示,与FreeRTOSg+ H2 m2 J0 B( u HAL使用的是systick作为时钟源,现在使用了rtos,不建议hal库和rtos一起使用systick作为时钟源,否则会有冲突。 0 {/ J% m0 |* F/ y0 X SYS Timebase选择Tim1% q i6 S5 r! O g! L7 O $ M( B& w3 A/ l, M Z ) s- `0 s4 x3 c; K$ f2 h9 k 2.6 选择MDK-ARM, 点击GENERATE CODE,生成工程。 # E: _4 R7 g' }* b: A9 { ; X7 r0 P" [5 ]# L4 M ~8 x l' y* W+ K5 j% d- Q/ @ 点击生成: 6 e6 N/ z t- m5 U& b0 I 2.7 打开MDK工程,编译。- m/ c5 Q7 t, m0 }1 Z" C5 A ( p- y( o0 V0 ^( d9 c" Q 三、源码下载(不使用STM32CubeMX移植的需要自行下载源码) 1、虽然FreeRTOS官方最新版本为 FreeRTOSv10.3.1.zip, 但手头项目还是决定基于V9.0开始。目前官方下载路径已经迁移的Githu . b7 H" A- V- `6 P 3 D" ~8 k" S; u5 [% ~! k0 {9 C8 S - |3 p8 h% d- w3 A5 p # j% @) z0 M. {& R/ O k, l 2、GIthub下载旧版本 (无需登录,游客下载) " L3 A$ m2 X+ J # B+ Z8 S/ w* s& q& W; u 1 c1 F3 O( d9 t' f3 u2 Y6 z . d T9 _! k1 P( q2 y7 ` |
STM32G系列RS485自动收发控制以及自适应波特率实战
【学习指南】基于STM32G474VET6 开发板实验经验分享(三)
【学习指南】基于STM32G474VET6 开发板实验经验分享(二)
【学习指南】基于STM32G474VET6 开发板基础实验经验分享一
【学习指南】基于STM32G474软件平台安装与使用教程
【学习指南】基于STM32G474VET6 开发板硬件资源解析
STM32 Explore | 基于STM32G474的STM32Cube生态系统线下培训
STM32固件库分享,超全系列整理
STM32G47x 双 Bank 模式下在线升级
基于STM32G473ZET6开发板设计经验分享