單片機課程設(shè)計--四路定時控制器_第1頁
已閱讀1頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  《單片機應用與仿真訓練》設(shè)計報告</p><p>  題目 四路定時控制器</p><p>  2014年 1 月 5 日</p><p><b>  摘要</b></p><p>  通過一學期的學習,使我認識到了“微機原理與單片機接口技術(shù)”這門學科的重要性,讓我對微型計算機系統(tǒng)的組成、工作原理及

2、應用有了初步的認識,初步掌握了微型計算機接口的特點及使用方法,并且有了能夠讀懂微型計算機系統(tǒng)原理圖及簡單的硬件接口原理圖和相關(guān)程序的能力,在此基礎(chǔ)上具有了微型計算機應用系統(tǒng)軟、硬件開發(fā)的初步能力,具體就是以8086CPU和51系列單片機為主線,是我們掌握了一定的知識。</p><p>  本設(shè)計方案就是在上學期學習的基礎(chǔ)上,利用單片機來完成一個四路定時控制器設(shè)計,本次設(shè)計就是通過編寫一個程序,輸入單片機中,通過單

3、片機與焊接的四路定時器用導線相連接,進而實現(xiàn)四路單片機的功能,在本次設(shè)計中不僅使我們上學期所學習的知識得以應用,也是我們更加認識到知識對于實踐的重要性,另外就是在設(shè)計過程中,也鍛煉了我們的焊接技術(shù)及元件排布能力,使它們能夠盡可能的美觀實用。本次設(shè)計的四路定時器主要功能就是實現(xiàn)四路定時功能,能通過四路的開關(guān)分別控制四路分別實現(xiàn)進行調(diào)時定時功能, 四路定時控制器,可以更簡單、方便的使用,本系統(tǒng)采用單片機AT89C51為中心器件來設(shè)計四路定時

4、控制器,系統(tǒng)實用性強、操作簡單、擴展性強。</p><p>  關(guān)鍵詞:51單片機 四路定時控制器 控制 </p><p><b>  概述 </b></p><p><b>  1.1 實驗任務(wù)</b></p><p>  本次設(shè)計內(nèi)容主要實現(xiàn)以下功能:</p><

5、;p>  1、主要應用于定時控制四個回路的電源通斷。</p><p>  2、以當前時間為基準,以24小時為周期,可以任意設(shè)定哪個回路于某時刻開,到某時刻關(guān)。如可以設(shè)置第一個回路在8:30-11:30開,14:30-18:00開,其他時間段為關(guān)。</p><p>  3、能通過按鍵任意設(shè)置某回路某時間段的開關(guān)狀態(tài),利用數(shù)碼管顯示要直接明了。</p><p>&

6、lt;b>  1.2 實驗思路</b></p><p>  本次設(shè)計就是以c51單片機為基礎(chǔ),通過單片機控制實現(xiàn)設(shè)置電路、顯示電路等模塊功能,進而實現(xiàn)四路定時器的基本功能,在實驗過程中,主要是要注意程序的編寫,以及四路定時控制器的電路選擇及焊接的正確性,要通過多次調(diào)試進而發(fā)現(xiàn)電路及程序的不足之處,然后實現(xiàn)四路定時控制器的一些基本功能。</p><p>  1.3 實驗基本

7、原理</p><p>  繼電器的基本工作原理:繼電器(是一種電控制器件,是當輸入量(激勵量)的變化達到規(guī)定要求時,在電氣輸出電路中使被控量發(fā)生預定的階躍變化的一種電器。它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路)之間的互動關(guān)系。通常應用于自動化的控制電路中,它實際上是用小電流去控制大電流運作的一種“自動開關(guān)”。故在電路中起著自動調(diào)節(jié)、安全保護等作用。</p><p>  上

8、圖為繼電器工作原理圖</p><p>  本次試驗使用了電磁繼電器,電磁繼電器一般由鐵芯、線圈、銜鐵、觸點簧片等組成的。只要在線圈兩端加上一定的電壓,線圈中就會流過一定的電流,從而生生電磁效應,銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合。當線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點與原來的靜觸點(常閉觸點)釋放。這樣

