STMCU小助手
发布时间:2023-2-9 18:10
|
准备用STM32的开发板写一个直流无刷电机BLDC的驱动程序,对Arduino IDE的编程模式比较熟悉,通过相应的插件,Arduino IDE同样可以支持STM32。 另外因为手头没有STM32的下载器,需要通过串口烧录程序。准备先用一个Samples中的点亮LED的示例来跑通这个STM32的开发流程,没想到竟然折腾了差不多一天的时间,不懈努力,不轻言放弃,最后才在STM32开发板上,通过Arduino IDE,串口烧录程序,成功点亮了IDE。看到IDE一闪一闪,体验了成功的喜悦。 记录一下折腾的过程。3 ]9 K5 U! y* M1 F 6 |+ _" D8 h; E; q, d' f 手头的STM32开发板的型号为STM32F401CxUx。本来准备买来做USB声卡的。 " @1 \6 f% C1 k- Y4 [
1 j% v# _$ p( x% }
* k. f) [ c6 A$ }$ x8 t 一、软件安装- [( c% W6 q# O& Q2 T7 C 1、在Adruino IDE中安装STM32开发板插件。6 V) \# q( B6 ]0 W 点击Adruino IDE File菜单,选择"preferences.."5 ?* s- ]6 ~2 c$ E, j* A$ m% N3 X }2 k3 r. `$ } r' s( q) B! v. R
! Y( a& X2 G# f1 t 7 [& Q; E1 C l 点开”Additional boards manager URLS" 添加STM32开发板的URL( {0 _9 Z, v0 ` : U9 |$ X" U8 J6 q# I 打开左下方的连接,打开网址,查找STM32的官方链接。拷贝后加入到列表中。 l# n2 N2 b& I; {& [3 d
8 d: V5 E+ M2 i$ Y9 X% k9 n# `' N 打开Board Manager面板
安装STM32插件 8 M3 i+ r2 r F5 L Y- G+ Q
安装好之后,tools菜单中会出现STM32芯片的选项 1 I L* X! U& ^0 A 3 L2 `2 T7 D& ~ 2、安装STM32CubeProgrammer 到ST的官网注册下载STM32CubeProgrammer,下载STM32CubeProgrammer后安装,并安装STM32的Bootloader串口驱动程序。 + o) A& Q8 D/ Z; U# e
) }5 f# r/ ~/ A+ S9 ^ f 安装好之后,设备管理器会出现STM32 bootloader设备0 |3 J0 C9 }: z- ^7 C; M ' K1 z1 Q% i2 K+ D
二、串口连接STM32 为了让电脑识别STM32的串口,需要设置STM32的BOOT0, BOOT1引脚,网上搜了一大遍,知道了设置BOOT0=1, BOOT1=0启动。但是把STM32板子前后翻了一个遍,也没找到这两个引脚在哪里。6 E2 K) o7 M/ u" E4 B% K1 C+ T) t 最后问店家要了STM32板子的文档,耐心的看了一下文档。终于知道怎么设置BOOT0,BOOT1
% ?& o- U8 E% f4 Q3 O9 @7 O
3 {! G" a& k1 |2 y 把板子上的拨码开关1和3用一根牙签拨到ON的位置。即可设置成"System memory"的启动模式。 / g+ t+ `$ C' q8 }$ H. B ~* }% a 打开STM32CubeProgrammer,选择USB,COM端口选COM1.即可连接STM32成功。这时可以通过STM32CubeProgrammer下载烧录。0 M& U! J3 s. o# u$ h
( \5 t/ J2 G- v5 V* Z* ? 三、Arduino IDE连接STM32 首先要将STM32CubeProgrammer程序所在的目录添加到系统的PATH路径中,因为Arduino将调用命令行的STM32CubeProgrammer_CLI程序
. j4 p+ T- q7 K0 X6 s# E0 D 选择STM32板子,COM1端口,将上传模式更改为DFU模式% i+ R m" U$ H9 n $ b" t3 j( B# V' c- y
至此,所有的设置完成。 I9 t( ^' `0 g3 D 三、烧录测试BLINK代码 打开Arduino的闪灯Blink例子,编译上传,提示上传成功。3 [7 C$ a: u4 j `2 h. W, S! v ! }2 @, h; p) m+ f! }
可是,这个LED就是没有闪。 用牙签把BOOT0,BOOT1恢复,拔掉USB重启。仍然不闪。反复实验,浪费了几根牙签后,依然无果。。。 最后即将放弃的时候,看到有篇文章说要更改一下LED的管脚,打开STM32的图一看,LED连接到PC13引脚。 : a# P2 f. M8 a" m* @! `% H
/ `6 C7 ~, @) g. T2 ^ $ y& m' y) f8 a; f/ }$ B 把代码中的LED_BUILTIN全部改成PC13, 编译上传。( M# q" z( x& W9 S( R. l3 G 奇迹出现了。 0 \5 @# ^; O- `0 K* m5 p( n3 R 小蓝灯终于闪了。 一天的功夫啊 6 d! j+ Z8 r$ t$ m) R2 ~$ h! t* u; T 作者:汤姆yuan % {- `" J0 W- r, B/ Q) ~ |
【STM32H5 评测】基础硬件加密与随机数性能 - STM32H5E5实测硬件AES加解密、HASH运算、TRNG真随机数输出速率与稳定性
【STM32H5 评测】NUCLEO-H5E5ZJ 使用 TrustZone 安全分区系统实践测试
【STM32H5 评测】CPU核心性能 - STM32H5E5跑 RTOS,观察任务切换速度、中断响应快慢
【STM32H5 评测】内存读写性能 - STM32H5E5实测Flash,SRAM读写速度,用DMA搬运大块数据
【NUCLEO-C562RE】OLED 显示
保姆级教程:CMake 工程导入 STM32CubeIDE 步骤
STM32CubeCLT 1.22.0新版本发布
【下载问题解决】关于ST官网下载软件问题解决
【STM32H735G-DK测评】lvgl移植
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
微信公众号
手机版