【正文】
/*開關(guān) K0 接 P3^7 管腳 */ sbit K1=P3^6。/*開關(guān) K2 接 P3^5 管腳 */ sbit K3=P3^4。/*開關(guān) K4 接 P3^3 管腳 */ sbit K5=P3^2。/*開關(guān) K6 接 P3^1 管腳 */ sbit K7=P3^0。/*開關(guān) K8 接 P2^0 管腳 */ /*程序初始化 */ void init(void) { /*12MHz */ TMOD=0x51。 //計數(shù)清零 TL1=0。 /*0x3C*/ 鄭州航空工業(yè)管理學(xué)院畢業(yè)設(shè)計(論文) 28 TL0=(6553650000)%256。/*外部中斷 0 為邊沿觸發(fā)方式 */ ET0=1。/*允許 T1 中斷 */ TR0=1。/*啟動計數(shù)器 */ EA=1。/*允許外部中斷 0 中斷,即允許響應(yīng)端口 P3^2 中斷 */ EX1=1。 LSN=n。/*延時,把抖動的時間拋掉 */ if(K8==0) { while(!K8)/*當(dāng)松開 K1 開關(guān)時,跳出空循環(huán), 執(zhí)行后面的程序 */ { light()。 } m++。 } } } /*計算下 次交通燈亮的時間 */ void count1() { if(k==6) { if(SN1==SN_G) { if(LSN15) 鄭州航空工業(yè)管理學(xué)院畢業(yè)設(shè)計(論文) 29 { SN1=SN_G。 } else SN1=SN_G+10,WE1=SN_G+25。 else SN1=SN_G+10,WE1=SN_G+20。 SN2=WE_G+15。 } else if(WE2==WE_G+10) { if(LWE25) WE2=WE_G,SN2=WE_G+15。 } } } /*中斷 0 時間設(shè)定處理程序 */ void int0(void) interrupt 0 { EA=0。//東西南北方向均紅燈亮, P0 口輸出 0 for(。 P0=a[(SN_G)/10]。 wela=1。 //南北方向數(shù)碼管顯示可通行時間的十位 wela=0。 /*延時 */ dula=1。 dula=0。 P0=0x02。 delay(1000)。 P0=a[(WE_G)/10]。 wela=1。 //東西方向數(shù)碼管顯示可通行時間的十位 wela=0。 /*延時 */ dula=1。 dula=0。 P0=0x20。 delay(1000)。/*延時,把抖動的時間拋掉 */ if(K0==0) { while(!K0)/*當(dāng)松開 K0 開關(guān)時,跳出空循環(huán),執(zhí)行后面的程序 */ { } SN_G++。/*由于使用的是兩位數(shù)碼管,當(dāng)南北方向 鄭州航空工業(yè)管理學(xué)院畢業(yè)設(shè)計(論文) 31 綠燈時間加到 100 后清零 */ } } /*設(shè)置東西方向通行時間 */ if(K1==0) /*P3^6=0*/ { delay(10)。/*東西方向綠燈時間 +1*/ if(WE_G==100) WE_G=0。/*延時,把抖動的時間拋掉 */ if(K7==0) { while(!K7)//當(dāng)松開 K7 開關(guān)時,跳出循環(huán),執(zhí)行后面的程序 { } count=0。//南北方向通車,東西方向不通車 SN1=SN_G,WE1=SN_G+Y+10。 light()。 /*調(diào)用數(shù)碼管函數(shù) */ EA=1。/*跳出 */ } } } } /*中斷 1 緊急情況處理程序 */ void int1(void) interrupt 2 { P1=0xF6,P0=a[0]。/*CPU 禁止響應(yīng)一切中斷 */ TR0=!TR0。)/*無條件循環(huán) */ { /*數(shù)碼管掃描程序, */ wela=1。 //南北方向數(shù)碼管顯示可通行時間的十位 wela=0。 /*延時 */ wela=1。 /*南北方向數(shù)碼管顯示可通行時間的個位 */ wela=0。 /*延時 */ wela=1。 //東西方向數(shù)碼管顯示可通行時間的十位 wela=0。 /*延時 */ wela=1。 //東西方向數(shù)碼管顯示可通行時間的個位 wela=0。 /*延時 */ /*返回 */ if(K7==0) /*P3^7=0*/ { delay(10)。 led()。/*CPU 開放總中斷 */ TR0=!TR0。/*跳出 */ } } } } 鄭州航空工業(yè)管理學(xué)院畢業(yè)設(shè)計(論文) 33 /*東西南北交通燈選亮鍵盤程序 */ void key() { /*南北有車而東西無車 */ if(K0==0) /*K0=0*/ { delay(10)。/*調(diào)用交通燈函數(shù) */ led()。/*清零 */ k=0。/*南北方向顯示時間為南北方向綠燈通行時間,東西方向顯示時間為南北方向綠燈通行時間加黃燈閃亮?xí)r間 */ light()。 /*調(diào)用數(shù)碼管函數(shù) */ } } /*南北無車而東西有車 */ if(K1==0) /*K1=0*/ { delay(10)。/*調(diào)用交通燈函數(shù) */ led()。/*清零 */ k=3。/*南北方向顯示時間為東西方向綠燈通行時間 加黃燈閃亮?xí)r間,東西方向顯示時間為東西方向綠燈通行時間 */ light()。 /*調(diào)用數(shù)碼管函數(shù) */ } } } /*中斷,定時函數(shù) */ void time1(void) interrupt 1 鄭州航空工業(yè)管理學(xué)院畢業(yè)設(shè)計(論文) 34 { TH0=0x3c。/*計 50000 個數(shù),用時 50ms*/ count++。/*自 減運算 */ WE。/*清零 */ if(SN==0||WE==0)/*當(dāng) SN=0 或者 WE=0 時,執(zhí)行程序 */ { k++。 count2()。/*清零 */ switch(k)/*switch 語句 */ { case 0:SN=SN1,WE=WE1,TH1=0,TL1=0。/*南北方向顯示時間為南北方向綠燈通行時間,東西方向顯示時間為南北方向綠燈通行時間加黃燈閃亮?xí)r間 */ case 1:SN=Y,WE=Y+10。 /*東西南北方向顯示時間均為黃燈閃亮?xí)r間 */ case 2:SN=10,WE=10。/*南北左行 */ case 3:SN=SN2,WE=WE2,LWE=0,m=0。/*南北方向顯示時間為東西方向綠燈通行時間加黃燈閃亮?xí)r間,東西方 向顯示時間為東西方向綠燈通行時間 */ case 4:SN=Y+10,WE=Y。 /*東西南北方向顯示時間均為黃燈閃亮?xí)r間*/ case 5:SN=10,WE=10。/*東西左行 */ } } } } /*延時 t 毫秒時間 */ void delay(uchar t) { uchar i。t0。i0。 } /*交通燈閃爍函數(shù) */ void light() { 鄭州航空工業(yè)管理學(xué)院畢業(yè)設(shè)計(論文) 35 P1=c[k]。amp。/*南北方向黃燈熄滅,東西方向亮紅燈 */ } else if(P1==c[4]amp。count==0)/*當(dāng)東西方向亮黃燈且 count=0 時,執(zhí)行程序 */ { P1=0x7E。 P0=a[SN/10]。 wela=1。 /*顯示南北方向十位 */ wela=0。 /*延時 */ dula=1。 dula=0。 P0=0x02。 delay(1000)。 P0=a[WE/10]。 wela=1。 /*顯示東西方向十位 */ wela=0。 /*延時 */ dula=1。 dula=0。 P0=0x20。 鄭州航空工業(yè)管理學(xué)院畢業(yè)設(shè)計(論文) 36 delay(1000)。/*調(diào)用程序初始化函數(shù) */ for(。 flow2()。/*調(diào)用鍵盤程序 */ light()。 /*調(diào)用數(shù)碼管函數(shù) */ } } g an employment tribunal claim Employment tribunals sort out disagreements between employers and employees. You may need to make a claim to an employment tribunal if: ? you don39。t appealed against the disciplinary action your employer has taken against you. However, if you win your case, the tribunal may reduce any pensation awarded to you as a result of your failure to appeal. Remember that in most cases you must make an application to an employment tribunal within three months of the date when the event you are plaining about happened. If your application is received after this time limit, the tribunal will not usually accept it. If you are worried about how the time limits apply to you, take advice from one of the anisations listed under Further help. Employment tribunals are less formal than some other courts, but it is still a legal process and you will need to give evidence under an oath or affirmation. Most people find making a claim to an employment tribunal challenging. If you are thinking about making a claim to an employment tribunal, you should get help straight away from one of the anisations listed under Further help. If you are being represented by a solicitor at the tribunal, they may ask you to sign an agreement where you pay their fee out of your pensation if you win the case. This is known as a damagesbased agreement. In England and Wales, your solicitor can39