單片機秒表系統(tǒng)設計課程設計--基于8051的單片機秒表系統(tǒng)設計_第1頁
已閱讀1頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  單片機課程設計</b></p><p>  題目名稱:基于8051的單片機秒表系統(tǒng)設計</p><p><b>  單片機秒表系統(tǒng)設計</b></p><p>  摘要:本實驗是基于8051 單片機所設計的,利用單片機的定時器/計數(shù)器定時和記數(shù)的原理可以實現(xiàn)秒表的計數(shù)以及計數(shù)的開啟/暫停/繼續(xù)

2、與復位。使用LED數(shù)碼七段數(shù)碼管予以顯示。</p><p>  關鍵詞:8051 七段數(shù)碼管 秒表系統(tǒng)</p><p><b>  1.1 目的:</b></p><p>  1、利用單片機定時器/計數(shù)器中斷設計秒表,從而實現(xiàn)秒、十分之一秒的計時。</p><p>  2、綜合運用所學的《單片機原理與應用》理論知識,通

3、過實踐加強對所學知識的理解,具備設計單片機應用系統(tǒng)的能力。3、 通過本次系統(tǒng)設計加深對單片機掌握定時器、外部中斷的設置和編程原理的全面認識復習和掌握,對單片機實際的應用作進一步的了解。4、 通過本次系統(tǒng)設計,增強自己的動手能力。認識單片機在日常生活中的應用的廣泛性,實用性。1.2用途與功能:</p><p>  本系統(tǒng)利用單片機的定時器/計數(shù)器定時和記數(shù)的原理,通過采用protel仿真軟件來模擬實現(xiàn)。模擬利

4、用8051單片機、LED數(shù)碼管以及控件來控制秒表的計數(shù)以及計數(shù)的開啟/暫停/繼續(xù)與復位!其中有兩個數(shù)碼管用來顯示數(shù)據(jù),一個數(shù)碼管顯示秒(兩位),另一個數(shù)碼管顯示十分之一秒,十分之一秒的數(shù)碼管計數(shù)從0~9,滿十進一后顯示秒的數(shù)碼管的數(shù)字加一,并且十分之一秒顯示清零重新從零計數(shù)。計秒數(shù)碼管采用兩位的數(shù)碼管,當計數(shù)超過范圍是所有數(shù)碼管全部清零重新計數(shù)。</p><p><b>  二、硬件設計</b&g

5、t;</p><p>  2.1 硬件設計思想</p><p>  8051單片機芯片一個、LED數(shù)碼顯示管三個,低壓電源、開關(按鈕)兩個、電阻、電容及導線若干。芯片介紹:8051是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器,8位微處理器,俗稱單片機。</p><p>  主要特性: ·4K字節(jié)可編程閃爍存儲器 ·壽命:1000寫/擦循環(huán)&

6、#183;數(shù)據(jù)保留時間:10年·全靜態(tài)工作:0Hz-24Hz·三級程序存儲器鎖定·128*8位內(nèi)部RAM·4*8可編程I/O線·兩個16位定時器/計數(shù)器·5個中斷源 ·可編程串行通道·低功耗的閑置和掉電模式·片內(nèi)振蕩器和時鐘電路 </p><p>  由于條件限制本系統(tǒng)采用軟件模擬硬件系統(tǒng),采用proteu

7、s軟件進行模擬設計及調(diào)試工作。</p><p>  圖1 七段數(shù)碼管引腳圖</p><p>  圖2  8051單片機外部引腳圖</p><p>  三、試驗設計原理圖 </p><p>  通過protel仿真畫的原理圖</p><p>  圖3 系統(tǒng)設計電路圖</p><

8、p><b>  四、軟件設計分析</b></p><p><b>  程序流程圖:</b></p><p><b>  實驗程序:</b></p><p>  #include <reg51.H></p><p>  {sbit sta_end=P3^4;&l

9、t;/p><p>  sbit reset=P3^7;</p><p>  unsigned char code table0[]={0x3f,0x06,0x5b,0x4f,0x66, </p><p>  0x6d,0x7d,0x07,0x7f,0x6f};</p><p>  unsigned char code table1[]={0xc0

10、,0xf9,0xa4,0xb0,0x99,</p><p>  0x92,0x82,0xf8,0x80,0x90};</p><p>  /*聲明second10用于計數(shù)十分之一秒變化,second1用于記錄秒的個*/ /*位,second2用于記錄秒的十位*/</p><p>  unsigned int second10,second1,second

11、2;</p><p>  bit bdata flag;</p><p>  /*以下是設置延時功能的函數(shù)*/</p><p>  void delay() </p><p>  { unsigned char i,j;</p><p>  for(i=90;i>0;i--

12、)</p><p>  for(j=200;j>0;j--);</p><p><b>  }</b></p><p><b>  }</b></p><p>  /*以下是設置時間的函數(shù)*/</p><p>  void setTime() </p>

