STMCU小助手
发布时间:2022-9-24 18:11
|
开发环境搭建 本章,我们将向大家介绍STM32的开发环境搭建,通过本章的学习,我们将了解到有哪些常用的STM32开发工具,包括IDE、调试器、串口工具等。 ( Y% m" L. }) p, D0 R 3.1 常用开发工具简介 我们开发STM32需要用到一些开发工具,如:IDE、仿真器、串口调试助手等。常见的工具如表3.1.1所示:3 d: b3 N f/ O : f E$ E+ x# s
表3.1.1 常用开发工具# e; S" z: M: N) H% g3 c4 l0 Y+ z 大家可以根据自己的需要和喜好,选择合适的开发工具。表中加粗部分是我们推荐使用的STM32开发工具,即IDE推荐使用MDK、仿真器推荐使用STLINK、串口调试助手推荐使用XCOM,本篇开发手册主要是基于MDK来开发,如果想使用STM32CubeIDE来开发的可以参考正点原子的《STM32MP1 M4裸机CubeIDE开发指南》。下面,我们正式进入开发环境搭建之旅。$ p; e: X+ [/ l, ]; u 3.2 MDK安装# }: M8 T/ M D4 `, O 注意:MDK是一款付费集成开发环境,如果大家要商用,请联系Keil公司购买,我们这里仅用于教学使用。 MDK5的安装分为两步:1,安装MDK5;2,安装器件支持包。 : M, d" Y9 C1 u1 @8 _. o5 Z5 w MDK5.31和1.3.0的STM32MP1器件支持包我们都已经放置到了开发板光盘中了,具体路径为:开发板光盘 3、软件MDK5,如图3.2.1所示:
图3.2.1 MDK5软件及STM32MP1器件支持包2 ?& P, _* y! C6 E MDK5的安装比较简单,具体安装步骤请参考图3.2.1的 安装过程.txt 进行安装即可,需要提醒一下大家,在选择安装路径的时候,强烈建议大家将Pack的路径和Core的路径放在一个位置,比如我们安装在D盘(都安装在:D:\MDK5.31路径下),如图3.2.2所示:
图3.2.2 设置Core和Pack安装路径9 e( I+ E- n( D' V6 D 安装完成后,在我们电脑桌面会显示MDK5图标,如图3.2.3所示; 7 N1 O! T/ W0 ~: t
图3.2.3桌面显示MDK5图标 4 d& F Y% o3 y4 q4 q ^ MDK5安装完成以后双击图3.2.1中的“Keil.STM32MP1xx_DFP.1.3.0.pack”,安装MP1的pack包,根据提示,一路next即可。 8 q( v! S8 I' s8 Y 3.3 仿真器驱动安装$ M9 u2 \6 }5 [' ^5 p/ } 安装仿真器驱动,以便我们使用相应的仿真器实现代码仿真调试。本节我们介绍ST LINK仿真器的驱动安装,ST LINK的驱动我们已经放在开发板光盘3、软件ST LINK驱动及教程ST-LINK官方驱动.zip,解压该压缩包得到如图3.3.1所示内容:- v7 i8 W. l5 c* m ) ~" ^* Z8 n% I4 G5 p
0 R2 a' e& t! P, A6 O& b4 L 图3.3.1 ST LINK驱动 ! w3 e, ], q2 e t: R# o6 @: B 如果是64位的电脑,则双击:dpinst_amd64.exe 进行安装。如果是32位的电脑,则双击:dpinst_x86.exe 进行安装。) V$ O# q# \* M5 b s* ^ 安装完成后如图3.3.2所示:) b) z( n Z" ?! h
% Q% N$ X2 \% _# b/ A5 q S& W 图3.3.2 ST LINK驱动安装成功 在ST LINK驱动安装完成以后,我们在电脑设备管理器里面可以看到会多出一个设备(此时ST LINK必须通过USB连接到电脑,ST LINK红灯常亮),如图3.3.3所示:4 e6 P* d- `2 W7 L2 Q1 g , ^% v8 |$ ]4 H* O
图3.3.3 设备管理器显示ST LINK设备 注意:) ^& N& [4 F, G; x: u4 I! j 1,不同Windows版本设备名称和所在设备管理器栏目可能不一样,例如WIN7电脑插上 ST LINK后显示的是:STMicroelectronics STLINK dongle。 2,如果设备名称旁边显示的是黄色的叹号,请直接点击设备名称,然后在弹出的界面点击 更新设备驱动。 至此,ST LINK驱动已经安装完成。后续我们在MDK里面简单配置一下,即可支持MDK通过ST LINK仿真调试STM32,这个我们后续再介绍。 3.4 更新ST LINK固件9 y' f# Q0 l# R 安装好仿真器驱动后,还要更新ST LINK固件。特别是当将ST LINK在STM32CubeIDE下使用过后,再将ST LINK放到MDK下用时,就得重新更新固件,ST LINK才可以在MDK下正常使用。如果在进入仿真的时候有提示如下情况之一的,要先考虑ST LINK固件是否已经更新了: ①Error:Target DLL has been cancelled. Debugger aborted!, r) B) h- E4 x' K9 [- D& k# G: S2 l ②Internal command error" K; S) O) `/ @: @4 ~) x& W% L ③Old ST-LINK fimware detected. Do you want to upgrade t?( g/ J: e. u5 i6 o9 L , e8 {) f% h/ [0 ? w5 d. S2 t
( A: |1 E( q& D2 ] 图3.4.1进入仿真后提示的信息2 E8 \9 O: b- o! C- R l& n& T - }. x- h, Z6 [! d, T' \8 f 双击开发板光盘A-基础资料\3、软件\ST LINK驱动及教程\固件升级软件\ST-LINK固件升级软件\ST-LINK固件升级软件\Windows\ST-LinkUpgrade.exe可执行文件,或者双击MDK安装目录下的ARM\STLink\ST-LinkUpgrade.exe也可以,这两个文件本质上是同一个文件。然后进入ST LINK固件界面:
图3.4.2进入ST LINK固件更新界面 D! [: z) h* b* a; r' _2 M b- w4 m6 [0 h: t2 y 先拔掉连接ST LINK的USB线,再重新接好USB线,如果不这样的话,当点击Device Connect的时候会提示“ST-Link is not in the DFU mode. Please restart it.”: + f) Z! o: `8 p& X
/ Z3 f( j4 }) [. K1 Y- K+ m: e 图3.4.3提示重启ST LINK 重新接好USB线以后,点击Device ConnectYes后即进入ST LINK固件更新界面,如下可以看到提示,旧的固件版本是V2.J24.S4,新的固件版本是V2.J35.S7:* ?, {6 b# C/ Q3 `
T: f# S& V' D# ^: `8 w 图3.4.4 ST LINK固件更新中 等待进度条加载完成,进度条加载完成后提示固件更新成功:& P( p \0 H/ |# F " c) y7 z; d* ?# |! J* z) h! F
* `" B" t9 Z8 r. h 图3.4.5 ST LINK固件更新成功 3.5 CH340 USB虚拟串口驱动安装/ s: |& o' v8 j3 e/ W6 X 安装CH340 USB虚拟串口驱动,以便我们使用电脑通过USB和STM32进行串口通信。开发板使用的USB虚拟串口芯片是CH340C,其驱动我们已经放在开发板光盘中,路径为:开发板光盘3、软件 CH340驱动(USB串口驱动)_XP_WIN7,如图3.4.1所示:; E. g, O2 q* _! Z2 D 6 b8 T7 d/ q; A9 R( b 图3.5.1 CH340驱动* s, m3 g' V" c 双击SETUP.EXE进行安装,安装完成后,如图3.5.2所示: 图3.5.2 CH340驱动安装成功7 l [! z7 _1 z' F x( w' r- H 在驱动安装成功之后,将开发板的USB_UART接口通过USB连接到电脑,此时电脑就会自动给其安装驱动了。在安装完成之后,可以在电脑的设备管理器里面找到USB串口(如果找不到,则重启下电脑),如图3.5.3所示:: y4 h8 ~8 p3 S O/ p4 V, A! c8 r6 X 1 J5 _) K, u4 p- ^& c: Z
8 g! {9 `, ~8 N 图3.5.3 设备管理器显示CH340 USB虚拟串口 在图3.5.3中可以看到,我们的USB虚拟串口被识别为COM33,这里需要注意的是:不同电脑可能不一样,你的可能是COM4、COM5等,但是USB-SERIAL CH340,这个一定是一样的。如果没找到USB串口,则有可能是你安装有误,或者系统不兼容。# X. h2 m- J2 M+ }# g 在安装完CH340 USB虚拟串口以后,我们就可以使用串口调试助手,比如XCOM,和我们的开发板,通过串口进行通信了,这个我们在后续内容再给大家介绍。至此,STM32的开发环境就搭建完成了。; t; A3 N% L8 T2 @/ L% ? ———————————————— 版权声明:正点原子; }/ h7 ~# j' H7 o* h# E# e# d + _/ B/ [, m% l& F* r; ^ |
STM32MP157双A核Linux + 自研RTOS双系统镜像免费下载
扩展STM32微处理器,实现高性价比、低功耗和灵活性能
STM32MP1 自举程序编程:USB DFU/USART 协议全解析
兔哥心中的ST中文论坛
我心中的ST中文论坛
STM32 开发者指南:ST.com 全新 MCU 产品阵容视觉布局深度解析
深度拆解 STM32MP1 Boot 链路
STM32串口自动识别波特率的原理
STM32MP135 MP157 MP257 CoreMark移植&&跑分对比&&多核心负载不均衡问题排查与解决
STM32--STM32 微控制器详解
微信公众号
手机版