free性欧美人与牛,国产又粗又硬又大爽黄老大爷视 ,国产成人人妻精品一区二区三区 ,√天堂8资源中文,国产亚洲精品一区二区三区

廣告
廣告
基于多端口串行Flash的條形LED顯示屏控制
您的位置 資訊中心 > 技術(shù)與應(yīng)用 > 正文

基于多端口串行Flash的條形LED顯示屏控制

2012-08-14 14:33:26 來源:華強(qiáng)LED網(wǎng)

摘要:  本文在分析現(xiàn)有各種條形LED 顯示屏單元板電路的基礎(chǔ)上,提出了一種基于多端口串行Flash存儲(chǔ)器的LED 顯示控制系統(tǒng)。 利用單片機(jī)的SPI接口產(chǎn)生可控時(shí)鐘,將多端口串行Flash 存儲(chǔ)器中的顯示數(shù)據(jù)以“DMA”方式直接輸出至超長(zhǎng)條形LED 顯示屏。

關(guān)鍵字:  LED 顯示屏,  Flash存儲(chǔ)器

LED 顯示屏應(yīng)用中,超長(zhǎng)條形LED 屏是非常廣泛的一種形式,其特點(diǎn)是長(zhǎng)度“特別長(zhǎng)”而寬度窄。 超長(zhǎng)LED 顯示屏目前沒有明確的定義,可以將其水平方向的點(diǎn)數(shù)定義為≥2 048 比較合適。

以由1 /4 掃描P10 單元板(點(diǎn)間距10 mm) 組成的超長(zhǎng)條形LED 顯示屏為例,當(dāng)水平方向的點(diǎn)數(shù)為2 048 時(shí),其水平方向物理尺寸為20. 48 m. LED 屏的寬度(垂直方向) 點(diǎn)數(shù)一般為16、24 和32 點(diǎn),最多不超過64 點(diǎn),應(yīng)用中以能夠顯示一行各類字體的漢字為主。 為保證刷新率,在對(duì)超長(zhǎng)LED 顯示屏的控制上,要求在規(guī)定時(shí)間內(nèi)送出更多數(shù)據(jù),普通的LED 顯示屏控制卡很難實(shí)現(xiàn)控制要求。

本文在分析現(xiàn)有各種條形LED 顯示屏單元板電路的基礎(chǔ)上,提出了一種基于多端口串行Flash存儲(chǔ)器的LED 顯示控制系統(tǒng)。 利用單片機(jī)的SPI接口產(chǎn)生可控時(shí)鐘,將多端口串行Flash 存儲(chǔ)器中的顯示數(shù)據(jù)以“DMA”方式直接輸出至超長(zhǎng)條形LED 顯示屏。

1 常用單元板內(nèi)部串行移位寄存器連接方式

圖1 為3 種常用單元板內(nèi)部串行移位寄存器連接方式。 其中圖1(a) 為單元板74HC595 與LED發(fā)光管點(diǎn)陣連接關(guān)系及簡(jiǎn)化表示電路。 LED 顯示屏單元板內(nèi)部使用的串行移位寄存器一般為74HC595、MBI5026 或MBI5026 兼容芯片,而MBI5026 可以看成是由兩片74HC595 級(jí)聯(lián)構(gòu)成,為恒流源驅(qū)動(dòng)模式,更適合LED 的驅(qū)動(dòng)。

圖1(b) 、(c) 、(d) 分別為P10、P16、F3. 75 或F5. 0單元板的連接方式。

圖1 3 種常用單元板內(nèi)部串行移位寄存器連接方式

2 超長(zhǎng)LED 顯示屏面臨的問題及解決方案

目前,市場(chǎng)上大量的門頭屏( 條形LED 顯示屏)是LED 顯示屏應(yīng)用最廣的一種形式。從技術(shù)上來說,門頭屏的水平方向點(diǎn)數(shù)從256 點(diǎn)至數(shù)千點(diǎn),而高度一般不超過64 點(diǎn)。隨著市場(chǎng)需求和顯示精度的提高,數(shù)千點(diǎn)長(zhǎng)度的超長(zhǎng)LED 顯示屏需求量在不斷加大。 普通的LED 顯示屏控制卡難于滿足刷新率的要求,以在長(zhǎng)度上像素點(diǎn)是4 096 的F3. 75 LED 顯示屏為例,設(shè)刷新率為60 Hz,其SCK時(shí)鐘周期至少為106 /60 /16 /4 096 = 0. 254 μs = 254 ns.

