1 引言
汽車儀表是駕駛員與汽車進行信息交流的重要接口,為駕駛員提供汽車運行參數、故障等信息,使駕駛員可以方便、全面地掌握汽車運行狀態,有利于提高駕駛的舒適性和安全性。隨著汽車工業的蓬勃發展,汽車的附屬功能越來越豐富,汽車儀表需要顯示的內容也越來越多。薄膜晶體管液晶顯示器(TFT—LCD)是數字終端顯示最理想的顯示器件之一,而將液晶顯示技術應用于現代汽車儀表,構建全液晶顯示車載交互式信息系統已成為汽車儀表系統發展的必然趨勢。目前,豐田、福特、奧迪等汽車生產廠家已經推出了帶有全數字液晶儀表的車型。
本文基于ADI公司的DSP芯片ADSPBF536和SHARP公司的液晶模塊LQ104V1一DG52,設計了液晶顯示車載信息系統,給出了總體設計方案并設計了DSP芯片與液晶模塊的接口電路,編寫了液晶顯示、flash等模塊的驅動程序,分析了液晶模塊控制信號時序波形,進行了汽車信息顯示實驗。實驗結果表明,液晶屏顯示內容清晰、穩定,達到了設計要求。
2 硬件設計
2.1 系統總體設計
如圖1所示,車載信息系統主要包括主控制芯片、帶觸摸屏的LCD數字儀表、外擴SDRAM芯片、外部FLASH芯片以及分布在CAN總線上的不同節點,這些節點就是分布在汽車上的分控制器。
2.2 主控制芯片
TFT-LCD需要控制信號按照一定的控制時序進行驅動一種成本較高的驅動方案是用單片機、SRAM和專用液晶驅動芯片組合構成系統驅動液晶屏。為降低液晶屏驅動成本,本方案選用ADI公司的Blackfin系列DSPADSP—BF536作為系統的主控芯片。Blackfin系列處理器是ADI和Intel公司聯合開發的微信號架構(MSA)DSP,它將一個32位RISC型指令集和雙16位乘法累加(MAC)信號處理器功能與通用型微控制器所具有的易用性組合在了一起。BF536作為Blackfin系列DSP中的一員,具有高達400MHz的主頻,內核供電電壓低至1.2V;具有3個16位MAC,2個40位ALU,4個8位視頻專用ALU;擁有高達102kB的片內存儲器,包括16kB指令SRAM/Cache、48kB指令SRAM、32kB數據SRAM/Cache和4kB中間存儲器。
BF536還擁有豐富的外設資源,包括10/100以太網MAC接口;CAN2.0B接口;一個SPI接口;TwI接口控制器;并行口(PPI),支持IUT-R656視頻模式;全同步串口SPORT;2個UART口;12通道DMA控制器,包括兩個存儲器到存儲器DMA通道。
本系統所選用的TFT-LCD是SHARP公司的LQ104V1DG52,具有26.5cm(10.4in)顯示尺寸,640×480分辨率,18位數據信號位(RGB每種顏色6位),26萬色。本方案利用BF536的PPI外設與液晶屏之間接口。BF536的PPI外設有20個引腳,每個時鐘周期可完成16位數據的收發,而液晶屏的數據寬度為18位,設計中將PD接到BEo],PD接到RE0],實現了數據寬度的匹配。PPI—CLK引腳外接25MHz有源晶振,3個同步幀輸出引腳FS1、FS2、FS3分別接LCD的Hsync、Vsync、ENAB引腳,并使ENAB控制信號置低。為增強信號驅動能力,在BF536的PPI外設與液晶屏之間用SN74AHC245橋接。
另外,為液晶屏配備了四線電阻式觸摸屏,在實現顯示功能的基礎上增加了觸摸控制功能。由于BF536沒有ADC外設,所以選用TI公司生產的觸摸屏驅動芯片ADS7846來實現觸摸屏驅動,ADS7846將觸摸屏信號送至BF536的SPI外設。
BF536與液晶屏的接口電路如圖2所示。
2.4 SPIFLASH
ADSP-BF536沒有片內FLASH,需要外接FLASH芯片實現程序的固化和引導程序的存儲。BF536程序加載模式多達7種,本系統選用SPIMaster方式,即系統復位后,通過SPI接口從串行FLASH加載程序至RAM。FIASH芯片選用ST公司的M25P64,它是SPI接口的串行FLASH,具有64Mbit存儲容量,SPI時鐘頻率最高可達5OMHz。采用SPI接口的FLASH芯片面積小且與BF536接口簡單,減小了電路板設計的難度,其缺點是采用串行傳輸機制,在傳輸數據量較大時速度較慢。
2.5 外擴SDIM
要使液晶屏的顯示穩定就需要對液晶屏按時序循環發送顯示數據,即進行掃屏操作。一般做法是在存儲器內開辟一定空間暫存顯示數據,然后將此空間內的數據循環向液晶屏發送。一般微處理器片內的RAM都很小,無法為高分辨率的LCD提供顯示數據緩存區,這就需要外擴RAM。
相比于SRAM,SDRAM存在存取速度慢、需要對數據不斷進行刷新及控制信號復雜的缺點;但SDRAM容量一般較大,價格便宜。另外,ADSP—BF536片內帶有SDRAM控制器,可以實現SDRAM的復雜邏輯控制,設計者只需要對該寄存器模塊正確配置后,就能像訪問片內RAM一樣訪問它,故本系統選用Micron公司的SDRAMT48LC32M16A2作為外擴存儲器完成顯示數據的暫存。該芯片具有512Mbit的存儲容量,最高可達133MHz的時鐘頻率。
3 軟件設計
系統軟件由FLASH燒寫驅動文件、初始化程序和主程序3個獨立的程序構成。SPIFLASH燒寫驅動文件(BF536一SPI—Programmer_Driver)在ADIDSP集成開發環境VisualDSP++中配置生成,其作用是在主程序調試完畢后,完成主程序在FALSH中的固化。初始化程序是在調用主程序之前首先調用的一個小程序,相當于BIOS,其作用是完成DSP芯片時鐘及部分模塊的初始化,使得SDRAM正常工作,并引導主程序的載人。
主程序是用戶根據需求開發并調試通過的應用程序,其完成各外設模塊及中斷的配置,完成數據的操作及對液晶屏的時序控制。
3.1 LCD驅動軟件設計
LCD驅動軟件的設計包括LCD控制信號時鐘設置、BF536PPI模塊和DMA模塊的初始化3部分。另外,為使畫面顯示穩定,需要在外擴SDRAM中開辟圖像數據暫存空間供DSP循環讀寫。
3.1.1 配置控制信號時鐘
ADSP—BF536芯片沒有LCD控制器外設,而液晶屏模塊LQ104V1DG52具有4個控制信號輸入端,分別為CLK、ENAB、Hsync和Vsync,4個控制信號必須滿足一定時序要求才能實現LCD的正確驅動。本方案中,LCD的4個控制信號都由BF536的PPI模塊提供:PPI—CLK輸出接LCDCLK輸入;配置BF536FS1/timer0和FS2/timerl引腳為輸出,分別接Hsync和Vsync;FS3引腳配置為普通I/O管腳,接LCDENAB,正常工作條件下置低。配置Timer0為PWM輸出模式,PWM周期為850個CLK,脈沖寬度為96個CLK;配置Timerl為PWM輸出模式,周期為446250個CLK,脈沖寬度為1700個CLK。PWM信號周期及脈沖寬度的確定都是通過查詢手冊得到的,實際試驗證明此配置是正確的。
3.1.2 BF536PPI模塊初始化
由液晶屏的控制時序可知,ENAB信號置低時,液晶屏在監測到同步幀信號沿后計數104個時鐘,然后開始讀寫有效數據,讀完640個行有效數據后等待下一個行同步幀信號。這種特性是由其自身的硬件機制決定的。ADSP—BF536的PPI模塊有ITUR一656和General—PurposePPI兩種工作模式。系統正常工作時,DSP需要從PPI模塊把顯示數據打出,這里我們配置PPI為General—PurposePPI模式模塊。設置PPICOUNT一639,即DSP每行同步幀輸出數據量為640;設置PPI~DELAY一104,在PPI發送同步幀信號104個時鐘后啟動DMA傳輸,將數據打到數據線上;設置PPI—FS1和PPI—FS2為下降沿有效。
3.1.3 開辟數據暫存空間
如前所述,為實現液晶屏的可靠掃屏,本方案采用外擴SDRAM的方法,在SDRAM中開辟一定存儲空間暫存顯示數據,然后將此空間中的數據循環向液晶屏發送。在SDRAM中定義ZONE1和ZONE2兩塊數據暫存空間,每塊大小為640X(480+34+11),單位數據寬度16位。
定義并初始一個全局變量DatabuferFlag為0作為標志,發送程序查詢此標志并根據此標志的值決定發送ZONE1還是ZONE2中的數據。在DSP收到外部中斷信號(按鍵、觸摸屏、CAN等)時,DatabufferFlag值改變,DSP向當前存儲區內寫數據,并將另一存儲區內數據發送至液晶屏,如此循環。ZONE1包括data—buf、inv—front1、inv—last13個存儲區,ZONE2包括data—buf2、inv—front2、inv_last23個存儲區,其中data—bufl、data—buf2存儲有效發送數據。通過section(”sdram0”)指令定義這些存儲區在SDRAM中的起始地址和長度。配置inv—last1、inv—last2DMA中斷,即緩沖區中的數據發送完畢后,會產生一個中斷。圖3為SDRAM中數據暫存區示意圖。
3.1.4 DMA模塊初始化
因為DMA控制器配置方便、靈活,所以AI)_SP—BF536的很多外設都采用DMA方式傳輸數據。本方案中配置DMA為二維DMA大描述符模式(Largemode1)。采用大描述符模式的優點是可以將幾個不連續的存儲區鏈接起來,可以實現不連續存儲區的連續數據傳輸。將需要設置的DMA幾個寄存器定義為一個結構體,描述如下:
3.2 ID顯示主程序設計
DSP完成系統初始化后,進入LCD顯示主程序。DSP通過PPI外設將數據暫存區ZONE1或ZONE2中的數據發送至液晶屏,圖像保持不變。發生外部中斷時,DataBuferFlag的值改變,修改描述符指針,啟動另一數據暫存區的DMA傳輸。程序流程圖如圖4所示。
4 顯示實驗
為驗證方案的可行性,我們制作了控制器樣機并進行了液晶屏顯示實驗。圖5為系統上電,BF536從外部FLASH載入引導程序初始化系統后,調用保存在FLASH中的車載信息圖像數據并在液晶屏上進行顯示的照片。可以看出,液晶屏可以顯示車速、油量、安全帶情況等各種信息,顯示內容清晰、穩定。
圖5 汽車信息顯示實驗照片
5 結論
采用液晶屏顯示汽車運行信息將成為下一代汽車儀表的主流。本設計采用DSP芯片與液晶屏為主要器件構建了一種全液晶顯示的車載信息系統,在新型汽車儀表開發方面進行了探索研究。該車載信息系統目前已經基本完成了系統的硬件部分調試和基本的軟件設計,實際的性能測試和實驗結果表明,該系統顯示清晰穩定,效果良好。
-
dsp
+關注
關注
553文章
7987瀏覽量
348756 -
芯片
+關注
關注
455文章
50714瀏覽量
423152 -
液晶顯示器
+關注
關注
11文章
576瀏覽量
43629
發布評論請先 登錄
相關推薦
評論