當(dāng)前位置:首頁(yè) > 顯示光電 > 顯示光電
[導(dǎo)讀] 介紹了S3C2410的LCD控制器的數(shù)據(jù)和控制管腳,并給出了LCD的控制流程和TFT-LCD的控制器設(shè)置規(guī)則。參照TFT-LCD CJM10C0101的邏輯要求和時(shí)序要求設(shè)計(jì)了其驅(qū)動(dòng)電路,設(shè)置了各主要LCD寄存器。   開(kāi)發(fā)了CJM10C0101在嵌入

 介紹了S3C2410的LCD控制器的數(shù)據(jù)和控制管腳,并給出了LCD的控制流程和TFT-LCD的控制器設(shè)置規(guī)則。參照TFT-LCD CJM10C0101的邏輯要求和時(shí)序要求設(shè)計(jì)了其驅(qū)動(dòng)電路,設(shè)置了各主要LCD寄存器。
  開(kāi)發(fā)了CJM10C0101在嵌入式LINUX下的顯示驅(qū)動(dòng)程序,并在CJM10C0101上顯示了清晰穩(wěn)定的畫(huà)面。實(shí)驗(yàn)表明這套裝置通用性好,能驅(qū)動(dòng)大部分的TFT-LCD;可移植性強(qiáng),經(jīng)過(guò)少許修改即可應(yīng)用在其他嵌入式系統(tǒng)中。它是S3C2410驅(qū)動(dòng)TFT-LCD的一套較佳的解決方案。

  1 引言

  隨著科技的發(fā)展,ARM在社會(huì)各個(gè)方面的應(yīng)用越來(lái)越廣。S3C2410是三星公司生產(chǎn)的基于ARM920T內(nèi)核的RISC微處理器,主頻可達(dá)203MHz,適用于信息家電、SmartPhone、Tablet、手持設(shè)備、移動(dòng)終端等領(lǐng)域。其中,集成的LCD控制器具有通用性,可與大多數(shù)的LCD顯示模塊接口。CJM10C0101是一種用非晶硅TFT作為開(kāi)關(guān)器件的有源矩陣液晶顯示器,該模塊包括TFT-LCD顯示屏!驅(qū)動(dòng)電路和背光源,其接口為T(mén)TL電平。分辨率為640×480像素,用18bit數(shù)據(jù)信號(hào)能顯示262144色。6點(diǎn)視角是最佳視角。

  在以三星ARM芯片S3C2410為核心,USB、UART、LCD、TOUCHPANEL等作為輸入輸出設(shè)備,FLASH和SDRAM作存儲(chǔ)器,加上固化在FLASH里面的嵌入式LINUX組成的嵌入式系統(tǒng)中,我們致力于使此系統(tǒng)用本國(guó)生產(chǎn)的TFT-LCD作顯示輸出,因此研究設(shè)計(jì)了驅(qū)動(dòng)CJM10C0101型26.4cm(10.4in)TFTLCD的硬件適配電路與嵌入式LINUX下的顯示驅(qū)動(dòng)程序。

  2 S3C2410 LCD控制器介紹

  2.1 管腳

  S3C2410 LCD控制器用于傳輸視頻數(shù)據(jù)和產(chǎn)生必要的控制信號(hào),像VFRAME、VLINE、VCLK、VM等等。除了控制信號(hào),S3C2410還有輸出視頻數(shù)據(jù)的端口VD[23:0],如圖1示。

  將要用到的管腳描述如下:VCLK-像素時(shí)鐘信號(hào);VD[23:0]-LCD像素輸出端口;VM/VDEN/TP-LCD驅(qū)動(dòng)器的AC偏置信號(hào)(STN)/數(shù)據(jù)使能信號(hào)(TFT)/SECTFT源驅(qū)動(dòng)器數(shù)據(jù)加載脈沖信號(hào)。

  2.2 寄存器介紹

  S3C2410的LCD控制寄存器主要有:LCDCON1寄存器、LCDCON2寄存器、LCDCON3寄存器、LCDCON4寄存器和LCDCON5寄存器等,詳情請(qǐng)見(jiàn)參考文獻(xiàn)[1]。

  2.3 控制流程

  LCD控制器由REGBANK、LCDCDMA、VIDPRCS、TIMEGEN和LPC3600組成(見(jiàn)圖2)。

  REGBANK有17個(gè)可編程寄存器組和256×16的調(diào)色板存儲(chǔ)器,用來(lái)設(shè)定LCD控制器。LCDCDMA是一個(gè)專(zhuān)用DMA,自動(dòng)從幀存儲(chǔ)器傳輸視頻數(shù)據(jù)到LCD控制器,用這個(gè)特殊的DMA,視頻數(shù)據(jù)可不經(jīng)過(guò)CPU干涉就顯示在屏幕上。

  VIDPRCS接受從LCDCDMA來(lái)的視頻數(shù)據(jù)并在將其改變到合適數(shù)據(jù)格式后經(jīng)VD[23:0]將之送到LCD驅(qū)動(dòng)器,如4/8單掃描或4雙掃描顯示模式。

  TIMEGEN由可編程邏輯組成,以支持不同LCD驅(qū)動(dòng)器的接口時(shí)序和速率的不同要求。TIMEGEN產(chǎn)生VFRAME、VLINE、VCLK、VM信號(hào)等。

  數(shù)據(jù)流描述如下:FIFO存儲(chǔ)器位于LCDCDMA。當(dāng)FIFO空或部分空時(shí),LCDCDMA要求從基于突發(fā)傳輸模式的幀存儲(chǔ)器中取來(lái)數(shù)據(jù),存入要顯示的圖像數(shù)據(jù),而這個(gè)幀存儲(chǔ)器是LCD控制器在RAM中開(kāi)辟的一片緩沖區(qū)。當(dāng)這個(gè)傳輸請(qǐng)求被存儲(chǔ)控制器中的總線仲裁器接收到后,從系統(tǒng)存儲(chǔ)器到內(nèi)部FIFO就會(huì)成功傳輸4個(gè)字。FIFO的總大小是28個(gè)字,其中低位FIFOL是12個(gè)字,高位FIFOH是16個(gè)字。S3C2410有兩個(gè)FIFO來(lái)支持雙掃描顯示模式。在單掃描模式下,只使用一個(gè)FIFO(FIFOH)。

  2.4 TFT控制器操作

  S3C2410支持STN-LCD和TFT-LCD,這里我們只介紹其對(duì)TFT-LCD的控制。

  TIMEGEN產(chǎn)生LCD驅(qū)動(dòng)器的控制信號(hào),如VSYNC、HSYNC、VCLK、VDEN和LEND等。這些控制信號(hào)與REGBANK寄存器組中的LCDCON1/2/3/4/5寄存器的配置關(guān)系相當(dāng)密切,基于LCD控制寄存器中的這些可編程配置,TIMEGEN產(chǎn)生可編程控制信號(hào)來(lái)支持不同類(lèi)型的LCD驅(qū)動(dòng)器。

  VSYNC和HSYNC脈沖的產(chǎn)生依賴(lài)于LCDCON2/3寄存器的HOZVAL域和LINEVAL域的配置。HOZVAL和LINEVAL的值由LCD屏的尺寸決定,如下公式:

  HOZVAL=水平顯示尺寸-1    (1)


  LINEVAL=垂直顯示尺寸-1   (2)

  VCLK信號(hào)的頻率取決于LCDCON1寄存器中的CLKVAL域。VCLK和CLKVAL的關(guān)系如下,其中CLKVAL的最小值是0:

  VCLK(Hz)=HCLK/[(CLKVAL+1)×2]        (3)

  幀頻率是VSYNC信號(hào)的頻率,它與LCDCON1和LCDCON2/3/4寄存器的VSYNC、VBPD、VFPD、LINEVAL、HSYNC、HBPD、HFPD、HOZVAL和CLKVAL都有關(guān)系。大多數(shù)LCD驅(qū)動(dòng)器都需要與顯示器相匹配的幀頻率,幀頻率計(jì)算公式如下:

  FrameRate=1/{[(VSPW+1)+(VBPD+1)+(LINEVAL+1)+(VFPD+1)]×[(HSPW+1)+

  (HBPD+1)+(HFPD+1)+(HOZVAL+1)]×[2×(CLKVAL+1)/(HCLK)]}              (4)

  參照CJM10C0101的參數(shù)和公式(1)、(2),可得出HOZVAL=639;LINEVAL=479。其余主要寄存器的值在下面給出。

  3 CJM10C0101的邏輯、時(shí)序要求[2]

  各時(shí)間參數(shù)見(jiàn)表1。

  根據(jù)時(shí)序要求,我們?cè)O(shè)定VM/VDEN信號(hào)作LCD的ENAB信號(hào),VCLK信號(hào)作LCD的NCLK信號(hào)。要想得到合適的VM和VCLK波形,就要正確設(shè)定寄存器的值,根據(jù)寄存器的值與VM和VCLK波形的關(guān)系,我們?cè)O(shè)定了如下關(guān)鍵寄存器的值:

  HSPW=10;HBPD=100;HFPD=47;

  VSPW=1;VBPD=37;VFPD=4

  S3C2410的HCLK工作頻率為100MHz左右,因此根據(jù)公式(3)設(shè)CLKVAL=1。這些值將在驅(qū)動(dòng)程序中得到具體體現(xiàn)。

  4 硬件驅(qū)動(dòng)電路組成

  因?yàn)殚_(kāi)發(fā)板引出管腳有限,只引出了16根視頻數(shù)據(jù)線,所以我們只利用這16根數(shù)據(jù)線擴(kuò)充為18根作CJM10C0101的數(shù)據(jù)輸入線,即RB信號(hào)的最低兩位共用一根數(shù)據(jù)線。CJM10C0101要求其電源電壓Vdd典型值為5V,并且LCD數(shù)據(jù)和控制信號(hào)的高電平輸入電壓V在[3.5V,Vdd]范圍內(nèi),低電平輸入電壓Vil在[0,1.5V]范圍內(nèi),故用4片74LVC4245進(jìn)行3~5V的邏輯電平轉(zhuǎn)換,具體電路如圖4。同時(shí)考慮到通用性,使74LVC4245的電源為3V/5V可選,這樣也能驅(qū)動(dòng)3V邏輯電平的TFT-LCD

  5 嵌入式Linux下驅(qū)動(dòng)程序的開(kāi)發(fā)[6]

  FrameBuffer是出現(xiàn)在Linux2.2.xx內(nèi)核當(dāng)中的一種驅(qū)動(dòng)程序接口,對(duì)應(yīng)的源文件在linux/drivers/video/目錄下,總的抽象設(shè)備文件為fbcon.c。這種接口將顯示設(shè)備抽象為幀緩沖區(qū)。用戶(hù)可以將它看成是顯示內(nèi)存的一個(gè)映像。

  在使用幀緩沖時(shí),Linux是將顯卡置于圖形模式下的。

  我們根據(jù)以上對(duì)LCD各主要寄存器設(shè)置的分析得出的結(jié)果,開(kāi)發(fā)了基于FrameBuffer機(jī)制的S3C2410 fb驅(qū)動(dòng)程序。下面是經(jīng)過(guò)調(diào)試成功的部分代碼,作用是對(duì)顯示屏幕初始化和設(shè)置LCD控制寄存器的值。

  /*s3c2410fb.c  */
