点亮第一个LED灯
点亮第一个LED灯
- 1、LED原理
- 2、硬件设计
- 3、软件设计
- 3.1、点亮第一个LED灯
- 汇编代码
- 3.2、LED闪烁实验
- 3.3、LED流水灯实验
- 3.4、拓展LED闪烁 ,有节奏闪烁
1、LED原理
单向导电性,3mA-20mA之间。
怎么判断阴阳极。直插式:长的是阳极,短的是阴极。
贴片式 无箭头彩色的是阳极。
2、硬件设计
阳极为高电平,阴极为低电平,电流才能过来。两端都是高电平,电流流不过来,为什么?
让LED发光即对应的阴极管脚应该为低电平,若为高电平则熄灭。
3、软件设计
sfr P0 = 0x80;语句的意义,把单片机内部地址0x80处的这个寄存器重新起名P0。
sbit CY = PSW^7 将PSW这个寄存器的最高位重新命名为CY。
3.1、点亮第一个LED灯
点亮D1指示灯,即让P2.0管脚输出一个低电平。完成后可再控制D1指示灯闪烁,即间隔一段时间点亮和熄灭D1指示灯。
汇编代码
3.2、LED闪烁实验
延时函数
3.3、LED流水灯实验
#include "reg52.h"
typedef unsigned int u16
typedef unsigned char u8
#define DELAY_TIME 50000
#define LED_PORT P2
void delay_10us(u16 time)
{
while(time--);
}
void main()
{
u8 i;
for (i = 0; i < 8; i++)
{
LED_PORT = ~(0x01<<i);
delay_10us(DELAY_TIME);
}
}
3.4、拓展LED闪烁 ,有节奏闪烁
LED_PORT = ~(0xFF) //给引脚低电平