9、吸合、釋放,從而達到了在電路中的導通、切斷的目的。對于繼電器的“常開、常閉”觸點,可以這樣來區(qū)分:繼電器線圈未通電時處于斷開狀態(tài)的靜觸點,稱為“常開觸點”;處于接通狀態(tài)的靜觸點稱為“常閉觸點”。繼電器一般有兩股電路,為低壓控制電路和高壓工作電路。</p><p>  三極管9012:9012是非常常見的晶體三極管,在收音機以及各種放大電路中經(jīng)??吹剿瑧梅秶軓V,它是PNP型小功率三極管。</p>

10、<p>  3.在本次設(shè)計任務(wù)中第一路用繼電器來完成其功能,在其他三路主要用發(fā)光二極管代替繼電器,通過發(fā)光來判斷是否實現(xiàn)其功能,以及通過開關(guān)來實現(xiàn)各個電路的調(diào)時及實現(xiàn)。</p><p>  系統(tǒng)總體方案及硬件設(shè)計</p><p>  2.1 系統(tǒng)設(shè)計框圖</p><p>  2.2 實驗原理圖</p><p>  2.3 各電路

11、模塊功能</p><p><b>  C51開發(fā)板</b></p><p>  89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS8位微處理器,俗稱單片機。單片機的可擦除只讀存儲器可以反復擦除100次。該器件采用ATMEL高密度非

12、易失存儲器制造技術(shù)制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的89C51是一種高效微控制器,89C2051是它的一種精簡版本。89C單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。</p><p><b>  2.繼電器電路</b></p><p>  繼電器工作原理試只要在線圈兩端加

13、上一定的電壓,線圈中就會流過一定的電流,從而生生電磁效應,銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合。當線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點與原來的靜觸點(常閉觸點)釋放。這樣吸合、釋放,從而達到了在電路中的導通、切斷的目的。對于繼電器的“常開、常閉”觸點,可以這樣來區(qū)分:繼電器線圈未通電時處于斷開狀態(tài)的靜觸點,稱為“常開觸點”;處于

14、接通狀態(tài)的靜點稱為“常閉觸點”。</p><p><b>  3. 顯示電路</b></p><p>  該顯示電路主要是用共陰極7段數(shù)碼管,下面介紹段數(shù)碼管的顯示方法可分為靜態(tài)顯示與動態(tài)顯示:a.靜態(tài)顯示 就是當顯示某一字符時,相應段的發(fā)光二極管恒定地尋能可截止。這種顯示方法為每一們都需要有一個8位輸出口控制。對于51單片機,可以在并行口上擴展多片鎖存74

15、LS573作為靜態(tài)顯示器接口。 </p><p>  b.動態(tài)顯示就是一位一位地輪流點亮各位顯示器(掃描),對于顯示器的每一位而言,每隔一段時間點亮一次。顯示器亮度既與點亮時的導通電流有關(guān),也與點亮時間和間隔時間的比例有關(guān)。調(diào)整電流和時間參烽,可實現(xiàn)亮度較高較穩(wěn)定的顯示。若顯示器的位數(shù)不大于8位,則控制顯示器公共極電位只需一個8位I/O口(稱為掃描口或字位口),控制各位LED顯示器所顯示的字形也需要一個

16、8位口(稱為數(shù)據(jù)口或字形口)。</p><p><b>  按鍵控制器</b></p><p>  按鍵控制器就是有多個開關(guān)組成電路,來控制四路定時器的定時及調(diào)時功能。</p><p><b>  2.4 元器件清單</b></p><p>  AT89C51核心板 繼電器一個

17、</p><p>  三極管9012一個 1K電阻四個</p><p>  2.2K電阻一個 二極管4007</p><p>  發(fā)光二極管四個 按鍵開關(guān)四個</p><p><b>  導線若干</b></p><p><b&g

