《電子技術應用》
您所在的位置:首頁 > 顯示光電 > 設計應用 > 基于單片機的LED顯示屏控制系統設計
基于單片機的LED顯示屏控制系統設計
摘要: 本設計使用雙RAM技術來組織用于控制矩形顯示屏的控制系統數據,提高了信息垂直循環顯示時的存儲器效率,大幅度降低了對數據存儲器的占用率,并且對刷新頻率的要求也不是很高。
Abstract:
Key words :

  本設計使用雙RAM技術來組織用于控制矩形顯示屏的控制系統" title="控制系統">控制系統數據,提高了信息垂直循環顯示時的存儲器效率,大幅度降低了對數據存儲器的占用率,并且對刷新頻率的要求也不是很高。

  1、LED顯示數據組織

  需要顯示的區域小于或等于實際顯示區域時,采用靜態顯示即可。但大多時候需要顯示的區域大于或等于實際顯示區域,如圖1所示。為了簡化問題的分析,本文將顯示區域高度設置為LED顯示屏" title="LED顯示屏">LED顯示屏高度的4倍,寬度等于LED顯示屏寬度。設顯示屏的高度為Lh,寬度為Lw,則顯示區域高度Dh=4Lh,寬度Dw=Lw。本文以單色顯示作為描述對象,且Bw=Bn=8(Bw為掃描線條數,Bn為輸出數據寬度),如圖1所示。

 

  對于一個LED顯示屏,寬度Lw和高度Lh確定后,顯示屏單元板的排列方式也就確定了。單元板相鄰的兩條掃描線之間的距離為Sw,顯示屏有Bw條掃描線,分別是Y0,Y1,…,YBw-1。每Sw行對應一位顯示數據,顯示屏上的每一個點對應于存儲器中某個字節的某一位。Bw條掃描線分別指向:Y0=O,Y1=Sw,…,BBw-1=(Bw-1)Sw。用靜態顯示數據組織方法分別對顯示塊A、B、C、D組織顯示數據。首先對顯示塊A的顯示信息進行組織(X為列號):

  ①X=0,即當前掃描線各行與第O列相交各點的顯示數據按D0,D1,…,DBw-1的順序存儲在存儲器的第一個存儲單元中。

  ②X值增加1,當前掃描線各行與X值對應列相交各點的顯示數據存儲在存儲器的下一個存儲單元中。直至將X=O至X=Dw-1的Dw個數據按順序全部存儲在存儲器中。

 ?、跙w條掃描線向下移動一行,重復第①至②步,直到Y0移動到Sw-1行時。

  ④數據組織結束。

  本設計使用雙RAM技術來組織用于控制矩形顯示屏的控制系統數據,提高了信息垂直循環顯示時的存儲器效率,大幅度降低了對數據存儲器的占用率,并且對刷新頻率的要求也不是很高。

  1、LED顯示數據組織

  需要顯示的區域小于或等于實際顯示區域時,采用靜態顯示即可。但大多時候需要顯示的區域大于或等于實際顯示區域,如圖1所示。為了簡化問題的分析,本文將顯示區域高度設置為LED顯示屏高度的4倍,寬度等于LED顯示屏寬度。設顯示屏的高度為Lh,寬度為Lw,則顯示區域高度Dh=4Lh,寬度Dw=Lw。本文以單色顯示作為描述對象,且Bw=Bn=8(Bw為掃描線條數,Bn為輸出數據寬度),如圖1所示。

 

  對于一個LED顯示屏,寬度Lw和高度Lh確定后,顯示屏單元板的排列方式也就確定了。單元板相鄰的兩條掃描線之間的距離為Sw,顯示屏有Bw條掃描線,分別是Y0,Y1,…,YBw-1。每Sw行對應一位顯示數據,顯示屏上的每一個點對應于存儲器中某個字節的某一位。Bw條掃描線分別指向:Y0=O,Y1=Sw,…,BBw-1=(Bw-1)Sw。用靜態顯示數據組織方法分別對顯示塊A、B、C、D組織顯示數據。首先對顯示塊A的顯示信息進行組織(X為列號):

  ①X=0,即當前掃描線各行與第O列相交各點的顯示數據按D0,D1,…,DBw-1的順序存儲在存儲器的第一個存儲單元中。

 ?、赬值增加1,當前掃描線各行與X值對應列相交各點的顯示數據存儲在存儲器的下一個存儲單元中。直至將X=O至X=Dw-1的Dw個數據按順序全部存儲在存儲器中。

  ③Bw條掃描線向下移動一行,重復第①至②步,直到Y0移動到Sw-1行時。

 ?、軘祿M織結束。

  顯示區域B、C、D分別按照A的數據組織方式去組織顯示數據。組織后的顯示數據塊按A、B、C、D的順序存儲在RAM0里,然后將RAM0中的顯示數據塊A、B、C、D按B、C、D、A的順序拷貝到RAMl中,任何兩個相鄰顯示塊的顯示數據在兩塊RAM中都有相同的地址存儲區域。RAM0和RAMl的顯示數據與存儲器的對應關系如圖2所示。

  掃描組1從Y0=0到Y0=Sw-1,對應顯示塊A,數據已組織存放在存儲器中,可以直接輸出顯示數據;掃描組2從Y0=Lh到Y0=Lh+ Sw-1,對應顯示塊B也已經組織好,可以直接輸出。但是掃描組3,它的位置非同一般,它的掃描線分別對應著兩個塊A和B;第O,1,…Bw-1條掃描線分別對應顯示塊A掃描組1的1,2,…,Bw-2;而第Bw-1條掃描線就對應顯示塊B掃描組2的第O條掃描線。如果要在顯示屏上顯示掃描組3對應的這一屏數據,就一定要同時使用到掃描組1的第1,2,…,Bw-1條掃描線和掃描組2的第O條掃描線組織的顯示數據作為輸出數據。由于顯示塊A和B的顯示數據是分別組織的,這時就要取RAM0的D0,D2,…,DBw-1和RAMl的D0位作為輸出到顯示屏的Bw位數據,這就需要在兩塊RAM同時輸出的2Bw位中選擇需要的Bw位
