S3C2440 LCD控制器描述

2021-09-30 07:15:47 字數 3340 閱讀 8104

arm嵌入式

2010-06-04 11:35:19

閱讀81

字型大小:大

小訂閱

系統結構框圖

lcd控制器系統框圖:

資料流描述如下:fifo儲存器位於lcdcdma。當fifo空或部分空時,lcdcdma要求從基於突發傳輸模式的幀儲存器中取來資料,存入要顯示的影象資料,而這個幀儲存器是lcd控制器在ram中開闢的一片緩衝區。當這個傳輸請求被儲存控制器中的匯流排仲裁器接收到後,從系統儲存器到內部fifo就會成功傳輸4個字。fifo的總大小是28個字,其中低位fifol是12個字,高位fifoh是16個字。s3c2410有兩個fifo來支援雙掃瞄顯示模式。在單掃瞄模式下,只使用乙個fifo(fifoh)。

輸出訊號分析

vframe/vsync:lcd控制器和lcd驅動器之間的幀同步訊號。該訊號告訴lcd屏新一幀開始了。lcd控制器在一幀顯示完成後立即插入乙個vframe訊號,開始新一幀的顯示。

vline/hsync:lcd控制器和lcd驅動器之間的行同步脈衝訊號。該訊號用於lcd驅動器將水平線(行)移位暫存器的內容傳送給lcd屏顯示。lcd控制器在整行資料移人lcd驅動器後,插入乙個vline訊號。

vclk:lcd控制器和lcd驅動器之間的畫素時鐘訊號。lcd控制在vclk的上公升沿處送出資料,lcd驅動器在vclk的下降沿處取樣。

vm/vden:lcd驅動器的ac訊號。vm訊號被lcd驅動器用於改變行和列的電壓極性,從而控制畫素點的顯示。vm訊號能夠和每幀同步,也能夠和可變資料的vline訊號同步。

vd[23:0]:lcd畫素資料輸出埠。

lcd_pwren:lcd使能訊號。如果外接的lcd有開/關等類似管腳的話,可以與這個訊號連線。這個訊號的輸出值受envid控制,即lcdcon1的第0位。

時序分析

需要注意的是:在幀的領域裡,我們所說的週期單位是一行;而在行的時候,我們所說的週期單位是vclk時鐘週期。以240*320的屏為例,乙個vclk週期傳輸一組vd訊號,從而給乙個畫素著色。要點亮一行,那麼要有240個vclk週期將240個pixel的vd值輸出,而且這240個週期內 vden應該一直是有效的。現在我們的思路從點擴充套件到了行,理想情況下,兩行之間不需要間隔,也就是說這一行結束馬上傳輸下一行的第乙個pixel的 vd。但是這樣做並不好,因為乙個點的偏差會造成滿盤皆輸。因此我們引入了行同步hsync訊號,也就是說在傳輸完一行的資料後,先歇一會兒,等待若干個時鐘(我們稱之為後插入等待週期);然後我們送乙個行同步訊號,當然這個訊號的有效週期數我們也能控制(我們稱之為同步週期);之後呢,我們在等一會,讓 lcd驅動電路準備好接收,我們在把一行的資料發下去(這個等待時間我們稱之為前插入等待週期)。下圖為證:

從圖中我們可以看到:hspw+1、hbpd+1、hfpd+1就是我們分別定義了同步週期、前插入等待週期、後插入等待週期。而hozval+1則是一行的有效象素數目。這些都可以在暫存器裡面進行設定。說完行與行之間的顯示,我們就可以擴充套件到幀與幀之間的顯示。我們很容易想到,在幀的領域裡面也應該是類似於行的結構,同樣包含了同步週期、前插入等待週期、後插入等待週期。上圖為證:

