嵌入式系統的VGA接口設計
S3C2410A的LCD控制器設置
作為輸出源,S3C2410A的LCD控制器也需要進行相應設置。需要的輸出分辨率是640×480,16位色(RGB565格式),刷新率60Hz。一共有LCDCON1到LCDCON5共5個寄存器需要設置,具體參數要參考VGA時序規范和LCD時序圖(圖1)。所需設置的寄存器如表2。
表2 S3C2410A的LCD控制器中需要設置的寄存器
S3C2410A的LCD控制器設置
作為輸出源,S3C2410A的LCD控制器也需要進行相應設置。需要的輸出分辨率是640×480,16位色(RGB565格式),刷新率60Hz。一共有LCDCON1到LCDCON5共5個寄存器需要設置,具體參數要參考VGA時序規范和LCD時序圖(圖1)。所需設置的寄存器如表2。
表2 S3C2410A的LCD控制器中需要設置的寄存器
實驗及數據
實驗中,選擇的操作系統嵌入式Linux,內核版本2.4.18,圖形系統是Qtopia 1.7.0。bootloader選用的韓國MIZI公司的vivi。上電后,vivi將進行初始化,其中包括設置CH7004,然后再引導進入Linux。對CH7004的操作,完全可以看作對一個IIC接口的EEPROM來進行,可專門定義一個函數IIC_Write()來寫數據。例如對IDF寄存器的設置為I2C_Write(0xec,0x04,0x20)。設置好后,CH7004的所有寄存器數據如表3。
實驗中還發現,設定SPR同步信號極性寄存器時,如果都設同步信號為正脈沖有效,接顯示器也能正常顯示,但是有閃爍。負脈沖有效則無這種情況,故推薦均設置為負脈沖有效。
表3 正常工作時,CH7004C的各個寄存器讀出的數據
結語
本文提供的LCD接口轉換為VGA接口的解決方案,經過實際驗證,切實可行。在Linux和Windows CE 4.2兩種嵌入式操作系統下均進行了測試,Linux下VGA顯示器的畫面非常穩定;在Windows CE 4.2下基本穩定,略有閃爍。該方案最大特點在于讓嵌入式系統直接支持VGA顯示器,具備較大的實際應用意義。
圖3 Linux下外接VGA顯示器
評論