找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 10281|回復: 1
收起左側(cè)

單片機+74HC154驅(qū)動的16×16點陣滾動顯示屏設(shè)計報告

[復制鏈接]
ID:267736 發(fā)表于 2018-1-21 21:48 | 顯示全部樓層 |閱讀模式
目錄

1 選題背景              1
2 方案論證              1
2.1 課設(shè)要求              1
2.2 方案論證              1
3 16×16點陣LED顯示器滾動顯示電路驅(qū)動過程              2
3.1 系統(tǒng)框圖              2
3.2 硬件電路              2
3.2.1 晶振電路設(shè)計              2
3.2.2 復位電路設(shè)計              3
3.2.3 74HC154譯碼電路設(shè)計              3
3.2.4 整體原理設(shè)計              4
3.3 驅(qū)動程序設(shè)計              5
3.3.1 程序框圖簡介              5
3.3.2 程序分析              6
4 結(jié)果分析              10
4.1 程序調(diào)試與仿真              10
4.2 仿真結(jié)果              10
5 設(shè)計總結(jié)              10
參考文獻              12

1 選題背景
LED顯示屏可以顯示變化的數(shù)字、文字、圖形圖像;不僅可以用于室內(nèi)環(huán)境還可以用于室外環(huán)境,具有投影儀、電視墻、液晶顯示屏無法比擬的優(yōu)點。
LED點陣顯示屏以亮度高、工作電壓低、功耗小、小型化、壽命長、耐沖擊和性能穩(wěn)定的優(yōu)點迅速成長為平板顯示的主流產(chǎn)品,在信息顯示領(lǐng)域得到了廣泛的應用。LED的發(fā)展前景極為廣闊,目前正朝著更高亮度、更高耐氣候性、更高的發(fā)光密度、更高的發(fā)光均勻性、可靠性、全色化方向發(fā)展。LED顯示屏的應用涉及社會經(jīng)濟的許多領(lǐng)域,主要包括:證券交易、金融信息顯示、機場航班動態(tài)信息顯示、港口、車站旅客引導信息顯示、體育場館信息顯示、道路交通信息顯示、調(diào)度指揮中心信息顯示、郵政、電信、商場購物中心等服務(wù)領(lǐng)域的業(yè)務(wù)宣傳及信息顯示、廣告媒體新產(chǎn)品等。
2 方案論證2.1 課設(shè)要求
熟悉51系列(兼容)單片機軟件開發(fā)系統(tǒng)Keil C51集成開發(fā)環(huán)境(u Vison系列編譯器)和Proteus電路分析與實物仿真軟件。                     
了解點陣LED顯示器結(jié)構(gòu)及字符字模(字符代碼),熟悉點陣LED顯示器驅(qū)動的基本原理。設(shè)計16×16點陣LED顯示器的驅(qū)動電路,并編寫程序?qū)崿F(xiàn)在16×16點陣LED顯示器上的字符滾動顯示。16×16點陣LED顯示器可由4塊8×8點陣LED顯示器構(gòu)成�?刹捎脝纹瑱C并行端口、移位寄存器、譯碼器或鎖存器等4種驅(qū)動方式中的組合實現(xiàn)對16×16點陣LED顯示器的驅(qū)動。                                                              電路方面主要包括以下3部分。(a)設(shè)計單片機的最小系統(tǒng)(包括復位電路和外接的晶振電路),并確定相關(guān)元器件參數(shù)。(b)采用動態(tài)驅(qū)動的方式,設(shè)計單片機并行端口、移位寄存器、譯碼器或鎖存器等與16×16點陣LED顯示器的驅(qū)動電路,主要包括控制點陣LED行和列的連線。(c)采用移位寄存器、譯碼器或鎖存器驅(qū)動點陣LED顯示器時,設(shè)計單片機與移位寄存器、譯碼器或鎖存器間的控制連線。
編寫16×16點陣LED顯示器字符(串)滾動顯示程序,實現(xiàn)數(shù)字(0—9)或英文字符(A—G)的滾動顯示。
2.2 方案論證
搜集題目的有關(guān)資料,并參照目前通用的設(shè)計思想和設(shè)計方法擬定幾套設(shè)計方案進行分析比較。最終選定了以PC機為上位機,單片機為核心控制器件,外加譯碼電路和驅(qū)動電路的設(shè)計方案。以設(shè)計方案為指導思想選擇合適的器件來實現(xiàn)這一思想,選擇器件時要從功能和電氣特性兩方面來選擇和論證。經(jīng)過對比選擇選定AT89C51單片機為核心控制器件,由74HC154為譯碼電路器件。論文列出了詳細的器件參數(shù)和在系統(tǒng)中的連接使用方法[1]。
3 16×16點陣LED顯示器滾動顯示電路驅(qū)動過程
3.1 系統(tǒng)框圖
本次設(shè)計采用包括為單片機提供時鐘信號的晶振電路,進行復位操作的復位電路行控制電路,單片機電路,74HC154譯碼驅(qū)動電路,LED點陣顯示電路。如圖3-1所示。
(見附件)
圖3-1 系統(tǒng)框圖
3.2 硬件電路
3.2.1 晶振電路設(shè)計
外界晶振電路是單片機的心臟,它控制著單片機的工作節(jié)奏,其典型值為 12MHZ。XTAL1、XTAL2 引腳外界晶振和電容組成振蕩器。振蕩器產(chǎn)生的時鐘頻率主要由晶振頻率決定,C1 和 C2 的作用有兩個:其一是使振蕩器起振,其二是對振蕩器的頻率ƒ起微調(diào)作用(C1、 C2 變大,ƒ變小),其典型值為 30pF,振蕩器在加電以后月 10ms 開始起振,XTAL2 輸出 3V 左右的正弦波,振蕩器產(chǎn)生的時鐘送入單片機內(nèi)部[2],如圖3-1所示。