經過上述的分析,我們可以把tft lcd的介面歸納到8個引數上:hspw、hbpd、hfpd、hozval、vspw、vbpd、vfpd、lineval。另外,通過上述分析,我們可以看到,顯示一幀影象總共需要的vclk週期為:(hspw+hbpd+hfpd+hozval+4)*(vspw+vbpd+vfpd+ lineval+4),vclk是可調的,因此通過選擇適當的分頻比保證幀率在60hz左右就可保證液晶的正常工作了。

lcd可程式設計暫存器

1.lcdcon1

linecnt:行計數器的狀態位。唯讀,不用配置。

clkval:確定vclk頻率的引數。公式為vclk=hclk/[(clkval+1)×2],單位為hz。筆者所用的硬體系統hclk=100 mhz,640×480的顯示屏需要vclk=20 mhz,故需配置clkval=1。

mmode:確定vm的改變速度。在此選擇mmode=o,為每幀變化模式。pnrmode:確定掃瞄方式。選擇pnrmode=0x3,為tft lcd面板掃瞄模式。bppmode:確定bpp(每畫素位數)模式。在此選擇bppmode=0xc,為tft 16位模式。envid:資料輸出和邏輯訊號使能控制位。選擇envid=1,為允許資料輸出和邏輯控制。

2、lcdcon2

vbpd:確定幀同步訊號和幀資料傳輸前的一段延遲時間,是幀資料傳輸前延遲時間和行同步時鐘間隔寬度的比值。

lineval:確定顯示的垂直方向尺寸。公式:lineval=ysize-1=479。

vspw:確定幀同步時鐘脈衝寬度,是幀同步訊號時鐘寬度和行同步時鐘間隔寬度的比值。

3、 lcdcon3

hbpd:確定行同步訊號和行資料傳輸前的一段延遲時間,描述行資料傳輸前延遲時間內vclk脈衝個數。

hozal:確定顯示的水平方向尺寸。公式hozal=xsize-1。

4、 lcdcon4暫存器

hspw:確定行同步時鐘脈衝寬度。描述行同步脈衝寬度時間內vclk脈衝個數。

5、lcdcon5暫存器

vstatus:垂直方向狀態。唯讀,不用配置。

hstatus:水平方向狀態。唯讀,不用配置。

bpp24bl:確定顯示資料儲存格式。此處配置bpp24bl=0x0,為小端模式存放。

frm565:確定16位資料輸出格式。此處配置frm565=0x1,為5:6:5格式輸出。

invvclk:確定vclk脈衝有效邊沿極性。如invvclk=0xl,vclk上公升沿到來時資料傳輸開始。

invvllne:確定hsync脈衝的極性。

invvframe:確定vsync脈衝的極性。

invvd:確定資料輸出的脈衝極性。

invvden:確定vden訊號極性。

invpwren:確定pwren訊號極性。

invlend:確定lend訊號極性。

pwren:pwren訊號輸出允許。

enlend:lend輸出訊號允許。

bswp:位元組交換控制位。如配置bswp=0x0,禁止位元組交換。

hwswp:半字交換控制位。如配置hwswp=0xl,使能半位元組交換。

s3c2440 LCD驅動編寫

struct lcd regs static struct fb ops s3c lcdfb ops static volatile unsigned long gpbcon static volatile unsigned long gpbdat static volatile unsigned ...

LCD基礎及S3C2410 LCD控制器

一 超薄平面顯示器時代來臨 電視機所採用的 crt 陰極射線管 有著體積大 重量重 尺寸受限等缺點。隨著電子科技的發展,對移動顯示的要求越來越多,crt 的先天限制,讓其小型化 行動化的理想受到阻礙。這使得開發新一代的顯示器技術變得更有其必要!新一代的顯示器講求幾個重點 平面直角,畫面顯示不變形 輕...

S3C2440的SPI控制器

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!s3c2440包含有兩個序列外圍裝置介面 spi口 每個spi口都有兩個分別用於傳送和接收的8位移位暫存器,在一次spi通訊當中資料被同步傳送 序列移出 和接收 序列移入 8位序列資料的速率由相關的控制暫存器的內容決定。如果只想傳送,接收到的是一些...