作為輸出數據,并且這Bw位數據是連續的。

  顯示步驟(在此只考慮垂直移動顯示效果);雙RAM技術將顯示數據輸出的時候,是將兩塊RAM中相同地址的兩個數據同時輸出。所以,如果設置RAMO為主存儲器,RAMl為從存儲器,則將兩塊RAM的顯示數據存在一塊串行存儲器中時,偶地址單元應存儲RAM0的數據,奇地址單元存儲RAMl的數據,由于數據寬度為8,所以每次輸出16位數據。如果顯示區域中以(XL,YL)點為顯示起始點,在LED屏上顯示一屏顯示信息,則其數據選擇控制位只與YL、掃描線和掃描寬度Sw有關。顯示區域的起始行坐標為YL,一塊顯示區域有Bw·Sw行,則YL所在的塊為:

  這里討論YL在實際顯示區域的坐標沒有多大意義,只須注意YL在當前顯示塊的相對坐標,NL=YL%(Bw·Sw)就是YL在當前顯示塊的相對縱坐標,則相對坐標為(NL,YL)。動態顯示的基礎是靜態顯示,靜態顯示以從特定行顯示一屏為特征,當顯示屏從第YL行開始顯示信息時,因為一塊顯示區域有Sw·Dw個數據,則YL所在塊顯示數據的起始地址為:

  一塊顯示區域分為Sw個區,則YL所在的分區記作:

  一區存放有Dw個顯示數據,所以YL所在分區地址與所在塊起始地址之間的相對偏移地址為(YL%Sw)·Dw。所以,只要知道了顯示信息的起始行坐標,就能得到顯示數據在存儲器中的存儲地址。

  NL=YL/(Bw·Sw),這里記i=NL/Sw(0≤i≤7),表示顯示信息跨越兩個數據塊時需要選擇的數據位數。存儲器輸出16位數據[D0,D1,…,D15]后,從Di位控制選擇連續的8位數據[Di,Di+1,…,D7,…,D7+i]輸出到顯示屏。當數據從一個字節的Di位開始輸出16位時,如[Di,Di+1,…,D7,…,D15,D0,…,Di-1],前面8位在當前顯示是多余的幾位數據,后面8位數據[D8+i,…,D15,D0,…,Di-1]正好是要輸出到顯示屏的8位數據。當這16位數據串行輸出到一個8位的移位寄存器" title="移位寄存器">移位寄存器中時,移位寄存器剛好可以容納高8位數據,并將其輸出顯示。之后各列數據的輸出情況同樣如此,不需要額外的指令或電路來對輸出數據進行選擇輸出。只是在每行第一列數據輸出前,通過單片機模擬i個時鐘脈沖輸出到存儲器,讓輸出數據產生錯位,使數據從Di位開始輸出。另外,當顯示信息剛好是A、B、C、D塊中的某一塊時,無須產生模擬脈沖對數據進行選擇,而是直接將數據輸出顯示。通過分析可知,SPI模塊剛好具有這個功能,通過單片機額外模擬i個時鐘脈沖,輸出到串行存儲器的時鐘信號端,可以使數據錯位,從指定的某一位Di開始輸出。當顯示信息跨越Sw-1區間時,如果一場顯示還沒有完畢,內存地址應返回到YL所在塊的起始地址,并從起始地址開始輸出顯示數據,單片機模擬的脈沖數i也相應發生變化。


  2 、LED顯示屏控制系統設計

  LED顯示屏控制電路。為了提高數據輸出效率,采用RAMtron公司的帶SPI功能模塊的VRS51L3074單片機。VRS51L3074的時鐘頻率為40 M-Hz,指令周期短,處理速度快,效率高;工作電壓在3.3 V左右,但是可以兼容5 V。SST25VF016B是一款具有SPI接口的8引腳串行Flash。7 4LSl64為移位寄存器。

  2.1 VRS51L3074的SPI功能模塊

  VRS51L3074的SPI時鐘頻率可以在SysClk/2~SysClk/10

