新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 一種嵌入式顯示系統(tǒng)的軟件設(shè)計及應用

一種嵌入式顯示系統(tǒng)的軟件設(shè)計及應用

作者: 時間:2012-05-23 來源:網(wǎng)絡(luò) 收藏

摘要:以高性能的8位單片機C8051F120作為核心處理器,接收和處理PC機鍵盤和觸摸屏的操作信息,并將其轉(zhuǎn)化成液晶顯示器(TFT)可顯示的點陣數(shù)據(jù);用SRAM作為顯存,F(xiàn)PGA接收單片機傳送的顯示數(shù)據(jù),控制顯存的讀寫操作,并產(chǎn)生液晶顯示器的工作時序,最終完成在液晶顯示器上顯示字符和65 536色彩色圖形的方案。其中重點描述了核心處理單元C8051F120的

本文引用地址:http://butianyuan.cn/article/149018.htm

關(guān)鍵詞:系統(tǒng);觸摸屏;TFT;彩色圖形;

引言

設(shè)備憑借其與使用者之間的親和力、自然的人機交互界面,得到了迅速的發(fā)展,滲透到生活中的各個角落。本文介紹的設(shè)計方法是以高性能的8位單片機C8051F120作為核心處理器,SRAM作為系統(tǒng)的顯存,F(xiàn)PGA實現(xiàn)時序轉(zhuǎn)換,構(gòu)建低溫(-10℃)下嵌入式。通過PC機鍵盤和觸摸屏實現(xiàn)界面操作,最終在液晶顯示器上顯示國標一/二級漢字、ASCII字符和65 536色的彩色圖形和圖片,并制作了簡單的操作界面。

1 系統(tǒng)工作原理

顯示漢字、英文字符和彩色圖形的過程就是將字符和圖形信息轉(zhuǎn)換成液晶顯示器可以顯示的點陣信息。為了顯示字符,可以將ASCII碼字符點陣字庫和按區(qū)位碼排列的漢字點陣字庫存儲在單片機外接的Flash ROM中(構(gòu)成點陣數(shù)據(jù)區(qū)),并且將程序中用到的字符以機內(nèi)碼的形式存儲在Flash ROM中(構(gòu)成文本數(shù)據(jù)區(qū))。顯示時,單片機將漢字機內(nèi)碼從文本數(shù)據(jù)區(qū)讀出,轉(zhuǎn)換成FlashROM中點陣數(shù)據(jù)區(qū)的字庫地址,通過該地址讀出字符的點陣數(shù)據(jù),進一步轉(zhuǎn)換成液晶顯示器可顯示的數(shù)據(jù)并送給后續(xù)電路處理和顯示。這樣在操作過程中可以顯示包括國標一/二級漢字、大小寫英文字符、標點和數(shù)字等多種字符。顯示彩色圖形的時候,由于圖片的存儲空間要求比較大,系統(tǒng)中沒有足夠的空間,可以將PC機內(nèi)bmp格式的彩色圖片經(jīng)過格式轉(zhuǎn)化以后,通過串口送給單片機實時處理并顯示。

液晶顯示器工作頻率為4.5~6.8MHz,并且需要復雜的工作時序??紤]到單片機的工作速度和液晶顯示器的工作頻率,一方面,液晶顯示器在工作頻率下不斷刷新才能工作,需要傳送大量的顯示數(shù)據(jù)和控制信息;另一方面,單片機要完成許多處理工作,即使工作在100MHz,也將成為系統(tǒng)運行速率的瓶頸。為了解決這個問題,再次加入一塊SRAM作為顯存,加入一塊FPGA實現(xiàn)時序轉(zhuǎn)換并控制和刷新液晶顯示器。FP GA分時地讀/寫SRAM,F(xiàn)PGA在時鐘的作用下,一半時間內(nèi)(時鐘信號為高電平時)從SRAM中讀出數(shù)據(jù),不斷刷新液晶顯示器;另一半時間內(nèi)(時鐘信號為低電平時),如果單片機有送來要顯示的數(shù)據(jù)時,將此數(shù)據(jù)寫入SRAM中。分時操作的使用,能在不間斷地刷新液晶顯示器的同時,接收并存儲單片機的數(shù)據(jù),使兩方面的工作互不影響,不僅減輕單片機的工作負擔,而且充分發(fā)揮了FPGA的性能。

