一、移植到STM32G473RC准备工作 1.1、Keil版本支持STM32 G系列+ M m7 G- ?; e 1.2 Keil下找到G系列文件并下载安装 & s P5 y5 e3 a7 L+ M0 w ) {( Y0 n' j, l, W6 k% w! Z3 x $ w8 {7 l. {. R- O 1.3 安装成功 8 p/ s: E' D$ H p+ \ 1.4 Keil版本过低,不支持新的DFP包造成的错误。(重新安装新版本即可,我尝试了MDK529.exe) 二、移植 2.1 安装STM32CubeMX,目前ST官方主推。+ X8 f- j# |6 G. T W) N 2.2 官方下载库文件(STM32G系列不再有std库,只有hal库)$ ~) B+ ^. u% V$ e0 O$ Q! @" O 6 x9 S* u. b; @, `0 c6 ] 2.3 导入库文件,打开STM32CubeMX,点击Help -> Manage embedded software packages 。 我这里是添加本地packages,即通过3.2已经有下载了hal库。 # ]8 r9 C* V7 u2 s1 F% s 2.4 选择IC,然后在Middleware下选择FREERTOS,版本10.2.1,接口选择CMSIS_V2(V2与V1的区别可以参考百度其他文档)。 : ?9 K% {) X( M; R. P 2.5 SYS下的Timebase Source选择TIMI1,否则生成code是会有警告提示,与FreeRTOSg HAL使用的是systick作为时钟源,现在使用了rtos,不建议hal库和rtos一起使用systick作为时钟源,否则会有冲突。3 [* i* p8 g& L8 O4 `7 S3 p ( \1 B o. m$ Q8 V+ M/ f. Z SYS Timebase选择Tim1: O: x1 B$ o( \& b: ^! E$ h , o9 N" E4 T9 K: l: p4 X U: N& X. o 2.6 选择MDK-ARM, 点击GENERATE CODE,生成工程。 9 R# W! E: T( i: h# q% C 2 k! Q5 S; J: R+ F+ h l+ z; p8 \6 i+ K5 X& l 点击生成: : s: O0 u# l0 I! u 2.7 打开MDK工程,编译。; f+ I! o& o, p; R 0 e# |& Y( x0 ] 1 S0 c4 P3 o/ j6 e4 _# ^: u 三、源码下载(不使用STM32CubeMX移植的需要自行下载源码). l6 e; E/ d7 M' |; o* | 1、虽然FreeRTOS官方最新版本为 FreeRTOSv10.3.1.zip, 但手头项目还是决定基于V9.0开始。目前官方下载路径已经迁移的Githu 3 s: l1 m4 m8 d2 k9 o 2、GIthub下载旧版本 (无需登录,游客下载)+ A, S0 E* X4 V" ~- g 1 A7 P+ I/ F0 f& U: U : j6 H/ L d3 {$ e* p M7 i, j7 b! c0 T1 `5 Y6 ]8 |4 e ; W! U% ^- ^ d$ A 3 m8 E, @ l# \% t; i # F8 c* ~1 G+ v' z& _4 V |
STM32G系列RS485自动收发控制以及自适应波特率实战
【学习指南】基于STM32G474VET6 开发板实验经验分享(三)
【学习指南】基于STM32G474VET6 开发板实验经验分享(二)
【学习指南】基于STM32G474VET6 开发板基础实验经验分享一
【学习指南】基于STM32G474软件平台安装与使用教程
【学习指南】基于STM32G474VET6 开发板硬件资源解析
STM32 Explore | 基于STM32G474的STM32Cube生态系统线下培训
STM32固件库分享,超全系列整理
STM32G47x 双 Bank 模式下在线升级
基于STM32G473ZET6开发板设计经验分享