基于STM32的全彩LED顯示屏系統(tǒng)的設計
LED顯示屏作為一種新的顯示器件,近年來得到了廣泛的應用。隨著技術的不斷更新,LED顯示屏正朝著全彩化的方向發(fā)展。設計了一種LED顯示屏控制系統(tǒng),該系統(tǒng)以ARMCortex-M3內核芯片STM32F103ZET6作為控制中心,以可編程邏輯器件EP1C6完成數(shù)據(jù)的刷新,通過以太網通信。系統(tǒng)可支持256級灰度全彩LED顯示屏的圖像、動畫的顯示,同時能夠方便地進行遠程控制。
本文引用地址:http://cafeforensic.com/article/187148.htmLED顯示屏是利用LED點陣模塊或像素單元組成的一種現(xiàn)代平面顯示屏幕,具有發(fā)光效率高、使用壽命長、視角范圍大、色彩豐富以及對室內外環(huán)境適應能力強等優(yōu)點。20世紀80年代后期,它在全世界迅速發(fā)展起來,并很快成為大屏幕平板顯示的代表性主流產品;近年來,隨著藍色LED產品價格的快速下降,全彩色LED顯示屏的價格逐步降低,市場需求急劇增長,應用日益普遍。目前的LED顯示屏控制系統(tǒng)多采用ARM處理器來完成整個系統(tǒng)的功能,這種控制系統(tǒng)在數(shù)據(jù)處理速度上存在很大的局限,影響顯示效果的連續(xù)性。基于此,在分析了STM32微處理器總線結構特點的基礎上,提出了STM32+FPGA的控制系統(tǒng)方案,該方案充分了利用STM32微處理器的靈活的儲器控制技術和可編程邏輯器件的靈活性,提高了系統(tǒng)數(shù)據(jù)處理的速度,而且簡化了電路結構,方便調試。
1 、系統(tǒng)總體方案設計
系統(tǒng)結構框圖如圖1所示。
圖1 系統(tǒng)結構框圖
系統(tǒng)采用新一代的32bitRISC處理器STM32作為主控芯片,通過以太網傳輸數(shù)據(jù),以FLASH作為存儲模塊,由FPGA完成對LED顯示屏的高速掃描刷新。系統(tǒng)工作時,利用上位機編輯顯示信息,通過以太網接口將顯示信息傳輸給微處理器,微處理器接收數(shù)據(jù)信息后寫入FLASH存儲器。在顯示時,微處理器讀取FLASH中的數(shù)據(jù),通過總線將數(shù)據(jù)以并行方式發(fā)送給FPGA,FPGA處理后將數(shù)據(jù)傳輸?shù)絃ED顯示屏顯示。
2 、系統(tǒng)硬件設計
本系統(tǒng)選用ST公司新推出的32位微處理器STM32F103ZET6作為主控芯片,STM32F103ZET6使用了先進架構的ARMCortex-M3內核,其靈活的靜態(tài)存儲器控制器使得它能很方便的和許多存儲器和外設連接,同時STM32片上外設豐富,可以簡化系統(tǒng)外圍電路的設計。
2.1 FLASH存儲器電路設計
FLASH采用的是三星公司的K9F1G16U0M,它是一種NAND型FLASH,存儲容量為64M16位,工作電壓3.3V,系統(tǒng)中STM32F103ZET6與K9F1G16U0M的連接如圖2所示。FLASH存儲器的IO0~IO7和FMSC數(shù)據(jù)總線的低8位相連,STM32處理器通過FSMC訪問存儲器;FLASH存儲器的片選信號nCE和FSMC的FSMC_NCE2相連接,這樣存儲器的地址空間為0x70000000~077FFFFFFFF;FLASH存儲器的R/nB連接至STM32處理器的FSMC_NWAIT管腳,處理器將R/nB作為一個中斷源使用,因此可以在存儲器的等待周期內執(zhí)行其他的任務。
圖2 NANDFLASH與STM32F103ZET6連接圖
2.2 以太網接口電路設計
采用以太網接口代替?zhèn)鹘y(tǒng)的串口,加快了數(shù)據(jù)傳輸?shù)乃俣?,同時可以實現(xiàn)遠程控制。由于STM32F103ZET6片內沒有集成以太網MAC和PHY功能,但其FSMC支持擴展以太網控制芯片,本系統(tǒng)在FSMC上擴展一片DAVICOM公司的DM9000A芯片對STM32F103ZET6進行以太網擴展,DM9000A與STM32F103ZET6的連接如圖3所示。
圖3 DM9000A與STM32F103ZET6連接圖
STM32F103ZET6通過FSMC訪問DM9000A,對于STM32F103ZET6來說,DM9000A就是一個靜態(tài)存儲器外設。DM9000A采用16位模式,數(shù)據(jù)線SD0~SD15直接與FMSC數(shù)據(jù)線低16位FSMC_D0~FSMC_D15相連;DM9000A片選信號線nCS連接至FSMC片選信號FSMC_NE4,這樣DM9000A端口地址為0x6c000000;DM9000A的中斷信號線INT可直接連接至STM32F103ZET6的IO口,在程序中激活處理器IO口的中斷復用功能,STM32以中斷方式接收網卡數(shù)據(jù)。
2.3 掃描驅動電路設計
掃描驅動電路是整個控制系統(tǒng)的重要組成部分,系統(tǒng)中它由一塊FPGA和雙體RAM組成,其結構如圖4所示,主要完成灰度數(shù)據(jù)讀取、上屏數(shù)據(jù)的產生與傳輸、移位和鎖存時鐘的產生、行選信號的產生、灰度控制信號的產生等功能。
圖4 掃描驅動電路結構圖
掃描驅動輸出信號的仿真波形如圖5所示,其中en是灰度控制信號,用來控制顯示時間,產生灰度效果;row_sel是行選信號,顯示時用于確定點亮哪一行;sck是移位時鐘,lck是鎖存時鐘,ds_red、ds_blue、ds_green是上屏紅、藍、綠數(shù)據(jù)的輸入端。仿真時紅、藍、綠顯示數(shù)據(jù)分別設定為01交錯、全1、全0??梢钥吹?,在移位時鐘的作用下數(shù)據(jù)移位正確,移位完成后,lck變?yōu)楦唠娖?,將?shù)據(jù)鎖存輸出到LED屏上顯示。
圖5 輸出信號的仿真波形
3 、系統(tǒng)軟件設計
整個系統(tǒng)的軟件包括3個部分:上位機應用軟件、微處理器控制軟件和FPGA控制軟件。3個部分協(xié)同工作,實現(xiàn)對LED顯示屏的控制。
3.1 上位機應用軟件
上位機應用軟件用于人機交互,是控制系統(tǒng)對用戶的接口,要求界面友好、操作簡單。軟件采用VisualC++編寫,完成的主要功能包括:圖像文字信息的編輯、圖像的解碼以及根據(jù)通信協(xié)議將數(shù)據(jù)發(fā)送給下位機。
3.2 微處理器控制軟件
微處理器在整個系統(tǒng)中起著核心調度的作用,它控制著系統(tǒng)各功能模塊的工作狀態(tài),程序包括TCP/IP協(xié)議棧的移植、DM9000A網卡驅動程序等,完成的主要功能有:硬件初始化,上位機與下位機的以太網通信,顯示模式算法設計等。
3.3 FPGA控制軟件
FPGA控制軟件的設計是在QuartusII環(huán)境下完成的,采用硬件描述語言Verilog編寫。主要功能是根據(jù)微處理器的控制,對存儲器進行切換,實現(xiàn)乒乓操作;完成圖像數(shù)據(jù)的重構,把數(shù)據(jù)轉換為能直接用于LED掃描顯示的含有灰度信息的0和1組成的編碼系列,并根據(jù)顯示屏驅動芯片的時序,將編碼系列傳輸?shù)斤@示屏上顯示。
4 、總結
本設計采用32位嵌入式微處理器STM32F103ZET6和可編程邏輯器件EP1C6Q240C8設計了全彩色LED顯示屏控制系統(tǒng),并在實驗室驗證,實現(xiàn)了LED顯示屏的彩色顯示,圖6(a)為一幅實際圖像,圖6(b)是在顯示屏上的顯示效果。
圖6 圖像的灰度顯示
實驗結果表明,系統(tǒng)運行穩(wěn)定,顯示畫面清晰、流暢。系統(tǒng)該系統(tǒng)能滿足異步全彩色LED顯示屏高處理速度,大容量數(shù)據(jù)存儲的要求,支持256灰度級全彩圖像、動畫的顯示,同時通過改變FPGA內部的硬件邏輯可方便地對系統(tǒng)進行升級,結構簡單、可靠性高,可替代市場上同類設計產品,應用前景廣泛。
led顯示器相關文章:led顯示器原理
存儲器相關文章:存儲器原理
評論