18、t;  3.軟件設(shè)計</b></p><p>  4.Proteus軟件仿真</p><p><b>  課程設(shè)計體會</b></p><p>  通過此次課程設(shè)計,使我更加扎實的掌握了有關(guān)單片機方面的知識,在設(shè)計過程中雖然遇到了一些問題,但經(jīng)過一次又一次的思考,一遍又一遍的檢查終于找出了原因所在,也暴露出了前期我在這方面的知識欠缺

19、和經(jīng)驗不足。實踐出真知,通過親自動手制作,使我們掌握的知識不再是紙上談兵。最重要的是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的能力,是對學生實際工作能力的具體訓練和考察過程.隨著科學技術(shù)發(fā)展的日新日異,單片機已經(jīng)成為當今計算機應用中空前活躍的領(lǐng)域,在生活中可以說得是無處不在。</p><p>  另外這次課程設(shè)計讓我受益匪淺,無論從知識上還是其他的各個方面。上課的時候的學習從來沒有見

20、過真正的單片機,只是從理論的角度去理解枯燥乏味。但在實習中見過甚至使用了單片機及其系統(tǒng),能夠理論聯(lián)系實際的學習,開闊了眼界,提高了單片機知識的理解和水平。在這次課程設(shè)計中又讓我體會到了合作與團結(jié)的力量,當遇到不會或是設(shè)計不出來的地方,我們討論或者是同學之間相互幫助。團結(jié)就是力量,無論在現(xiàn)在的學習中還是在以后的工作中,團結(jié)都是至關(guān)重要的,有了團結(jié)會有更多的理念、更多的思維、更多的情感。</p><p>  最后此次

21、課程設(shè)計讓我體會到了知識與實踐結(jié)合的重要性,也是我們對單片機有了更大的興趣,同時也認識到了團隊寫作的能力,總之收獲頗深。</p><p><b>  參考文獻</b></p><p>  [1]張毅剛. 單片機原理及應用 [M ].北 京 : 高等教育出版社 ,2004[2]樓然苗. 51系列單片機設(shè)計實例 [M ]. 北京: 北京航空航天大學出版社,2003[

22、3]李華等. MCS - 51系列單片機實用接口技術(shù) [M ]. 北京: 北京航空航天大學出版社 , 1993[4]陳東光. 趙性初.單片微型計算機原理與接口技術(shù)第二版 [M ].武漢:華中科技大學出版社 ,1999</p><p>  [5]劉寶琴.許海根.數(shù)字電路與系統(tǒng)[M].北京:清華大學出版社,1993:12-13. </p><p>  [6]楊素行.模擬電子技術(shù)基

23、礎(chǔ)簡明教程.北京:高等教育出版社,1998:100-105.                               [7]陳克安.集成

24、電路速查大全[M].北京:西安電子科技大學出版社,1995:120-125. </p><p>  [8]趙學泉.張國化.新型電子電路應用指南[M].北京:電子工業(yè)出版社,1995:189-192. </p><p>  [9]余孟嘗.數(shù)子電子技術(shù)基礎(chǔ)簡明教程[M].北京:高等教育社,2005:163-167. </p><p><

25、;b>  附1 源程序代碼</b></p><p>  #include"stc10.h"</p><p>  #define uchar unsigned char </p><p>  #define uint unsigned int </p><p>  sbit D1=P2^0;</p&

26、gt;<p>  sbit D2=P2^1;</p><p>  sbit D3=P2^2;</p><p>  sbit D4=P2^3;</p><p>  sbit P0_5=P0^5;</p><p>  sbit P2_0=P2^0;</p><p>  sbit P2_1=P2^1;</

27、p><p>  sbit P2_2=P2^2;</p><p>  sbit P2_3=P2^3;</p><p>  sbit OUT1=P2^4;</p><p>  sbit OUT2=P2^5;</p><p>  sbit OUT3=P2^6;</p><p>  sbit OUT4=P2

28、^7;</p><p>  sbit K1=P3^6;</p><p>  sbit K2=P3^7;</p><p>  unsigned char DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};</p><p>  uchar time[]={0,

29、0,0,0};</p><p>  uchar flag=0,flag1,flag2=0,num1,baojing=0;</p><p>  char scend,scend=0,,scend1=0,fen=1,fen1,scend2=0,fen=1,fen2,scend3=0,fen=1,fen3,scend4=0,fen=1,fen4,</p><p>  vo

