前言
学完频率计之后花了一周重新看了一下物联网的东西,忙完之后终于有时间开始学习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,来让二极管发光熄灭。但是我也之前没有写最后一行的延时函数,结果那个发光二极管一直亮着的卡了我好久