………………
#ifdef CONFIG-S3C2410-SMDK
statIC struct s3c2410fb-mach-info xxx-stn-info-initdATA={
    pixclock:174757,   bpp:16,
#ifdef CONFIG-FB-S3C2410-EMUL      //顯示屏幕初始化
  xres:  96,
#else
  xres:  640,
#endif
  yres:  480,
  hsync-len: 5, vsync2len: 1,
  left-margin: 7, upper-margin: 1,
  right-margin: 3, lower-margin: 3,
  sync: 0, cmap-static: 1,
  reg:{               //設(shè)置LCD控制寄存器的值
     lcdcon1:LCD1-BPP-16T|LCD1-PNR-TFT|LCD1-CLKVAL(1),
     lcdcon2:LCD2-VBPD(37)|LCD2-VFPD(4)|LCD2-VSPW(1),
     lcdcon3:LCD3-HBPD(100)|LCD3-HFPD(47),
     lcdcon4:LCD4-HSPW(10)|LCD4-MVAL(13),
     lcdcon5:LCD5-FRM565|LCD5-HWSWP|LCD5-PWREN,
     },
};
#endif
………………

  6 結(jié)果

  經(jīng)過(guò)硬件方面的調(diào)試修改,在S3C2410開(kāi)發(fā)板的VCLK和VM腳成功得到了CJM10C0101所需的時(shí)鐘信號(hào)和復(fù)合控制信號(hào),見(jiàn)圖5,6,7和8;在軟件方面修改了S3C2410的驅(qū)動(dòng)程序,經(jīng)編譯整個(gè)系統(tǒng)后再重新寫(xiě)到Flash中,重啟后能正確顯示原系統(tǒng)的靜態(tài)啟動(dòng)畫(huà)面,并且畫(huà)面清晰穩(wěn)定,達(dá)到了預(yù)期的效果。這套裝置可用在工業(yè)控制和車(chē)載通信等領(lǐng)域作顯示輸出設(shè)備,再加上適當(dāng)?shù)挠|摸屏可組成方便可靠的輸入輸出設(shè)備。

圖5 VCLK波形(tc=1/25.28MHz=39.56ns)

圖6 VM波形(t1=16.6ms)

圖7 VM波形(t3=1/31.6kHz=31.65Ls)

圖8 VM波形(t1-t2=1.432ms)

 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