版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、1第五章基于第五章基于S3C2410的的系統(tǒng)硬件設計系統(tǒng)硬件設計 (下)(下)2第五章第五章 基于基于S3C2410的系統(tǒng)硬件設計的系統(tǒng)硬件設計 l5.1 S3C2410 簡介l5.2 最小系統(tǒng)設計l5.3 中斷系統(tǒng)設計l5.4 DMA設計l5.6 AD、DA接口設計l5.7 PWM定時器l5.8 人機接口設計l5.9 通信接口設計3 5.5 S3C2410A 5.5 S3C2410A的的I/OI/O口工作原理口工作原理 S3C2410A S3C2410A共有共有117117個多功能復用輸入輸出口(個多功能復用輸入輸出口(I/OI/O口),口),分為分為8 8組組PORT APORT APOR
2、T HPORT H。;。8 8組組I/OI/O口按照其位數(shù)的不同,可分為:口按照其位數(shù)的不同,可分為:1 1個個2323位的輸出口(位的輸出口(PORT APORT A)2 2個個1111位的位的I/OI/O口(口(PORT B PORT B 和和PORT HPORT H)4 4個個1616位的位的I/OI/O口(口(PORT CPORT C、PORT DPORT D、PORT EPORT E、PORT GPORT G)1 1個個8 8位的位的I/OI/O口(口(PORT FPORT F)4S3C2410X Port Configuration (Sheet 1 of 5)5S3C2410X
3、Port Configuration (Sheet 2 of 5)6S3C2410X Port Configuration (Sheet 3 of 5)7S3C2410X Port Configuration (Sheet 4 of 5)8S3C2410X Port Configuration (Sheet 5 of 5)9端口控制寄存器端口控制寄存器l 與配置與配置I/O口相關的寄存器包括:口相關的寄存器包括:l(1)端口控制寄存器()端口控制寄存器(GPACONGPHCON)lS3C2410大部分引腳是復用的,在使用這些引腳之前,大部分引腳是復用的,在使用這些引腳之前,需要需要,這個端口控
4、制寄存器就是實,這個端口控制寄存器就是實現(xiàn)該功能的?,F(xiàn)該功能的。l(2)端口數(shù)據(jù)寄存器()端口數(shù)據(jù)寄存器(GPADATGPHDAT)l如果端口被配置為輸出端口,可以將要輸出的數(shù)據(jù)寫入如果端口被配置為輸出端口,可以將要輸出的數(shù)據(jù)寫入該端口數(shù)據(jù)寄存器,如果端口被配置為輸入端口,可以該端口數(shù)據(jù)寄存器,如果端口被配置為輸入端口,可以從端口數(shù)據(jù)寄存器讀取所輸入的數(shù)據(jù)。從端口數(shù)據(jù)寄存器讀取所輸入的數(shù)據(jù)。10l(3)端口上拉寄存器()端口上拉寄存器(GPBUPGPHUP)l端口上拉寄存器控制著每個端口組的上拉寄存器的使能端口上拉寄存器控制著每個端口組的上拉寄存器的使能或禁止。或禁止。0允許,允許,1禁止。禁
5、止。l(4)MISCELLANEOUS雜項控制寄存器雜項控制寄存器l控制著控制著USB、時鐘、數(shù)據(jù)總線的端口屬性。、時鐘、數(shù)據(jù)總線的端口屬性。l外部中斷控制寄存器(外部中斷控制寄存器(EXTINTN) l用來配置用來配置24個外部中斷請求信號的觸發(fā)方式(電平、個外部中斷請求信號的觸發(fā)方式(電平、邊沿)邊沿)111213141516171819202122232425262728 I/O I/O口編程實例口編程實例 舉例舉例: 1: 1、輸出實例:、輸出實例:使用使用GPIO控制控制LED1LED4,使其指示,使其指示0F的的16進制數(shù)值(進制數(shù)值(LED4為最高位,為最高位,LED1為最低位)
6、。為最低位)。GPE11S3C2410ALED1VDD3.3R1 1KQ1 8050GPH4GPE12GPH6R2 1KR3 1KR4 1KR5 470Q2 8050Q3 8050Q4 8050R6 470R7 470R8 470LED2LED3LED429l程序清單 #include config.h /* * Function name: LED_DispNum * Descriptions: 控制LED1LED4顯示指定16進制數(shù)值。LED4為最高位, * LED1為最低為,點亮表示該位為1。 * * Output: 無 */ void LED_DispNum(uint32 dat) /
7、 Input: dat 顯示數(shù)值(低4位有效) dat = dat & 0 x0000000F; / 參數(shù)過濾 / 控制LED4、LED3顯示(d3、d2位) if(dat & 0 x08) rGPHDAT = rGPHDAT | (0 x016); else rGPHDAT = rGPHDAT & (0 x016); if(dat & 0 x04) rGPHDAT = rGPHDAT | (0 x014); else rGPHDAT = rGPHDAT & (0 x014); / 控制LED2、LED1顯示(d1、d0位) rGPEDAT = (rGP
8、EDAT & (0 x0311) | (dat&0 x03) 0; dly-) for(i=0; i50000; i+); 31int main(void) int i; / 初始化I/O rGPECON = (rGPECON & (0 x0F22) | (0 x0522); / rGPECON25:22 = 0101b,設置GPE11、GPE12為GPIO輸出模式 rGPHCON = (rGPHCON & (0 x338) | (0 x118); / rGPHCON13:8 = 01xx01b,設置GPH4、GPH6為GPIO輸出模式 / LED顯示控制 wh
9、ile(1) / 控制LED指示0F的16進制數(shù)值 for(i=0; i16; i+) LED_DispNum(i); / 顯示數(shù)值i DelayNS(5); return(0);32 I/O I/O口編程實例口編程實例 舉例舉例: 2: 2、輸入實例:、輸入實例: S3C2410AB1BUZZERQ58050VDD33R31KR418GPH10KEY1R122VDD33GPF 4R210K33l程序清單 #include config.h / 定義獨立按鍵KEY1的輸入口 #define KEY_CON (14) /* GPF4口 */ / 定義蜂鳴器控制口 #define BEEP (11
10、0) /* GPH10口 */ #define BEEP_MASK(BEEP) int main(void) / 初始化I/O rGPFCON = (rGPFCON & (0 x038); / rGPFCON9:8 = 00b,設置GPF4為GPIO輸入模式 rGPHCON = (rGPHCON & (0 x0121) | (0 x0120); / rGPHCON21:20 = 01b,設置GPH10為GPIO輸出模式 rGPHDAT = rGPHDAT & BEEP_MASK; / 初始狀態(tài)按鍵未按下,設置GPH10=0,禁止蜂鳴器發(fā)聲 34 while(1) if(
11、rGPFDAT & KEY_CON) / 判斷GPF4是否為高電平 rGPHDAT = rGPHDAT & BEEP_MASK; / GPF4為高電平,按鍵未按下,則設置GPH10=0 else rGPHDAT = rGPHDAT | BEEP; / GPF4為低電平,按鍵已按下,則設置GPH10=1 DelayNS(1); return(0);35第五章第五章 基于基于S3C2410的系統(tǒng)硬件設計的系統(tǒng)硬件設計 l5.1 S3C2410 簡介l5.2 最小系統(tǒng)設計l5.3 中斷系統(tǒng)設計l5.4 DMA設計l5.5 I/O接口擴展l5.7 PWM定時器l5.8 人機接口設計l5
12、.9 通信接口設計36 5.6 S3C2410A 5.6 S3C2410A的的A/DA/D轉(zhuǎn)換器轉(zhuǎn)換器 S3C2410A的的A/D轉(zhuǎn)換器包含一個轉(zhuǎn)換器包含一個8通道的模擬輸入轉(zhuǎn)換器,可以通道的模擬輸入轉(zhuǎn)換器,可以將模擬輸入信號將模擬輸入信號(帶有采樣保持器)轉(zhuǎn)換成帶有采樣保持器)轉(zhuǎn)換成10位位數(shù)字編碼。在數(shù)字編碼。在AD轉(zhuǎn)換轉(zhuǎn)換時鐘為時鐘為2.5MHz時,其最大轉(zhuǎn)換率為時,其最大轉(zhuǎn)換率為500KSPS,輸入電壓范圍是,輸入電壓范圍是03.3V。 37 Example of ADC and Touch Screen Interfacel四線電阻式觸摸屏接口基礎知識l 四線電阻式觸摸屏組成及工作原
13、理n圖11.2為四線電阻式觸摸屏截面圖及在X電極對上施加確定的電壓后,X方向?qū)щ妼硬煌恢秒妷菏疽鈭D。n圖11.3給出了上導電層X+、X-電極、下導電層Y+、Y-電極的位置。圖11.3(a)和圖11.3(b)分別表示,確定觸點位置時,要先在X+、X-電極對施加電壓,Y+、Y-電極對不施加電壓;然后在Y+、Y-電極對施加電壓,X+、X-電極對不施加電壓。 l 四線電阻式觸摸屏接口主要操作n接口主要操作包括:有觸摸動作時首先控制首先控制X+、X-電極對施加電壓,電極對施加電壓,Y+電極與電極與A/D轉(zhuǎn)換轉(zhuǎn)換器連接、器連接、Y-電極對地高阻,讀電極對地高阻,讀A/D轉(zhuǎn)換值得到轉(zhuǎn)換值得到觸點的觸點的X
14、坐標坐標;然后控制然后控制Y+、Y-電極對施加電電極對施加電壓,壓,X+電極與電極與A/D轉(zhuǎn)換器連接,轉(zhuǎn)換器連接,X-電極對地高電極對地高阻,讀阻,讀A/D轉(zhuǎn)換值值得到觸點的轉(zhuǎn)換值值得到觸點的Y坐標坐標;另外還有檢測觸摸動作,產(chǎn)生中斷請求等操作。41與與A/D轉(zhuǎn)換相關的寄存器轉(zhuǎn)換相關的寄存器 :ADCADC控制寄存器(控制寄存器(ADCCONADCCON) ADCADC觸摸屏控制寄存器(觸摸屏控制寄存器(ADCTSCADCTSC) ADCADC啟動延時寄存器啟動延時寄存器(ADCDLY) (ADCDLY) ADCADC轉(zhuǎn)換數(shù)據(jù)寄存器轉(zhuǎn)換數(shù)據(jù)寄存器(ADCDATn) (ADCDATn) 4243
15、4445464748 5.6.2 A/D 5.6.2 A/D接口編程實例接口編程實例 舉例:舉例: VDD33W110KW210KVIN1VIN2R722R822VDD33C1260.1uFL810uHVDD33S3C2410AVrefAIN0AIN149l程序清單 #include config.h / 定義用于保存ADC結(jié)果的變量 uint32 adc0, adc1; / 定義顯示緩沖區(qū) char disp_buf50; / 定義ADC轉(zhuǎn)換時鐘 (2MHz) #define ADC_FREQ(2*1000000) 50/* Function name: ReadAdc* Descripti
16、ons: ADC轉(zhuǎn)換函數(shù) * Input: ch轉(zhuǎn)換通道(0-7)* Output: 返回轉(zhuǎn)換結(jié)果*/uint32 ReadAdc(uint32 ch) int i;ch = ch & 0 x07;/ 參數(shù)過濾 rADCCON = (114)|(PCLK/ADC_FREQ - 1)6)|(ch3)|(02)|(01)|(00);/ PRSCEN=1,使能分頻器/ PRSCVL=(PCLK/ADC_FREQ - 1),即ADC轉(zhuǎn)換時鐘為ADC_FREQ/ SEL_MUX=ch,設置ADC通道/ STDBM=0,標準轉(zhuǎn)換模式/ READ_START=0,禁止讀(操作后)啟動ADC/ ENA
17、BLE_START=0,不啟動ADC rADCTSC = rADCTSC & (0 x03); / 普通ADC模式(非觸摸屏)for(i=0; i100; i+);rADCCON = rADCCON | (1鋸齒波信號的電平時比較器輸出高電平信號,反之輸出低電平信號。這樣Uc的大小決定了脈沖占空比。當Uc為一模擬信號,隨著時間變化時,脈沖占空比也會隨著時間變化,變化的規(guī)律和Uc一樣,也就是實現(xiàn)了Uc對方波的PWM調(diào)制。69S3C2410的的PWM的實現(xiàn)原理的實現(xiàn)原理脈沖占空比取決于TCMPBn中的值,脈沖周期決定于TCNTBn 中的值,按照調(diào)制信號的大小改變TCMPBn 里的值,就會實
18、現(xiàn)PWM調(diào)制。70l全橋PWM逆變器原理圖(4)死區(qū)控制71 全橋PWM逆變器波形圖S1、S4控制信號S2、S3控制信號變壓器原邊電壓變壓器原邊電流變壓器副邊電流(負載電壓)72The Wave Form When a Dead Zone Feature is Enabled73PWM定時器控制寄存器定時器控制寄存器747576777879808182 5.7.2 PWM 5.7.2 PWM應用舉例應用舉例 舉例:舉例: PWMDACR18210KC1271uF/16VJP11PWMS3C2410AKEY1R18122VDD33GPF4/EINT4R3910KTOUT083l程序清單 #inc
19、lude config.h / 定義獨立按鍵KEY1的輸入口 #define KEY_CON (14) /* GPF4口 */ /* Function name: WaitKey* Descriptions: 等待一個有效按鍵。本函數(shù)有去抖功能。 * Input: 無* Output: 無*/void WaitKey(void) uint32 i; while(1) while(rGPFDAT&KEY_CON) = KEY_CON) ;/ 等待KEY鍵按下 for(i=0; icycle) duty = cycle; / 設置定時器0,即PWM周期和占空比 / Fclk=200MHz,
20、時鐘分頻配置為1:2:4,即Pclk=50MHz。 rTCFG0 = 97;/ 預分頻器0設置為98,取得510204HzrTCFG1 = 0;/ TIMER0再取1/2分頻,取得255102HzrTCMPB0 = duty; / 設置PWM占空比rTCNTB0 = cycle;/ 定時值(PWM周期)if(rTCON&0 x04) rTCON = (11); / 更新定時器數(shù)據(jù) (取反輸出inverter位) else rTCON = (12)|(11);rTCON = (10)|(13); / 啟動定時器 85/* Function name: main* Descriptions
21、: 使用PWM輸出實現(xiàn)DAC功能,輸出電壓分別為0.0V、0.5V、1.0V、1.5V、2.0V、2.5V和3.0V。 * Input: 無* Output: 系統(tǒng)返回值0*/int main(void) uint16 pwm_dac; / 獨立按鍵KEY1控制口設置 rGPFCON = (rGPFCON & (0 x038); / rGPFCON9:8 = 00b,設置GPF4為GPIO輸入模式 / TOUT0口設置 rGPBCON = (rGPBCON & (0 x030) | (0 x02255) pwm_dac = 0; rTCMPB0 = pwm_dac; retur
22、n(0);87運行結(jié)果:88第五章第五章 基于基于S3C2410的系統(tǒng)硬件設計的系統(tǒng)硬件設計 l5.1 S3C2410 簡介l5.2 最小系統(tǒng)設計l5.3 中斷系統(tǒng)設計l5.4 DMA設計l5.5 I/O接口擴展l5.6 AD、DA接口設計l5.7 PWM定時器l5.9 通信接口設計89 5.8.1 5.8.1 鍵盤和鍵盤和LEDLED的接口原理的接口原理 HA7279A是一片具有串行接口并可同時驅(qū)動是一片具有串行接口并可同時驅(qū)動8位共陰式數(shù)碼管或位共陰式數(shù)碼管或64只獨立只獨立LED的智能顯示驅(qū)動芯片。該芯片同時可連接多達的智能顯示驅(qū)動芯片。該芯片同時可連接多達64鍵的鍵鍵的鍵盤矩陣,一片即
23、可完成盤矩陣,一片即可完成LED顯示及鍵盤接口的全部功能。顯示及鍵盤接口的全部功能。 HA7279AHA7279A一共有一共有2828個引腳:個引腳:RESETRESET:復位端。通常,該端接:復位端。通常,該端接5V5V電源;電源;DIG0DIG0DIG7DIG7:個:個LEDLED管的位驅(qū)動輸出端;管的位驅(qū)動輸出端;SASASGSG:LEDLED數(shù)碼管的段段的輸出端;數(shù)碼管的段段的輸出端;DPDP:小數(shù)點的驅(qū)動輸出端;:小數(shù)點的驅(qū)動輸出端;RCRC:外接振蕩元件連接端。:外接振蕩元件連接端。HD7279AHD7279A與微處理器僅需條接口線與微處理器僅需條接口線: :CSCS:片選信號(低
24、電平有效);:片選信號(低電平有效);DATADATA:串行數(shù)據(jù)端。:串行數(shù)據(jù)端。CLKCLK:數(shù)據(jù)串行傳送的同步時鐘輸入端,時鐘:數(shù)據(jù)串行傳送的同步時鐘輸入端,時鐘的上升沿表示數(shù)據(jù)有效。的上升沿表示數(shù)據(jù)有效。KEY:KEY:按鍵信號輸出端。該端在無鍵按下時為按鍵信號輸出端。該端在無鍵按下時為高電平;而在有鍵按下時變?yōu)榈碗娖剑⒁恢备唠娖?;而在有鍵按下時變?yōu)榈碗娖?,并一直保持到按鍵釋放為止。保持到按鍵釋放為止。 90v HD7279A HD7279A與與S3C2410AS3C2410A的連接原理圖的連接原理圖 91 鍵盤和鍵盤和LEDLED控制的編程實例控制的編程實例 舉例:通過按鍵來控制舉例
25、:通過按鍵來控制LED的顯示。的顯示。 1鍵盤中斷的初始化鍵盤中斷的初始化 void KeyINT_Init(void)void KeyINT_Init(void) rGPFCON=(rGPFCON&0 xF3FF)|(210); rGPFCON=(rGPFCON&0 xF3FF)|(210); rGPECON=(rGPECON&0 xF3FFFFFF)|(0 x0126); rGPECON=(rGPECON&0 xF3FFFFFF)|(0 x0126); /設置設置GPE13GPE13為輸出位,模擬時鐘輸出為輸出位,模擬時鐘輸出 rEXTINT0 &=
26、 0 xff8fffff; rEXTINT0 &= 0 xff8fffff; /外部中斷外部中斷5 5低電平有效低電平有效 if (rEINTPEND & 0 x20) if (rEINTPEND & 0 x20) /清除外部中斷清除外部中斷5 5的中斷掛起位的中斷掛起位 rEINTPEND |= 0 x20;rEINTPEND |= 0 x20; if (rINTPND & BIT_EINT4_7) if (rINTPND & BIT_EINT4_7) rSRCPND |= BIT_EINT4_7;rSRCPND |= BIT_EINT4_7; rIN
27、TPND |= BIT_EINT4_7;rINTPND |= BIT_EINT4_7; rINTMSK &= (BIT_EINT4_7); rINTMSK &= (BIT_EINT4_7); /使用外部中斷使用外部中斷4 47 7 rEINTMASK &= 0 xffffdf; rEINTMASK &= 0 xffffdf; /外部中斷外部中斷5 5使能使能 pISR_EINT4_7 = (int)Key_ISR;pISR_EINT4_7 = (int)Key_ISR; 92舉例:通過按鍵來控制舉例:通過按鍵來控制LED的顯示。的顯示。 2書寫中斷服務子程序書寫
28、中斷服務子程序 void _irq Key_ISR( void ) void _irq Key_ISR( void ) int j;int j;rINTMSK |= BIT_ALLMSK; / rINTMSK |= BIT_ALLMSK; / 關中斷關中斷if (rEINTPEND & 0 x20)if (rEINTPEND & 0 x20) key_number = read7279(cmd_read);/key_number = read7279(cmd_read);/讀鍵盤指令程序讀鍵盤指令程序 rINTMSK &= (BIT_EINT4_7);rINTMSK &
29、amp;= (BIT_EINT4_7); switch(key_number) switch(key_number) case 0 x04 : key_number = 0 x08; break; case 0 x04 : key_number = 0 x08; break; case 0 x05 : key_number = 0 x09; break; case 0 x05 : key_number = 0 x09; break; case 0 x06 : key_number = 0 x0A; break; case 0 x06 : key_number = 0 x0A; break; c
30、ase 0 x07 : key_number = 0 x0B; break; case 0 x07 : key_number = 0 x0B; break; case 0 x08 : key_number = 0 x04; break; case 0 x08 : key_number = 0 x04; break; case 0 x09 : key_number = 0 x05; break; case 0 x09 : key_number = 0 x05; break; case 0 x0A : key_number = 0 x06; break; case 0 x0A : key_numb
31、er = 0 x06; break; case 0 x0b : key_number = 0 x07; break; case 0 x0b : key_number = 0 x07; break; default: break; default: break; Uart_Printf(key is %x n, key_number);Uart_Printf(key is %x n, key_number); rEINTPEND |= 0 x20;rEINTPEND |= 0 x20;rSRCPND |= BIT_EINT4_7;rSRCPND |= BIT_EINT4_7; rINTPND |
32、= BIT_EINT4_7; rINTPND |= BIT_EINT4_7; 93舉例:通過按鍵來控制舉例:通過按鍵來控制LED的顯示。的顯示。 3主程序的主主程序的主要功能是根據(jù)按要功能是根據(jù)按鍵鍵值,向鍵鍵值,向HD7279A發(fā)送不發(fā)送不同的處理命令,同的處理命令,程序結(jié)構如下。程序結(jié)構如下。 void Main() void Main() char p;char p; Target_Init(); Target_Init(); /目標初始化目標初始化 while(1) while(1) switch(key_number) switch(key_number) case 0: send_
33、byte(cmd_test); case 0: send_byte(cmd_test); /測試鍵測試鍵 break;break; case 1: for(p=0;p8;p+) case 1: for(p=0;p8;p+) /右移右移8 8位位 send_byte(0 xA0);send_byte(0 xA0); send_byte(0 xC8+7); send_byte(0 xC8+7); send_byte(p);send_byte(p); long_delay(); long_delay(); Delay(7000); Delay(7000); break; break; /case 2
34、/case 2到到case14case14 case 15: case 15:/最右兩個數(shù)碼管上顯示最右兩個數(shù)碼管上顯示1515 write7279(decode1+5,key_number/16 write7279(decode1+5,key_number/16* *8);8); write7279(decode1+4,key_number & write7279(decode1+4,key_number & 0 x0f);0 x0f); break; break; default: break; default: break; key_number = 0 xff; key
35、_number = 0 xff; Delay(50); Delay(50); 94 5.8.2 LCD 5.8.2 LCD顯示原理顯示原理 所謂所謂LCD,是,是Liquid Crystal Display的縮寫,即液晶顯的縮寫,即液晶顯示器。示器。LCD液晶顯示器主要有兩類:液晶顯示器主要有兩類:STN(Super Twisted Nematic,超扭曲向列型)和超扭曲向列型)和TFT(Thin Film Transistor,薄,薄膜晶體管型)。對于膜晶體管型)。對于S3C2410A的的LCD控制器,同時支持控制器,同時支持STN和和TFT顯示器。顯示器。 STN與與TFT的主要區(qū)別在于:
36、的主要區(qū)別在于:從工作原理上看,從工作原理上看,STN主要是增大液晶分子的扭曲角,而主要是增大液晶分子的扭曲角,而TFT為每個像素點設置一個開關電路,做到完全單獨的控制每個像為每個像素點設置一個開關電路,做到完全單獨的控制每個像素點;素點;從品質(zhì)上看,從品質(zhì)上看,STN的亮度較暗,畫面的質(zhì)量較差,顏色不夠豐的亮度較暗,畫面的質(zhì)量較差,顏色不夠豐富,播放動畫時有拖尾現(xiàn)象富,播放動畫時有拖尾現(xiàn)象,耗電量小,價格便宜;而耗電量小,價格便宜;而TFT亮度亮度高,畫面質(zhì)量高,顏色豐富,播放動畫時清晰,耗電量大,價高,畫面質(zhì)量高,顏色豐富,播放動畫時清晰,耗電量大,價格高。格高。 951、 LCD控制器概
37、述市面上出售的LCD有兩種類型:u一種是帶有驅(qū)動控制電路的LCD顯示模塊,這種LCD可以方便地與各種低檔單片機進行接口;u另一種是LCD顯示屏,沒有驅(qū)動控制電路, 大部分大部分ARM處理器中都集成了處理器中都集成了LCD控制器,所以對于控制器,所以對于采用采用ARM處理器的系統(tǒng),一般使用處理器的系統(tǒng),一般使用。 96嵌入式處理器與嵌入式處理器與LCDLCD的連接的連接嵌入嵌入式處式處理器理器LCD模塊模塊數(shù)據(jù)數(shù)據(jù)總線總線寄存器選擇寄存器選擇使能信號使能信號有有LCD控制控制器的嵌入式器的嵌入式處理器處理器LCDLCD控制信控制信號線號線97 S3C2410A S3C2410A的的LCDLCD控
38、制器控制器 S3C2410A中的中的LCD控制器可支持控制器可支持STN和和TFT兩種液晶兩種液晶顯示屏。顯示屏。 LCD控制器支持單色、控制器支持單色、4級、級、16級灰度級灰度LCD顯示,顯示,以及以及8位彩色(位彩色(256色)、色)、12位彩色(位彩色(4096色)色)LCD顯示。顯示。LCD控制器由控制器由REGBANK、LCDCDMA、VIDPRCS、TIMEGEN和和LPC3600組成。組成。 支持 3 種STN LCD 顯示: 4-bit 雙掃描, 4-bit 單掃描, 和8-bit 單掃描 支持二值, 4 級灰度, 16 級灰度,256色 和 4096 色的 STN LCD
39、典型屏幕尺寸為:640480, 320240, 160160等。256色模式虛擬屏幕尺寸為:40961024, 20482048, 10244096等等(1)STN LCD(2)TFT LCD 支持 1位、2位、4位和8位 調(diào)色板模式的TFT LCD 顯示 支持16位、24位(16M)非調(diào)色板模式的TFT LCD顯示 典型實際屏幕尺寸為 640480, 320240, 160160等。64K 彩色模式下支持的最大虛擬屏幕尺寸為 20481024983、 LCD控制器的框圖寄存器組,由17個寄存器和一個25616的調(diào)色板構成,用來設置LCD控制器。專用DMA,用來自動將存儲器中的視頻數(shù)據(jù)傳送到L
40、CD驅(qū)動器中。無需CPU干涉。視頻數(shù)據(jù)產(chǎn)生,(如:4/8比特單掃描或4比特雙掃描),然后從端口VD23:0 發(fā)送到LCD驅(qū)動器。時序產(chǎn)生,用來產(chǎn)生視頻控制信號。定時控制生成邏輯單元。994、 LCD接口信號VFRAME/VSYNC/STV : LCD控制器發(fā)往驅(qū)動器的幀同步信號 ,它表示新的一幀的開始。LCD控制器在一個完整的幀顯示后發(fā)出該信號,開始新的一幀的顯示。VLINE/HSYNC/CPV : LCD控制器發(fā)往驅(qū)動器的行同步脈沖信號 ,LCD驅(qū)動器在收到該信號后,將水平移位寄存器的內(nèi)容顯示到LCD屏上。LCD控制器在一整行數(shù)據(jù)全部傳輸?shù)絃CD驅(qū)動器后,發(fā)出一個VLINE信號。VCLK/L
41、CD_HCLK : LCD控制器發(fā)往驅(qū)動器的像素時鐘信號 ,LCD控制器在VCLK的上升沿發(fā)送數(shù)據(jù),LCD驅(qū)動器在VCLK的下降沿采樣數(shù)據(jù)。VD23:0 : LCD 像素數(shù)據(jù)輸出端口 ,也就是平時所說的RGB信號線,采用的是5:6:5的模式。 S3C2410A中的中的LCD控制器一共有控制器一共有33個輸出端口,其中個輸出端口,其中24個數(shù)據(jù)信號端口,個數(shù)據(jù)信號端口,9個控制信號端口。個控制信號端口。 1004、 LCD接口信號VM/VDEN/TP : LCD 驅(qū)動器所使用的的AC 偏置信號 。LCD驅(qū)動器使用該信號改變行電壓和列電壓的極性,進而打開或者關閉像素,使像素點顯示或熄滅。VM信號可
42、以與幀同步信號或者行同步信號進行同步。LEND/STH : 行終止信號 (TFT)/SEC TFT信號 STHLCD_PWREN : LCD 電源使能信號LCDVF0 : SEC TFT OE信號LCDVF1 : SEC TFT REV信號LCDVF2 : SEC TFT REVB信號1015、 STN LCD控制器操作l定時發(fā)生器 (TIMEGEN) TIMEGEN產(chǎn)生產(chǎn)生LCD驅(qū)動器所需要的各種控制信號,如:驅(qū)動器所需要的各種控制信號,如:VFRAME, VLINE, VCLK, 和和VM。 這些信號是與這些信號是與REGBANK 里面的寄存器里面的寄存器LCDCON1/2/3/4/5 的
43、配置密切相關的??梢缘呐渲妹芮邢嚓P的。可以通過改變這些寄存器的配置使得這些控制信號能夠滿足各種通過改變這些寄存器的配置使得這些控制信號能夠滿足各種LCD驅(qū)動器的要求。比如:驅(qū)動器的要求。比如: (1)VM的切換速率的切換速率 VM 的切換速率由的切換速率由LCDCON1寄存器的寄存器的 MMODE位和位和LCDCON4寄存寄存器的器的MVAL 字段來決定。如果字段來決定。如果MMODE = 0,則則VM信號每幀切換一次。如信號每幀切換一次。如果果MMODE =1 ,則,則VM 每每MVAL7:0個個VLINE切換一次,即:切換一次,即: VM Rate = VLINE Rate / ( 2 *
44、 MVAL) ,如下圖所示:,如下圖所示:102103(2)VFRAME 和和VLINE脈沖脈沖 VFRAME 和VLINE脈沖的產(chǎn)生依賴于LCDCON2/3寄存器的HOZVAL字段和LINEVAL 字段。這兩個字段的值由LCD的顯示尺寸和顯示模式?jīng)Q定: HOZVAL = (水平顯示尺寸水平顯示尺寸 / 有效有效 VD 數(shù)據(jù)行數(shù)數(shù)據(jù)行數(shù))- 1 (在彩色顯示模式水平顯示尺寸= 3 水平像素數(shù);在4位單掃描和4位 雙掃描模式,有效 VD 數(shù)據(jù)行數(shù)為4,在8位單掃描模式,有效 VD 數(shù) 據(jù)行數(shù)為8. ) LINEVAL = (垂直顯示尺寸垂直顯示尺寸) -1 /單掃描模式下單掃描模式下 LINEV
45、AL = (垂直顯示尺寸垂直顯示尺寸/2) -1 /雙掃描模式下雙掃描模式下 (3)VCLK 信號速率信號速率 VCLK 信號的速率依賴于LCDCON1寄存器的CLKVAL 字段的設置。VCLK與 CLKVAL(最小為2)的對應關系為: VCLK(Hz)=HCLK/(CLKVAL x 2) 如下表所示: 104(4)幀速率幀速率 幀速率即是VFRAM 信號的頻率. 幀速率與LCDCON1/2/3/4寄存器中的WLH1:0(VLINE脈沖寬度),WDLY1:0 (VLINE脈沖之后的VCLK延時長度),HOZVAL,LINEBLANK和LINEVAL等字段,以及VCLK和HCLK有關。幀速率的計
46、算公式為: frame_rate(Hz) = 1/(1/VCLK)(HOZVAL+1)+(1/HCLK) (A+B+(LINEBLANK8)(LINEVAL+1) 其中:其中: A = 2(4+WLH),B = 2(4+WDLY) 105l視頻操作 S3C2410 LCD控制器支持單色、2位(4級灰度)、4位(16灰度級)、8位(256級彩色)和12位(4096級彩色) LCD顯示。 為了便于用戶選擇不同的顯示模式, S3C2410 LCD控制器采用了。通過這個調(diào)色板,用戶可以在用戶可以在4灰度級?;叶燃壞J较聫氖较聫?6級灰度中選擇級灰度中選擇4級灰度,構成查找表級灰度,構成查找表。在256
47、級彩色中,8位彩色由3位紅(8色)、3位綠(8色)、2位藍(4色)構成(884= 256),這些紅綠藍色級也是分別在自己的16級中進行選擇構成查找表。在16級灰度顯示模式下,不需要查找表,16個灰度級都需要。在4096級彩色中不需要查表(紅、綠、藍都是16級, 161616= 4096)。(1)查找表106(2)灰度模式操作 S3C2410 LCD控制器支持兩種灰度模塊:2位(4級灰度)、4位(16灰度級)。其中,4級灰度模式使用查找表,并且該查找表和彩色中的藍色共用BLUELUT寄存器中的BLUEVAL15:0。 0級灰度用BLUEVAL3:0來表示(如:這四位的值是3,則表示用16級灰度中
48、的3級來表示4級灰度中的0級)、 1級灰度用BLUEVAL7:4來表示, 2級灰度用BLUEVAL11:8來表示, 3級灰度用BLUEVAL15:12來表示。D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D03級灰度對應級值2級灰度對應級值1級灰度對應級值0級灰度對應級值BLUEVAL107(3)256級彩色模式操作 S3C2410 LCD控制器支持每像素8位的256色彩色模式。每個象素的8位有3位表示紅,3位表示綠,2位表示蘭,分別利用自己的查找表。各個表分別用REDLUT寄存器中的REDVAL31:0、GREENLUT寄存器中的GREENVAL31:0和BLUEL
49、UT寄存器中的BLUEVAL15:0作為查找表的入口。REDVALD31-D28D27-D24D23-D20D19-D16D15-D12D11-D8D7-D4D3-D07級灰度對應級值6級灰度對應級值5級灰度對應級值4級灰度對應級值3級灰度對應級值2級灰度對應級值1級灰度對應級值0級灰度對應級值D31-D28D27-D24D23-D20D19-D16D15-D12D11-D8D7-D4D3-D07級灰度對應級值6級灰度對應級值5級灰度對應級值4級灰度對應級值3級灰度對應級值2級灰度對應級值1級灰度對應級值0級灰度對應級值GREENVAL108(4)4096級彩色模式操作 S3C2410 LCD
50、控制器支持每像素12位的4096色彩色模式。每個象素的12位有4位表示紅,4位表示綠,4位表示蘭,不再使用查找表。109(5)掃描模式支持 S3C2410 LCD控制器支持3種顯示:4位單掃描、4位雙掃描和8位單掃描。掃描方式通過PNRMODE(LCDCON16:5)來設置:PNRMODE00011011模式4位雙掃描4位單掃描8位單掃描TFT LCD110(A)4位單掃描 從VD3:01次移動4位數(shù)據(jù),直到一幀數(shù)據(jù)移位完畢。如下圖所示:4位單掃描單色模式位單掃描單色模式1114位單掃描彩色模式位單掃描彩色模式112(B)4位雙掃描 顯示控制器分別使用兩條掃描線進行數(shù)據(jù)顯示,顯示數(shù)據(jù)從VD3:
51、0獲得高掃描數(shù)據(jù), VD7:4獲得低掃描數(shù)據(jù)。如下圖所示:4位雙掃描模式位雙掃描模式1134位雙掃描彩色模式位雙掃描彩色模式114(C)8位單掃描 顯示數(shù)據(jù)從VD7:0獲得掃描數(shù)據(jù),一次輸入8位行數(shù)據(jù)。如下圖所示:8位單掃描單色模式位單掃描單色模式1158位單掃描彩色模式位單掃描彩色模式116(5)顯示數(shù)據(jù)的存放117l在4級灰度模式,2bit視頻數(shù)據(jù)對應一個像素l在16級灰度模式,4bit視頻數(shù)據(jù)對應一個像素l在256色彩色模式,8bit視頻數(shù)據(jù)對應一個像素。8位彩色數(shù)據(jù)格式如下:l在4096色彩色模式,12bit視頻數(shù)據(jù)對應一個像素,以字為單位的彩色數(shù)據(jù)格式如下(注意:這時彩色視頻數(shù)據(jù)必須
52、3字對齊,即8像素對齊):118v 與與LCDLCD相關的寄存器相關的寄存器 LCDLCD控制寄存器控制寄存器1 1(LCDCON1LCDCON1)LCDLCD控制寄存器控制寄存器2 2(LCDCON2LCDCON2) LCDLCD控制寄存器控制寄存器3 3(LCDCON3LCDCON3) LCDLCD控制寄存器控制寄存器4 4(LCDCON4LCDCON4)LCDLCD控制寄存器控制寄存器5 5(LCDCON5LCDCON5) 幀緩沖起始地址寄存器幀緩沖起始地址寄存器1 1(LCDSADDR1LCDSADDR1) 幀緩沖起始地址寄存器幀緩沖起始地址寄存器2 2(LCDSADDR2LCDSAD
53、DR2)幀緩沖起始地址寄存器幀緩沖起始地址寄存器3 3(LCDSADDR3LCDSADDR3)RGBRGB查找表寄存器(查找表寄存器(REDLUTREDLUT、GREENLUT GREENLUT 、BLUELUT BLUELUT ) 抖動模式寄存器(抖動模式寄存器(DITHMODEDITHMODE) 119 LCD LCD顯示的編程實例顯示的編程實例 舉例:在舉例:在LCD上填充一個藍色的矩形,并畫一個紅色的圓。上填充一個藍色的矩形,并畫一個紅色的圓。 1定義與定義與LCD相關的寄存器相關的寄存器 #define #define M5D(n) M5D(n) (n) & 0 x1ffff
54、f)(n) & 0 x1fffff)#define MVAL#define MVAL(13)(13)#define MVAL_USED #define MVAL_USED (0)(0)#define MODE_CSTN_8BIT (0 x2001)#define MODE_CSTN_8BIT (0 x2001)#define LCD_XSIZE_CSTN #define LCD_XSIZE_CSTN (320)(320)#define LCD_YSIZE_CSTN #define LCD_YSIZE_CSTN (240)(240)#define SCR_XSIZE_CSTN #defi
55、ne SCR_XSIZE_CSTN (LCD_XSIZE_CSTN(LCD_XSIZE_CSTN* *2) 2) /虛擬屏幕大小虛擬屏幕大小#define SCR_YSIZE_CSTN #define SCR_YSIZE_CSTN (LCD_YSIZE_CSTN(LCD_YSIZE_CSTN* *2) 2) #define HOZVAL_CSTN#define HOZVAL_CSTN (LCD_XSIZE_CSTN (LCD_XSIZE_CSTN* *3/8-1) 3/8-1) /有效的有效的VDVD數(shù)據(jù)行號是數(shù)據(jù)行號是8 8#define LINEVAL_CSTN#define LINEVA
56、L_CSTN(LCD_YSIZE_CSTN-1)(LCD_YSIZE_CSTN-1)#define WLH_CSTN#define WLH_CSTN (0) (0)#define WDLY_CSTN#define WDLY_CSTN(0)(0)#define LINEBLANK_CSTN#define LINEBLANK_CSTN(16 &0 xff)(16 &0 xff)#define CLKVAL_CSTN#define CLKVAL_CSTN(6) (6) /130hz 50Mhz,WLH=16hclk,WDLY=16hclk,LINEBLANK=16/130hz 50M
57、hz,WLH=16hclk,WDLY=16hclk,LINEBLANK=16* *8hclk,VD=88hclk,VD=8#define LCDFRAMEBUFFER 0 x33800000 #define LCDFRAMEBUFFER 0 x33800000 /幀緩沖區(qū)起始地址幀緩沖區(qū)起始地址120舉例:在舉例:在LCD上填充一個藍色的矩形,并畫一個紅色的圓。上填充一個藍色的矩形,并畫一個紅色的圓。 2初始化初始化LCD,即對相關寄存器進行賦初值。其中參數(shù),即對相關寄存器進行賦初值。其中參數(shù)type用于傳遞顯用于傳遞顯示器的類型,如示器的類型,如STN8位彩色、位彩色、STN12位彩色等。位
58、彩色等。 void LCD_Init(int type)void LCD_Init(int type) rIISPSR=(25)|(20); rIISPSR=(25)|(20); /IIS_LRCK=44.1Khz 384fs,PCLK=50Mhz./IIS_LRCK=44.1Khz 384fs,PCLK=50Mhz. rGPHCON = rGPHCON & (0 xf18)|(0 x518); rGPHCON = rGPHCON & (0 xf18)|(0 x518); switch(type) switch(type) case MODE_CSTN_8BIT: case M
59、ODE_CSTN_8BIT: /STN8/STN8位彩色模式位彩色模式 frameBuffer8Bit=(U32 (frameBuffer8Bit=(U32 (* *)SCR_XSIZE_CSTN / 4)LCDFRAMEBUFFER;)SCR_XSIZE_CSTN / 4)LCDFRAMEBUFFER; rLCDCON1=(CLKVAL_CSTN8)|(MVAL_USED7)|(25)|(31)|0; rLCDCON1=(CLKVAL_CSTN8)|(MVAL_USED7)|(25)|(31)|0; / 8-bit/ 8-bit單掃描,單掃描,8bpp CSTN,ENVID=8bpp CST
60、N,ENVID=關閉關閉 rLCDCON2=(024)|(LINEVAL_CSTN14)|(06)|0;rLCDCON2=(024)|(LINEVAL_CSTN14)|(06)|0; rLCDCON3=(WDLY_CSTN19)|(HOZVAL_CSTN8)|(LINEBLANK_CSTN0); rLCDCON3=(WDLY_CSTN19)|(HOZVAL_CSTN8)|(LINEBLANK_CSTN0); rLCDCON4=(MVAL8)|(WLH_CSTN0); rLCDCON4=(MVAL8)|(WLH_CSTN22)1); rLCDSADDR1=(U32)frameBuffer8Bit22)1); rLCDSADDR2=M5D(U32)frameBuffer8Bit+(SCR_XSIZE_CSTN) rLCDSADDR2=M5D(U32)frameBuffer8Bit+(SCR_XSIZE_CSTN)* *LCD_YSIZE_CSTN)1);LCD_YSIZE_CSTN)1); rLCDSADDR3=(SCR_XSIZE_CSTN-LCD_XSI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025山東聊城市消防救援支隊食堂服務人員招錄6人參考題庫及答案1套
- 2025年三門峽職業(yè)技術學院輔導員招聘考試真題匯編附答案
- 2025年下半年山東高速云南發(fā)展有限公司招聘(1人)備考題庫附答案
- 2025年晉中健康學院輔導員招聘考試真題匯編附答案
- 2025廣東東莞東城街道辦事處招聘工作人員23人考試備考題庫附答案
- 2025福建莆田市秀嶼區(qū)市場監(jiān)督管理局招聘駕駛員(編外)1人參考題庫及答案1套
- 2026華東理工大學招聘46人(上海)參考題庫附答案
- 2025-2030中國金屬門窗產(chǎn)業(yè)銷售渠道與市場應用領域調(diào)研研究報告
- 2025至2030教育裝備行業(yè)人才培養(yǎng)與技術創(chuàng)新驅(qū)動研究報告
- 2025-2030中國高溫加熱器行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 蘇州高新區(qū)(虎丘區(qū))市場監(jiān)督管理局公益性崗位招聘1人考試參考題庫及答案解析
- 北京通州產(chǎn)業(yè)服務有限公司招聘參考題庫完美版
- 企業(yè)安全隱患排查課件
- 2025版《煤礦安全規(guī)程》宣貫解讀課件(電氣、監(jiān)控與通信)
- 2025年國家開放大學《管理學基礎》期末機考題庫附答案
- 2025年人民網(wǎng)河南頻道招聘備考題庫參考答案詳解
- ESHRE子宮內(nèi)膜異位癥的診斷與治療指南(2025年)
- 急驚風中醫(yī)護理查房
- 基于視頻圖像的大型戶外場景三維重建算法:挑戰(zhàn)、創(chuàng)新與實踐
- 2025年四川省高職單招模擬試題語數(shù)外全科及答案
- 2025年江蘇事業(yè)單位教師招聘體育學科專業(yè)知識考試試卷含答案
評論
0/150
提交評論