解決超長(zhǎng)LED 顯示屏數(shù)據(jù)輸出的方法有兩種:一是選擇高性能嵌入式處理器和FPGA 芯片,該方法控制卡成本較高;二是巧妙應(yīng)用單片機(jī)上的特殊功能部件并優(yōu)化組織數(shù)據(jù)算法,這種方法成本很低。本文采用的就是第2 種方法,通過優(yōu)化算法將數(shù)據(jù)預(yù)先寫入多端口串行Flash 存儲(chǔ)器SST26VF016B 中,利用STC12C5616 單片機(jī)的SPI部件產(chǎn)生高速可控SCK 時(shí)鐘,將多端口串行Flash存儲(chǔ)器中的顯示數(shù)據(jù)以“DMA”方式直接輸出至超長(zhǎng)條形LED 顯示屏中,滿足超長(zhǎng)LED 顯示屏的顯示要求。

超長(zhǎng)LED 顯示屏高度一般不超過64 點(diǎn),若控制1 /16 掃描單色LED 顯示屏,SST26VF016B 存儲(chǔ)器的4 位數(shù)據(jù)端口正好滿足LED 顯示屏數(shù)據(jù)口寬度的需要。圖2 為SST26VF016B 存儲(chǔ)器的控制時(shí)序,CS 為SST26VF016B 存儲(chǔ)器的片選端,所有對(duì)存儲(chǔ)器的操作都要在CS 為低電平期間進(jìn)行;SCK 為時(shí)鐘線,當(dāng)空閑模式時(shí),SCK 信號(hào)可以處于低電平狀態(tài)( MODE 0),也可以處在高電平狀態(tài)( MODE 3) ; SIO( 3∶ 0) 為4 位數(shù)據(jù)端口,在數(shù)據(jù)傳輸時(shí),先傳字節(jié)的高4 位,再傳字節(jié)的低4 位。從存儲(chǔ)器的控制時(shí)序可以看出,對(duì)存儲(chǔ)器的控制按照命令字、24 位存儲(chǔ)地址、虛擬字節(jié)、數(shù)據(jù)字節(jié)0 到數(shù)據(jù)字節(jié)N 的順序發(fā)送。存儲(chǔ)器的命令字可以實(shí)現(xiàn)對(duì)存儲(chǔ)器進(jìn)行片擦除、扇區(qū)擦除、單字節(jié)讀寫、連續(xù)字節(jié)讀寫等功能,完全能夠滿足超長(zhǎng)LED 顯示屏對(duì)存儲(chǔ)器的容量和控制方式的要求。

STC12C5616 是STC 公司推出的高速1T 單片機(jī),時(shí)鐘頻率可達(dá)30 MHz 以上,其內(nèi)部集成一個(gè)高速串行通信接口部件( 即SPI 接口)。當(dāng)STC12C5616 的SPI 部件采用主模式工作時(shí),其SPI時(shí)鐘輸出頻率( fclk) 可以達(dá)到晶振頻率( fosc) 的1 /4 倍,并且可以靈活配置它的時(shí)鐘相位和時(shí)鐘極性,既滿足對(duì)SST26VF016B存儲(chǔ)器控制的要求,又滿足超長(zhǎng)LED 顯示屏對(duì)時(shí)鐘的要求。

3 超長(zhǎng)LED 顯示屏控制卡電路設(shè)計(jì)

利用串行Flash 存儲(chǔ)器SST26VF016B 的多位數(shù)據(jù)口存儲(chǔ)器和STC12C5616 單片機(jī)的SPI 部件能產(chǎn)生高速SCK 時(shí)鐘的特點(diǎn),將顯示數(shù)據(jù)從串行Flash存儲(chǔ)器旁路輸出至LED 顯示屏,電路如圖3 所示。

