- #include<reg51.h>
- void main(){
- TMOD = 0x01; //設(shè)置定時(shí)器工作模式
- TH0 =0xB1; //計(jì)時(shí)器高位值
- TL0 =0XE0; //計(jì)時(shí)器低位值
- TR0 = 1; //打開(kāi)計(jì)時(shí)器
-
- while(1){
- unsigned int conter,i,j; //定義變量
- unsigned int bits[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xa7,0xa1,0x86,0x8e};
-
-
- if(1 == TF0){ //tf0值位1時(shí),表示設(shè)定時(shí)間已到,溢出
- TF0 = 0; //TF0 進(jìn)行軟件清零
- TH0 =0xB1; //重新對(duì)計(jì)時(shí)器賦值
- TL0 =0XE0; //重新對(duì)計(jì)時(shí)器賦值
- conter++; //每次定時(shí)到了,計(jì)數(shù)器加1
- }
- if(50 == conter){
- P0 =bits[i]; //左移,滅1亮7
- P1=~(1<<j);
- j++;
- i++; //位移后對(duì)bits值執(zhí)行加1操作
- conter=0;//對(duì)conter值賦0操作
- if(16 ==i){//
- i = 0;
- }
- if(4 == j){
- j = 0;
- }
- }
- }
- }
復(fù)制代碼 |