30、id delay(uchar mm)</p><p>  {while(mm--);}</p><p>  void delay2(unsigned int cnt)</p><p><b>  {</b></p><p>  unsigned char i;</p><p>  for(;cnt

31、>0;cnt--)</p><p>  for(i=0;i<250;i++);</p><p><b>  }</b></p><p>  void display()</p><p>  { uchar i ;</p><p>  for(i=0;i<4;i++)</p&

32、gt;<p><b>  {</b></p><p>  P0=~(1<<i);</p><p>  if(flag==0&&flag1==0&&i==3&&(scend%2==0))P1=(DSY_CODE[time[3]]+0x80);</p><p>  else

33、P1=DSY_CODE[time[i]];</p><p>  delay(30);</p><p><b>  P1=0x00;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void ke

34、yscan(void)</p><p>  { P0|=0xe0;</p><p>  P3_6=0;P3_7=1;</p><p>  if(P0_5==0)</p><p><b>  {</b></p><p><b>  delay(3);</b></p>

35、<p>  if(P0_5==0){ flag++; while(!P0_5);}</p><p><b>  }</b></p><p>  if(P2_0==0)</p><p>  {delay(3);</p><p>  if(P0_6==0)</p><p>  { if

36、(flag==1)fen++;</p><p>  if(flag==3)fen1++;</p><p>  while(!P0_6);}</p><p><b>  }</b></p><p><b>  K1=0;K2=1</b></p><p>  if(P2_1==0

37、)</p><p>  {delay(3);</p><p>  if(P2_1==0)</p><p>  { if(flag==1)fen--;</p><p>  if(flag==3)fen1--;</p><p>  if(flag==0)flag2++;</p><p>  whi

38、le(!P0_7);}</p><p><b>  }</b></p><p><b>  P0|=0xef;</b></p><p>  P3_7=0;P3_6=1; //</p><p>  if(P0_5==0)</p><p><b>  {</b

39、></p><p><b>  delay(3);</b></p><p>  if(P0_5==0) {flag1++;while(!P0_5);}</p><p><b>  }</b></p><p><b>  K1=1;K2=0</b></p>&

40、lt;p>  if(P2_1==0)</p><p>  {delay(3);</p><p>  if(P2_1==0)</p><p>  { if(flag==1)fen++;</p><p>  if(flag==2)scend++;</p><p>  if(flag==3)scend1++;</

41、p><p>  while(!P2_1);}</p><p><b>  }</b></p><p>  if(P2_0==0)</p><p>  {delay(3);</p><p>  if(P2_0==0)</p><p>  { if(flag==1)scend--

42、;</p><p>  if(flag==2)scend--;</p><p>  if(flag==3)fen1--;</p><p>  while(!P2_0);}</p><p><b>  } </b></p><p>  if(flag==5)flag=0;</p>&l

43、t;p>  if(flag1==4)flag1=0;</p><p>  if(flag2==2)flag2=0;</p><p>  if(scend==60)scend=0;</p><p>  if(scend<0)scend=59;</p><p>  if(fen==60)fen=0;</p><p&

44、gt;  if(fen<0)fen=11;</p><p>  if(fen1==60)fen1=0;</p><p>  if(fen1<0)fen1=11;</p><p><b>  }</b></p><p><b>  K1=0;K2=1</b></p><

45、p>  if(P2_3==0)</p><p>  {delay(3);</p><p>  if(P2_3==0)</p><p>  { if(flag==1)fen++;</p><p>  if(flag==3)fen2++;</p><p>  while(!P2_2);}</p>&l

46、t;p><b>  }</b></p><p>  if(P2_3==0)</p><p>  {delay(3);</p><p>  if(P2_3==0)</p><p>  { if(flag==1)fen--;</p><p>  if(flag==3)fen2--;</p

47、><p>  if(flag==0)flag2++;</p><p>  while(!P2_2);}</p><p><b>  }</b></p><p><b>  P0|=0xef;</b></p><p>  P3_7=0;P3_6=1; //</p>

48、<p>  if(P0_5==0)</p><p><b>  {</b></p><p><b>  delay(3);</b></p><p>  if(P0_5==0) {flag1++;while(!P0_5);}</p><p><b>  }</b>&l

49、t;/p><p><b>  K1=1;K2=0</b></p><p>  if(P2_1==0)</p><p>  {delay(3);</p><p>  if(P2_1==0)</p><p>  { if(flag==1)fen++;</p><p>  if(fl

50、ag==2)scend++;</p><p>  if(flag==3)scend2++;</p><p>  while(!P2_6);}</p><p><b>  }</b></p><p>  if(P2_3==0)</p><p>  {delay(3);</p><

51、p>  if(P2_3==0)</p><p>  { if(flag==1)scend--;</p><p>  if(flag==2)scend--;</p><p>  if(flag==3)fen2--;</p><p>  while(!P2_3);}</p><p><b>  } <

52、;/b></p><p>  if(flag==5)flag=0;</p><p>  if(flag1==4)flag1=0;</p><p>  if(flag2==2)flag2=0;</p><p>  if(scend==60)scend=0;</p><p>  if(scend<0)scend

53、=59;</p><p>  if(fen==60)fen=0;</p><p>  if(fen<0)fen=59;</p><p>  if(scend2==60)scend2=0;</p><p>  if(scend2<0)scend2=59;</p><p>  if(fen==12)fen=0;

54、</p><p>  if(fen<0)fen=11;</p><p>  if(fen2==12)fen2=0;</p><p>  if(fen2<0)fen2=11;</p><p><b>  } </b></p><p>  if(P2_4==0)</p>&l

