51单片机攻略—LED
入门篇中,完成了对51单片机编程的一系列基本操作,按位点亮了LED,此篇将从总线方式点亮发光二极管开始单片机LED编程。
一、程序实战
(一)LED相关
1、总线方式点亮P1所有LED(8个)
总线方式应将四个一组的二进制位化为十六进制数,进行低电平赋值。
点亮所有LED即令IO口全部输出低电平 00000000 -> 0x00。
#include <reg52.h>
void main(){
P1 = 0x00;
}
测试成功。
2、让一个LED灯闪烁
方法一:
#include <reg52.h>
sbit p1_1 = P1^0;
unsigned int a;
void main(){
while(1){
a = 50000;
p1_1 = 0;
while(a--);
a = 50000;
p1_1 = 1;
while(a--);
}
}
方法二:
#include "reg52.h"
#define uint unsigned int
#define uchar unsigned char
sbit LED1 = P1^0;
void delay(uint z){
uint x,y;
for (x = 200; x > 0; x--) {
for(y = z; y > 0; y--);
}
}
int main() {
whil