通信技術專業畢業設計

{  p2=index[3];

p0=tab[10];

delay(2);//修改此參數可修改刷新頻率 

p0=0xff;

}

else

{  p2=index[i-4];

if(i==6)

p0=tab1[num[i]];

else

p0=tab[num[i]];

delay(2);//修改此參數可修改刷新頻率 

p0=0xff;

}

}

}

}

else

{  if(set_index<4)

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

{  p2=index[i];

if(i==2)

p0=tab1[num[i]];

else

p0=tab[num[i]];

delay(2);//修改此參數可修改刷新頻率 

p0=0xff;

}

}

else

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

{  p2=index[i-4];

if(i==6)

p0=tab1[num[i]];

else

p0=tab[num[i]];

delay(2);//修改此參數可修改刷新頻率 

p0=0xff;

}

}

}

}

}

void alarm()

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

{timing=0;}

else

{

if((num[4]==num[0])&&(num[6]==num[2])&&(num[5]==num[1])&&(num[7]==num[3]))

{timing=1;tr0=0;}

}

}

void main()//主函式

{  uc h,g,k;

init();

clr();

while(1)

{  display(); //刷屏顯示數碼管 

alarm();

if(key1==0) //開始/暫停按鈕

{  delay(5);

if(key1==0)

{  tr0=~tr0;

while(!key1) display();

}

}

if(key2==0)  //記錄按鈕

{  delay(5);

if(key2==0)

{  if(tr0==1)//當在運行中按下記錄鍵則存儲記錄

{  for(g=1;g<10;g++)

{

for(k=0;k<4;k++)

{val[g-1][k]=val[g][k];}

}

for(h=0;h<4;h++)

{ val[9][h]=num[h];//將當前時間存儲 }

}else//在停止狀態下按下記錄鍵查看記錄,按動一次序列遞減一次,即查看上一次記錄 

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

num[h]=val[val_index][h];//將當前時間存儲

val_index--;

if(val_index<0)

val_index=9;

}

while(!key2) display();

}

}

if(key3==0) //復位按鈕

{  delay(5);

if(key3==0)

{  clr();  while(!key3) display();}