55、t;p>  {delay(3);</p><p>  if(P2_4==0)</p><p>  { if(flag==1)fen++;</p><p>  if(flag==3)fen3++;</p><p>  while(!P2_4);}</p><p><b>  }</b><

56、;/p><p><b>  K1=0;K2=1</b></p><p>  if(P2_4==0)</p><p>  {delay(3);</p><p>  if(P2_5==0)</p><p>  { if(flag==1)fen--;</p><p>  if(fl

57、ag==3)fen3--;</p><p>  if(flag==0)flag2++;</p><p>  while(!P2_5);}</p><p><b>  }</b></p><p><b>  P0|=0xef;</b></p><p>  P3_7=0;P3_6

58、=1; //</p><p>  if(P0_5==0)</p><p><b>  {</b></p><p><b>  delay(3);</b></p><p>  if(P0_5==0) {flag1++;while(!P0_5);}</p><p><b

59、>  }</b></p><p><b>  K1=0;K2=1</b></p><p>  if(P2_4==0)</p><p>  {delay(3);</p><p>  if(P2_4==0)</p><p>  { if(flag==1)fen++;</p>

60、;<p>  if(flag==2)scend++;</p><p>  if(flag==3)scend3++;</p><p>  while(!P2_4);}</p><p><b>  }</b></p><p>  if(P2_4==0)</p><p>  {delay(

61、3);</p><p>  if(P2_0==0)</p><p>  { if(flag==1)scend--;</p><p>  if(flag==2)scend--;</p><p>  if(flag==3)fen3--;</p><p>  while(!P2_4);}</p><p&

62、gt;<b>  } </b></p><p>  if(flag==5)flag=0;</p><p>  if(flag1==4)flag1=0;</p><p>  if(flag2==2)flag2=0;</p><p>  if(scend==60)scend=0;</p><p>  

63、if(scend<0)scend=59;</p><p>  if(scend3==60)scend3=0;</p><p>  if(scend3<0)scend3=59;</p><p>  if(fen==60)fen=0;</p><p>  if(fen<0)fen=11;</p><p>

64、  if(fen3==60)fen3=0;</p><p>  if(fen3<0)fen3=11;</p><p><b>  }</b></p><p>  if(P2_6==0)</p><p>  {delay(3);</p><p>  if(P2_6==0)</p>

65、<p>  { if(flag==1)fen++;</p><p>  if(flag==3)fen4++;</p><p>  while(!P2_6);}</p><p><b>  }</b></p><p><b>  K1=0;K2=1</b></p><

