stm32性能强大,但其开发难度又显著高于Arduino等单片机。本文将通过流水灯程序,介绍stm32开发的一些基本操作。
基本介绍
常见stm的编程方式有三种:寄存器式、标准库式、HAL库式。其中HAL库上手较为简单。本文将以HAL库式为基础介绍。
软件
- Keil 5(单片机集成开发环境)
- STM32CubeMX(自动配置stm32编程的相关文件)
- FLYMCU(stm32串口下载软件,也可用ST-LINK代替)
- XCOM(串口监视器)
准备
打开图中的“File”,新建一个stm32项目(“New Project")。
在输入框中搜索自己的stm32芯片,双击创建新项目。
选择左边菜单栏中“System Core”的SYS、GPIO和RCC。
在SYS中选择Debug方式为“Serial Wire”。
在RCC中选择“Crystal/Ceramic Resonator”
点击右边芯片的引脚,可以看到每一个引脚的用法。此处我们选择引脚的“GPIO_Output”(通用型输出)模式。
依次选择每个引脚的模式,在该实验中,我们共需要10个模式为“GPIO_Output”的引脚。设置好后引脚会有绿色标记。
打开“GPIO”,设置引脚的输出模式为“Output Push Pull”(推挽输出模式)。
打开“Project Manager”,编辑文件名称,保存路径。注意设置IDE为MDK-ARM,版本为V5。点击“GENERATE CODE"。
打开keil,找到“main.c"文件。我们可以找到核心代码区:
int main(void)
{
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config