为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

简单的单片机花样流水灯C语言源代码

2019-04-21 39页 doc 57KB 87阅读

用户头像

is_562397

暂无简介

举报
简单的单片机花样流水灯C语言源代码简单的单片机花样流水灯C语言源代码 #include //51系列单片机定义文件 #define uchar unsigned char //定义无符号字符 #define uint unsigned int //定义无符号整数 void Delayms(uint x) { //定义延时函数 uint i,j; for(i=x;i>0;i--) for(j=110;j>0;j--); } void main(){ uint i; uchar temp; while(1){ temp=0x01; /...
简单的单片机花样流水灯C语言源代码
简单的单片机花样流水灯C语言源代码 #include //51系列单片机定义文件 #define uchar unsigned char //定义无符号字符 #define uint unsigned int //定义无符号整数 void Delayms(uint x) { //定义延时函数 uint i,j; for(i=x;i>0;i--) for(j=110;j>0;j--); } void main(){ uint i; uchar temp; while(1){ temp=0x01; //8个流水灯逐个闪动 for(i=0;i<8;i++){ P0=~temp; Delayms(50); temp<<=1; } temp=0x80; //8个流水灯反向逐个闪动for(i=0;i<8;i++){ P0=~temp; Delayms(50); temp>>=1; } temp=0xfe; //8个流水灯依次全部点亮for(i=0;i<8;i++){ P0=temp; Delayms(50); temp<<=1; } temp=0x7f; //8个流水灯依次反向全部点亮for(i=0;i<8;i++){ P1=temp; Delayms(50); temp>>=1; } } } //此程序的作者向往未来 #include #include #define uint unsigned int #define uchar unsigned char uchar z=50,e=0x00,f=0xff; uchar code table1[]={ 0x80,0xc0,0xe0,0xf0, 0xf8,0xfc,0xfe,0xff}; uchar code table2[]={ 0x7f,0x3f,0x1f,0x0f, 0x07,0x03,0x01,0x00}; uchar code table3[]={ 0x01,0x03,0x07,0x0f, 0x1f,0x3f,0x7f,0xff}; uchar code table4[]={ 0xe7,0xdb,0xbd,0x7e, 0xbd,0xdb,0xe7,0xff}; uchar code table5[]={ 0xe7,0xc3,0x81,0x00, 0x81,0xc3,0xe7,0xff}; uchar code table6[]={ 0x7e,0x3c,0x18,0x00, 0x18,0x3c,0x7e,0xff}; void delay(uchar); void lsd1(); void lsd2(); void lsd3(); void lsd4(); void lsd5(); void lsd6(); void lsd7(); void lsd8(); void lsd9(); void lsd10(); void lsd11(); void lsd12(); main() { while(1) { lsd1(); lsd2(); lsd3(); lsd4(); lsd5(); lsd6(); lsd7(); lsd8(); lsd9(); lsd10(); lsd11(); lsd12(); } } void delay(uchar x) //延时函数 { uint i,j; for(i=x;i>0;i--) for(j=250;j>0;j--); } void lsd1() //lsd1 单个流水灯双程模式1 { uchar a,i,j,k,l,l1,k1,j1,i1; a=0xfe; P0=a; delay(z); for(i=0;i<7;i++) //仅单个灯亮从上往下流{ a=_crol_(a,1); P0=a; delay(z); } P0=0xff; a=0xfe; P2=a; delay(z); for(j=0;j<7;j++) { a=_crol_(a,1); P2=a; delay(z); } P2=0xff; a=0xfe; P3=a; delay(z); for(k=0;k<7;k++) { a=_crol_(a,1); P3=a; delay(z); } P3=0xff; a=0xfe; P1=a; delay(z); for(l=0;l<7;l++) { a=_crol_(a,1); P1=a; delay(z); } a=0xbf; P1=a; delay(z); for(l1=0;l1<6;l1++) //l1==6 仅单个灯亮从下往上流 { a=_cror_(a,1); P1=a; delay(z); } P1=0xff; a=0x7f; P3=a; delay(z); for(k1=0;k1<7;k1++) { a=_cror_(a,1); P3=a; delay(z); } P3=0xff; a=0x7f; P2=a; delay(z); for(j1=0;j1<7;j1++) { a=_cror_(a,1); P2=a; delay(z); } P2=0xff; a=0x7f; P0=a; delay(z); for(i1=0;i1<7;i1++) { a=_cror_(a,1); P0 =a; delay(z); } P0=0xff; } void lsd2() //lsd2 两个灯流水双程 模式1 { uchar a,i,j,k,l,l1,k1,j1,i1; a=0xfe; P0=a; delay(z); a=a<<1; P0=a; delay(z); for(i=0;i<6;i++) { a=_crol_(a,1); P0=a; delay(z); } P0=0x7f; P2=0xfe; delay(z); P0=0xff; a=0xfc; P2=a; delay(z); for(j=0;j<6;j++) { a=_crol_(a,1); P2=a; delay(z); } P2=0x7f; P3=0xfe; delay(z); P2=0xff; a=0xfc; P3=a; delay(z); for(k=0;k<6;k++) { a=_crol_(a,1); P3=a; delay(z); } P3=0x7f; P1=0xfe; delay(z); P3=0xff; a=0xfc; P1=a; delay(z); for(l=0;l<6;l++) { a=_crol_(a,1); P1=a; delay(z); } P1=0x7f; delay(z); P1=0xff; delay(z); a=0x7f; P1=a; delay(z); a=a>>1; P1=a; delay(z); for(l1=0;l1<6;l1++) { a=_cror_(a,1); P1=a; delay(z); } P1=0xfe; P3=0x7f; delay(z); P1=0xff; a=0x3f; P3=a; delay(z); for(k1=0;k1<6;k1++) { a=_cror_(a,1); P3=a; delay(z); } P3=0xfe; P2=0x7f; delay(z); P3=0xff; a=0x3f; P2=a; delay(z); for(j1=0;j1<6;j1++) { a=_cror_(a,1); P2=a; delay(z); } P2=0xfe; P0=0x7f; delay(z); P2=0xff; a=0x3f; P0=a; delay(z); for(i1=0;i1<6;i1++) { a=_cror_(a,1); P0=a; delay(z); } P0=0xfe; delay(z); P0=0xff; delay(z); } void lsd3() //lsd3 两个灯流水双程模式2 { uchar a,i,j,k,l,l1,k1,j1,i1; a=0xfe; P0=a; delay(z); a=a<<1; P0=a; delay(z); for(i=0;i<6;i++) //_crol_与_cror_混合使用 { a=_crol_(a,1); P0=a; delay(z); } P0=0x7f; a=0x7f; P2=a; delay(z); P0=f; a=a>>1; P2=a; delay(z); for(j=0;j<6;j++) { a=_cror_(a,1); P2=a; delay(z); } P2=0xfe; a=0xfe; P3=a; delay(z); P2=f; a=a<<1; P3=a; delay(z); for(k=0;k<6;k++) { a=_crol_(a,1); P3=a; delay(z); } P3=0x7f; a=0x7f; P1=a; delay(z); P3=f; a=a>>1; P1=a; delay(z); for(l=0;l<6;l++) { a=_cror_(a,1); P1=a; delay(z); } P1=0xfe; delay(z); P1=f; delay(z); P1=a; delay(z); a=a<<1; P1=a; delay(z); for(l1=0;l1<6;l1++) //l1==6 { a=_crol_(a,1); P1=a; delay(z); } P1=0x7f; a=0x7f; P3=a; delay(z); P1=f; a=a>>1; P3=a; for(k1=0;k1<6;k1++) { a=_cror_(a,1); delay(z); } P3=0xfe; a=0xfe; P2=a; delay(z); P3=f; a=a<<1; P2=a; delay(z); for(j1=0;j1<6;j1++) { a=_crol_(a,1); P2=a; delay(z); } P2=0x7f; a=0x7f; P0=a; delay(z); P2=f; a=a>>1; P0=a; delay(z); for(i1=0;i1<6;i1++) { a=_cror_(a,1); P0=a; delay(z); } P0=0xfe; delay(z); P0=f; delay(z); } void lsd4() //lsd4 { uchar a,i,j,k,l,l1,k1,j1,i1; a=0xfe; P0=a; delay(z); for(i=0;i<7;i++) { a=a<<1; //单个灯依次点亮所有灯,从上往下 P0=a; delay(z); } a=0xfe; P2=a; delay(z); for(j=0;j <7;j++) { a=a<<1; P2=a; delay(z); } a=0xfe; P3=a; delay(z); for(k=0;k<7;k++) { a=a<<1; P3=a; delay(z); } a=0xfe; P1=a; delay(z); for(l=0;l<7;l++) { a=a<<1; P1=a; delay(z); } for(l1=0;l1<8;l1++) //l1==8 { P1=table1[l1]; //单个灯依次熄灭所有灯,从下往上delay(z); } for(k1=0;k1<8;k1++) { P3=table1[k1]; delay(z); } for(j1=0;j1<8;j1++) { P2=table1[j1]; delay(z); } for(i1=0;i1<8;i1++) { P0=table1[i1]; delay(z); } } void lsd5() //lsd5 { uchar a,i,j,k,l,l1,k1,j1,i1; a=0xfe; P0=a; delay(z); for(i=0;i<7;i++) { a=a<<1; P0=a; delay(z); } for(j=0;j<8;j++) //单个灯依次点亮所有灯,从下往上{ P2=table2[j]; delay(z); } a=0xfe; P3=a; delay(z); for(k=0;k<7;k++) { a=a<<1; P3=a; delay(z); } for(l=0;l<8;l++) { P1=table2[l]; delay(z); } for(l1=0;l1<8;l1++) //单个灯依次熄灭所有灯,从上往下 { P1=table3[l1]; delay(z); } for(k1=0;k1<8;k1++) { P3=table1[k1]; delay(z); } for(j1=0;j1<8;j1++) //单个灯依次熄灭所有灯,从上往下 { P2=table3[j1]; delay(z); } for(i1=0;i1<8;i1++) { P0=table1[i1]; delay(z); } } void lsd6() //每组为单位同亮同灭从左向右再向左 { P0=0x00; delay(z); P0=0xff; P2=0x00; delay(z); P2=0xff; P3=0x00; delay(z); P3=0xff; P1=0x00; delay(z); P3=0x00; P1=0xff; delay(z); P2=0x00; P3=0xff; delay(z); P0=0x00; P2=0xff; delay(z); P0=0xff; delay(z); } void lsd7() //lsd7 全亮全灭{ uchar i; for(i=0;i<2;i++) { P0=0x00; P1=0x00; P2=0x00; P3=0x00; delay(z); P0=0xff; P1=0xff; P2=0xff; P3=0xff; delay(z); } } void lsd8() //每组仅两个灯,从中间往两边再往中间{ uchar i; for(i=0;i<8;i++) { P0=table4[i]; P1=table4[i]; P2=table4[i]; P3=table4[i]; delay(z); } } void lsd9() //每组两个灯引亮所有灯再引灭,从中间带两边再到中间 { uchar i; for(i=0;i<8;i++) { P0=table5[i]; P1=table5[i]; P2=table5[i]; P3=table5[i]; delay(z); } } void lsd10() { uchar a,i,j; a=0xfe; P0=a; P1=a; P2=a; P3=a; delay(z); for(i=0;i<7;i++) //仅单个灯亮从上往下流{ a=_crol_(a,1); P0=a; P1=a; P2=a; P3=a; delay(z); } for(j=0;j<7;j++) //仅单个灯亮从上往下流{ a=_cror_(a,1); P0=a; P1=a; P2=a; P3=a; delay(z); } P0=f; P1=f; P2=f; P3=f; delay(z); } void lsd11() { uchar a,i,j; a=0xfe; P0=a; P1=a; P2=a; delay(z); for(i=0;i<7;i++) { a=a<<1; P0=a; P1=a; P2=a; P3=a; delay(z); } for(j=0;j<8;j++) { P0=ta ble1[j]; P1=table1[j]; P2=table1[j]; P3=table1[j]; delay(z); } void lsd12() { uchar a,i,j,k,l; a=0xfe; P0=a; P1=a; delay(z); for(i=0;i<7;i++) { a=a<<1; P0=a; P1=a; delay(z); } a=0x7f; P2=a; P3=a; delay(z); for(j=0;j<7;j++) { a=a>>1; P2=a; P3=a; delay(z); } for(k=0;k<8;k++) { P2=table3[k]; P3=table3[k]; delay(z); } for(l=0;l<8;l++) { P0=table1[l]; P1=table1[l]; delay(z); } while(1); }
/
本文档为【简单的单片机花样流水灯C语言源代码】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索