#include<reg52.h> #include<intrins.h> //11111 #define uchar unsigned char #define uint unsigned int sbit P32=P2^0; sbit kg=P3^3; uchar i,j,time1,time2; uchar temp; //11111 uint code array1[]={400,400,650,650,650,1200, 400,400,650,650,650,1200, 400,400,650,650,650,650,1200, 400,400,650,650,650,1200 }; uchar code array[]={0xfd,0x79,0xfd,0x79,0xfd,0xc7,0xfd,0x79,0xfe,0x21,0xfe,0x05, 0xfd,0x79,0xfd,0x79,0xfd,0xc7,0xfd,0x79,0xfe,0x51,0xfe,0x21, 0xfd,0x79,0xfd,0x79,0xfe,0xc0,0xfe,0x84,0xfe,0x21,0xfe,0x05,0xfd,0xc7, 0xfe,0x99,0xfe,0x99,0xfe,0x90,0xfe,0x21,0xfe,0x51,0xfe,0x21 };
void delay(uint m) { uint n; for(m;m>0;m--) for(n=125;n>0;n--); } void main() { kg=1; TMOD=0x01; TH0=0; TL0=0; EA=1; ET0=1; TR0=1; while(1) { temp=0xfe; // 11111 P1=temp; // 11111 temp=_crol_(temp,1);// 111 P1=temp; // 1111 if(kg==0) { delay(19); if(kg==0) { P1=0; time1=array[i++]; time2=array[i++]; if(i==50) i=0; delay(array1[j++]); if(j==25) j=0; } while(!kg); } } } void init() interrupt 1 { TR0=0; P32=~P32; TH0=time1; TL0=time2; TR0=1; } |