1、基于单片机的重要C语言程序供应数码管用 cc数码管数码管显示753void delayms (int ms) int i; for(ms;ms0;ms-) for(i=120;i0;i-); void main() / int led,i; while(1) P1=0xfe; P0=0x4f; delayms(1000); P1=0xfd; P0=0x6d; delayms(100); P1=0xfb; P0=0x07; delayms(100); 显示hello#include AT89x52.h void delayms (int ms) int i; for(ms;ms0;ms-) fo
2、r(i=120;i0;i-); void main() / int led,i; while(1) P1=0xfe; P0=0x3f; delayms(10); P1=0xfd; P0=0x38; delayms(10); P1=0xfb; P0=0x38; delayms(10); P1=0xf7; P0=0x79; delayms(10); P1=0xef; P0=0x76; delayms(10); Xianshiuzi #include AT89x52.hchar code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x7f,0x6f; voi
3、d delayms (int ms) int i; for(ms;ms0;ms-) for(i=120;i0;i-); void shuplay(int shu) P1=0xfe; /1111 1110 P0=tableshu%10; / delayms(5); P1=0xfd; /1111 1101 P0=tableshu%100/10; / delayms(5); P1=0xfb; /1111 0111 P0=tableshu/100; / delayms(5); void main() int led=1000,i; while(1) for(i=20;i0;i-) shuplay(le
4、d); led=led+1; 数码管显示01000 #include AT89x52.h char code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x7f,0x6f; void delayms (int ms) int i; for(ms;ms0;ms-) for(i=120;i0;i-); void shuplay(int shu) P1=0xfe; /1111 1110 P0=tableshu%10; / delayms(5); P1=0xfd; /1111 1101 P0=tableshu%100/10+0*80; / delayms(5)
5、; P1=0xfb; /1111 0111 P0=tableshu/100; / delayms(5); void main() int led,i; while(1) for(i=20;i0;i-) shuplay(led); led=led+1; 数码管数字加文字#include AT89x52.h char code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x7f,0x6f; void delayms (int ms) int i; for(ms;ms0;ms-) for(i=120;i0;i-); void HELLO() P1=0xfe;
6、 P0=0x3f; delayms(100); P1=0xfd; P0=0x38; delayms(100); P1=0xfb; P0=0x38; delayms(100); P1=0xf7; P0=0x79; delayms(100); P1=0xef; P0=0x76; delayms(100); void shuplay(int shu) P1=0xfe; /1111 1110 P0=tableshu%10; / delayms(10); P1=0xfd; /1111 1101 P0=tableshu%100/10+0*80; / delayms(10); P1=0xfb; /1111
7、0111 P0=tableshu/100; / delayms(10); void main() int led,i; while(123) for(i=20;i0;i-) shuplay(led); led=led+1; HELLO(); 按键#includeAT89x52.hsbit keyA =P20 ;sbit keyB =P21 ; void delayms (int ms) int i; for(ms;ms0;ms-) for(i=120;i0;i-); void main() int myKey; while(1) myKey=0; if( keyA =0); delayms (
8、5); if( keyA =0) myKey=1; if( keyB =0); delayms (5); if( keyB =0) myKey=2; P3=myKey; Jian pan#includereg52.h#define uchar unsigned char#define unit unsigned intchar code table19=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f, 0x77,0x7c,0x39,0x5e,0x79, 0x71,0x73,0xc3,0x00;void delay(int ms) int i
9、; for(ms;ms0;ms-) for(i=100;i0;i-);void display(char shu) P1=0xf0; P0=tableshu;uchar key_scan(void) uchar key_code; uchar key_value; uchar row=0; uchar line=0; P2=0x0f; if(P2&0x0f)!=0x0f) delay(10); if(P2&0x0f)!=0x0f) key_code=P2&0x0f; switch(key_code) case 0x0e: row=0;break; case 0x0d: row=1;break;
10、 case 0x0b: row=2;break; case 0x07: row=3;break; default: ; P2=0xf0; key_code=P2&0xf0; switch(key_code) case 0xe0: line=0;break; case 0xd0: line=1;break; case 0xb0: line=2;break; case 0x70: line=3;break; default: ; key_value=row*4+line; while(P2&0x0f)!=0x0f) return(key_value); return(key_value); voi
11、d main(void) int mykey; while(1) mykey=key_scan(); display(mykey); Timer#include AT89x52.h int miao; void delayms (int ms) int i; for(ms;ms0;ms-) for(i=120;i0;i-); void main() TMOD=0x01; ET0=1; TH0=(65535-46083)/256; TL0=(65535-46083)%256; TR0=1; EA=1; while (1) P3=miao; void timer0() interrupt 1int
12、 count;count+;if(count=20)count=0;miao+;TH0=19452/256;TL0=19452%256;独立键盘#include AT89x52.hsbit KeyA=P24;sbit KeyB=P25;sbit KeyC=P26;char code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f;void delayms(int ms) int i; for(ms;ms0;ms-) for(i=120;i0;i-);void shuplay(int shu) P1=0xfe; P0=tables
13、hu%10; delayms(4); P1=0xfd; P0=tableshu/10; delayms(4);char Keyscan() char key; if(KeyA=0) delayms(5); if(KeyA=0) key=1; if(KeyB=0) delayms(5); if(KeyB=0) key=2; if(KeyC=0) delayms(5); if(KeyC=0) key=3; return key; void main() int mykey; while(2) mykey=Keyscan(); shuplay(mykey); 用数码管控制灯#include AT89
14、x52.h char code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x7f,0x6f; int miao=100; void delayms (int ms) int i; for(ms;ms0;ms-) for(i=120;i0;i-); void timeplay(int miao) P1=0xfe; /1111 1110 P0=tablemiao%10; / delayms(10); P1=0xfd; /1111 1101 P0=tablemiao/10%10; / delayms(10); P1=0xfb; /1111 0111 P0=
15、tablemiao/100; / delayms(10); void main() TMOD=0x01; ET0=1; TH0=(65535-46083)/256; TL0=(65535-46083)%256; TR0=1; EA=1; while (1) P3=miao; timeplay(miao); if(miao=80) P3=0xff; delayms(100); P3=0x00; delayms(100); void timer0() interrupt 1int count;count+;if(count=20)count=0;miao+;TH0=19452/256;TL0=19
16、452%256;小车#includeAT89x52.hsbit IN1=P30;sbit IN2=P31;sbit IN3=P32;sbit IN4=P33;sbit ENA=P34;sbit ENB=P35; void delayms (int ms) int i; for(ms;ms0;ms-) for(i=150;i0;i-);void carleft() IN1=1; IN2=0;IN3=1; IN4=0;ENA=1; ENB=1;void caright() IN1=0; IN2=1;IN3=0; IN4=1;ENA=1; ENB=1;void carforward() IN1=1; IN2=0;IN3=1; IN4=0;ENA=1; ENB=1;void main() while (1) carleft(); delayms(500); caright(); delayms(1000); carforward(); delayms(1000);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1