51单片机实习-数码管动态显示4399(模块化编程)
2022-03-14 来源:eefocus
#include sbit wei0=P1^0; sbit wei1=P1^1; sbit wei2=P1^2; sbit wei3=P1^3; int zxm[]={0x98,0x98,0xb0,0x99}; void delay(int i) { while(i--) { int j=0; for(;j<115;j++); } } void display() { int i; for( i=0;i<4;i++) { switch(i) { case 0: wei0=0,wei1=1,wei2=1,wei3=1;break; case 1: wei0=1,wei1=0,wei2=1,wei3=1;break; case 2: wei0=1,wei1=1,wei2=0,wei3=1;break; case 3: wei0=1,wei1=1,wei2=1,wei3=0;break; } P0=zxm[i]; delay(1); P0=0xFF; } } int main() { while(1) display(); return 0; } 模块化编程 4399.c #include #include'shumaguang.h' int main() { while(1) display(); return 0; } shumaguang.c #include #include'shumaguang.h' sbit wei0=P1^0; sbit wei1=P1^1; sbit wei2=P1^2; sbit wei3=P1^3; int zxm[]={0x98,0x98,0xb0,0x99}; void delay(int i) { while(i--) { int j=0; for(;j<115;j++); } } void display() { int i; for( i=0;i<4;i++) { switch(i) { case 0: wei0=0,wei1=1,wei2=1,wei3=1;break; case 1: wei0=1,wei1=0,wei2=1,wei3=1;break; case 2: wei0=1,wei1=1,wei2=0,wei3=1;break; case 3: wei0=1,wei1=1,wei2=1,wei3=0;break; } P0=zxm[i]; delay(1); P0=0xFF; } } shumaguang.h 变量定义不要放头文件里 #ifndef _SHUMAGUANG_H_ #define _SHUMAGUANG_H_ #include void delay(int i); void display(); #endif
上一篇:51单片机独立键盘原理
下一篇:定时/计数器的原理和应用