24范圍內調整,SPI時鐘頻率最高可以達到20MHz。當VRS51L3074作為SPI主機時,可以對SPI運行控制、配置和狀態監控以及其他的一些工作環境進行設置。

  配置寄存器SPICONFIG:主要對片選信號控制模式、SPI中斷進行設置。

  狀態寄存器SPISTATUS:主要用于對SPI運行狀態的監控。

  傳輸字長寄存器SPISIZE:設置傳輸字長,本文設置為16位,即每次輸出16位數據。

  控制寄存器SPICTRL:對SPI時鐘速率、時鐘相位/極性、片選信號,以及SPI時鐘頻率進行設置。

  數據寄存器SPIRXTX0~SPIRXTX3:用于對SPI接口32位收發緩沖器的訪問,對數據寄存器執行寫操作是將數據送入發送緩沖器中,對數據寄存器執行讀操作是從接收緩沖器中取出收到的數據。SPI接口的發送和接收緩沖器都采用雙緩沖結構,從硬件上減少數據沖突并提高數據傳輸效率。在主模式下對SPIRXTX0寄存器執行寫入操作將啟動SPI傳輸。當傳輸字各行長大于8時,應最后向SPIRXTX0寄存器寫入。

  向串行Flash輸入控制信號和數據地址后,啟動串行Flash傳輸數據,在SPI時鐘驅動下輸出顯示數據,并且可以用單片機模擬串行Flash時鐘信號控制任意位數據輸出。

  2.2 數據選擇控制電路

  LED顯示屏控制系統如圖3所示,VRS51L3074單片機內部自帶精確的40 MHz振蕩器,不需要外部晶振電路提供系統時鐘。數據顯示采用內存為16 Mb的SST25VF016B。雙RAM技術輸出顯示數據的時候,是將兩塊RAM中相同地址的兩個數據同時輸出,所以,將兩塊RAM的顯示數據存放在一塊串行存儲器中時,偶地址單元應存儲RAM0的數據,奇地址單元存儲RAMl的數據,數據輸出時每次輸出16位數據。串行存儲器和單片機的工作電壓都在3.3 V左右,但是VRS51L3074可以兼容5V,簡化了控制電路??刂菩盘柡惋@示數據在輸出到寄存器74LS164和顯示屏的時候,需要用74LVC07進行電平轉換。

  控制系統控制顯示數據輸出的流程為:

 ?、賹呙杈€行地址通過P2端口的低4位送給LED顯示屏。

 ?、谕ㄟ^顯示數據在顯示區域中的位置,計算顯示數據在存儲器中的地址,并計算出數據選擇的位數i。

 ?、弁ㄟ^單片機P3.0口模擬移位脈沖,輸出到串行Flash時鐘信號,移位脈沖數由數據選擇位數i決定。使輸出數據產生錯位,正確地選擇輸出顯示數據。

 ?、軉覵PI讀取顯示數據,SPI傳輸字長設置為16位。模擬脈沖已經輸出到串行Flash使數據產生了錯位,輸出16位數據[Di,Di+1,…,D7,…,D15,D0,…,Di-1],輸出到顯示屏的數據[D8+i,…,D15,D0,…,Di-1]在高8位,經過移位剛好可以存放在移位寄存器中。每行第一個數據輸出后,此行各列數據都直接輸出。

  ⑤16位數據輸出完畢后,通過P3.1腳產生一個SCK脈沖,將移位寄存器74LSl64中的數據輸出移入到單元板的串行移位寄存器74HC595中。

 ?、拗貜偷冖苤立莶?,直到一行數據全部輸出完畢后,由P3.2產生一個RCK脈沖,讀取的一行數據將輸出顯示,然后掃描線下移一行。

 ?、咧貜偷冖僦立薏?。

  此電路有這樣幾個特點:顯示數據從串行Flash輸出后,不經單片機的處理,直接以DMA方式輸出到移位寄存器74LSl64,同時實現串并轉換,既節省數據處理時間,又提高顯示效率。在每場數據輸出之前,通過信息在顯示區域中的地址計算數據選擇位數i,并通過P3.O端
