STM32系列32位微控制器基于Arm® Cortex®-M处理器,旨在为MCU用户提供新的开发自由度。它包括一系列产品,集高性能、实时功能、数字信号处理、低功耗/低电压操作、连接性等特性于一身,同时还保持了集成度高和易于开发的特点。
1.硬件接口
STM32G431开发板有一个用户按钮和LED灯。
根据原理图,LD2和PA5相连,想要点亮LED则PA5应该为高电平。
用户按键B1和PC13相连,按下为高电平;
2.软件设计
2.1 芯片型号选择
本示例所使用芯片型号为:STM32G431RBT6;128KB flash 和32KB SRAM,工作频率高达170MHz。
2.2 时钟配置
2.3 GPIO配置
2.4 生成代码
2.5 LED和按钮引脚配置
2.6 获取按键值函数编写
/*获取按键值*/ uint8_t Get_KeyVal(void) { uint8_t static stat=0; if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==1 && stat==0)//判断按键是否按下 { HAL_Delay(20);//延时消抖 stat=1; if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin))return 1; } else if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==0) { stat=0; } return 0; }
2.7 主函数
uint8_t key; /* USER CODE END 2 */ /* Infinite loop */ /* USER CODE BEGIN WHILE */ while (1) { /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ key=Get_KeyVal(); if(key) { HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin); } }
开发板本身集成ST_Link下载器,只需安装ST_Link驱动即可直接下载。
上一篇:浅谈STM32 模数转换器 (ADC)(下)
下一篇:基于STM32H7 MCU的智能家居语音接口参考设计
推荐阅读最新更新时间:2024-11-03 14:25
设计资源 培训 开发板 精华推荐
- 使用 Analog Devices 的 LT3091MPFE 的参考设计
- 【训练营】智能小台灯-793424A
- 流水灯_NE555_CD4017
- TCR4S18WBG、200mA、1.8V 输出电压 CMOS 低压降稳压器的典型应用
- 基于STCN75的温度探针套件
- LT1307BCMS8 升压/降压转换器的典型应用电路
- MC34072AMTTBG 二阶高通有源滤波器的典型应用
- LT3663HMS8E-3.3、2.5V 降压转换器的典型应用
- LT3091IFE 低压差操作在非常低的输出电压下的典型应用
- DC2257A,使用 LTM8005 38VIN、38VOUT 升压 LED 驱动器和 40V 开关的演示板