1.LED介绍
LED(light-emitting diode),即发光二极管,俗称LED小灯,是一种由磷化镓(GaP)等半导体材料制成的、能直接将电能转变成光能的发光显示件。当LED内部有一 定电流通过时,它就会发光,不同LED能发出不同颜色的光,常见的有红色、黄色等
2.LED的主要参数
电参数:
(1)正向工作电流IF。它是指发光二极管正常发光时的正向电流值。发光二极管工作电流一般为 10~20mA。
(2)正向工作电压UF。它是在给定正向电流下的发光二极管两端正向工作电压。一般是在 IF=20mA 时测量,发光二极管正向工作电压为 1.4~3V 。外界温度升高时,发光二极管正向工作电压会下降。
(3)伏 - 安特性。它是指发光二极管电压 与电流之间的关系。
极限参数:
(1)允许功耗 Pm。它是允许加于发光二极管两端正向直流电压与流过它的电流之积的最大值,超过此值时发光二极管发热、损坏。
(2)最大正向直流电流 IFm。它是允许加的最大正向直流电流,超过此值会损坏二极管。
(3)最大反向电压 URm。它是所允许加的最大反向电压,超过此值发光二极管可能被击 穿损坏。
(4)工作环境 topm。它是发光二极管可正常工作的环境温度范围。低于或高于此温度范围,发光二极管将不能正常工作,效率大大降低。
3.LED引脚极性识别方法(正负极)- 还有其他的这里是常见的
4.LDE电路图
5.点亮第一个LED的代码
#include <REGX52.H> //电路图可以看出VCC是高电平,想要电流流过就给P20低电平 sbit LED1 = P2^0; // 有且只有一个 void mian() { while(1) { //给低电平 LED1=0; } }
6.LED闪烁
#include <REGX52.H> //定义类型,也可以写在方法的括号中, typedef unsigned char u8; typedef unsigned int u16; sbit LED1 = P2^0; //定义延时函数,ten_us=1,大约延时10us; void delay_10us(u16 ten_us) { while(ten_us--); } // 有且只有一个 void mian() { while(1) { //给低电平 LED1=0; delay_10us(50000); //约450ms //给高电平 LED1=1; delay_10us(50000); } }
7.循环向右点亮LED灯(D1-D8)
#include <REGX52.H> //定义类型,也可以写在方法的括号中, typedef unsigned char u8; typedef unsigned int u16; //定义宏 #define LED_PORT P2 //重新定义 P2 口 //定义延时函数,ten_us=1,大约延时10us; void delay_10us(u16 ten_us) { while(ten_us--); } // 有且只有一个 void mian() { u8 i = 0; while(1) { for(i =0; i < 8;i++) { //0xfe 十六 转 二 1111 1110.0xfe左移i位,移动一位结果:1111 1100 //LED_PORT = 0xfe<<i;// D1亮 ,移动的过程不符合要求 //0x01 是 0000 0001 取反 1111 1110 LED_PORT = ~(0x01<<i); //延时函数 delay_10us(50000); } } }