《51单片机LED指示灯控制.docx》由会员分享,可在线阅读,更多相关《51单片机LED指示灯控制.docx(2页珍藏版)》请在三一办公上搜索。
1、51单片机LED指示灯控制51系列单片机_LED指示灯控制 此程序使用 单片机89SC52 / 1、 实现LED指示灯逐个点亮 #include /51单片机端口声明头文件 #include void delay_ms(int n) /延时n毫秒 int i,j; for(i=0;in;i+) for(j=0;j110;j+); void main /8个灯逐个点亮 P1= 0xfe; /0xfe二进制形式为(1111 1110) 让LED灯的最低位得到低电平点亮 while(1) delay_ms(300); /亮300毫秒 P1=_crol_(P1,1); /左移位使次低位为低电平点亮,依
2、次循环 / 2、 实现LED指示灯从高到低、从弟到高、以及从两边向中间、从中间向两边逐个点亮 #include #include void delay_ms(int n) /延时n毫秒 int i,j; for(i=0;in;i+) for(j=0;j110;j+); void main int i; unsigned char p1= 0xfe; unsigned char p0= 0x7f, p; while(1) for(i=0; i7; i+) P1=p1; P0=p1; delay_ms(100); p1=_crol_(p1,1); for(i=0; i7; i+) P0=p1; P
3、1=p1; delay_ms(100); p1=_cror_(p1,1); for(i=0; i8; i+) P1=p1; P0=p0; delay_ms(100); p1=_crol_(p1,1); p0=_cror_(p0,1); 点亮 for(i=0; i7; i+) p1=_crol_(p1,1); p0=_cror_(p0,1); p=p1&p0; delay_ms(100); P1=p; P0=p; /让P1口对应的第一排灯从低到高逐个点亮 /让P1口对应的第一排灯从高到低逐个点亮 /第一排灯从低到高,第二排从高到低 /让P1口对应的第一排灯从低到高逐个点亮 /同时,让P0口对应的第二排灯从高到低逐个/让LED灯从两边向中间点亮