選擇附有觸摸屏的液晶顯永器,將觸摸屏外接手寫識別控制器,就可以增加手寫識別功能,可提供友好的人機交互界面。由上述分析可以畫出系統(tǒng)框圖,如圖1所示。

a.JPG

2 系統(tǒng)硬件設(shè)計

在本嵌入式中,采用了夏普公司型號為LQ0357DH01的液晶顯示器,工作溫度范圍在-10~70℃,最低工作溫度相對更低一些。

顯示模塊由一個彩色主動點陣式LCD模塊和無定形硅TFT構(gòu)成,因此可稱為AD-TFT(Advanced TFT)。它由彩色TFT-LCD面板、IC驅(qū)動、FPC、背光、電阻式觸摸屏和背部密封盒組成,但是模塊不包括控制電路。顯示屏工作頻率為4.5~6.8 MHz,分辨率為240×320像素,色彩位深為18位。圖形和文本能以262 11 4種顏色顯示在240x 320點陣的顯示屏上。但是考慮單片機的數(shù)據(jù)總線寬度為8位,為了簡化操作過程,可將色彩深度確定為16位,單片機分兩次發(fā)送每個像素的顏色數(shù)據(jù)。這樣的簡化操作也可以滿足顯示65 536色彩色圖形的要求。

為了提高整個系統(tǒng)的運行速度,采用型號為C8051F120的高性能8位單片機作為處理器。C8051F120使用Silicon Labs公司的專利CIP-51微控制器內(nèi)核。CIP-51與MCS-51指令集完全兼容,可以使用標準803x/805x的匯編器和編譯器進行開發(fā)。C8051F120可穩(wěn)定工作的最大系統(tǒng)時鐘頻率為100 MHz,峰值性能達到100MIPS。

Flash采用的是M29W400BB(512K×8位),它是一種可讀、可擦除、可重復編程的Flash。FPGA采用Xilinx公司Spartan-II系列產(chǎn)品XC2S1 00。XC2S100是一款具有10萬系統(tǒng)門的FPGA,在邏輯門數(shù)上能為系統(tǒng)提供足夠的邏輯電路,144引腳封裝形式的XC2S100可提供103個I/O端口,為系統(tǒng)器件提供足夠的I/O口資源。

關(guān)于SRAM的選擇,考慮到液晶顯示器的分辨率為240×320像素,每個像素點可顯示65 536色(16位),因此顯存的大小至少為240×320× 2B=150 KB。加入一塊512 KB的SRAM CY7C1041BV33作為顯存即可。CY7C1041BV33可以工作在字(word)操作模式下,方便顯示數(shù)據(jù)的存取,刷新液晶的過程中可將SRAM中的每個字與液晶的每個像素對應。

手寫識別采用型號為ePH1200AQ的手寫識別微控制器。ePH1200AQ硬件上集成了8位RISC微控制器、觸摸屏驅(qū)動器、接口UART、4 KB SRAM、32K字編程ROM和512K字數(shù)據(jù)ROM;軟件上則包含手寫識別內(nèi)核、字符集和筆跡收集軟件。當微控制器與外部觸摸屏相連接的時候,就可以組成手寫識別產(chǎn)品,比如SMS、移動電話或者手寫輸入設(shè)備。

3 系統(tǒng)軟件設(shè)計

系統(tǒng)軟件包括單片機和FPGA兩個部分。本文主要介紹單片機部分的軟件設(shè)計。

單片機完成的功能包括循環(huán)查詢兩個串口是否接收到新的數(shù)據(jù),當某個串口接收到新的數(shù)據(jù)時,便采取相應含義的操作。顯示字符時,讀出Flash ROM中的點陣數(shù)據(jù),進行轉(zhuǎn)換和處理后送給FPGA;顯示圖形時,按照沒定的圖形軌跡畫出點。

單片機在主程序中循環(huán)查詢兩個串口是否接收到新的數(shù)據(jù),當任意一個串口產(chǎn)生中斷時,根據(jù)串口接收到數(shù)據(jù)的含義,采取相應的操作。主函數(shù)流程如圖2所示。

b.JPG

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

led顯示器相關(guān)文章:led顯示器原理



上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