一、LED点灯基本原理
蓝桥杯官方51单片机板子LED电路为共阳极接法:
LED低电平(输出0)点亮、高电平(输出1)熄灭
涉及端口:P0口控制8路LED,P25,P26,P27控制锁存器
P25,P26,P27分别为100时,138译码器Y4C输出为1,LED对应的锁存器打开,此时可以控制灯的亮灭
三、代码实现详解
1. 代码(C语言):实现了8个LED灯0.2s闪烁一次
#include "STC15F2K60S2.H" #include "intrins.h" //延时200ms--该函数可以在STC-ICP软件中生成 void delay() //@11.0592MHz { unsigned char i, j, k; _nop_(); _nop_(); i = 9; j = 104; k = 139; do { do { while (--k); } while (--j); } while (--i); } void main(void) { while(1) { P2 = ((P2&0x1f)|0x80);//打开灯的锁存器 P0 = 0xff; //LED全关 P2 &= 0x1f;//锁存数据 delay(); P2 = ((P2&0x1f)|0x80);//打开灯的锁存器 P0 = 0x00; //LED全开 P2 &= 0x1f;//锁存数据 delay(); } }