66、p>  if(P2_7==0)</p><p>  {delay(3);</p><p>  if(P2_7==0)</p><p>  { if(flag==1)fen--;</p><p>  if(flag==3)fen4--;</p><p>  if(flag==0)flag2++;</p>

67、;<p>  while(!P2_7);}</p><p><b>  }</b></p><p><b>  P0|=0xef;</b></p><p>  P3_7=0;P3_6=1; //</p><p>  if(P0_5==0)</p><p>&

68、lt;b>  {</b></p><p><b>  delay(3);</b></p><p>  if(P0_5==0) {flag1++;while(!P0_5);}</p><p><b>  }</b></p><p><b>  K1=1;K2=0</b

69、></p><p>  if(P0_6==0)</p><p>  {delay(3);</p><p>  if(P0_6==0)</p><p>  { if(flag==1)fen++;</p><p>  if(flag==2)scend++;</p><p>  if(flag=

70、=3)scend4++;</p><p>  while(!P2_6);}</p><p><b>  }</b></p><p>  if(P2_0==0)</p><p>  {delay(3);</p><p>  if(P2_0==0)</p><p>  { i

71、f(flag==1)scend--;</p><p>  if(flag==2)scend--;</p><p>  if(flag==3)fen4--;</p><p>  while(!P2_6);}</p><p><b>  } </b></p><p>  if(flag==5)flag

72、=0;</p><p>  if(flag1==4)flag1=0;</p><p>  if(flag2==2)flag2=0;</p><p>  if(scend==60)scend=0;</p><p>  if(scend<0)scend=59;</p><p>  if(fen==60)fen=0;&

73、lt;/p><p>  if(fen<0)fen=11;</p><p>  if(fen4==12)fen4=0;</p><p>  if(fen4<0)fen4=11;</p><p><b>  }</b></p><p>  void init()</p><

74、p><b>  {</b></p><p>  P1M0=0x00;</p><p>  P1M1=0xff;</p><p>  TMOD=0x22;</p><p>  TH1=TL1=0x06;</p><p>  TH0=TL0=0x06;</p><p> 

75、 TR1=1;TR0=1;</p><p>  ET1=1; ET0=1;</p><p><b>  EA=1;</b></p><p><b>  }</b></p><p>  void main()</p><p><b>  {</b><

76、/p><p><b>  init();</b></p><p><b>  while(1)</b></p><p>  { if(flag==0&&flag1==0)</p><p><b>  {</b></p><p>  time[

77、0]=fen/10;</p><p>  time[1]=fen%10;</p><p>  time[2]=scend/10;</p><p>  time[3]=scend%10;</p><p>  display();D1=D2=D3=D4=1;</p><p><b>  }</b>&l

78、t;/p><p>  while(flag==1&&flag1==0)</p><p><b>  {</b></p><p><b>  TR0=0;</b></p><p>  time[0]=fen/10;</p><p>  time[1]=fen%10;

79、</p><p>  time[2]=scend/10;</p><p>  time[3]=scend%10;</p><p>  display();D1=0; </p><p><b>  } </b></p><p>  while(flag==2&&flag1==0)&l

80、t;/p><p><b>  {</b></p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend/10;</p><p>  time[3]=scend%10;</p><p>  display(

81、); D2=0;D1=1;</p><p><b>  }</b></p><p>  while(flag==3&&flag1==0)</p><p><b>  {</b></p><p>  time[0]=fen1/10;</p><p>  time

82、[1]=fen1%10;</p><p>  time[2]=scend1/10;</p><p>  time[3]=scend1%10;</p><p>  display();D3=0;D2=1;</p><p><b>  }</b></p><p>  while(flag==4&

83、;&flag1==0)</p><p><b>  {</b></p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend1/10;</p><p>  time[3]=scend1%10;</p>

84、<p>  display(); D4=0;D3=1;</p><p><b>  } </b></p><p><b>  TR0=1;</b></p><p>  while(flag1==3&&flag==0)</p><p><b>  { </b&

85、gt;</p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend1/10;</p><p>  time[3]=scend1%10;</p><p>  display(); D3=0;D2=1;</p><p>&l

86、t;b>  }</b></p><p>  while(flag1==2&&flag==0)</p><p><b>  { </b></p><p>  time[0]=fen1/10;</p><p>  time[1]=fen1%10;</p><p>  

87、time[2]=scend1/10;</p><p>  time[3]=scend1%10;</p><p>  display(); D2=0;D1=1;</p><p><b>  }</b></p><p>  while(flag1==1&&flag==0)</p><p&g

88、t;<b>  { </b></p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend/10;</p><p>  time[3]=scend%10;</p><p>  display();D1=0;</p>

89、;<p><b>  }</b></p><p>  if( flag1==1&&flag==1) flag1=flag=0; </p><p>  if(baojing==1){P2=0x00;P3&=0xc3;}</p><p>  else {P2=0xff;P3=0xff;}</p>

90、<p><b>  }</b></p><p><b>  }</b></p><p>  while(flag==3&&flag1==0)</p><p><b>  {</b></p><p>  time[0]=fen2/10;</p>

91、;<p>  time[1]=fen2%10;</p><p>  time[2]=scend2/10;</p><p>  time[3]=scend2%10;</p><p>  display();D3=0;D2=1;</p><p><b>  }</b></p><p> 

