單片機課程設計--led數(shù)字顯示電子時鐘_第1頁
已閱讀1頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  《單片機原理及應用》</p><p><b>  課程設計報告</b></p><p>  專 業(yè): 通信工程 </p><p>  班 級: </p><p>  姓 名:

2、 </p><p>  指導教師: </p><p>  2012年 6 月 3 日</p><p><b>  目 錄</b></p><p>  摘要········

3、;····································

4、83;···2</p><p>  關鍵詞····························

5、3;·················2</p><p>  一、設計題目:··············&

6、#183;························2</p><p>  二、設計目的 ······

7、3;································2</p><p>  三、

8、設計要求 ····································

9、;···2</p><p>  四、方案設計與論證····························

10、······2</p><p>  五、軟件設計與流程圖·························

11、·······4</p><p>  六、總原理電路及元器件清單·······················

12、83;··6</p><p>  七、安裝與調試·····························

13、·········7</p><p>  八、性能測試······················

14、3;·················7</p><p>  九、結論與心得··············&

15、#183;·······················8</p><p>  十、參考文獻········

16、;································8</p><p>  附錄&

17、#183;····································

18、;···········8</p><p>  摘要:本報告基于單片機原理技術介紹了一款于AT89C52芯片作為核心控制器的單片機數(shù)字電子鐘的設計與制作,包括硬件電路原理的實現(xiàn)方案設計、軟件程序編輯的實現(xiàn)、數(shù)字電子鐘正常工作的流程、原理圖仿真實現(xiàn)、硬件實物的安裝制作與硬件實物的調試過程。該單片機數(shù)字電子鐘

19、采用LED 數(shù)碼管能夠準確顯示時間(顯示格式為:時,分,秒),可隨時進行時間調整,時間采用24 小時制顯示。</p><p>  關鍵詞:單片機 ;數(shù)字電子鐘 ;數(shù)碼管 ;AT89S51</p><p><b>  一、設計題目:</b></p><p>  LED數(shù)字顯示電子時鐘</p><p

20、><b>  二、設計目的 </b></p><p>  1、鞏固和加深對單片機原理知識的理解和運用。 </p><p>  2、進一步提高綜合運用所學知識的能力。 </p><p>  3、培養(yǎng)綜合分析問題、發(fā)現(xiàn)問題和解決問題的能力。</p><p><b>  三、設計要求 </b><

21、;/p><p>  1、方案論證,確定總體電路原理圖。 </p><p>  2、元器件選擇,設計PCB圖(或用萬能電路實驗板搭線)。</p><p>  3、繪制程序流程圖,編寫C語言源程序。</p><p>  4、安裝調試,實現(xiàn)數(shù)字時鐘的基本功能,即能正確顯示時、分、秒;可調整時間;秒閃功能。 </p><p>&l

22、t;b>  四、方案設計與論證</b></p><p>  圖1 系統(tǒng)整體框圖</p><p>  整個系統(tǒng)用單片機作為中央控制器,由單片機執(zhí)行采集芯片內部時鐘信號,時鐘信號通過單片機I/O口傳給單片機,單片機模塊控制驅動模塊驅動顯示模塊,通過顯示模塊來實現(xiàn)信號的輸出、LED的顯示及相關的控制功能。系統(tǒng)設有按鍵模塊用于對時間進行調整及擴展多個小鍵盤。 </p>

23、;<p>  1、單片機芯片選擇方案</p><p>  方案一:AT89S51是一個低功耗,高性能CMOS 8位單片機,片內含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器。主要性能有:與MCS-51單片機產品兼容、全靜態(tài)操作:0Hz~33Hz、 三級加密程序存儲器、32個可編程I/O口線、三個16位定時器/計數(shù)器、八個中斷

24、源、全雙工UART串行通道、雙數(shù)據(jù)指針、掉電標識符、易編程。</p><p>  方案二:AT89C52是一個低電壓,高性能CMOS 8位單片機,片內含8k bytes的可反復擦寫的Flash只讀程序存儲器和256 bytes的隨機存取數(shù)據(jù)存儲器(RAM)。主要性能有:兼容MCS51指令系統(tǒng)、32個雙向I/O口、256x8bit內部RAM、3個16位可編程定時/計數(shù)器中斷、時鐘頻率0-24MHz、2個串行中斷、可

25、編程UART串行通道、2個外部中斷源、6個中斷源、2個讀寫中斷口線、3級加密位、低功耗空閑和掉電模式、軟件設置睡眠和喚醒功能。</p><p>  從單片機芯片主要性能角度出發(fā),本數(shù)字電子鐘單片機芯片選擇設計采用方案一。</p><p>  2、數(shù)碼管顯示選擇方案</p><p>  方案一:靜態(tài)顯示。靜態(tài)顯示,即當顯示器顯示某一字符時,相應的發(fā)光二極管恒定導通或截