圖3 超長(zhǎng)LED 顯示屏控制卡電路圖。

當(dāng)顯示屏的動(dòng)態(tài)刷新速率達(dá)到50 次/s 時(shí),在1 /16 掃描的LED 顯示屏上,一行顯示時(shí)間要小于1 /50 /16 s,即1. 25 ms. 在控制卡設(shè)計(jì)上,當(dāng)fosc =22 MHz時(shí),串行Flash 時(shí)鐘頻率fclk = 1 /4 fosc =5. 5 MHz,故4 096 個(gè)CLK 時(shí)鐘所需時(shí)間為4 096 × 1 /(5. 5 × 106 ) s = 0. 744 ms,加上采用SQI協(xié)議發(fā)送存儲(chǔ)器指令和地址的時(shí)間后也小于1. 25 ms,故在圖3 中,單片機(jī)STC12C5616 的外部時(shí)鐘選擇22 MHz 時(shí)鐘,就可以保證在SQI 協(xié)議方式下實(shí)現(xiàn)4 096 超長(zhǎng)顯示屏的顯示。

單片機(jī)STC12C5616 的外部時(shí)鐘選擇22. 118 4 MHz,便于串行口波特率的精確控制;引腳P3. 0和P3. 1為UART 接口,通過通信接口芯片MAX232 芯片實(shí)現(xiàn)控制卡和PC 機(jī)之間的通信連接;引腳P2. 0 ~ P2. 3為4 位數(shù)據(jù)線,該數(shù)據(jù)線一方面連接存儲(chǔ)器SST26VF016B 的4 位數(shù)據(jù)口,另一方面通過74HC245 驅(qū)動(dòng)后連接到LED 單元板輸出接口的數(shù)據(jù)線上。在控制卡上設(shè)計(jì)有2 個(gè)單色LED單元板輸出接口,接口J1 使用數(shù)據(jù)線D0和D1,接口J2 使用數(shù)據(jù)線D2和D3; 引腳P1. 7為SPI 時(shí)鐘輸出,SPI 時(shí)鐘輸出線同時(shí)連接到串行Flash 存儲(chǔ)器SST26VF016B 和LED 單元板的時(shí)鐘輸入;引腳P1. 4為串行Flash 存儲(chǔ)器SST26VF016B 的片選信號(hào); 引腳P3. 5為L(zhǎng)ED 單元板的數(shù)據(jù)鎖存信號(hào);引腳P3. 7為L(zhǎng)ED 單元板的使能信號(hào)輸出;引腳P1. 0 ~P1. 3為L(zhǎng)ED 單元板的行選擇信號(hào)輸出;J1 和J2 連接頭用來連接顯示屏在高度方向上的LED 單元板,以符合門頭屏64 點(diǎn)高度要求。

該電路的設(shè)計(jì)可以靈活地在單片機(jī)、串行存儲(chǔ)器和LED 單元板相互之間實(shí)現(xiàn)3 種不同的數(shù)據(jù)訪問模式,分別是:

(1) 單片機(jī)和存儲(chǔ)器之間的正常訪問。

由圖3 可以看出,單片機(jī)STC12C5616 和串行Flash 存儲(chǔ)器SST26VF016B 之間的連接是參照數(shù)據(jù)手冊(cè)進(jìn)行連接的,可以實(shí)現(xiàn)正常的數(shù)據(jù)存取,同時(shí)該數(shù)據(jù)也會(huì)進(jìn)入LED 單元板上的移位寄存器緩沖區(qū),但只要LED 單元板上的數(shù)據(jù)鎖存RCK 沒有得到有效信號(hào),進(jìn)入LED 單元板的數(shù)據(jù)是不顯示出來的無效數(shù)據(jù)。

(2) 單片機(jī)和LED 單元板之間數(shù)據(jù)通信。

