基于雙RAM技術(shù)的LED顯示屏控制系統(tǒng)設(shè)計(jì)_第1頁
基于雙RAM技術(shù)的LED顯示屏控制系統(tǒng)設(shè)計(jì)_第2頁
基于雙RAM技術(shù)的LED顯示屏控制系統(tǒng)設(shè)計(jì)_第3頁
基于雙RAM技術(shù)的LED顯示屏控制系統(tǒng)設(shè)計(jì)_第4頁
基于雙RAM技術(shù)的LED顯示屏控制系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、基于雙RAM技術(shù)的LED顯示屏控制系統(tǒng)設(shè)計(jì) 摘要:針對顯示信息在垂直循環(huán)顯示時(shí)存儲器的使用效率低,占用存儲器幅度大等問題,基于雙RAM思想,用靜態(tài)顯示數(shù)據(jù)組織方式去組織動(dòng)態(tài)顯示數(shù)據(jù),達(dá)到降低存儲器的占用的目的。將組織好的數(shù)據(jù)按奇偶規(guī)則存放在一塊帶有SPI接口的串行FLASH中,并使用高速單片機(jī)VRS51L3074控制數(shù)據(jù)輸出顯示。在一定程度上解決了存儲器效率的問題,并且在顯示信息量比較大時(shí),本控制系統(tǒng)控制的矩形顯示屏,可以彌補(bǔ)長條顯示屏在刷新頻率上的限制,信息輸出慢等問題。關(guān)鍵字:LED顯示屏;數(shù)據(jù)組織;SPI接口;VRS51L3074;雙RAM中圖分類號:TP391文獻(xiàn)標(biāo)識碼:ADesign

2、 of Controlling System for LED PanelBased on Double RAM TechnologyZhang Wei1 Jin Wei2 Zeng Xuanhong3(1,3.School of Information Science and Technology,Southwest Jiaotong University;Chengdu 610031,China2.Department of Computer and Communication Engineering,Emei Branch of Southwest Jiaotong University,

3、 Emei 614202,China)Abstract: To solve the inefficient use of memory, data organization of static display based on the double RAM technologyis used to organize the data of dynamic display instead of dynamicdataorganization.The organized data is stored in a serial FLASH with SPI by parity rule,and MCU

4、 VRS51L3074 is used to control the data output to the LED panel.To some extent,the control system,which is used to control the rectangle LED panel,solves the problem of memory efficiency and make up the refreshing rate limitations,low rate of information output in the long LED panel.Keyword:LED Pane

5、l; Data organization; SPI; VRS51L3074; Double RAM引 言長屏的LED顯示屏在生活中應(yīng)用的很多,這種顯示屏的控制電路簡單,掃描線有限,顯示信息量也不是很大。當(dāng)顯示信息量比較大時(shí),采用一般的長屏顯示屏,顯示信息過慢,即使采用超長屏的顯示屏,其數(shù)據(jù)輸出速率也很慢,同時(shí)顯示屏的刷新頻率也不一定能滿足顯示需求。矩形顯示屏顯示一屏的信息量大,并且可以按需要擴(kuò)展顯示屏的高度,不存在頻率上的限制,可以彌補(bǔ)長條顯示屏顯示信息時(shí)存在的一些問題。本文用于控制矩形顯示屏的控制系統(tǒng)數(shù)據(jù)組織使用了雙RAM技術(shù),提高了信息垂直循環(huán)顯示時(shí)存儲器效率,大幅度降低了數(shù)據(jù)存儲器的占用

6、,并且對刷新頻率的要求也不是很高1。1 顯示數(shù)據(jù)組織大多時(shí)候需要顯示的區(qū)域大于或等于實(shí)際顯示的區(qū)域,相等以及小于時(shí)為靜態(tài)顯示,圖1所示的是需要顯示的區(qū)域大于實(shí)際顯示的區(qū)域。為了簡化問題的分析,本文將顯示區(qū)域高度設(shè)置為LED顯示屏高度的4倍,寬度等于LED顯示屏寬度,顯示屏的高度為,寬度為,則顯示區(qū)域高度,寬度,掃描線條數(shù),本文以單色顯示作為描述對象,且(為輸出數(shù)據(jù)寬度),如圖1所示。圖1 顯示區(qū)域圖對于一個(gè)LED顯示屏寬度為,高度為確定后,顯示屏單元板的排列方式也就被確定了,單元板相鄰的兩條掃描線之間的距離為,顯示屏有條掃描線,分別是,每行對應(yīng)一位顯示數(shù)據(jù),顯示屏上的每一個(gè)點(diǎn)對應(yīng)于存儲器中某個(gè)

