快捷搜索: 王者荣耀 脱发

STM32G431学习笔记【1】:点亮二极管

前言

学完频率计之后花了一周重新看了一下物联网的东西,忙完之后终于有时间开始学习G431单片机了,花了两天时间 把发光二极管点亮了~~想不到这么简单的工程也能学到东西2333## ~~

电路分析

G431开发板自带的发光二极管模块

可以看到在这个电路中PA5引脚输出高电平时三极管导通二极管发光,如果该引脚输出低电平时二极管熄灭。

cubemx的相关配置

这里我们配置该LD2的引脚PA5为输出端口。 因为该二极管为高电平使能二极管,所以我们设置输出端口为低电平。 因为是连接数字器件所以我们选择推挽输出模式。 设置为下拉模式。 因为二极管对gpio输出的速度没有要求,所以配置速度为低速。 为了使后面的代码可操作性更好,我设置了user lable 为LD2。

代码实现

user lable的相关代码

/* Private defines -----------------------------------------------------------*/
#define LD2_Pin GPIO_PIN_5
#define LD2_GPIO_Port GPIOA
/* USER CODE BEGIN Private defines */

主函数代码

while (1)
  {
          
   
      HAL_GPIO_WritePin(LD2_GPIO_Port, LD2_Pin, GPIO_PIN_SET);
	  HAL_Delay(1000);
	  HAL_GPIO_WritePin(LD2_GPIO_Port, LD2_Pin, GPIO_PIN_RESET);
	  HAL_Delay(1000);
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }

这里就没什么好讲的了,就是上拉下拉GPIO,来让二极管发光熄灭。但是我也之前没有写最后一行的延时函数,结果那个发光二极管一直亮着的卡了我好久

经验分享 程序员 微信小程序 职场和发展