將單片機(jī)引腳P1. 4置高電平,即將串行Flash存儲(chǔ)器的使能端無效,這時(shí)存儲(chǔ)器的數(shù)據(jù)端口呈高阻狀態(tài),單片機(jī)和LED 單元板之間數(shù)據(jù)通信就不會(huì)受到存儲(chǔ)器數(shù)據(jù)口的影響,可以將單片機(jī)的數(shù)據(jù)正常輸出到LED 單元板上。

(3) 存儲(chǔ)器和LED 顯示屏之間的數(shù)據(jù)傳輸。

首先采用第(1) 種模式,單片機(jī)先向串行存儲(chǔ)器輸出命令字、存儲(chǔ)地址和虛擬字節(jié),然后將單片機(jī)的數(shù)據(jù)口P2. 0 ~ P2. 3全部置高電平,通過SPI 時(shí)鐘從串行存儲(chǔ)器讀取顯示數(shù)據(jù),同時(shí)以“DMA”方式進(jìn)入LED 單元板,當(dāng)讀取完一行數(shù)據(jù)后,在LED單元板上的數(shù)據(jù)鎖存端RCK 上產(chǎn)生有效信號(hào),就可以顯示該行數(shù)據(jù)。當(dāng)采用這種模式時(shí),一定要將單片機(jī)STC12C5616 的引腳P2. 0 ~ P2. 3設(shè)置為“弱上拉”模式。

4 超長(zhǎng)LED 顯示屏顯示程序設(shè)計(jì)

在1 /16 單色LED 顯示屏硬件電路設(shè)計(jì)中,74HC595 采用直通方式連接。根據(jù)直通方式特點(diǎn),預(yù)先對(duì)單色顯示數(shù)據(jù)進(jìn)行優(yōu)化組織,將組織后的顯示數(shù)據(jù)預(yù)先存放在串行Flash 存儲(chǔ)器SST26VF016B 中。如圖4 所示,單片機(jī)輸出顯示每行數(shù)據(jù)時(shí)按“輸出數(shù)據(jù)→送移位脈沖→地址加1”的順序重復(fù)進(jìn)行,顯示完一行后,RCK 鎖存顯示,通過ABCD 切換行選通線。

圖4 1 /16 掃描單色F3. 75 或F5. 0 單元板( 64 × 32 點(diǎn)) 連接方式。

|

以LED 顯示屏的水平方向點(diǎn)數(shù)為4 096 點(diǎn)為例,其顯示一幀數(shù)據(jù)的程序代碼如下:

woid Display(unsigned long begin_Addr)

{

unsigned char Ln

,Bv = 1;

unsigned int Data_Length,Lw = 4096;

unsigned long Addr;

Data_Length = Bv* Lw

) ;

for ( Ln = 0; Ln < 16; Ln + + )

