STMCU小助手
发布时间:2022-3-22 13:00
|
在使用STM32F103C8T6单片机IAP功能时,可以自己写bootloader程序,也可以使用官方bootloader文件。下面说一下使用官方bootloader的使用方法。 ]* U2 ]' B1 q 首先下载官方bootloader文件
, G( V* f4 m8 ]0 x1 o 目前使用的是这个版本,打开文件夹,选择适合自己编译器的工程。+ q( R$ J5 u, S4 Z6 |* M" J# e R
8 ~/ t5 v. T% J1 ^. Z4 D q7 n 目前使用的是keil,所以打开MDK-ARM文件夹% J% j2 `3 M! T2 X& N6 _
6 |1 K& {: s0 O% {0 c 打开IAP工程. u& G1 {: X# o2 v" [4 | " d& A9 o* g3 H/ G+ T) o. L
打开后根据自己的单片机型号,对工程进行简单的修改。用的是STM32F103C8T6单片机,FLASH为64K,SRAM为20K。 . f3 i. `% N$ o! {" b
设置IROM1的起始地址和大小。 $ F: j5 C% H+ e W6 F' O+ [( Q
4 P: {( K7 k+ w2 u+ N9 F 设置引用的头文件,STM32F103C8T6为中等容量,所以设置文件为STM32F10X_MD,。" K+ ]) {% F: q 下来要设置APP的起始地址,这个地址要和下载的APP运行地址对应,否则下载的APP不能正常运行。 0 w4 u, C0 _0 b! n; w% w; A3 M
7 N, s% o$ Q7 B7 t0 P, i1 H) @' X 在common.h 头文件中将 ApplicationAddress 地址设置为APP在FLASH中存储的位置。要因为要测试的APP在FLASH中的起始位置为0x8005000,所以此处将ApplicationAddress值也设置为0x8005000。然后编译项目 h' @. [* M" V9 {/ I
没有出现错误,将代码下载到单片机中。然后打开secureCRT软件。 # r+ H. Y& ^" J% k& b. Y& _
选择串口端口号和波特率 x2 Z% [, `/ N/ B2 [2 ~
( e, h- X) Z" M# ?) ] 程序默认波特率为115200,8位数据位,1位停止位。无奇偶校验位。设置好之后选择连接。4 {( K3 M) h. j
& c+ ~. L7 O g 然后给单片机重新上电,这时候软件上就会显示提示信息。0 C$ `, V. X5 _ a% K! q/ h
3 y. T% O3 S2 y) R6 n 然后按键盘的数字1,准备下载bin文件。
( W8 b7 N3 v; ]2 z- } 在菜单栏上面选择 传输----发送Ymodem选项。
( [# u% y, F6 F0 v; C9 d/ l 选择要下载的bin文件,然后点添加按钮。 添加好bin文件后,选择确定按钮。* I( Q0 q8 R- r# b
' r, L- d# j9 o, D. k8 |$ J4 ] 文件传输成功后,会出现提示信息。这时候说明bin文件已经下载到了FLASH中。 下来在按键盘上的数字3,APP就开始执行了。( o4 {4 G# d/ _' @; W0 J8 U 这个串口软件上没有回显功能,所以按下的数字键,界面上不会显示的。光标永远是个小黑点在闪烁。APP有没有成功运行,直接看单片机的现象就行。" c+ y z: s- Q5 U4 K 5 L; x' u( F- Z. ~# |: C |
DMA 原理从 0 到 1:为什么它能解放 CPU?一文讲透 DMA 的工作流程
【福利三:雨露均沾·逢7狂欢】之五:STM32系统时钟PLL故障排除1例
【福利三:雨露均沾·逢7狂欢】之三:AI帮我查BUG
福利三:雨露均沾·逢7狂欢】之二:STM32F407VG串口通信乱码故障的排除
基于STM32F103的I2C主从机通信
OpenBLT移植到STM32F103战舰开发板上适用于所有STM32F103系列的Bootloader
TFT LCD 与 FSMC 的硬件连接大容量 STM32F10xxx FSMC 接口
单片机:初学者该了解的STM32F103基础知识
2025软件工具兔哥知道
STM32之继电器模块
微信公众号
手机版