口模擬i個脈沖輸出到串行Flash,移出i位數據,數據產生錯位,使輸出顯示的數據在16位輸出數據的高8位,可以直接存放在移位寄存器中,輸出到顯示屏。以后同行各列的顯示數據輸出時,無需再進行數據選擇位的判斷,直接將顯示數據從存儲器中輸出到顯示屏。

  存儲器效率分析如表1所列。

  由表1可知,采用雙RAM技術輸出顯示大大提高了存儲器效率,降低了顯示數據存儲器的占用。當顯示信息量較大時,動態數據組織使用的存儲器比較多、利用率低,而采用雙RAM技術正好解決了這個問題。一塊RAM(靜態顯示時)的存儲器效率是100%,雙RAM的效率是50%。當有N塊RAM時,效率為(N-1)/N。

  
 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲第一福利社区| 午夜精品久久久久久久白皮肤| 国产精品久久久久7777婷婷| 欧美高清视频在线| 久久躁狠狠躁夜夜爽| 久久成人av少妇免费| 欧美在线不卡| 久久精品国产第一区二区三区| 欧美一区二区三区免费观看视频| 亚洲一区视频| 亚洲综合精品| 午夜日韩福利| 欧美在线不卡视频| 久久精品一二三区| 久久青青草原一区二区| 久久久亚洲影院你懂的| 蜜桃久久精品乱码一区二区| 另类天堂av| 欧美va天堂va视频va在线| 欧美二区视频| 欧美日韩国产片| 欧美色欧美亚洲另类二区| 欧美图区在线视频| 国产精品社区| 韩国av一区二区三区| 在线精品视频免费观看| 亚洲第一网站| 亚洲乱码视频| 亚洲综合欧美日韩| 久久国产精品色婷婷| 亚洲黄色尤物视频| 一区二区免费看| 午夜激情久久久| 久久久国产精彩视频美女艺术照福利| 久久亚洲精品伦理| 欧美大片在线观看| 欧美小视频在线| 国产酒店精品激情| 激情综合网址| 99re成人精品视频| 亚洲欧美视频| 亚洲欧洲综合另类| 亚洲视频精品| 久久精品一区二区三区四区| 欧美成人免费在线| 国产精品久久999| 国内精品免费在线观看| 亚洲精品久久久蜜桃| 亚洲永久免费| 亚洲国产精品久久久久婷婷884| 日韩午夜视频在线观看| 性色av一区二区三区| 麻豆精品网站| 国产精品久久福利| 伊人婷婷久久| 亚洲婷婷免费| 亚洲国产美女| 亚洲欧美日韩高清| 麻豆精品传媒视频| 国产精品久久久久久av福利软件 | 欧美一级淫片aaaaaaa视频| 久久久久天天天天| 欧美久久九九| 国产女优一区| 亚洲日本在线观看| 午夜精品久久| 亚洲最新色图| 久久免费黄色| 国产精品久在线观看| 亚洲第一精品夜夜躁人人爽| 亚洲尤物在线| 一本色道久久99精品综合 | 欧美亚洲一区三区| 99视频精品全部免费在线| 欧美与欧洲交xxxx免费观看| 欧美日韩国产影片| 黄色精品一区二区| 亚洲综合三区| 一区二区国产在线观看| 久久综合久久久| 国产精品一区二区a| 亚洲激情视频在线| 久久精品国产亚洲一区二区三区| 亚洲综合精品自拍| 欧美精品福利| 一区久久精品| 久久er99精品| 欧美在线免费播放| 国产精品xnxxcom| 亚洲理论在线观看| 亚洲欧洲综合另类在线| 久久久精品视频成人| 国产精品黄色| 亚洲免费av片| 亚洲精品字幕| 免费不卡视频| 黄色成人免费网站| 欧美一区二区三区免费大片| 午夜视黄欧洲亚洲| 欧美性开放视频| 99香蕉国产精品偷在线观看| 亚洲精品久久久久| 免费成年人欧美视频| 韩国欧美一区| 欧美在线一级视频| 久久国产福利国产秒拍| 国产伦精品一区二区三区在线观看 | 久久精品夜夜夜夜久久| 国产欧美日韩中文字幕在线| 亚洲午夜视频在线| 亚洲欧美日韩人成在线播放| 欧美午夜不卡在线观看免费| 日韩视频一区二区三区在线播放| 亚洲精品日韩综合观看成人91| 免播放器亚洲一区| 在线免费精品视频| 亚洲欧洲精品一区二区三区波多野1战4| 久久久www成人免费无遮挡大片| 国产婷婷色一区二区三区在线| 亚洲欧美综合v| 久久国产欧美精品| 国模大胆一区二区三区| 久久成人这里只有精品| 久久久蜜臀国产一区二区| 韩国一区二区三区美女美女秀| 久久国产免费| 久久婷婷久久| 伊人夜夜躁av伊人久久| 最近看过的日韩成人| 免费在线成人| 亚洲欧洲免费视频| 一本色道**综合亚洲精品蜜桃冫| 欧美另类人妖| 亚洲午夜高清视频| 欧美一区二区在线免费播放| 国产一区二区0| 亚洲国产精品高清久久久| 欧美电影在线免费观看网站| 亚洲精品一区二区在线| 亚洲一区二区三区四区五区黄| 国产精品v欧美精品∨日韩| 亚洲男人第一网站| 久久青草欧美一区二区三区| 亚洲第一毛片| 亚洲一级片在线观看| 国产欧美精品一区aⅴ影院| 久久精品国产99| 欧美国产日本高清在线| 一本久道综合久久精品| 久久er精品视频| 伊人成年综合电影网| 一本色道久久加勒比88综合| 国产精品日本精品| 久久国产66| 欧美理论视频| 午夜亚洲性色视频| 免费在线观看日韩欧美| 夜夜爽99久久国产综合精品女不卡| 欧美一级久久久久久久大片| 精品动漫3d一区二区三区免费| 亚洲精品在线视频观看| 国产精品久久久久久久久搜平片| 欧美一区三区二区在线观看| 欧美韩日一区二区三区| 亚洲午夜羞羞片| 蜜臀久久99精品久久久画质超高清| 日韩午夜中文字幕| 久久精品一区二区三区四区| 亚洲欧洲日产国产网站| 亚洲欧美日韩精品久久| 尹人成人综合网| 亚洲欧美久久| 亚洲大黄网站| 性亚洲最疯狂xxxx高清| 亚洲夫妻自拍| 亚洲欧美日韩在线一区| 亚洲福利视频三区| 欧美一级在线亚洲天堂| 亚洲高清不卡在线| 亚洲欧美一区二区在线观看| 精品动漫3d一区二区三区| 亚洲一级免费视频| 亚洲电影在线播放| 欧美一区二区三区日韩| 亚洲日韩第九十九页| 久久久久久91香蕉国产| 一个色综合av| 欧美福利电影网| 亚洲欧美日韩直播| 欧美日韩成人在线视频| 亚洲电影在线观看| 国产美女一区二区| 亚洲一区二区三区777| 亚洲第一免费播放区| 久久福利资源站| 亚洲丝袜av一区| 欧美日韩国产va另类| 最新日韩欧美| 国产一区二区黄色| 午夜欧美不卡精品aaaaa|