通信技術專業畢業設計

void delay(ui z)

{  ui i,j;

for(i=0;i<z;i++)

for(j=0;j<121;j++);

}

void init()//初始化設計

{  tmod=0x11; th0=0x4b;  tl0=0xff;  th1=0x4b; tr0=0;

tl1=0xff;  et1=1; tr1=1; et0=1;  ea=1;

val_index=0;

}

void clr()

{ uc i;

for(i=0;i<8;i++)

num[i]=0;

}

void setup()

{  ok_flag=0xff;

set_index=0;

while (ok_flag)

{  display();

if(key1==0) //按動key1設定值加1

{  delay(5);

if(key1==0)

{  if ((set_index==0)|(set_index==2)|(set_index==4)|(set_index==6))

{  num[set_index]++;

if(num[set_index]==10)

num[set_index]=0;

}

else if((set_index==1)|(set_index==3)|(set_index==5)|(set_index==7))

{  num[set_index]++;

if(num[set_index]==6)

num[set_index]=0;

}

while(!key1) display();

}

}

if(key2==0)  //按動key2設定位置加1 

{  delay(5);

if(key2==0)

{  set_index++;

if(set_index==8)

{  set_index=0;

if((num[4]!=0)||(num[5]!=0)||(num[6]!=0)||(num[7]!=0))

{

num[0]=0;num[1]=0;num[2]=0;num[3]=0;mode=1;

}

else if((num[4]==0)&&(num[5]==0)&&(num[6]==0)&&(num[7]==0))

{  if((num[0]==0)&&(num[1]==0)&&(num[2]==0)&&(num[3]==0))

mode=1;

else if((num[0]!=0)||(num[1]!=0)||(num[2]!=0)||(num[3]!=0))

mode=0;

}

}

while(!key2) display();

}

}

if(key5==0)  //按動key5設定結束 

{  delay(5);

if(key5==0)

{ ok_flag=0x00;

if((num[4]!=0)||(num[5]!=0)||(num[6]!=0)||(num[7]!=0))

{

num[0]=0;num[1]=0;num[2]=0;num[3]=0;mode=1;

}

else if((num[4]==0)&&(num[5]==0)&&(num[6]==0)&&(num[7]==0))

{  if((num[0]==0)&&(num[1]==0)&&(num[2]==0)&&(num[3]==0))

mode=1;

else if((num[0]!=0)||(num[1]!=0)||(num[2]!=0)||(num[3]!=0))

mode=0;

}

//mode=0;

while(!key5) display();

}

}

}

void display()

{  uc i;

if(ok_flag!=0xff)

{  if(timing==0)

{  for(i=0;i<4;i++)

{  p0=0xff;

p2=index[i];

if(i==2)

p0=tab1[num[i]];