<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 深入理解ARM體系架構(S3C6410)---lcd 顯示圖片

深入理解ARM體系架構(S3C6410)---lcd 顯示圖片

作者: 時(shí)間:2016-11-09 來(lái)源:網(wǎng)絡(luò ) 收藏
S3C6410顯示控制器包含這樣的邏輯電路:從后處理器(POST Processor)或系統內存視頻緩沖數據的本地總線(xiàn)傳遞數據到外部LCD驅動(dòng)接口電路的邏輯電路。S3C6410包含4種接口:傳統的RGB接口,I80接口,標準電視編碼接口NTSC/PAL,IT-R BT.601接口。S3C6410顯示控制器支持5層圖像窗口。層圖像窗口支持:various color format,16 level alpha blending, color key, x-y position control, soft scrolling,variable window size。顯示控制器支持1BPP~24BPP 色彩的RGB格式和YCbCr格式。顯示控制器能滿(mǎn)足水平垂直像素,數據寬度, 接口時(shí)序, 刷新頻率等各種設置需求。顯示控制器視頻數據接口包括:RGB_VD[23:0],SYS_VD[17:0], TV_OUT。

本文引用地址:http://dyxdggzs.com/article/201611/317829.htm

顯示控制器由VSFR,VDMA,VPRCS,VTIME,和視頻時(shí)鐘產(chǎn)生器。VSFR包含一些可編程的寄存器和兩個(gè)256x25的調色板內存。這些都是用于配置顯示控制器的。VDMA專(zhuān)用于顯示DMA。它能將一幀的視頻數據發(fā)送到VPRCS。通過(guò)這些特定DMA,這些視頻數據可以在CPU不調停的情況下,顯示到顯示屏上。VPRCS從VDMA接收視頻數據,并把接收的數據轉化成合適的數據格式,從而再發(fā)送到顯示器件上(LCD)。VTIME包含一些可編程的邏輯器件以滿(mǎn)足不同顯示設備的需求,如設置接口時(shí)序和刷新頻率. 產(chǎn)生:RGB_VSYNC,RGB_HSYNC, RGB_VCLK, RGB_VDEN,SYS_CS1, SYS_CS0等信號控制顯示設備。

FIFO在VDMA中。當FIFO為空或部分為空時(shí),VDMA就會(huì )請求數據。當內存中的總線(xiàn)仲裁接收到這樣的傳輸請求時(shí),就會(huì )從系統內存向內部FIFO傳輸4/8/16連續的字。每個(gè)FIFO有64個(gè)字,同時(shí)FIFO的使用大小又有數據的傳輸速率決定。顯示控制器有5個(gè)FIFO,主要是為了滿(mǎn)足5個(gè)圖像層的使用。在每個(gè)屏幕顯示模式中,只有一個(gè)FIFO被使用。VPRCS通過(guò)FIFO提取數據。VPRCS支持層功能,最多5個(gè)層。下面的圖像顯示了數據流從系統總線(xiàn)到輸出緩存的過(guò)程。

再來(lái)看看mini6410中,nec43和顯示控制器的連接原理圖:

這樣我們就可以參考相應的寄存器設置,來(lái)實(shí)現lcd的圖片顯示了,

原圖片:

我的手機像素極差,,,,

程序如下:

初始化函數:

[cpp]view plaincopyprint?
  1. voidLCD_Init(void)
  2. {
  3. //設置VD0~15
  4. rGPICON=0xaaaaaaaa;//設置GPI0~15為L(cháng)CDVD0~15
  5. rGPIPUD=0x00000000;
  6. //設置VD16~23和HSYNC、VSYNC、VDEN、VCLK
  7. rGPJCON=0x00aaaaaa;
  8. rGPJPUD=0x00000000;
  9. //LCD寄存器設置
  10. rSPCON|=(1<<0);//設置RGBI/F配置//rSPCON=rSPCON&~(0x3)|1;
  11. rMIFPCON&=~(1<<3);//設置LCD支路為一般模式
  12. rVIDCON0=(0<<29)|(0<<27)|(0<<26)|(0<<18)|(0<<17)|(0<<16)|(9<<6)|(0<<5)|(1<<4)|(0<<3)|(0<<2)|(1<<1)|(1<<0);
  13. rVIDCON1=1<<7;//1=RGB類(lèi)型LCD設備在VCLK上升沿得到視頻數據
  14. //設置屏的時(shí)序
  15. rVIDTCON0=(0x00<<16)|(0x00<<8)|(0x02<<0);
  16. rVIDTCON1=(0x2d<<16)|(0x04<<8)|(0x06<<0);
  17. rVIDTCON2=(271<<11)|(479<<0);
  18. //設置窗口格式
  19. rWINCON0=11<<2;//設置24BPP
  20. //設置窗口位置
  21. rVIDOSD0A=(0<<11)|(0<<0);
  22. rVIDOSD0B=(479<<11)|(271<<0);
  23. rVIDOSD0C=(((480*272)&0xffffff)<<0);//4.3屏幕分辨率480*272
  24. //設置Window1的開(kāi)始和結束的緩存地址與地址在內存中的存放地址以及緩存的大小
  25. rVIDW00ADD0B0=((addr>>24)<<24)|(addr&0xffffff);
  26. rVIDW00ADD1B0=(addr&0xffffff+480*272);
  27. rVIDW00ADD2=(0<<13)|(480<<0);
  28. //設置抖動(dòng)
  29. rDITHMODE=(1<<5)|(1<<3)|(1<<1)|(1<<0);
  30. //開(kāi)顯示
  31. rVIDCON0|=(3<<0);
  32. rWINCON0|=(1<<0);
  33. }

畫(huà)圖函數:

[cpp]view plaincopyprint?
  1. voidLCD_DrawPixel(unsignedintx,unsignedinty,unsignedintcolor)
  2. {
  3. if((x<480)&&(y<272))
  4. LCD_BUFFER[y][x]=color;
  5. }
  6. voidLCD_Paint_Bmp(intx0,inty0,inth,intl,constunsignedchar*bmp)
  7. {
  8. intx,y;
  9. unsignedintc;
  10. intp=0;
  11. for(y=y0;y<l;y++)
  12. {
  13. for(x=x0;x<h;x++)
  14. {
  15. //RGB888
  16. c=(bmp[p])|(bmp[p+1]<<8)|(bmp[p+2]<<16);
  17. if(((x0+x)<LCD_XSIZE)&&((y0+y))
  18. LCD_BUFFER[y0+y][x0+x]=c;
  19. p=p+3;
  20. }
  21. }
  22. }



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>