基于P89V51RD2單片機(jī)LED點(diǎn)陣顯示屏的實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:為了LED點(diǎn)陣顯示屏顯示的信息可以方便更新,提出了一種基于P89V51RD2單片機(jī)LED顯示屏的的設(shè)計(jì)方案,并完成了系統(tǒng)的軟硬件設(shè)計(jì)。該系統(tǒng)的硬件部分主要有單片機(jī)、移位寄存器、譯碼器以及數(shù)據(jù)存儲器等部分組成;軟件有兩部分:上位機(jī)部分,用VB編程來實(shí)現(xiàn)漢字字模的提取;下位機(jī)部分,由單片機(jī)控制移位寄存器以及譯碼器,來實(shí)現(xiàn)LED顯示。實(shí)際應(yīng)用表明,該系統(tǒng)具有工作穩(wěn)定、字符清晰、亮度適中等特點(diǎn)。
關(guān)鍵詞:LED點(diǎn)陣屏;P89v51RD2;移位寄存器;字模
LED點(diǎn)陣顯示屏是一種簡單的字符顯示器,具有價(jià)廉、易于控制、使用壽命長等特點(diǎn),可廣泛應(yīng)用于各種公共場合,如車站、碼頭、銀行、學(xué)校、火車、公共汽車顯示等。本文詳細(xì)介紹了一種低廉的16x16點(diǎn)陣LED顯示屏的設(shè)計(jì)過程。本系統(tǒng)采用P89V51RD2單片機(jī)作控制器,整個(gè)電路主要由單片機(jī)控制及其接口電路、驅(qū)動(dòng)顯示電路、電源電路等部分組成。為了使顯示屏電路更具實(shí)用性,本系統(tǒng)在單片機(jī)部分外加數(shù)據(jù)存儲器。在PC機(jī)上編輯漢字和字符顯示信息,并將其轉(zhuǎn)換為相應(yīng)的點(diǎn)陣顯示數(shù)據(jù),然后通過串口(采用RS-232通信標(biāo)準(zhǔn))送單片機(jī)存儲并顯示,實(shí)現(xiàn)LED顯示屏的功能。
1 系統(tǒng)原理及特點(diǎn)
系統(tǒng)原理框圖如圖1所示,該系統(tǒng)主要由飛利浦公司生產(chǎn)的單片機(jī)P89V51RD2、移位寄存器74HC595、4-16譯碼器74HC154、LED點(diǎn)陣、數(shù)據(jù)存儲器RAM6264以及RS232電平轉(zhuǎn)換芯片組成,漢字字模存儲外部數(shù)據(jù)存儲器6264中,用單片機(jī)P89V51RD2控制移位寄存器與譯碼器完成漢字的顯示。
本系統(tǒng)的特點(diǎn):
1)采用P89V51RD2單片機(jī),P89V51RD2是PHILIPS公司推出的51系列的新型微控制器,它包含64KB?Flash和1024字節(jié)的數(shù)據(jù)RAM,支持并行和串行的在系統(tǒng)編程(ISP)和在應(yīng)用中編程(IAP),具有SPI和增強(qiáng)型UART。
2)采用移位寄存器,節(jié)約單片機(jī)的IO資源,容易擴(kuò)展多位LED顯示。
3)通過串口下載單片機(jī)的程序代碼以及與PC機(jī)通信獲取顯示信息的字模。
4)顯示內(nèi)容多時(shí),可以把漢字字模存儲到外部數(shù)據(jù)存儲器6264中。
1.1 移位寄存器的工作原理
74HC595是一款漏極開路輸出的CMOS移位寄存器,輸出端口為可控的三態(tài)輸出端,也能串行輸出控制下一級級聯(lián)芯片。
74HC595的引腳圖如圖2所示。
1.1.1 引腳說明
1)74595的數(shù)據(jù)端:
QA-QH:8位并行輸出端,可以直接控制數(shù)碼管的8個(gè)段;QH:級聯(lián)輸出端。將它接下一個(gè)595的SI端;SI:串行數(shù)據(jù)輸入端。
2)74595的控制端說明:
/SCLR(10腳):低點(diǎn)平時(shí)將移位寄存器的數(shù)據(jù)清零;SCK(11腳):上升沿時(shí)數(shù)據(jù)寄存器的數(shù)據(jù)移位。QA->QB->QC->…->QH;下降沿移位寄存器數(shù)據(jù)不變;RCK(12腳):上升沿時(shí)移位寄存器的數(shù)據(jù)進(jìn)入數(shù)據(jù)存儲寄存器,下降沿時(shí)存儲寄存器數(shù)據(jù)不變。
3)74HC595與單片機(jī)的硬件連接
2片74HC595與單片機(jī)串行接口連接,移位寄存器的輸出作為點(diǎn)陣LED的行驅(qū)動(dòng),硬件電路圖如圖3。其中,RCK接單片機(jī)的P3.3端口;SC LR接單片機(jī)的P3.2端口;SCK接單片機(jī)的P3.3端口;SI接單片機(jī)的P3.4端口。串行移位寄存器7HC595也可以用74HC164。
1.2 譯碼器及驅(qū)動(dòng)電路
單片機(jī)的P1口低四位的輸出,經(jīng)4-16線譯碼器73HC154譯碼后,作為列選通信號線,再經(jīng)過驅(qū)動(dòng)器驅(qū)動(dòng)對應(yīng)的列線,一條列線上要驅(qū)動(dòng)16個(gè)的led進(jìn)行顯示,按每一個(gè)LED器件需要10 mA計(jì)算,16個(gè)LED同時(shí)發(fā)光時(shí),需要160 mA電流,選用三極管8550作為驅(qū)動(dòng)管可滿足要求??紤]減少PCB板的面積,也可以選擇uln2803驅(qū)動(dòng)LED的列。
硬件電路連接如圖4所示。
1.3 16x16點(diǎn)陣LED屏
一個(gè)漢字32個(gè)字節(jié)需要16*16LED屏,由4個(gè)8*8LED組成,型號SD411988。LED點(diǎn)陣屏的極性,可以用數(shù)字萬用表的電阻檔來測試;萬用表的黑表棒測試LED的一個(gè)引腳,紅表棒放到其他的引腳,若有一個(gè)LED燈亮,說明黑表棒測試的引腳為負(fù)極,紅表棒測試的引腳為正極;此時(shí),可以把黑表棒接的引腳作為行,紅表棒接的引腳作為列,當(dāng)然,反過來也可以,行、列是相對的。
然后黑表棒測試的引腳不動(dòng),改換紅表棒測試的其他的引腳,測試結(jié)果如上述,這樣可以把一行的所有列控制的引腳確定;同理,也可以確定其他的行控制引腳。
16×16 LED屏的原理圖如圖5所示。
2 系統(tǒng)軟件設(shè)計(jì)
限于篇幅,這里沒有給出VB提取字模的程序,僅把單片機(jī)的主要程序列出。在調(diào)試下位機(jī)程序時(shí),可以用取膜軟件PCtoLCD來提取漢字字模。“南京工程學(xué)院”的字模如下
unsigned char code table[]={
0xFE,0xFF,0xFE,0xFB,0x00,0x01,0xFE,0xFF,0xFD,0xFF,0xC0,0x03,0xDB,0xDB,0xDD,0xBB,
0xD0,0x0B,0xDE,0xFB,0xC0,0x03,0xDE,0xFB,0xDE,0xFB,0xDE,0xEB,0xDE,0xF7,0xFF,0xFF,/*“南”,0*/
};限于篇幅,僅給出一個(gè)漢字的字模。
移位寄存器有關(guān)控制位的定義void wr_595(sindata)//寫移位寄存器74HC595函數(shù)
3 結(jié)論
經(jīng)過實(shí)際測試證明,本顯示屏可以作為信息顯示裝置,用于公共場所來進(jìn)行信息顯示,而且具有工作穩(wěn)定、字符清晰、亮度適中等特點(diǎn)。為了使顯示的內(nèi)容豐富,可以使文字屏在顯示信息時(shí)滾動(dòng)顯示。另外,本硬件電路可以在集成電路芯片上使用方面加以改進(jìn),用大規(guī)模的可編程邏輯器件代替中規(guī)模的邏輯電路譯碼器和移位寄存器,可以節(jié)約PCB的面積;本顯示屏只有一位LED顯示,再級聯(lián)多個(gè)移位寄存器,容易實(shí)現(xiàn)多位LED顯示。