stm32cubemx是ST公司推出了专门用于生成STM32的HAL代码的代码生成软件。所以学习stm32cubemx也就学习了用HAL库开发STM32的相关技术。stm32cubemx利用可视化界面来进行STM32p配置,所以时钟、滴答定时器、DMA、串口、GPIO等就不用根据数据手册去操作标准库甚至是寄存器了。 以下一stm32f407zet6控制器为例进行讲解: 下面进入正题 一.stm32cubemx的安装 一般来说可以再ST官方网站上下载安装包,并加载所使用的芯片资料包。才能使用,且只能配置加载的资料包内的芯片。 安装过程可参考以下博客: 【STM32CubeMX】+使用教程 https://www.stmcu.org.cn/module/forum/thread-623588-1-1.html (出处: 论坛-意法半导体STM32/STM8技术社区) 二.stm32cubem基本使用 1、stm32cubem界面 2、stm32cubemx建立工程" O" ~9 [7 ^% d* j$ U5 f8 q2 A2 M + E& }( N1 z% g2 l- i1 s) j# v 得到图形化界面,首先要选择自己所使用的芯片。第一步就是选择内核版本 然后选择产品系列、产品线、封装、引脚数 将会得到所有符合选参数的芯片型号。 ) g2 Y% K8 u2 h: Q5 a 选择所使用的芯片型号,这里选择STM32F407ZGT6,将显示当前芯片的封装、FLASH、时钟频率、引脚数、运行内存等参数。双击即可进入引脚配置界面。 $ T+ D. F* ~& d6 W2 U 查看LED电路图,可知点亮LED需要将引脚置位低。分别接PF9和PF10。那么首先就要配合这两个IO口。 进入到芯片上,滚动鼠标,可放大、缩小芯片。选择PF9和PF10,LED灯,应配置为输出。配置如下: 点击 ,配置IO状态 4 N: G; _1 ~" k A- W8 x$ k 进入后,可配置初始电平、上拉/下拉模式、GPIO模式、GPIO速度等。这里选择初始电平为低(LED亮)、推挽输出、上下拉、低速运行模式。 0 Y Y$ W, B5 _8 l4 H; d/ k 再次就是配置时钟、一般会有默认,但也可以配置。根据图形选择系统时钟(内部、外部、低俗、高速时钟),并根据各连接器配置每个外设的时钟。。选择高速时钟。 8 B$ c! t k- o0 x 如果有必要还可以配置其他选项 " y; B0 v! B) M) b! f+ q8 O 配置完成后,需要配置生成路径。 ; E. P: w+ p& R8 T: m 选择设置参数,特别是开发环境选择,区分KEIL4、keil5..注意不同的资料包,生成的代码,运行的环境存在不兼容的情况。 7 d9 G; i2 h2 F+ `* d: j 生成代码 ' v4 b/ O5 [& c* P5 |4 r) d 生成结束 至此,代码生成结束,将工程打开后,下载到单片机中,可以看到两个LED被点亮。 下面讲一下关于该软件的一些配置,此列用于配置stm32所有外设。可最大简化编程流程。 下面的设置,用于配置代码是否被覆盖等。修改代码后,再次修改界面配置,可能会覆盖原来修改过的的代码,因此需要进行设置。 下面表示该工程配置那些外设。 一般只有在相应位置添加代码,重新生成代码后,不会覆盖原来添加的代码、文件等。 /* USER CODE BEGIN 1 */ " ?0 h; D+ }8 f. G% p: D添加代码% J0 e0 M4 }' L4 I( Q' t9 _ /* USER CODE END 1 */ |
【STM32C0测评】外部中断控制小灯
意法半导体最具性价比、速度最快的单核MPU STM32MP13现已支持运行RTOS
【NUCLEO-U083RC评测】移植TouchGFX并实现无接触翻页
[NUCLEO-C031C6评测] 驱动LCD 第三步 显示颜色块
[NUCLEO-C031C6评测] 驱动LCD 第二步 初始化屏幕
[NUCLEO-C031C6评测] 驱动LCD第一步
【STM32MP135-DK】裸机开发
STM32MP135F-DK 开箱&开发环境搭建&硬件设计分析
【STM32U599】4.引入RTC与MVP开发
基于STM32CUBEMX驱动TMOS模块STHS34PF80之获取状态数据(5)