7、字節(jié)的某一位。各掃描線的起始位置如圖1所示,條掃描線分別指向,。用靜態(tài)顯示數(shù)據(jù)組織方法分別對顯示塊A、B、C、D組織顯示數(shù)據(jù)2。首先對顯示塊A的顯示信息進(jìn)行組織:,即當(dāng)前掃描線各行與第0列相交各點(diǎn)的顯示數(shù)據(jù)按,的順序存儲在存儲器的第一個(gè)存儲單元中。值增加1,當(dāng)前掃描線各行與值對應(yīng)列相交各點(diǎn)的顯示數(shù)據(jù)存儲在存儲器的下一個(gè)存儲單元中。 重復(fù)第步的操作,將至的 個(gè)數(shù)據(jù)按順序全部存儲在存儲器中。條掃描線向下移動(dòng)一行,重復(fù)第至步。直到移動(dòng)到行時(shí)。 數(shù)據(jù)組織結(jié)束。顯示區(qū)域B、C、D,分別按照A的數(shù)據(jù)組織方式去組織顯示數(shù)據(jù)。組織后的顯示數(shù)據(jù)塊按A、B、C、D的順序存儲在RAM0里,然后將RAM0中的顯示數(shù)據(jù)

8、塊A、B、C、D按B、C、D、A的順序拷貝到RAM1中,任何兩個(gè)相鄰顯示塊的顯示數(shù)據(jù)分別在兩塊RAM中都有相同地址存儲區(qū)域。RAM0 和RAM1的顯示數(shù)據(jù)與存儲器的對應(yīng)關(guān)系如圖2所示。圖2 數(shù)據(jù)塊與存儲器之間的排列圖采用雙RAM并行輸出時(shí)的幾種情況,如圖2所示,掃描組1從到,對應(yīng)顯示塊A,數(shù)據(jù)已組織存放在存儲器中,可以直接輸出顯示數(shù)據(jù);掃描組2從到,對應(yīng)顯示塊B也已經(jīng)組織好,可以直接輸出。但是掃描組3,它的位置非同一般,它的掃描線分別對應(yīng)著兩個(gè)塊A和B,第0,1,條掃描線分別對應(yīng)顯示塊A掃描組1的1,2,而第條掃描線對就顯示塊B掃描組2的第0條掃描線,如果要在顯示屏上顯示掃描組3對應(yīng)的這一屏數(shù)

9、據(jù),就一定要同時(shí)使用到掃描組1的第1,2,條掃描線和掃描組1的第0條掃描線組織的顯示數(shù)據(jù)作為輸出數(shù)據(jù)。由于顯示塊A和B的顯示數(shù)據(jù)是分別組織的,這時(shí)就要取RAM0的,和RAM1的位作為輸出到顯示屏的位數(shù)據(jù),這就需要在兩塊RAM同時(shí)輸出的2位中選擇需要的位作為輸出數(shù)據(jù),并且這位數(shù)據(jù)是連續(xù)的位數(shù)據(jù)。顯示步驟(在此,只考慮垂直移動(dòng)顯示效果):雙RAM技術(shù)將顯示數(shù)據(jù)輸出的時(shí)候,是將兩塊RAM中相同地址的兩個(gè)數(shù)據(jù)同時(shí)輸出。所以,如果設(shè)置RAM0為主存儲器,RAM1為從存儲器,則將兩塊RAM的顯示數(shù)據(jù)存在一塊串行存儲器中的時(shí)候,偶地址單元應(yīng)存儲RAM0的數(shù)據(jù),奇地址單元存儲RAM1的數(shù)據(jù),由于數(shù)據(jù)寬度為8,

10、所以每次輸出16位數(shù)據(jù)。如果顯示區(qū)域中以(,)點(diǎn)為顯示起始點(diǎn),在LED屏上顯示一屏顯示信息,則其數(shù)據(jù)選擇控制位只與、掃描線和掃描寬度有關(guān)3。顯示區(qū)域的起始行坐標(biāo)為,一塊顯示區(qū)域有行,則所在的塊為:這里討論在實(shí)際顯示區(qū)域的坐標(biāo)沒有多大意義,只須注意在當(dāng)前顯示塊的相對坐標(biāo),就是在當(dāng)前顯示塊的相對縱坐標(biāo),則相對坐標(biāo)為(,)。動(dòng)態(tài)顯示的基礎(chǔ)是靜態(tài)顯示,靜態(tài)顯示以從特定行顯示一屏為特征,當(dāng)顯示屏從第行開始顯示信息時(shí),因?yàn)橐粔K顯示區(qū)域有個(gè)數(shù)據(jù),則所在塊顯示數(shù)據(jù)的起始地址為:一塊顯示區(qū)域分為個(gè)區(qū),如圖2所示,則所在的分區(qū)記作:一區(qū)存放有個(gè)顯示數(shù)據(jù),所以所在分區(qū)地址與所在塊起始地址之間的相對偏移地址為。所以,

