
因为疫情封闭,导致活动两个月后才拿到板卡,这几天利用空余时间研究学习了一番,开箱篇就省略了,直接进行点灯篇![]() 本来打算用CubeMX+CubeIDE,但是因为习惯了用MDK,所以就用了自己习惯的IDE编译环境MDK V5.37,后面有时间再学习CubeIDE,到时再跟坛友们学习讨论。! _: m* Q/ P ]5 E+ D# ^& e. T 首先是安装STM32CubeMX并打开,安装H7的最新Pack包(相信大家都知道怎么做,故省略了此步骤);新建H7A3的点灯工程;% z; m) Z# M% L% [$ E7 E5 D ![]() 新建工程有两个选项,下方图片给出了相关说明,此处我们选择第一项,以MCU从零开始创建; ![]() ![]() * s M* w9 d2 Y8 [ 输入所需MCU的型号相关字段,此处输入“H7A3”,选框中会下拉出包含此字段的所MCU型号,我们下拉到此板卡主控MCU的型号处,点击即可,此时窗口右下角会出现此MCU型号的;4 t8 y0 z* Y# t j4 c ![]() ![]() 双击MCU型号栏,即可进入工程的相关外设的配置页面;(会出现一个有关预设置存储保护区块的窗口,点击Yes即可看见调用进度条)" j3 ]+ A& S! p% Y9 E {' p " G! Q5 d W9 T+ f$ z ![]() ![]() , B+ L7 P, \7 s6 c' G. ^ ![]() ![]() & f! w. [& W6 b. G ![]() 参照板卡的原理图,可以确定PB0默认控制LD1,故在工程中针对PB0引脚做以下相关设置;3 t: T: F& L( O( n- t- L$ \# X3 d 1 j0 ^" G# Z* b, Z% m! S ![]() ![]() 0 g, _1 F3 b, @7 m$ M' G! V ![]() : [/ y) N/ a" T, B9 i 1、设置PB0为GPIO_Output模式 ]+ q! A2 ~: y. R& ` 2、点击展开左侧外设选项栏的“System Core” 3、再点击下方的”GPIO“/ B1 `% d M# W1 z+ `1 n 4、在右侧出现的”GPIO Mode and Configuration“窗口在点击下方的“GPIO”栏中的“PB0” 5、下方会出现“PB0 Configuration”操作窗口,具体操作项说明见上图,此处更改“GPIO output level"为”High“,设置”User Label“为”LD1“5 k- U) B; U( n ] 6 y( W) X2 }; S4 R8 A' `; L 因只是简单的点灯,故时钟设置为系统默认即可,此处不进行操作。 以上设置完成后,点击”Project Manager“进行工程的代码生成相关设置; ![]() ![]() 进入“Projcet”,0 t. K" J- A# g5 t1 \ 1、设置工程名称为“LD1”,' E" {. N7 q' `7 \! _ 2、选择工程的保存路径 3、选择编译用的IDE及版本" a6 P! u% l7 [/ X- ` ![]() 点击左侧的“Code Generator”,勾选下图中的选项,具体看下图中的说明; 1 U" A' X/ j- g; ]/ Q ![]() ![]() 点击左侧的”Advanced Settings“,点击“Driver Selector”栏中的”HAL“,出现下拉窗,点选"LL"选择以LL库生成代码,原因见图;下方的“Generated Function Calls”栏内的两项保持默认即可,原因见下图中说明;+ T$ K, Q, h" D6 B0 o% z' m: K . z; q0 u2 N+ `% u9 N x ![]() 通过以上操作,已经完成了点灯所需的相关所有设置;点击窗口右上角的“GENERATE CODE"生成工程代码即可;代码生成后会出现对工程的处理方式窗口;点击”Open Project“; / F% Y( G' _5 G, F2 A2 I ![]() ![]() 会自动打开MDK编译软件(前提是设置MDK为默认打开方式);* W& n7 O( `" t5 }4 Z, l 双击打开main.c文件:(用户代码的添加说明见下图) # {) t" P8 r5 c+ i N$ j ![]() ![]() # C$ X1 `6 M; h0 p8 K; @2 m. p 双击打开gpio.c文件:, K* y. L* l; T& d0 [: @ : }. i, X0 y5 n& n3 Q' V4 F+ x3 ]! _ ![]() ![]() 从原理图上可以看出,PB0输出高电平就可以控制NPN三极管Q1导通来点亮LD1; 所以不需要添加任何代码,直接编译即可;% t1 j3 h3 D, z, M+ j ![]() 4 ?4 ]5 v) i6 O: @5 g1 V 接下来设置板载St-link进行下载程序到板卡;点击MDK工具栏上的”魔法棒“,按图片顺序进行设置即可;7 P8 B/ I2 [; F8 ]7 Y 4 m1 P4 q0 ?* y0 r: s ![]() ![]() ![]() ![]() / }+ a2 [) ?) @ ~& j ![]() ![]() 7 y- a/ M, u$ I/ M 上图的编程数据空间段如果在需要设置的前提下没有设置,会出现下图中的错误提示(此板卡照图上设置即可); ![]() A! q4 O4 z$ |2 l- a4 Z ![]() ![]() ![]() 以上设置好后,点击”下载“按钮,下载成功后如下图; ![]() ![]() 自动运行效果见下图:" F9 s" c9 P3 ]$ o) z' G9 A, n C% C# V# m2 j$ w) |6 ^ ![]() : H. f: U, M3 c/ E0 X 工程代码附件: ( _) U4 E3 S: X+ e k0 h- w( B4 j ![]() |
【2025·STM32峰会】GUI解决方案实训分享4-使用MVP架构从硬件外设读取数据并显示到图形界面、从图形界面发送指令控制硬件外设
【2025·STM32峰会】GUI解决方案实训分享3-搭建空白TouchGFX例程并实现简单的功能(含硬件部分的串口打印)
【2025·STM32峰会】GUI解决方案实训分享2-编译运行TouchGFX咖啡机例程(含桌面仿真)
【2025·STM32峰会】+TouchGFX实现动态进度显示以及界面切换
【2025·STM32峰会】+使用TouchGFX快速创建GUI
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
实战经验 | 关于STM32H7使用LL库生成ADC代码工作异常问题说明
实战经验 | 关于STM32H745的MC SDK电机控制工程问题的解决办法
【H745I GUI】1.GreenHouse 灯光控制
【Wio Lite AI视觉开发套件】+移植TensorFlow Lite
: S1 I! }+ ~3 a s! E ~' e3 `