久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3374|回復: 0
打印 上一主題 下一主題
收起左側

基于單片機的8×8LED字幕顯示課程設計報告

[復制鏈接]
跳轉到指定樓層
樓主
ID:367997 發表于 2018-7-9 15:27 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
第一章 方案選擇及總體設計
1.1 方案確定
  
1.1.1 功能要求

       1、采用STC-52單片機作為微處理器。

      2、設計一個8×8點陣LED數碼字符顯示器。

      3、在目測條件下LED顯示屏各點亮度均勻、充足、穩定、清晰無串擾。

      4、動態顯示“0——9”幾個字符。

   1.2.2 方案確定

    采用ST89C52單片機作為微處理器,將共陽極二極管用共陰型接法連接成8×8點陣LED數碼字符陣列,通過程序控制,采用動態顯示,建立字符庫“0——9”。

1.2 器件選擇

微處理器采用ST89C52系列單片機,ST89C52單片機是這幾年在我國非常流行的單片機,是一種帶4K字節閃爍可編程可擦除只讀存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)高性能單片機,可擦除只讀存儲器可以反復擦除100次,具有低功耗、高性能的特點。

第二章 控制系統設計
2.1 控制系統硬件設計
2.1.1整體模塊設計

本設計行、列驅動電路,顯示器電路,運用單片機的智能化,系統的將每個功能電路模塊連接在一起,總體結構設計如圖1所示。

圖1 硬件系統框圖

此次需要實現的功能是利用一個ST89C52,一個8×8LED點陣,動態顯示“0——9”10個字,采用PC上位機驅動顯示電路。

2.1.2 單片機最小系統設計

ST89C52單片機最小系統電路由復位電路、晶振電路兩部分組成。

2.1.2.1  晶振電路設計

ST89C52單片機芯片內部設有一個由反向放大器構成的振蕩器,XTAL1和XTAL2分別為振蕩電路的的輸入端和輸出端,時鐘可有內部或外部生成,在XTAL1和XTAL2引腳上外接定時元件,內部振蕩電路就會產生自激振蕩。系統采用的定時元件為石英晶體和電容組成的并聯諧振回路。晶振頻率采用12MHZ,C1、C2的電容值取30pF,電容的大小起頻率微調的作用。晶振電路圖如圖所示。

圖2 晶振電路圖

    2.1.2.2 復位電路設計

ST89C52單片機在啟動運行時或者出現死機時需要復位,使CPU以及其他功能部件處于一個確定的初始狀態,并從這個狀態開始工作。單片機有多種復位方式,常用的復位操作有上電復位和手動復位方式。本設計采用最簡單的上電復位方式,電路如圖3所示。上電復位是通過外部復位電路的電容充電來實現的,復位電路產生的復位信號(高電平有效)由RST引腳送入到內部的復位電路,對ST89C52單片機進行復位,復位信號要持續兩個機器周期(24個時鐘周期)以上,才能使ST89C52單片機可靠復位。當上電時,C1相當于短路,有時碰到干擾時會造成錯誤復位,可在復位端加個去耦電容,可以取得很好的效果。

ST89C52單片機復位電路如下圖所示:

           

圖3 上電復位電路圖                        圖4 按鍵電平復位電路圖

復位電路工作原理:                              

上電瞬間RST引腳的電位與VCC等電位,RST引腳為高電平,隨著電容C5充電電流的減少,RST引腳的電位不斷下降,可以保持RST引腳在為高電平的時間內完成復位操作。

當單片機已在運行當中時,按下復位鍵S5后再松開,也能使RST引腳為一段時間的高電平,從而實現ST89C52單片機復位。

2.1.3 驅動電路設計

正向點亮一顆LED,至少也要10~20mA,若電流不夠大,則LED不夠大。而不管是ST89C52的I/O口,還是TTL、CMOS的輸出端,其高態輸出電流都不是很高,不過1~2mA而已。因此很難直接高態驅動LED,這時候就需要額外的驅動電路,通常有共陽型與共陰型LED陣列驅動電路,本設計才用共陰型高態掃描信號驅動電路。

共陰型LED陣列驅動電路采用高態掃描,也就是任何時間只有一個高態信號,其它則為低態。一行掃描完成后,再把高態信號轉化到近鄰的其他行,掃描信號接用一個反向驅動器,ST89C52本身內置一個反向驅動器,本設計將ST89C52作為點矩陣顯示控制系統的控制核心,通過點矩陣實時顯示并移動字符。