圖3-1 晶振電路
3.2.2 復位電路設(shè)計
本次設(shè)計采用上電復位電路,對于 AT89C51 的上電復位電路,只要在 RST 復位輸入引腳上接一電容至 Vcc 端,下接一個電阻到地即可。對于 CMOS 型單片機,由于在 RST 端內(nèi)部有一個下拉電阻,故可將外部電阻去掉,而將外接電容減至 1μF。上電復位的工作過程是在加電時,復位電路通過電 容加給 RST 端一個短暫的高電平信號,此高電平信號隨著 Vcc 對電容的充電過程而逐漸回落,即 RST 端的高電平持續(xù)時間取決于電容的充電時間。為了保證系統(tǒng)能夠可靠地復位,RST 端的高電平信號必須維持足夠長的時間。上電時,Vcc的上升時間約為 10ms,而振蕩器的起振時間取決于振蕩頻率,如圖3-2所示。
圖3-2 復位電路
3.2.3 74HC154譯碼電路設(shè)計
74HC154是一款高速CMOS器件,74HC154引腳兼容低功耗肖特基TTL(LSTTL)系列。
    74HC154譯碼器可接受4位高有效二進制地址輸入,并提供16個互斥的低有效輸出。74HC154的兩個輸入使能門電路可用于譯碼器選通,以消除輸出端上的通常譯碼“假信號”,也可用于譯碼器擴展。該使能門電路包含兩個“邏輯與”輸入,必須置為低以便使能輸出端。任選一個使能輸入端作為數(shù)據(jù)輸入,74HC154可充當一個1-16的多路分配器。當其余的使能輸入端置低時,地址輸出將會跟隨應用的狀態(tài)。如圖3-3所示。
圖3-3 74HC154譯碼電路
3.2.4 整體原理設(shè)計
原理圖如圖3-4所示。

圖3-4  原理圖
電路設(shè)計需要的元器件包括電阻,電容,單片機,譯碼器,移位寄存器,LED點陣等。具體元器件規(guī)格數(shù)量見表3-1所示。
表3-1 元器件清單
元器件型號
規(guī)格參數(shù)
數(shù)量
電阻
10kΩ
1個
電容
30uF
1個
電容
30pF
2個
晶振
11.0592MHz
1個
單片機
AT89C51
1個
VCC
5V
5個
GND
接地
3個
按鍵
四角直插
1個
8x8點陣LED
RED
4個
74HC154

1個
3.3 驅(qū)動程序設(shè)計
3.3.1 程序框圖簡介
程序主要有頭文件,端口定義,定義所用的函數(shù),字模函數(shù),具體函數(shù)編寫包括主函數(shù)。根據(jù)電路圖原理,主體流程圖如圖3-6所示。
(見附件)
圖3-6 程序框圖
3.3.2 程序分析
16×16點陣LED顯示器基于74HC154譯碼驅(qū)動的C語言程序分析。