26、止。該方式每一位都需要一個8 位輸出口控制。靜態(tài)顯示時較小電流能獲得較高的亮度,且字符不閃爍。但因當所需顯示的位數(shù)較多時,靜態(tài)顯示所需的I/O口數(shù)較大,造成資源的浪費。</p><p>  方案二:動態(tài)顯示。動態(tài)顯示,即各位數(shù)碼管輪流點亮,對于顯示器各位數(shù)碼管,每隔一段延時時間循環(huán)點亮一次。利用人的視覺暫留功能可以看到整個顯示,但須保證掃描速度足夠快,人的視覺暫留功能才可察覺不到字符閃爍。顯示器的亮度與導通電流、

27、點亮時間及間隔時間的比例有關。調整參數(shù)可以實現(xiàn)較高穩(wěn)定度的顯示。動態(tài)顯示節(jié)省了I/O口,降低了能耗。</p><p>  從節(jié)省單片機芯片I/O口和降低能耗角度出發(fā),本數(shù)字電子鐘數(shù)碼管顯示選擇設計采用方案二。</p><p>  3、數(shù)碼管驅動選擇方案</p><p>  方案一:上拉電阻驅動方式。數(shù)碼管段碼與接有上拉電阻的單片機芯片I/O口相連,通過編程,單片機芯

28、片即控制段碼電平的高低。該方式經費低,但實物制作較復雜。</p><p>  方案二:7407芯片驅動方式。數(shù)碼管段碼與7407芯片B口相連,7407芯片A口與單片機芯片I/O口,通過編程,單片機芯片即可控制段碼電平的高低。該方式實物制作簡單,增強驅動數(shù)碼管段碼能力。</p><p>  從實物制作簡易程度與驅動數(shù)碼管段碼能力角度出發(fā),本數(shù)字電子鐘數(shù)碼管驅動選擇設計采用方案二。</p

29、><p>  五、軟件設計與流程圖</p><p>  1、數(shù)字電子時鐘主程序流程圖</p><p>  2、中斷服務程序流程圖</p><p>  六、總原理電路及元器件清單</p><p><b>  1、原理電路圖</b></p><p><b>  2、元器件

30、清單</b></p><p><b>  七、安裝與調試</b></p><p><b>  1、電路安裝</b></p><p>  安照電路原理圖把元器件安裝到已打好的銅板對應的位置,把個元器件固定在銅板后,用導線把對應的元器件的引腳相連接,再用焊錫焊接好即可。</p><p>  

31、注意事項:(1)元器件的布局應盡量集中,且各個元器件間引腳的連線應盡量短、不彎曲,跳線盡量少。(2)各個元器件引腳的焊接不要虛焊。</p><p><b>  2、電路調試</b></p><p>  把相應編譯好的目標程序代碼加載到單片機芯片AT89S51,可接上5V電壓源即開始進行硬件電路的調試工作。如果顯示結果不符合設計要求,即檢查電路各連接點是否正確連接,再次

32、進行硬件電路的調試工作,或是檢查代碼程序是否符合硬件電路的設計,若有錯即進行相應的修改,編譯后,再進行硬件電路的調試工作。如此反復操作,直到調試出正確結果。</p><p><b>  3、軟件調試</b></p><p> ?。?) 在計算機上運行程序調試軟件Keil,進行程序調試。</p><p> ?。?)加載程序代碼到單片機芯片AT89

33、S51中,進行模擬仿真。若出現(xiàn)錯誤,查看錯誤后進行相應修改再進行調試與模擬仿真,直到調試出正確結果。</p><p><b>  八、性能測試</b></p><p>  系統(tǒng)上電后進行功能的測試,通過測試觀察到,系統(tǒng)上電后數(shù)碼管上顯示時間:00-00-17。</p><p><b>  實物圖</b></p>

34、<p>  通過測試,本作品設計實現(xiàn)了數(shù)字電子鐘的基本功能,且系統(tǒng)工作穩(wěn)定。</p><p><b>  九、結論與心得</b></p><p>  本單片機數(shù)字電子鐘系統(tǒng)的功能基本符合顯示格式為:XX:XX:XX, 即</p><p>  時:分:秒。時間采用24 小時制顯示。經過測試數(shù)據(jù)顯示, 系統(tǒng)的可靠性已經基本能夠達到實際

35、電子鐘的設計要求,同時本單片機數(shù)字電子鐘系統(tǒng)具有擴展性。</p><p>  課程設計是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn)實際問題、提出實際問題、分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際學習能力、動手能力的具體訓練和考察過程。</p><p>  在此次數(shù)字鐘設計過程中, 在學習新知識的同時,把在課程中學到的理論知識運用到實際作品設計、操作中,更進一步地熟悉了單片機芯片的結構及

36、掌握了其工作原理和具體的使用方法與相關元器件的參數(shù)計算方法、使用方法,了解了電路的開發(fā)和制作及課程設計報告的編寫。加深了對相關理論知識及專業(yè)知識的掌握度,增強自身的動手能力,鍛煉及提高了理解問題、分析問題、解決問題的能力,更深刻的體會到了理論聯(lián)系實際的重要性。</p><p><b>  十、參考文獻</b></p><p>  [1]趙偉軍,《Protel99se教

