原理图
R1是限流电阻
PB5引脚 输出低电平0,相当于接地了,LED导通->发光二极管发光
不同的发光二极管压降也不同
发光二极管包括可见光、不可见光、激光等不同类型,这里只用到可见光发光二极管。发光二极管的发光颜色决定于所用材料,目前有红、绿、黄、橙等色,可以支撑各种形状,如长方形、圆形等。
发光二极管也具有单向导电性。只有外加的正向电压使得正向电流足够大时才发光,它的开启电压比普通二极管大,红色的在1.6~1.8V之间,绿色的约为2V,正向电流愈大,发光愈强。使用时,应特别注意不要超过最大功耗、最大正向电流和反向击穿电压等极限参数。
发光二极管因驱动电压低、功耗小、寿命长、可靠性高等优点广泛应用于显示电路中。目前已有高强度、颜色可变的新产品,用于装饰、显示屏、汽车尾灯、照明,等等。
根据编程习惯,先创建LED.c LED.h文件
LED.c 存放在 Public\src文件中
LED.h 存放在 Public\inc文件中
1. #include "LED.h" 2. 3. void LED_Init(void) 4. { 5. //点亮PB5 6. RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); 7. 8. GPIO_InitTypeDef GPIO_InitStructure; //初始化结构体 9. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 10. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; 11. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; 12. GPIO_Init(GPIOB, &GPIO_InitStructure); 13. 14. GPIO_ResetBits(GPIOB, GPIO_Pin_5); //置低电平 15. } 16. 17. void LED_onoff(void) 18. { 19. GPIO_ResetBits(GPIOB, GPIO_Pin_5);//低电平,亮 20. 21. // GPIO_SetBits(GPIOB, GPIO_Pin_5);//低电平,灭 22. 23. }