|
做了一個(gè)流水燈并第一次打板編程,程序非常簡(jiǎn)單,初學(xué)的朋友可以康康。
流水燈設(shè)計(jì)圖
單片機(jī)源程序如下:
- /*-----------------------------------------------------------------------------
- 2s延時(shí)可視為40次50ms定時(shí)累計(jì)延時(shí)量
- 50毫秒=50000微秒
- 0xFFFF=65535 ,65535-50000=15535 .所以數(shù)50000要從15535+1=15536(0x3CB0)開(kāi)始加才能溢出。
- 所以0x3CB0是定時(shí)器的初值
- ----------------------------------------------------------------------------*/
- #include <reg51.h>
- int a;
- main()
- {
- a=0;
- TMOD=0x01; //定義T0定時(shí)方式1
- TH0=0x3C; //設(shè)置T0初值為0x3CB0
- TL0=0xB0; //設(shè)置T0初值為0x3CB0
- ET0=1; //打開(kāi)T0總中斷
- EA=1; //打開(kāi)總中斷
- TR0=1; //啟動(dòng)T0
- timber0() interrupt 1 //定時(shí)器T0中斷
- {
- a++;
- TH0=0x3C;
- TL0=0xB0;
- }
- P1=0x7F;
- while(a<40);
- a=0;
- P1=0xFF;
- while(a<40);
- a=0;
- P1=0xBF;
- while(a<40);
- a=0;
- P1=0xFF;
- while(a<40);
- a=0;
-
- P1=0xDF;
- while(a<40);
- a=0;
- P1=0xFF;
- while(a<40);
- a=0;
- P1=0xEF;
- while(a<40);
- a=0;
- P1=0xFF;
- while(a<40);
- a=0;
- P1=0xF7;
- while(a<40);
- a=0;
- P1=0xFF;
- while(a<40);
- a=0;
- P1=0xFB;
- while(a<40);
- a=0;
- P1=0xFF;
- while(a<40);
- a=0;
- P1=0xFD;
- while(a<40);
- a=0;
- P1=0xFF;
- while(a<40);
- a=0;
- P1=0xFE;
- while(a<40);
- at=0;
- P1=0xFF;
- while(a<40);
- a=0;
- }
復(fù)制代碼
|
|