S3C44B0X內(nèi)置的LCD控制器及其應(yīng)用
引言 s3c44b0x微處理器是三星公司專為手持設(shè)備和一般應(yīng)用提供的高性價比和高性能的微控制器解決方案。它使用arm7tdmi核,工作在66mhz,集成了lcd控制器等外圍器件。它的lcd控制器具有通用性,能與大多數(shù)lcd顯示模塊接口。接口設(shè)計、驅(qū)動程序開發(fā)都很簡單,廣泛應(yīng)用于智能儀表、pda等的顯示部分。 內(nèi)置lcd控制器介紹 概述 s3c44b0x內(nèi)置的lcd控制器的作用是將顯示緩存(在系統(tǒng)存儲器中)的lcd數(shù)據(jù)傳輸?shù)酵獠縧cd驅(qū)動器,并產(chǎn)生必須的lcd控制信號。 它支持灰度lcd和彩色lcd。在灰度lcd上,使用基于時間抖動算法(time-basedditheringalgorithm)和frc(frameratecontrol)方法,可以支持單色、4級灰度和16級灰度模式的灰度lcd。在彩色lcd上,可以支持256種色彩。不同尺寸的lcd具有不同數(shù)量的垂直和水平象素、數(shù)據(jù)接口、數(shù)據(jù)寬度、接口時間和刷新率。lcd控制器可以進(jìn)行編程控制相應(yīng)的寄存器值,以適應(yīng)不同的lcd顯示板。 lcd控制器邏輯框圖 圖1為lcd控制器的邏輯框圖。從框圖可以看出lcd控制器是用來實(shí)現(xiàn)傳輸顯示數(shù)據(jù)及產(chǎn)生必要的控制信號,如vframe、vline、vclk和vm。除了控制信號,還有顯示數(shù)據(jù)的數(shù)據(jù)端口vd[7:0]。 lcd控制器包括regbank、lcddma、vidprcs和timegen。 regbank有18個可編程寄存器,用于配置lcd控制器。lcddma為專用dma,可以自動地將顯示數(shù)據(jù)從幀內(nèi)存?zhèn)魉偷絣cd驅(qū)動器中。通過專用dma,可以實(shí)現(xiàn)在不需要cpu介入的情況下顯示數(shù)據(jù)。vidprcs從lcddma接收數(shù)據(jù),將相應(yīng)格式的數(shù)據(jù)通過timegen(包含可編程邏輯),以支持常見的lcd驅(qū)動器所需要的不同接口時間和速率的要求。timegen部分產(chǎn)生vframe,vline,vclk和vm等信號。 lcd控制器提供下列外部接口信號: vframe:lcd控制器和驅(qū)動器之間的幀同步信號。通知lcd屏新的一幀顯示,lcd控制器在一個完整幀顯示后發(fā)出vframe信號。 vline:lcd控制器和驅(qū)動器間同步脈沖信號。lcd驅(qū)動器通過它將水平移位寄存器的內(nèi)容顯示到lcd屏上。lcd控制器在一整行數(shù)據(jù)全部傳輸?shù)絣cd驅(qū)動器后發(fā)出vline信號。 vclk:lcd控制器和驅(qū)動器之間的象素時鐘信號。 vm:lcd驅(qū)動器所使用的交流信號。驅(qū)動器用vm打開或關(guān)閉象素的行和列電壓極性。 vd[3:0]:lcd象素數(shù)據(jù)輸出端口。 vd[7:4]:lcd象素數(shù)據(jù)輸出端口。 lcd控制器的寄存器 lcd控制器通過18個可編程寄存器來配置lcd顯示模塊的尺寸、顯示模式、接口數(shù)據(jù)寬度等。 lcd控制寄存器一(lcdcon1) lcdcon1所在地址:0x01f00000; 屬性:r/w; 復(fù)位值:0x00000000。 lcdcon1中各個位的意義見表1: lcd控制寄存器二(lcdcon2) lcdcon2的地址:0x01f00004; 屬性:r/w; 復(fù)位值:0x00000000。 lcdcon2中各個位的意義見表2: lcd控制寄存器三(lcdcon3) lcdcon3的地址:0x01f00040; 屬性:r/w; 復(fù)位值:0x00。 lcdcon3中各個位的意義見表3: 幀緩沖區(qū)開始地址一(lcdsaddr1) lcdsaddr1的地址:0x01f00008; 屬性:r/w; 復(fù)位值:0x000000。 lcdsaddr1中各個位的