11、只要知道了顯示信息的起始行坐標(biāo),就能得到顯示數(shù)據(jù)在存儲器中的存儲地址。因?yàn)?,記,表示顯示信息跨越兩個(gè)數(shù)據(jù)塊時(shí),需要選擇的數(shù)據(jù)位數(shù)。存儲器輸出16位數(shù)據(jù) 后,從位控制選擇連續(xù)的8位數(shù)據(jù)輸出到顯示屏。當(dāng)數(shù)據(jù)從一個(gè)字節(jié)的位開始輸出16位時(shí),如,前面8位在當(dāng)前顯示是多余的幾位數(shù)據(jù),后面8位數(shù)據(jù)正好是要輸出到顯示屏的8位數(shù)據(jù),當(dāng)這16位數(shù)據(jù)串行輸出到一個(gè)8位的移位寄存器中時(shí),移位寄存器剛好可以容納高8位數(shù)據(jù),并將其輸出顯示。之后各列數(shù)據(jù)的輸出情況同樣如此,不需要額外的指令或電路來對輸出數(shù)據(jù)進(jìn)行選擇輸出。只是在每行第一列數(shù)據(jù)輸出前,通過單片機(jī)模擬i個(gè)時(shí)鐘脈沖輸出到存儲器,讓輸出數(shù)據(jù)產(chǎn)生錯(cuò)位,使數(shù)據(jù)從 位開

12、始輸出。另外有一種情況,當(dāng)顯示信息剛好是A、B、C、D塊中的某一塊時(shí),無須產(chǎn)生模擬脈沖對數(shù)據(jù)進(jìn)行選擇,而是直接將數(shù)據(jù)輸出顯示。通過分析可知,SPI模塊剛好具有這個(gè)功能,通過單片機(jī)額外模擬個(gè)時(shí)鐘脈沖,輸出到串行存儲器的時(shí)鐘信號端,可以使數(shù)據(jù)錯(cuò)位,從指定的某一位開始輸出。當(dāng)顯示信息跨越區(qū)間時(shí),此時(shí)如果一場顯示還沒有完畢,內(nèi)存地址應(yīng)返回到所在塊的起始地址,并從起始地址開始輸出顯示數(shù)據(jù),單片機(jī)模擬的脈沖數(shù)也相應(yīng)發(fā)生變化4。2 LED顯示屏控制系統(tǒng)設(shè)計(jì)為了簡化電路,提高數(shù)據(jù)輸出效率,本控制系統(tǒng)采用RAMTRON(瑞創(chuàng))公司的帶SPI功能模塊的VRS51L3074單片機(jī),如圖3所示。VRS51L3074單

13、片機(jī)的時(shí)鐘頻率為40MHz,指令周期短,處理速度快,效率可以與ARM處理器媲美,但是ARM處理器的價(jià)格要高得多。VRS51L3074單片機(jī)工作電壓在3.3V左右,但是可以兼容5V5。圖3 LED顯示屏控制電路2.1 VRS51L3074的SPI功能模塊VRS51L3074單片機(jī)的SPI時(shí)鐘頻率可以在范圍內(nèi)調(diào)整,SPI時(shí)鐘頻率最高可以達(dá)到20MHz6。當(dāng)VRS51L3074作為SPI主機(jī)時(shí),可以對SPI運(yùn)行控制、配置和狀態(tài)監(jiān)控以及其他的一些工作環(huán)境進(jìn)行設(shè)置:配置寄存器SPICONFIG:主要對片選信號控制模式、SPI中斷進(jìn)行設(shè)置。狀態(tài)寄存器SPISTATUS:主要用于對SPI運(yùn)行狀態(tài)的監(jiān)控。傳輸

