06. 点亮LED

一、LED简介

  LED(Light Emitting Diode),发光二极管,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光。LED 的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是 负极,另一端连接电源的 正极,使整个晶片被环氧树脂封装起来。

  半导体晶片由两部分组成,一部分是 P 型半导体,在它里面 空穴 占主导地位,另一端是 N 型半导体,在这边主要是 电子。但这两种半导体连接起来的时候,它们之间就形成一个 P-N 结。当电流通过导线作用于这个晶片的时候,电子就会被推向 P 区,在 P 区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是 LED 灯发光的原理。而光的波长也就是光的颜色,是由形成 P-N 结的材料决定的。

二、原理图

LED灯模块

LED灯模块引脚接线图

  通过原理图分析,LED1 和 LED2 的阳极接高电平,阴极分别接 PF9 引脚和 PF10 引脚,当 PF9 和 PF10 引脚输出低电平的时候,LED 导通,发光。因此,PF9 和 PF11 可以配置为 推挽输出输出低电平

三、程序源码

  LED 初始化函数内容如下:

/**
 * @brief led初始化函数
 * 
 */
void LED_Init(void)
{
    GPIO_InitTypeDef GPIO_InitStruct = {0};

    __HAL_RCC_GPIOF_CLK_ENABLE();                                               // 使能GPIOF的时钟

    GPIO_InitStruct.Pin = GPIO_PIN_9;                                           // GPIO引脚
    GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;                                 // 推挽输出模式
    GPIO_InitStruct.Pull = GPIO_NOPULL;                                         // 不使用上下拉
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;                               // 高速模式
    HAL_GPIO_Init(GPIOF, &GPIO_InitStruct);                                     // GPIO初始化

    GPIO_InitStruct.Pin = GPIO_PIN_10;                                          // GPIO引脚
    HAL_GPIO_Init(GPIOF, &GPIO_InitStruct);                                     // GPIO初始化

    HAL_GPIO_WritePin(GPIOF, GPIO_PIN_9, GPIO_PIN_SET);                         // PF9,默认高电平,熄灭led
    HAL_GPIO_WritePin(GPIOF, GPIO_PIN_10, GPIO_PIN_SET);                        // PF10,默认高电平,熄灭led
}

  main() 函数内容如下:

int main(void)
{
    HAL_Init();
    System_Clock_Init(8, 336, 2, 7);
    Delay_Init(168);

    LED_Init();

    while (1)
    {
        HAL_GPIO_WritePin(GPIOF, GPIO_PIN_9, GPIO_PIN_RESET);
        HAL_GPIO_WritePin(GPIOF, GPIO_PIN_10, GPIO_PIN_SET);
        HAL_Delay(1000);

        HAL_GPIO_WritePin(GPIOF, GPIO_PIN_9, GPIO_PIN_SET);
        HAL_GPIO_WritePin(GPIOF, GPIO_PIN_10, GPIO_PIN_RESET);
        HAL_Delay(1000);
    }
  
    return 0;
}
posted @ 2023-10-31 18:26  星光映梦  阅读(52)  评论(0编辑  收藏  举报