8个发光二极管间隔200ms由上至下,再由下至上,再重复一遍,然后全部熄灭再次以300ms间隔全部闪烁5次,重复此过程
2015-08-31 20:40
411 查看
#include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int uchar aa; void delay(uint z); void main() { uchar i,j,k; while(1) { for(i=0;i<2;i++) { aa=0xfe; for(j=0;j<7;j++) { P1=aa; delay(200); aa=_crol_(aa,1); } aa=0x7f; for(k=0;k<7;k++) { P1=aa; delay(200); aa=_cror_(aa,1); } } P1=0xff; for(j=0;j<10;j++) { P1=~P1; delay(300); } } } void delay(uint z) { uint x,y; for(x=0;x<z;x++) for(y=0;y<110;y++); }这个程序可以说是是一次写成功的!!程序基本能按照预定效果执行;唯一的一次修改是灯闪烁的过程中要执行十次循环。闪烁五次,而我先前只让其循环了五次!
相关文章推荐