LED全称为半导体发光二极管,是采用半导体材料制成的,是一种直接将电能转换为光能,电信号转换为光信号的发光器件。其特色是功耗低、高亮度、色彩艳丽、抗振动、寿命长(正常发光时长8—10万小时)、冷光源等,是真正的“绿色照明”。实物图:
LED在电路图中的符号为:
它具备二极管的基本特性,即正向导通,反向截止。要想点亮LED须要从正向流过工做电流。
不一样LED小灯的工做压降不一样,普通发光二极管的工做压降范围为:1.6—2.1V。工做电流为:1—20mA。web
单片机中LED模块原理图:
经过观察电路原理图能够得出:要点亮开发板上LED小灯只须要控制P2口输出低电平便可(即给P2口赋值“0”)。
1.点亮单片机上全部的LED灯
代码以下:svg
#include <reg52.h> sbit LED1 = P2^0; sbit LED2 = P2^1; sbit LED3 = P2^2; sbit LED4 = P2^3; sbit LED5 = P2^4; sbit LED6 = P2^5; sbit LED7 = P2^6; sbit LED8 = P2^7; void main() { LED1 = 0; LED2 = 0; LED3 = 0; LED4 = 0; LED5 = 0; LED6 = 0; LED7 = 0; LED8 = 0; }
运行结果以下:
2.LED小灯的闪烁
代码:ui
#include <reg52.h> unsigned int i; void main() { while(1) { P2 = 0; i = 65535; while(i--); P2 = 0xff; i = 65535; while(i--); } }
3.流水灯
代码:spa
#include <reg52.h> #include <intrins.h> #define uint unsigned int #define uchar unsigned char uchar temp; void delay(uint z) { uint x,y; for(x = z;x > 0;x--) for(y = 114;y > 0;y--) } void main() { temp = 0xfe; P2 = temp; delay(100); while(1) { temp = _crol_(temp, 1); P2 = temp; delay(100); } }