14、字長寄存器SPISIZE:設(shè)置傳輸字長,本文設(shè)置為16位,即每次輸出16位數(shù)據(jù)??刂萍拇嫫鱏PICTRL:對SPI時(shí)鐘速率、時(shí)鐘相位/極性、片選信號,以及SPI時(shí)鐘頻率進(jìn)行設(shè)置。數(shù)據(jù)寄存器SPIRXTX0 SPIRXTX3:用于對SPI接口32位收發(fā)緩沖器的訪問,對數(shù)據(jù)寄存器執(zhí)行寫操作是將數(shù)據(jù)送入發(fā)送緩沖器中,對數(shù)據(jù)寄存器執(zhí)行讀操作是從接收緩沖器中取出收到的數(shù)據(jù)。SPI接口的發(fā)送和接收緩沖器都采用雙緩沖結(jié)構(gòu),從硬件上減少數(shù)據(jù)沖突并提高數(shù)據(jù)傳輸效率。在主模式下對SPIRXTX0寄存器執(zhí)行寫入操作將啟動(dòng)SPI傳輸。當(dāng)傳輸字各行長大于8時(shí),應(yīng)最后向SPIRXTX0寄存器寫入。向串行FLASH輸入控制

15、信號和數(shù)據(jù)地址后,啟動(dòng)串行FLASH傳輸數(shù)據(jù),在SPI時(shí)鐘驅(qū)動(dòng)下,輸出顯示數(shù)據(jù)。并且可以用單片機(jī)模擬串行FLASH時(shí)鐘信號控制任意位數(shù)據(jù)輸出。2.2 數(shù)據(jù)選擇控制電路設(shè)計(jì)的LED顯示屏控制系統(tǒng)如圖3所示,VRS51L3074單片機(jī)內(nèi)部自帶精確的40MHz振蕩器,不需要外部晶振電路提供系統(tǒng)時(shí)鐘,顯示數(shù)據(jù)使用內(nèi)存為16Mb的SST25VF016B,這是一款具有SPI接口的8PIN串行FLASH7。雙RAM技術(shù)輸出顯示數(shù)據(jù)的時(shí)候,是將兩塊RAM中相同地址的兩個(gè)數(shù)據(jù)同時(shí)輸出,所以,將兩塊RAM的顯示數(shù)據(jù)存放在一塊串行存儲器中的時(shí)候,偶地址單元應(yīng)存儲RAM0的數(shù)據(jù),奇地址單元存儲RAM1的數(shù)據(jù),數(shù)據(jù)輸出

16、時(shí),每次輸出16位數(shù)據(jù)。串行存儲器和單片機(jī)的工作電壓都在3.3V左右,但是VRS51L3074單片機(jī)可以兼容5V,簡化了控制電路。控制信號和顯示數(shù)據(jù)在輸出到寄存器74LS164和顯示屏的時(shí)候,需要用74LVC07進(jìn)行電平轉(zhuǎn)換??刂葡到y(tǒng)控制顯示數(shù)據(jù)輸出的流程為: 將掃描線行地址通過P2端口的低四位送給LED顯示屏。 通過顯示數(shù)據(jù)在顯示區(qū)域中的位置,計(jì)算顯示數(shù)據(jù)在存儲器中的地址,并計(jì)算出數(shù)據(jù)選擇的位數(shù)。 通過單片機(jī)P3.0口模擬移位脈沖,輸出到串行FLASH時(shí)鐘信號,移位脈沖數(shù)由數(shù)據(jù)選擇位數(shù)決定。使輸出數(shù)據(jù)產(chǎn)生錯(cuò)位,正確的選擇輸出顯示數(shù)據(jù)。 啟動(dòng)SPI讀取顯示數(shù)據(jù), SPI傳輸字長設(shè)置為16位。模

17、擬脈沖已經(jīng)輸出到串行FLASH使數(shù)據(jù)產(chǎn)生了錯(cuò)位,輸出16位數(shù)據(jù),輸出到顯示屏的數(shù)據(jù)在高8位,經(jīng)過移位剛好可以存放在移位寄存器中,每行第一個(gè)數(shù)據(jù)輸出后,以后此行各列數(shù)據(jù)都是直接輸出。 16位數(shù)據(jù)輸出完畢后,通過P3.1腳產(chǎn)生一個(gè)SCK脈沖,將移位寄存器74LS164中的數(shù)據(jù)輸出移入到單元板的74HC595串行移位寄存器中。 重復(fù)第至步,直到一行數(shù)據(jù)全部輸出完畢后,由P3.2 產(chǎn)生一個(gè)RCK脈沖,讀取的一行數(shù)據(jù)將輸出顯示,然后掃描線下移一行。 重復(fù)第至步。此電路有這樣幾個(gè)特點(diǎn):顯示數(shù)據(jù)從串行FLASH輸出后,不經(jīng)單片機(jī)的處理,直接以“DMA”方式輸出到移位寄存器74LS164,同時(shí)實(shí)現(xiàn)串并轉(zhuǎn)換,節(jié)