92、 while(flag==4&&flag1==0)</p><p><b>  {</b></p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend2/10;</p><p>  time[3]=scen

93、d2%10;</p><p>  display(); D4=0;D3=1;</p><p><b>  } </b></p><p><b>  TR0=1;</b></p><p>  while(flag1==3&&flag==0)</p><p>&l

94、t;b>  { </b></p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend2/10;</p><p>  time[3]=scend2%10;</p><p>  display(); D3=0;D2=1;</

95、p><p><b>  }</b></p><p>  while(flag1==2&&flag==0)</p><p><b>  { </b></p><p>  time[0]=fen2/10;</p><p>  time[1]=fen2%10;</

96、p><p>  time[2]=scend2/10;</p><p>  time[3]=scend2%10;</p><p>  display(); D2=0;D1=1;</p><p><b>  }</b></p><p>  while(flag1==1&&flag==0)&

97、lt;/p><p><b>  { </b></p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend/10;</p><p>  time[3]=scend%10;</p><p>  displa

98、y();D1=0;</p><p><b>  }</b></p><p>  if( flag1==1&&flag==1) flag1=flag=0; </p><p>  if(baojing==1){P2=0x00;P3&=0xc3;}</p><p>  else {P2=0xff;P3=

99、0xff;}</p><p><b>  }</b></p><p>  while(flag==3&&flag1==0)</p><p><b>  {</b></p><p>  time[0]=fen3/10;</p><p>  time[1]=fen

100、3%10;</p><p>  time[2]=scend3/10;</p><p>  time[3]=scend3%10;</p><p>  display();D3=0;D2=1;</p><p><b>  }</b></p><p>  while(flag==4&&f

101、lag1==0)</p><p><b>  {</b></p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend3/10;</p><p>  time[3]=scend3%10;</p><p&g

102、t;  display(); D4=0;D3=1;</p><p><b>  } </b></p><p><b>  TR0=1;</b></p><p>  while(flag1==3&&flag==0)</p><p><b>  { </b><

103、/p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend3/10;</p><p>  time[3]=scend3%10;</p><p>  display(); D3=0;D2=1;</p><p><b>

104、  }</b></p><p>  while(flag1==2&&flag==0)</p><p><b>  { </b></p><p>  time[0]=fen3/10;</p><p>  time[1]=fen3%10;</p><p>  time[2]

105、=scend3/10;</p><p>  time[3]=scend3%10;</p><p>  display(); D2=0;D1=1;</p><p><b>  }</b></p><p>  while(flag1==1&&flag==0)</p><p><b