單片機的串口與行驅動器相連,用來發送顯示數據信息。P0口與LED陣列的行引腳相連,送出數據、地址以及系統控制信號。輸出低態時,最大可吸取0.5A,即500mA,若每個LED取30mA,7個LED同時點亮,需要210mA,完全滿足LED點亮的基本條件。

圖5 驅動電路圖

所要顯示的信號送入74HC573芯片,然后連接到LED陣列的列陣腳。對于高態的顯示信號,將可提供其所連接LED的驅動電流,而這個驅動電流經過LED到輸出端,形成正向回路,即可點亮該LED。其中每個晶體管任何時間只需負責驅動一個LED,所以選擇30mA射極電流的晶體管。驅動電路如圖5所示。

2.1.4 LED點陣顯示設計

    本設計采用ATMEL公司的AT89C51作矩陣顯示控制系統控制核心,12MHZ晶振,88點陣共陽LED顯示器。其中,P1口作為字符數據輸出口,P3口為字符顯示掃描輸出口,第31腳(EA)接電源,改變電阻(270*8)的大小可改變顯示字符的亮度,驅動用74HC573芯片。

本設計LED矩陣顯示器電路選用8×8點陣模塊,系統由單片機控制。 LED顯示屏是將發光二極管按行按列布置的,在掃描驅動方式下可以按行掃描按列控制,也可以按列掃描按行控制。本文就是使用1塊8×8點陣,采用按列掃描按行控制控制方式,掃描順序自左向右,以滿足漢字顯示的要求。8×8點陣LED結構如圖6所示。


圖6  LED數碼顯示管

8×8 點陣LED的工作原理。圖7為8×8點陣LED外觀及引腳圖,其等效電路如圖8所示,只要其對應的X、Y軸順向偏壓,即可使LED發亮。例如如果想使左上角LED點亮,則Y0=1,X0=0即可。應用時限流電阻可以放在X軸或Y軸。

圖7  8×8點陣LED外觀及引腳圖
圖8  8×8點陣LED等效電路

一個8×8點陣是由64個發光二極管按規律組成的,如圖8所示。圖中,行接低電平,列接高電平,發光二極管導通發光。

2.2控制系統軟件設計2.2.1 軟件設計思想

    主程序先進行設置中斷,并啟動,再進行鍵盤掃描載入“0——9”字型,然后判斷一組字型是否掃描完,按不同情況進行循環調用子程序。進入子程序后,首先設置相應的程序,反復調用顯示子程序,并在顯示過程中反復調用鍵盤掃描子程序進行延時,判斷是否退出相應的方式顯示子程序。設計過程中,能很好得提高按鍵響應速度。如圖9所示為軟件系統框圖。


圖9 軟件系統框圖

字符編碼:8×8點陣可以看成是從上至下8個字節,每個字節8位,因為該點陣為共陰型點陣,因此若該燈亮,則該位為“1”;該燈不亮,則該位為“0”。所以“0——9”的編碼為,從上至下:

DB 00H,00H,3EH,41H,41H,41H,3EH,00H

DB 00H,00H,00H,00H,21H,7FH,01H,00H

DB 00H,00H,27H,45H,45H,45H,39H,00H

DB 00H,00H,22H,49H,49H,49H,36H,00H

DB 00H,00H,0CH,14H,24H,7FH,04H,00H

DB 00H,00H,72H,51H,51H,51H,4EH,00H

DB 00H,00H,3EH,49H,49H,49H,26H,00H

DB 00H,00H,40H,40H,40H,4FH,70H,00H

DB 00H,00H,36H,49H,49H,49H,36H,00H

DB 00H,00H,32H,49H,49H,49H,3EH,00H

2.2.2 主程序流程圖

主程序首先設置并啟動T0中斷,然后調用初始化程序,為后面程序要用到的數據調入,并清零一些用到的數據單元,然后載入“0——9”字型,進行掃描。圖10為主程序流程圖,詳細主程序清單及子程序設計見附錄B。


圖10 主程序流程圖

2.2.3 子程序流程圖定時中斷服務程序
圖11 子程序流程圖(定時中斷服務程序)
第三章 系統仿真及性能分析3.1 系統仿真

本設計是以wave與Proteus.ISIS相結合方式來實現本LED點矩陣顯示器的仿真實現過程。電路的核心是單片機ST89C52。單片機的P0口八個引腳通過總線連接到LED矩陣顯示器的段選碼和位選碼(a、b、c、d、e、f、g和1、2、3、4、5、6、7、8)的引腳上,來作為控制信號的來源。如圖11、12所示。

3.2  性能分析