37、程》,北京,人民郵電出版社. 1996年</p><p>  [2] 張毅剛, 單片機原理及接口技術[M]</p><p><b>  附源程序代碼:</b></p><p>  程序:(注 已完全經過調試,達到預期目的)</p><p>  #include<reg51.h></p><

38、p>  #define uchar unsigned char</p><p>  #define uint unsigned int</p><p>  uchar count=0;</p><p>  sbit LED=P1^0;</p><p>  uchar tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6

39、d,0x7d,0x07,0x7f,0x6f}; //顯示數(shù)碼管0,1,3,4,5,6,7,8,9</p><p>  uchar miao=0,fen=0,hour=0;</p><p>  void delay(uint i) //延遲函數(shù)</p><p><b>  {</b></p><p><b&

40、gt;  uint j;</b></p><p>  for(;i>0;i--)</p><p>  for(j=124;j>0;j--);</p><p><b>  }</b></p><p>  void init()</p><p><b>  {<

41、/b></p><p>  ET0=1; </p><p>  TMOD=0x51; //選定定時器0,1和中斷0,1</p><p>  TH0=(65536-25000)/256; </p><p>  TL0=(65536-25000)%256; //設定時器0時間為250ms一次</p>

42、<p>  ET1=1; </p><p><b>  TH1=0xff;</b></p><p>  TL1=0xff; //定時器1為中斷</p><p><b>  EX0=1;</b></p><p>  IT0=1; //中斷0開</p>&l

43、t;p><b>  EX1=1;</b></p><p>  IT1=1; //中斷1開</p><p>  TR0=1; //定時器0開</p><p>  TR1=1; //定時器1開</p><p>  EA=1; //總中斷開</p><p><b>  }<

44、;/b></p><p>  void display() //時鐘顯示函數(shù)</p><p><b>  {</b></p><p>  P0=tab[hour/10%10];</p><p><b>  P2=0xfe;</b></p><p><b> 

45、 delay(1);</b></p><p>  P0=tab[hour%10];</p><p><b>  P2=0xfd;</b></p><p><b>  delay(1);</b></p><p>  P0=tab[fen/10%10];</p><p&g

46、t;<b>  P2=0xfb;</b></p><p><b>  delay(1);</b></p><p>  P0=tab[fen%10];</p><p><b>  P2=0xf7;</b></p><p><b>  delay(1);</b>

47、;</p><p>  P0=tab[miao/10%10];</p><p><b>  P2=0xef;</b></p><p><b>  delay(1);</b></p><p>  P0=tab[miao%10];</p><p><b>  P2=0x

48、df;</b></p><p><b>  delay(1);</b></p><p><b>  } </b></p><p>  void main() //主函數(shù)</p><p><b>  {</b></p><p><b&g

49、t;  init();</b></p><p><b>  LED=0;</b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  display();</p><p><

50、b>  } </b></p><p><b>  }</b></p><p>  void T0_int() interrupt 1 //定時器0函數(shù)</p><p><b>  {</b></p><p>  TH0=(65536-25000)/256;</p&

51、gt;<p>  TL0=(65536-25000)%256;</p><p><b>  count++;</b></p><p>  if(count==20)</p><p><b>  {</b></p><p><b>  count=0;</b><

52、;/p><p>  miao= miao +1;</p><p><b>  LED=~LED;</b></p><p>  if(sec==60)</p><p><b>  { </b></p><p><b>  miao=0;</b></p&g

53、t;<p>  fen= fen +1;</p><p>  if(fen ==60)</p><p><b>  {</b></p><p><b>  fen =0;</b></p><p>  hour=hour+1;</p><p>  if(hour=

54、=24)</p><p><b>  hour=0;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</

55、b></p><p>  void T1_int() interrupt 3 //定時器1函數(shù)控制秒針加1</p><p><b>  {</b></p><p><b>  TH1=0xff;</b></p><p><b>  TL1=0xff;</b></p

56、><p>  miao=miao+1;</p><p>  if(miao ==60)</p><p><b>  miao =0;</b></p><p><b>  }</b></p><p>  void I1_int() interrupt 2 //中斷1函數(shù)控制按鍵分

57、針加1</p><p><b>  {</b></p><p><b>  EX0=0;</b></p><p>  fen= fen +1;</p><p>  if(fen ==60)</p><p><b>  fen =0;</b></p&

58、gt;<p><b>  EX0=1;</b></p><p><b>  }</b></p><p>  void I0_int() interrupt 0 //中斷函數(shù)0控制按鍵時針加1</p><p><b>  { </b></p><p><b

59、>  EX1=0;</b></p><p>  hour=hour+1;</p><p>  if(hour==24)</p><p><b>  hour=0;</b></p><p><b>  EX1=1;</b></p><p>  }

溫馨提示

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

評論

0/150

提交評論