STM32 HAL库学习(二):按键检测
程序员文章站
2022-06-08 19:06:46
...
用cubemx生成初始化代码
1、新建工程
- File→NewProject
- 选择芯片
2、配置RCC
- 选择System Core里边的RCC,配置外部时钟
3、配置引脚
- 按键有两个,分别是PA0,PC13;这个实验可以用LED的亮灭来验证按键是否配置正确,LED的引脚为PC2
- 具体配置如下
4、配置系统时钟
- 具体如下
5、配置工程
- 工程的基本配置
- 生成代码的配置,最后点击GENERATE CODE生成代码
编辑业务代码
1.、按键扫描函数
uint8_t Key_Scan(GPIO_TypeDef *GPIOx,uint16_t GPIO_PIN)
{
if (HAL_GPIO_ReadPin(GPIOx,GPIO_PIN) == 1)
{
/* code */
while (HAL_GPIO_ReadPin(GPIOx,GPIO_PIN) == 1)
;
return 1;
}
else
{
return 0;
}
}
2、主函数
while (1)
{
/* USER CODE END WHILE */
if (Key_Scan(GPIOA, GPIO_PIN_0) == 1)
{
/* code */
HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_2);
}
else if (Key_Scan(GPIOC, GPIO_PIN_13) == 1)
{
HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_2);
}
/* USER CODE BEGIN 3 */
}
上一篇: JS 数组的简单操作,生成table表格
下一篇: 你吃过大刀面吗,它到底有哪些不同
推荐阅读