{

Addr = Begin_Addr + Ln* Data_Length;

CS = 0;

SendSQI_Byte( 0x0B) ; / /送讀命令

/ /送3 個(gè)字節(jié)地址

SendSQI_Byte( ( Addr > 16) &0xff) ;

SendSQI_Byte( ( Addr > 8) &0xff) ;

SendSQI_Byte( ( Addr&0xff) ;

SendSQI_Byte( ( 0xff) ; / /送虛字節(jié)

P2 = P2 |0x0f;

SPCTL = 0xd0; / /允許SPI 接口

SPDAT = 0xff; / /啟動(dòng)第1 次SPI 發(fā)送

Data_Length = ( Data_Length> 3) - 1;

while( Data_Length! = 0)

{ / /SPI 時(shí)鐘每次傳輸8 個(gè)脈沖

while( ( SPSTAT&0x80) == 0) ;

SPSTAT = 0x80; / /清接收標(biāo)志

SPDAT = 0xff; / /啟動(dòng)SPI 發(fā)送

Data_Length -- ;

}

while( ( SPSTAT&0x80) == 0) ;

SPSTAT = 0x80; / /清接收標(biāo)志

SPCTL = 0x90; / /禁止SPI 接口

CS = 1; /* disable devicce * /

EN = 0;

RCK = 1; RCK = 0;

PI = ( ( P1&0xf0) | Ln

) ;

EN = 1;

}

}

在設(shè)計(jì)程序時(shí),僅在換行時(shí)關(guān)閉顯示屏,避免它產(chǎn)生余輝,其余時(shí)間都點(diǎn)亮。在該程序中,Bv為數(shù)據(jù)線在垂直方向使用595 的組數(shù);Lw為L(zhǎng)ED 顯示屏水平方向像素點(diǎn)數(shù);Ln為當(dāng)前LED 顯示屏顯示數(shù)據(jù)行號(hào)。 當(dāng)顯示數(shù)據(jù)時(shí),采用存儲(chǔ)器和LED 顯示屏的數(shù)據(jù)輸出模式,單片機(jī)先向串行存儲(chǔ)器輸出“讀數(shù)據(jù)”命令字“0x0B”,然后輸出24 位地址和虛擬字節(jié),再使單片機(jī)數(shù)據(jù)口輸出高電平,就可以根據(jù)LED 顯示屏的長(zhǎng)度輸出SCK 脈沖。送完一行數(shù)據(jù)后,禁止SPI 接口,RCK 鎖存信號(hào)有效,切換至下一行,按重復(fù)步驟繼續(xù)輸出顯示數(shù)據(jù)。

5 測(cè)試

經(jīng)過測(cè)試后,顯示屏顯示正常,沒有抖動(dòng)情況,使用邏輯分析儀測(cè)試了其刷新率,如圖5(b) 所示,信號(hào)A 的電平寬度表示顯示1 行所需要的時(shí)間,其寬度為1. 036 16 ms,顯示1 幀的時(shí)間為16 ×1. 036 16 ms≈16 ms,所以LED 顯示屏的刷新率為1 /16 ms = 62. 5 Hz. 而當(dāng)LED 顯示屏的刷新率大于50 次/s 時(shí),就可以滿足設(shè)計(jì)要求,故本設(shè)計(jì)能夠滿足正常顯示要求。通過測(cè)試SCK 信號(hào),如圖5(a)所示,可以看出SCK 信號(hào)每8 個(gè)脈沖1 組,每組之間的時(shí)間間隔僅為570 ns,該時(shí)間主要消耗在判斷SPI 數(shù)據(jù)傳輸完成標(biāo)志和循環(huán)控制上。

圖5 LED 屏信號(hào)測(cè)試

6 結(jié)論

本文提出了基于多端口串行Flash 存儲(chǔ)器的LED 顯示控制系統(tǒng),利用單片機(jī)的SPI 接口產(chǎn)生可控時(shí)鐘,將多端口串行Flash 存儲(chǔ)器中的顯示數(shù)據(jù)以“DMA”方式直接輸出至超長(zhǎng)條形LED 顯示屏。

其制造成本低廉,根據(jù)本文程序及邏輯分析儀得到的時(shí)序圖可知,該方法可以控制4 096 × 64 點(diǎn)陣單色LED 顯示屏,在超長(zhǎng)顯示屏市場(chǎng)上有很好的應(yīng)用前景。

本文為嗶哥嗶特資訊原創(chuàng)文章,未經(jīng)允許和授權(quán),不得轉(zhuǎn)載,否則將嚴(yán)格追究法律責(zé)任;

閱讀延展
LED 顯示屏 Flash存儲(chǔ)器
  • 解讀ARM7內(nèi)核微控制器以太網(wǎng)接口電路

    解讀ARM7內(nèi)核微控制器以太網(wǎng)接口電路

    嵌入式主控模塊采用了基于ARM7TDMI-S內(nèi)核的微控制器LPC2148,集成度非常高。內(nèi)嵌40kB的片內(nèi)靜態(tài)RAM和512kB的片內(nèi)Flash存儲(chǔ)器,片內(nèi)集成ADC、DAC轉(zhuǎn)換器,看門狗,實(shí)時(shí)時(shí)鐘RTC,2個(gè)UART,2個(gè)I2C還有SPI等多個(gè)總線接口,及USB2.0全速接口。

  • 基于EPG3231和閃存的聲音播放器設(shè)計(jì)

    基于EPG3231和閃存的聲音播放器設(shè)計(jì)

    提出一種在單片機(jī)系統(tǒng)中比較簡(jiǎn)單地使用大容量NAND Flash存儲(chǔ)器的方法。

  • 瑞薩電子發(fā)布應(yīng)用廣泛的少管腳MCU

    瑞薩電子發(fā)布應(yīng)用廣泛的少管腳MCU

    高級(jí)半導(dǎo)體解決方案領(lǐng)軍廠商瑞薩電子(中國(guó))有限公司(以下簡(jiǎn)稱“瑞薩”)宣布推出 R7F0C80112ESP/R7F0C80212ESP 低功耗MCUs,配備小容量Flash存儲(chǔ)器,采用10管腳SSOP封裝,可以滿足消費(fèi)類電子,健康器械以及工業(yè)設(shè)備中對(duì)小容量單片機(jī)的需求。

  • 瑞薩電子推出帶有嵌入式40 nm Flash存儲(chǔ)器

    瑞薩電子推出帶有嵌入式40 nm Flash存儲(chǔ)器

    高級(jí)半導(dǎo)體解決方案領(lǐng)導(dǎo)廠商瑞薩電子株式會(huì)社(TSE:6723)今天宣布推出面向汽車車身應(yīng)用的RH850/F1x系列32位微控制器(MCU),它是RH850系列汽車MCU的首款產(chǎn)品,配置了采用業(yè)內(nèi)最先進(jìn)40 nm工藝的嵌入式Flash存儲(chǔ)器。

  • 基于DSP全數(shù)字化語音系統(tǒng)的設(shè)計(jì)方案

    基于DSP全數(shù)字化語音系統(tǒng)的設(shè)計(jì)方案

    本文就是用F206對(duì)MSM6588語音芯片進(jìn)行錄音、放間控制,用FLASH存儲(chǔ)器AM29F040B進(jìn)行語音數(shù)據(jù)存儲(chǔ),用差分線驅(qū)動(dòng)器和接收器SN75LBC180在RS-485總線網(wǎng)絡(luò)上傳輸語音數(shù)據(jù),從而滿足全數(shù)字化語言教學(xué)實(shí)驗(yàn)室對(duì)學(xué)生機(jī)提出的上述要求的。

  • 進(jìn)軍CPU領(lǐng)域 三星勝算有多大

    進(jìn)軍CPU領(lǐng)域 三星勝算有多大

    眾所周知,三星電子是世界IT領(lǐng)域第一大跨國(guó)巨頭,近年來雖然在白電領(lǐng)域銷售形勢(shì)不很樂觀,但與半導(dǎo)體關(guān)聯(lián)度較高的黑電產(chǎn)品卻逆世界經(jīng)濟(jì)形勢(shì)而增長(zhǎng),發(fā)展態(tài)勢(shì)看好。在半導(dǎo)體生產(chǎn)線建設(shè)方面更是連連出手,先是在西安準(zhǔn)備投巨資建立Nand Flash存儲(chǔ)器生產(chǎn)線,現(xiàn)又宣布向CPU領(lǐng)域進(jìn)軍。面對(duì)眾多世界強(qiáng)手的激烈競(jìng)爭(zhēng),三星從生產(chǎn)存儲(chǔ)器跨到CPU,前景如何?三星有多少勝算和機(jī)會(huì)?

微信

第一時(shí)間獲取電子制造行業(yè)新鮮資訊和深度商業(yè)分析,請(qǐng)?jiān)谖⑿殴娰~號(hào)中搜索“嗶哥嗶特商務(wù)網(wǎng)”或者“big-bit”,或用手機(jī)掃描左方二維碼,即可獲得嗶哥嗶特每日精華內(nèi)容推送和最優(yōu)搜索體驗(yàn),并參與活動(dòng)!

發(fā)表評(píng)論

  • 最新評(píng)論
  • 廣告
  • 廣告
  • 廣告
廣告
粵B2-20030274號(hào)   Copyright Big-Bit ? 2019-2029 All Right Reserved 大比特資訊 版權(quán)所有     未經(jīng)本網(wǎng)站書面特別授權(quán),請(qǐng)勿轉(zhuǎn)載或建立影像,違者依法追究相關(guān)法律責(zé)任