106、>  { </b></p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend/10;</p><p>  time[3]=scend%10;</p><p>  display();D1=0;</p><

107、p><b>  }</b></p><p>  if( flag1==1&&flag==1) flag1=flag=0; </p><p>  if(baojing==1){P2=0x00;P3&=0xc3;}</p><p>  else {P2=0xff;P3=0xff;}</p><p&g

108、t;<b>  }</b></p><p>  while(flag==3&&flag1==0)</p><p><b>  {</b></p><p>  time[0]=fen4/10;</p><p>  time[1]=fen4%10;</p><p>

109、;  time[2]=scend4/10;</p><p>  time[3]=scend4%10;</p><p>  display();D3=0;D2=1;</p><p><b>  }</b></p><p>  while(flag==4&&flag1==0)</p><p

110、><b>  {</b></p><p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend4/10;</p><p>  time[3]=scend4%10;</p><p>  display(); D4=0;D3=1;

111、</p><p><b>  } </b></p><p><b>  TR0=1;</b></p><p>  while(flag1==3&&flag==0)</p><p><b>  { </b></p><p>  time[0

112、]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend4/10;</p><p>  time[3]=scend4%10;</p><p>  display(); D3=0;D2=1;</p><p><b>  }</b></p>

113、<p>  while(flag1==2&&flag==0)</p><p><b>  { </b></p><p>  time[0]=fen4/10;</p><p>  time[1]=fen4%10;</p><p>  time[2]=scend4/10;</p>&l

114、t;p>  time[3]=scend4%10;</p><p>  display(); D2=0;D1=1;</p><p><b>  }</b></p><p>  while(flag1==1&&flag==0)</p><p><b>  { </b></p&

115、gt;<p>  time[0]=10;</p><p>  time[1]=10;</p><p>  time[2]=scend/10;</p><p>  time[3]=scend%10;</p><p>  display();D1=0;</p><p><b>  }</b&g

116、t;</p><p>  if( flag1==1&&flag==1) flag1=flag=0; </p><p>  if(baojing==1){P2=0x00;P3&=0xc3;}</p><p>  else {P2=0xff;P3=0xff;}</p><p><b>  }</b>&

117、lt;/p><p>  void timer1() interrupt 1</p><p><b>  {</b></p><p>  uchar num;</p><p><b>  num++;</b></p><p>  if(num==100)</p>&l

118、t;p><b>  {</b></p><p><b>  num=0;</b></p><p><b>  num1++;</b></p><p>  if(num1==40)</p><p><b>  {</b></p><

119、p><b>  num1=0;</b></p><p><b>  scend++;</b></p><p>  if(scend==60)</p><p><b>  {</b></p><p><b>  scend=0;</b></p&g

120、t;<p>  fen++; </p><p>  if(scend==60)</p><p>  {scend=0;fen++;if(fen==12)fen=0; </p><p><b>  }</b></p><p><b>  }</b></p>&l

121、t;p><b>  }</b></p><p>  if((fen==fen1)&&(scend==scend1)&&(scend<=(scend1+5)))&&(flag2==0))</p><p>  baojing=1;</p><p>  else {baojing=0;if(

122、scend>(scend1+5))flag2=0;}</p><p>  if((fen==fen2)&&(scend==scend2)&&(scend<=(scend2+5)))&&(flag2==0))</p><p>  baojing=1;</p><p>  else {baojing=0;if(

123、scend>(scend2+5))flag2=0;}</p><p>  if((fen==fen3)&&(scend==scend3)&&(scend<=(scend3+5)))&&(flag2==0))</p><p>  baojing=1;</p><p>  else {baojing=0;if(

124、scend>(scend3+5))flag2=0;}</p><p>  if((fen==fen4)&&(scend==scend4)&&(scend<=(scend4+5)))&&(flag2==0))</p><p>  baojing=1;</p><p>  else {baojing=0;if(

125、scend>(scend4+5))flag2=0;}</p><p><b>  }</b></p><p><b>  }</b></p><p>  void timer2() interrupt 3</p><p><b>  {</b></p>&l

126、t;p><b>  uchar tt;</b></p><p><b>  tt++;</b></p><p>  if(tt==30)</p><p>  {keyscan();}</p><p><b>  }</b></p><p>  附2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論