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