4 結(jié)果分析
4.1 程序調(diào)試與仿真
完成硬件設(shè)計和軟件程序編寫后,將keil uvison4軟件中編輯好的程序輸出文件載入protues軟件中的單片機AT89C51中進行仿真。按照顯示的結(jié)果進行程序的調(diào)試,顯示的時間通過延時函數(shù)改變。調(diào)試結(jié)束后可以驗證該設(shè)計的硬件方案和軟件方案的正確性。首先沒有出現(xiàn)錯誤顯示且顯示的漢字穩(wěn)定清晰,說明了電路原理的合理,所選元件也是正確的;其次顯示的內(nèi)容也與所編程序相符合,說明軟件方案也是可行的。
4.2 仿真結(jié)果
運行程序,在16×16點陣顯示屏上依次顯示A-G七個字符,并且循環(huán)顯示。運行結(jié)果如圖4-1,圖4-2所示。


圖4-1  顯示字符B                            圖4-2  顯示字符E              
5 設(shè)計總結(jié)
經(jīng)過一段時間的工作,終于完成了基于51單片機的LED顯示系統(tǒng)的設(shè)計,項目所要求的功能全部達到。通過這次設(shè)計收獲頗多,不僅是所作題目涉及到的軟硬件知識還有更為重要的實際經(jīng)驗和過程中所發(fā)現(xiàn)的問題。
從設(shè)計之初就確定了參照大屏幕顯示屏的實現(xiàn)方法和實際情況設(shè)計一款小屏幕的LED點陣顯示屏。在查閱了大量的大屏幕顯示屏資料后確定了題目的設(shè)計方案。在實現(xiàn)這一設(shè)計的過程中所遇到的問題和困難給我留下了寶貴的經(jīng)驗和深刻教訓。這些經(jīng)驗和教訓是:
(1)設(shè)計之前應該進行大量的資料收集和分析,確定一個清晰的設(shè)計思路;
(2)器件選擇時要詳細閱讀器件使用手冊,不但要考慮器件的功能實現(xiàn)還要考慮器件在整個系統(tǒng)中的兼容性;
(3)軟件的編寫不但要實現(xiàn)功能還要不斷的優(yōu)化、簡練、易讀。
參 考 文 獻
  • 張義和.例說51單片機(C語言版).人民郵電出版社.2008:21-22
  • 何宏.單片機原理及其應用.清華大學出版社.2012:7-8

單片機源程序如下:
  1. #include <reg51.h>
  2. #define  u8                unsigned char    //定義無符號字符型
  3. #define  u16  unsigned int      //定義無符號整型
  4. #define  SPEED   18      
  5. u8  code table1[]={             //定義低八位數(shù)組
  6. /*--  文字:     --*/
  7. /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
  8. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  9. …………
  10. …………限于本文篇幅 余下代碼請從51黑下載附件…………
  11. /*--  文字:     --*/
  12. /*--  宋體12;  此字體下對應的點陣為:寬x高=8x16   --*/
  13. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
  14.             
  15. };
  16. u8 i,j,m=0;
  17. u16 z;                         //定義字符
  18. void delay(u16);
  19. void main()
  20. {
  21.               P0=0x00;
  22.               P2=0x00;
  23.               P3=0xff;                     //端口初始化
  24.               while(1)
  25.               {
  26.               for(i=0;i<120;i++)                                             //確定掃描起點
  27.               {
  28.                             for(z=0;z<SPEED;z++)      //確定顯示字符的速度
  29.                             {
  30.                                           for(j=0;j<16;j++)                //確定每個列所顯示的內(nèi)容
  31.                                           {
  32.                                                         m=i+j;
  33.                                                         P3=j;
  34.                                                         delay(1);                     //延時程序                           
  35.                                                         P0=table1[m];   //P0口輸出數(shù)組
  36.                                                         P2=table2[m] ;  //P2口輸出數(shù)組
  37.                                                         delay(1);       //延時程序
  38.                                                         P0=0x00;
  39.                                                         P2=0x00;
  40.                                           }
  41.                             }
  42.               }
  43. ……………………

  44. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
22.png
所有資料51hei提供下載:
http://www.torrancerestoration.com/bbs/dpj-105747-1.html




回復

使用道具 舉報

ID:550522 發(fā)表于 2019-5-31 08:55 | 顯示全部樓層
你有原理圖和pcb嗎
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表