此次系統設計結果較好,LED顯示屏能很好的顯示信息。LED顯示屏由1塊8×8的LED小模塊組成,整個顯示屏可以動態顯示8×8的“0——9”字型。這個方案設計的8x8的點陣LED圖文顯示屏,電路簡單,成本較低,且較易擴展;顯示屏各點亮度均勻、充足;顯示圖形或文字穩定、清晰無串擾。


總結致謝

本次課程設計到現在有一個多星期,回顧這些天我感到學到了很多東西,在寫這個心得的時候,我想就這些天的收獲,說一說自己內心的想法。

本設計是一個8x8的點陣LED數碼顯示器,能夠在目測條件下LED顯示屏各點亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應穩定、清晰無串擾。圖形或文字顯示有靜止、移入移出等顯示方式。本系統具有硬件少,結構簡單,容易實現,性能穩定可靠,成本低等特點。

    總結本文的研究工作,主要做了下面幾點工作:

一、通過查閱大量的相關資料,詳細了解了LED的發光原理和LED顯示屏的原理,了解了LED的現狀,清楚地了解了LED顯示屏與其它顯示屏相比較有那些優點,明確了研究目標。并且通過對單片機資料的查閱和應用,更進一步增加了對單片機知識的理解和運用能力。并證實了自己的思路:“查資料→思考總結→運用→找出差錯,再查資料和向別人詢問→再次運用”的正確性。

二,本文設計的LED顯示屏能夠實現在目測條件下LED顯示屏各點亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應穩定、清晰無串擾。

三,本文列出了系統具體的硬件設計方案,硬件結構電路圖,軟件流程圖和具體匯編語言程序設計與調試等方面。

四,在這次課程設計的過程中學會了 PROTEUS 的基本使用,感到PROTEUS對電子專業的同學來說是一個很有用的軟件。在運用PROTEUS時可以運用一些快捷的標號,總線的方法畫圖,這樣既能使電路圖清晰,簡單,更能大大提高畫圖速度

五,通過這次課程設計,重新復習并進一步增強了動手的能力,學以致用,把只是運用到實際生活中才是根本目的。

六,存在問題:沒有考慮仿真軟件是一個理想的仿真環境,而實際連接的電路板會由于譬如連接不當,相鄰器件間的干擾等等的問題導致在仿真軟件中能良好運行的程序,出現顯示問題,經過排查和合理的器件擺放焊接,問題解決。

總體來說這次的科研實踐很成功,達到了預想的目的:學到了知識,提高了能力,完成了任務。有點缺憾是時間有限,不能進一步深入和擴散學習和研究。希望有時間可以對程序和電路圖作更進一步的改進,譬如實現點陣的上下移動,對角線移動,多色顯示等。

在此感謝指導老師姜靜老師和余國衛老師的悉心教導,改正了很多不曾發現的問題,為即將的畢業設計打下了基礎。

參考文獻

[1] 張靖武,周靈彬 《單片機系統的PROTEUS設計與仿真》北京 電子工業出版社

[2] 吳金戌,沈慶陽,郭庭吉 《8051單片機實踐與應用》北京 清華大學出版社

[3] 李群芳,肖看 《單片機原理、接口及應用》北京 清華大學出版社

[4] 張毅剛,彭喜元等 《新編MCS-51單片機應用設計 》黑龍江 哈爾濱工業大學出版社

[5] 張義和,陳敵北編著 《例說8051》北京 人民郵電出版社

