多種串行接口技術在LED大屏幕顯示系統(tǒng)中應用
1 系統(tǒng)總體結(jié)構(gòu)組成
如圖1所示,系統(tǒng)的組成電路由以下4部分組成:LED顯示屏、以P87LPC767單片機為核心的驅(qū)動電路、PC機與單片機的通信電路和由24C16器件組成的I2C總線接口電路。為了節(jié)約井口,本系統(tǒng)采用了以下3種串行方式傳遞數(shù)據(jù)。
1.1 I2C串行總線接口
P87LPC767的I2C總線符合標準的I2C總線規(guī)范,總線工作的時鐘信號可由P87LPC767自動產(chǎn)生,但數(shù)據(jù)卻是以位的方式發(fā)送和接受的,因此他的控制軟件較為復雜,但卻更為靈活。本系統(tǒng)P87LPC767的I2C總線上接24C16存儲器,就構(gòu)成了一個I2C系統(tǒng),解決了大屏幕顯示屏顯示漢字所需大量數(shù)據(jù)信息的存儲。P87LPC767是主控機(主機),串行時鐘信號由他產(chǎn)生,他將數(shù)據(jù)寫入24C16為主發(fā)送,從24C16中讀取數(shù)據(jù)為主接收,24C16只能是被控機(從機)。主發(fā)送工作方式是指P87LPC767作為主控機向被控機發(fā)送數(shù)據(jù)的傳送過程,發(fā)送和接收各有2種方式:
(1)單純地發(fā)或讀從機的數(shù)據(jù);
(2)發(fā)或讀從機指定地址的數(shù)據(jù)。
1.2異步串行通訊接口
上位機PC用于對顯示信息進行編輯和對漢字進行提取,讀取漢字字模的基本步驟:
(1)獲取漢字的機內(nèi)碼;
(2)通過漢字推算區(qū)位碼;
(3)由區(qū)位碼計算出漢字在字庫中的位置offset:offset=[(區(qū)碼一1)×94+(位碼一1)]32;從該偏移地址讀取32B,就是相關漢字的點陣字模代碼。通信功能利用VisualC++6.0提供的MSComm通信控件,把字體的字模信息(根據(jù)顯示屏所需格式進行重排)通過串行口分段發(fā)送給單片機,單片機再通過12C總線發(fā)送給串行E2PROM進行存儲。
1.3 軟件實現(xiàn)串行數(shù)據(jù)傳送接口
由軟件實現(xiàn)2路串行數(shù)據(jù)的輸出以完成顯示屏行和列數(shù)據(jù)的要求,下面是串行輸出1 B數(shù)據(jù)的軟件源代碼:
sbit clk=PO^ 0;
sbit dat=P1^ 7;
unsigned char bdata senddata;
sbit sendbit=senddata^7;
vid sendbyte(void)
{
int i;
POMl=0x00;
POM2=0x41;
P1M1=0x00;
P1M2=0X80;
elk=0;
for(=1;i=8;i++)
{
clk=0;
dat=sendbitl;
clk=1;
senddata=senddata1;
}
clk=0;}
可以看出,只要給出senddata數(shù)據(jù)就可以在P1^7腳串行輸出該數(shù)據(jù)。通過改變elk,dat腳及輸出模式選擇可方便實現(xiàn)在其他管腳的串行數(shù)據(jù)輸出功能。
2 結(jié) 語
采用多種串行接口技術,使新型的單片機P87LPC767能在大屏幕顯示中應用。P87LPC767可工作在20MHz時鐘頻率,避免了顯示屏越大,其他單片機頻率底而出現(xiàn)的閃爍現(xiàn)象。經(jīng)過調(diào)試,顯示屏工作穩(wěn)定,已用于一些商場及公共場所,效果良好。
評論