如何点亮一颗LED灯

如何点亮一颗LED灯将 PB8 或 PB9 拉低 就可以实现将对应的 LED 灯点亮

大家好,欢迎来到IT知识分享网。

如何点亮一颗LED灯

在这里插入图片描述
在这里插入图片描述

使用STM32CubeMX 初始化

  1. 设置为串口
    在这里插入图片描述

PA0(key1) PA1(key2) 设置为输入 (GPIO_Input)
PB8(LED1),PB9(LED2) 设置为输出(GPIO_Output)
在这里插入图片描述
3. PB8 PB9 初始设置为高电平
在这里插入图片描述

具体实现如下

void HAL_GPIO_Init( GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init ); void HAL_GPIO_WritePin( // GPIO端口号,x可以是A、B、C等。 GPIO_TypeDef *GPIOx, // GPIO引脚编号,例如GPIO_PIN_0表示第0个引脚。 uint16_t GPIO_Pin, GPIO_PinState, // GPIO引脚输出状态,可以是GPIO_PIN_RESET(低电平)或GPIO_PIN_SET(高电平)。 PinState ); void HAL_GPIO_TogglePin( GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin ); 

下面实现一个按键点亮LED灯

输入(按键):

  • KEY1:PA0
  • KEY2:PA1

输出(LED灯):

  • LED1:PB8
  • LED2:PB9
#define KEY_ON 0 #define KEY_OFF 1 uint8_t Key_Scan(GPIO_TypeDef* GPIOx,uint16_t GPIO_Pin) { 
    if( HAL_GPIO_ReadPin(GPIOx,GPIO_Pin) == GPIO_PIN_RESET) { 
    /* 按键按下 */ while(HAL_GPIO_ReadPin(GPIOx, GPIO_Pin) == GPIO_PIN_RESET); return KEY_ON; } else { 
    /* 按键松开 */ return KEY_OFF; } } while (1) { 
    /* USER CODE END WHILE */ // HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8|GPIO_PIN_9, GPIO_PIN_RESET); if(Key_Scan(GPIOA, GPIO_PIN_0) == KEY_ON) { 
    HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_8); } if(Key_Scan(GPIOA, GPIO_PIN_1) == KEY_ON) { 
    HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_9); } /* USER CODE BEGIN 3 */ } 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/155878.html

(0)
上一篇 2025-02-16 16:33
下一篇 2025-02-16 17:00

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信