附  錄附錄A  硬件結構圖
附錄B  主程序清單
  1. TIM EQU 30H                                   ;//定義TIM為30H
  2. CNTA EQU 31H                                 ;//定義CNTA為31H
  3. CNTB EQU 32H                                 ;//定義CNTB為33H
  4. ORG 00H           ;//將后面的程序匯編后存入ROA的0000H以后單元
  5. LJMP START                             ;//程序入口,轉開始START
  6. ORG 0BH            ;//將后面的程序匯編后存入ROA的000BH以后單元
  7. LJMP T0X                                ;//中斷入口,轉中斷T0X
  8. ORG 30H           ;//將后面的程序匯編后存入ROA的0030H以后單元
  9. START: MOV TIM,#00H                ;//將數據0000H送入30H單元
  10. MOV CNTA,#00H                                  ;//清零31H單元
  11. MOV CNTB,#00H                                  ;//清零32H單元
  12. MOV TMOD,#01H                             ;//設置T0方式1工作
  13. MOV TH0,#(65536-4000)/256           
  14. MOV TL0,#(65536-4000) MOD 256             ;//設置T0的計數初值
  15. SETB TR0                                       ;//開啟T0中斷
  16. SETB ET0                                       ; //允許T0中斷
  17. SETB EA                                            ;//開總中斷
  18. SJMP [        DISCUZ_CODE_1        ]nbsp;                                           ;//原地踏步
  19. ;*****************定時中斷服務程序*******************
  20. T0X:                                               ;//中斷程序
  21. MOV TH0,#(65536-4000)/256
  22. MOV TL0,#(65536-4000) MOD 256             ;//設置T0的計數初值
  23. MOV DPTR,#TAB                          ;//取數據表TAB的首地址
  24. MOV A,CNTA                             ;//將31H單元內容送入A
  25. MOVC A,@A+DPTR                           ;//讀取顯示數碼管地址
  26. MOV P3,A                                 ;//輸出顯示數碼管地址
  27. MOV DPTR,#DIGIT                      ;//取數據表DIGIT的首地址
  28. MOV A,CNTB                             ;//將32H單元內容送入A
  29. MOV B,#8                                 ;//將十進制8賦值給B
  30. MUL AB                                                ;//A乘B
  31. ADD A,CNTA                                   ;//寄存器直接尋址
  32. MOVC A,@A+DPTR                           ;//讀取顯示數碼管地址
  33. MOV P1,A                                 ;//輸出顯示數碼管地址
  34. INC CNTA                                    ;//31H單元內容加1
  35. MOV A,CNTA                              ;//將31H單元內容送入A
  36. CJNE A,#8,NEXT       ;//8個數碼管的顯示數據沒有都輸出則轉NEXT
  37. MOV CNTA,#00H       ;//8個數碼管的顯示數據都輸出了則清31H單元
  38. NEXT: INC TIM                               ;//32H單元內容加1
  39. MOV A,TIM                              ;//將30H單元內容送入A
  40. CJNE A,#250,NEX                                ;//比較轉移指令
  41. MOV TIM,#00H                                   ;//清零30H單元
  42. INC CNTB                                    ;//32H單元內容加1
  43. MOV A,CNTB                              ;//將32H單元內容送入A
  44. CJNE A,#10,NEX                                 ;//比較轉移指令
  45. MOV CNTB,#00H                                  ;//清零32H單元
  46. NEX: RETI                                          ;//中斷返回
  47. TAB: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH
  48. DIGIT: DB 00H,00H,3EH,41H,41H,41H,3EH,00H
  49. DB 00H,00H,00H,00H,21H,7FH,01H,00H
  50. DB 00H,00H,27H,45H,45H,45H,39H,00H
  51. DB 00H,00H,22H,49H,49H,49H,36H,00H
  52. DB 00H,00H,0CH,14H,24H,7FH,04H,00H
  53. DB 00H,00H,72H,51H,51H,51H,4EH,00H
  54. DB 00H,00H,3EH,49H,49H,49H,26H,00H
  55. DB 00H,00H,40H,40H,40H,4FH,70H,00H
  56. DB 00H,00H,36H,49H,49H,49H,36H,00H
  57. DB 00H,00H,32H,49H,49H,49H,3EH,00H
  58. END
復制代碼

完整的Word格式文檔51黑下載地址:
基于單片機的8×8LED字幕顯示設計.doc (521.44 KB, 下載次數: 12)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久88| 国产免费拔擦拔擦8x高清 | 欧美一级做a爰片免费视频 国产美女特级嫩嫩嫩bbb片 | 亚洲精品一区二区三区蜜桃久 | 国产成人免费视频网站视频社区 | 国产精品久久久久无码av | 久久久久久久久99精品 | 中文字幕在线观看国产 | 99精品国产一区二区三区 | 在线观看视频你懂得 | 999久久久久久久久6666 | 成人小视频在线 | 国产成人一区二区三区精 | 中文字幕 国产 | 亚洲日韩中文字幕 | av中文网 | 欧美午夜影院 | 欧美男人天堂 | 国产精品资源在线观看 | 国产免费一区 | 欧美日韩国产精品 | 九色视频网站 | 亚洲二区在线 | 日韩精品1区2区3区 国产精品国产成人国产三级 | 日韩乱码在线 | 成人精品在线观看 | 国产高清久久久 | 亚洲激情在线观看 | av网站免费在线观看 | aⅴ色国产 欧美 | 丁香婷婷综合激情五月色 | aaa大片免费观看 | 久久精品亚洲精品国产欧美kt∨ | 久久高清精品 | 激情国产| 九九九视频 | 色综合一区二区 | 欧美成人自拍视频 | 欧美精品1区| 91久久精品一区二区二区 | 国产精品免费在线 |