13、<p>  { </p><p>  second10++;</p><p>  if(second10==10) /*當十分之一秒計數(shù)到十后從零重新計時*/</p><p><b>  {</b></p><p>  second10=0;

14、 /*同時秒計時個位加一*/</p><p>  second1++;</p><p>  if(second1==10) /*當秒計數(shù)個位到十后從零重新計時*/</p><p><b>  {</b></p><p>  second1=0;</p>

15、<p>  second2++; /*同時秒計時十位加一*/</p><p>  if(second2==6)</p><p>  second2=0;</p><p><b>  }</b></p><p><b>  }</b></p><

16、p><b>  }</b></p><p>  /*以下是向LED管輸數(shù)據(jù)并使之顯示的函數(shù)*/</p><p>  void dispact() </p><p><b>  {</b></p><p>  P3=0x

17、fe; </p><p>  P0=table1[second1]; </p><p><b>  delay();</b></p><p><b>  P3=0xfd;</b></p><p>  P0=table1[second2];</

18、p><p><b>  delay();</b></p><p>  P2=table0[second10];</p><p><b>  }</b></p><p>  /*以下是設置時間函數(shù)和輸數(shù)據(jù)函數(shù)被此函數(shù)調(diào)用實現(xiàn),利用定時器中斷*/</p><p>  /*十分之一秒

19、刷新一次,實現(xiàn)十分之一秒進一*/</p><p>  Timer0 () interrupt 1 using 1 </p><p><b>  {</b></p><p>  TH0 = (65535 - 50000)/256;</p><p>  TL0 = (65535 - 50000)%256;<

20、;/p><p><b>  if(flag)</b></p><p>  setTime();</p><p>  dispact();</p><p><b>  }</b></p><p>  void main(void) </p&

21、gt;<p><b>  {</b></p><p>  TMOD = 0x01;</p><p>  TH0 = (65535 - 50000)/256; /*定時器賦初值*/</p><p>  TL0 = (65535 - 50000)%256;</p><p><b>

22、  flag = 0;</b></p><p>  EA = 1; /*cpu開中斷*/</p><p>  TR0 = 1; /*利用定時器0*/</p><p>  ET0 = 1; /*外部中

23、斷允許*/</p><p><b>  do</b></p><p><b>  {</b></p><p>  if(!sta_end)</p><p><b>  {</b></p><p>  if(flag == 0)</p>&l

24、t;p><b>  flag = 1;</b></p><p>  else flag = 0; </p><p><b>  }</b></p><p>  if(!reset) /*復位設置,全部清零*/</p><p><b&g

25、t;  {</b></p><p><b>  flag = 0;</b></p><p>  second10 = 0;</p><p>  second1 = 0;</p><p>  second2 = 0;</p><p><b>  }</b></

26、p><p>  }while(1);</p><p><b>  }</b></p><p><b>  五、系統(tǒng)調(diào)試</b></p><p>  利用8051單片機設計一個1/10秒表,最大能顯示99.9秒,具有置位,復位,啟停等功能。用C語言編程,數(shù)碼管顯示!</p><p>

27、;  1、確立總體設計方案;</p><p>  2、系統(tǒng)整體框圖設計;</p><p>  3、各個單元電路設計與分析;</p><p>  4、應用軟件設計與調(diào)試;</p><p>  5、系統(tǒng)仿真與調(diào)試;</p><p>  6、分析結果,得出結論以及展望。</p><p><b&g

28、t;  六、系統(tǒng)設計總結</b></p><p>  通過這次的秒表設計,我對一些專業(yè)知識和電子設計有了更深的了解,同時也嘗試著去應用自己的所掌握的知識。本次設計主要是對已學習的模擬電子技術、數(shù)字電子技術和單片機的綜合應用,同時加上電路等知識,設計完成了利用軟件模擬的秒表。經(jīng)過幾天的奮戰(zhàn),我感受很深。 </p>&

29、lt;p>  在設計過程中深感自己在培養(yǎng)動手能力這方面還需很大的努力。單片機課程設計不僅給我提供了一個很好的展現(xiàn)應用自己所掌握的知識的平臺,又是檢驗自己所學知識的一次考核。在設計的過程中我也不可避免的遇到了很多的問題。但是我們通過努力解決并獲得經(jīng)驗獲得知識。</p><p>  這一簡單設計可以進一步擴展為1/100秒的秒表系統(tǒng)。也可以運用8255芯片進行擴展。</p><p>&l

溫馨提示

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

評論

0/150

提交評論