18、省數(shù)據(jù)處理時(shí)間,提高顯示效率;在每場數(shù)據(jù)輸出之前,通過信息在顯示區(qū)域中的地址計(jì)算數(shù)據(jù)選擇位數(shù),并通過P3.0 端口模擬個(gè)脈沖輸出到串行FLASH,移出位數(shù)據(jù),數(shù)據(jù)產(chǎn)生錯(cuò)位,使輸出顯示的數(shù)據(jù)在16位輸出數(shù)據(jù)的高8位,可以直接存放在移位寄存器中,輸出到顯示屏,以后同行各列的顯示數(shù)據(jù)輸出時(shí),無需再進(jìn)行數(shù)據(jù)選擇位的判斷,直接將顯示數(shù)據(jù)從存儲器中輸出到顯示屏。存儲器效率分析: 表1 存儲器效率存儲器效率靜態(tài)顯示一般垂直移動(dòng)顯示雙RAM技術(shù)輸出顯示計(jì)算公式效率100%16%100%觀察表1可知,在垂直移動(dòng)顯示使用雙RAM技術(shù)組織,大大提高了存儲器效率,降低了顯示數(shù)據(jù)存儲器的占用。當(dāng)顯示信息比較大時(shí),動(dòng)態(tài)數(shù)

19、據(jù)組織使用的存儲器比較大,利用率低,而采用雙RAM技術(shù)正好解決這個(gè)問題。一塊RAM的效率是100%,雙RAM是50%,當(dāng)有N塊RAM時(shí),效率為。3 程序設(shè)計(jì)針對圖3所示控制電路,按照數(shù)據(jù)輸出控制流程,編寫了一段程序,隨機(jī)顯示一屏信息,顯示數(shù)據(jù)已按順序存儲在串行FLASH中。void display(unsigned int YL) unsigned int i,j,p;unsigned char line, unit_board_num, board_i;unsigned char code *ram_point, *block_addr,* region_addr,* ram_begin_a

20、ddr;block_addr=YL/(Bw*Sw) * (Sw*Dw); /所在塊的起始地址 region_addr=(YL%Sw)*Dw; /所在區(qū)的相對塊的相對地址i=YL/Sw;region_recod=YL%Sw; /此變量記錄顯示數(shù)據(jù)已進(jìn)入哪一區(qū)ram_point=ram_begin_addr+block_addr+region_addr-1; / ram_begin_addr為數(shù)據(jù)起始地址SPI_write_read(0x03); /向串行FLASH發(fā)讀命令,0x03為讀控制字SPI_write_read(ram_point & 0xffffff)>>16);

21、/3字節(jié)24位地址SPI_write_read(ram_point & 0xffff)>>8);SPI_write_read (ram_point & 0xff);unit_board_num=Dw/64; /計(jì)算單元板的數(shù)量for(p=0;p<i;p+) /產(chǎn)生錯(cuò)位的模擬脈沖SCK=0; SCK=1;SCK=0; for(line=0;line<Sw;line+)SPISIZE=0x0f; /設(shè)置2字節(jié)16位傳輸方式for( board_i=0;board_i<unit_board_num;board_i+ ) /按單元板數(shù)循環(huán)送顯示數(shù)據(jù)for(

22、j=0;j<64;j+)SPIRXTX0=ACC; /啟動(dòng)數(shù)據(jù)傳輸出while(SPISTATUS & BIT1) = 0); /等待發(fā)送(接收)完成LED_SCK=0;LED_SCK=1; /送入單元板 EN=1; /換行時(shí)暫關(guān)閉 P2=(P2&0xf0)|line);if(region_recod>=Sw)ram_point=ram_begin_addr+block_addr-1;SPISIZE=0x07;SPI_write_read(ram_point & 0xffffff)>>16);SPI_write_read(ram_point &a

23、mp; 0xffff)>>8);SPI_write_read (ram_point & 0xff);region_recod=0; i+;if(i<=7)for(p=0;p<i;p+) /產(chǎn)生錯(cuò)位的模擬脈沖SCK=0; SCK=1;SCK=0;RCK=1; RCK=0; /產(chǎn)生74HC595輸出鎖存信號EN=0; /開顯示unsigned char SPI_write_read (unsigned char Wr_Rd_Data)unsigned char Temp_Flag;SPDR= Wr_Rd_Data; /啟動(dòng)SPI發(fā)送或接收do /判斷發(fā)送或接收是否完成Temp_Flag=SPSR&0x

溫馨提示

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

評論

0/150

提交評論