arm的lcd基礎顯示

2021-07-04 15:07:17 字數 2104 閱讀 2147

進行逐行掃瞄rgb的數值,顯現出來。需要通過image2lcd工具,轉為字元陣列那樣的格式。它每3個值為rgb顏色值,然後放入include資料夾,然後匯入即可。

board/fimd_lcd.c

#include "stdio.h"

#include "s5pv210.h"

#include "img1.h"

unsigned int *fbuf = (unsigned int *)0x42000000;

unsigned int *fbufs;

void key_init()

void lcd_portinit()

void lcd_init()

//顯示紅綠藍3種色

void lcd_clearscreen(int color)

}fbuf=fbufs;

}//如果要引入檔案那樣,顯示3種色

//那img1.h內容是

/*const unsigned char gimage_img1[648] = ;

//方法是

void lcd_img(const unsigned char *p)

}fbuf=fbufs;

p+=3; }}

*///顯示

void lcd_img(const unsigned char *p) }}

int fimd_lcd()

} //while(1);

return 0;

}

cpu/start.s

.text 

.extern uart_init

.extern printf

.extern start_armboot

.global _start

_start:

mov r5,lr

bl uart_init

ldr r0,=fmt

bl printf

bl start_armboot

mov lr,r5

bx lr

fmt:

.asciz ">>>>> welcome to arm <<<<<<

.end

然後再對應修改下cpu/board.c、include/api.h、makefile檔案。

說明:1. lcd介紹(at070tn92)

.物理特性

畫素點.電路介面

資料線: vd0-vd23 

控制線:  

vsync: 幀同步訊號

hsync:行同步訊號

vden: 資料有效訊號

vclk:畫素同步訊號

示例:如何推算lcd的時序引數?

1)vsync/hsync 極性要反

2) vspw = 19 

vbpd = 2 

vfpd = 21

lineval = 479 

3) hspw = 

hbpd = 

hfpd = 

hozval = 799  

2. s5pv210顯示介面

.fimd顯示處理模組: 完全的互動式的移動顯示裝置

.fimc 完全的互動式的移動拍攝裝置

lcd_c :  rgb 

fimd1.0

fimdx.o 

fimd6.0 

多種介面: yuv , rgb , i80

影象優化:camma , color gain ...

多路獲取影象的通道....

.rgb顯示介面

.顯示原理

framefbuffer (視訊記憶體) 

首位址=幀記憶體首位址 + 偏移量 

幀記憶體起始位址   條件: 16m對齊:  = 2^4 * 2^20 = 2^24 

大小:800 * 480 * 4 

底層原理圖參考:

ARM平台LCD顯示漢字

arm平台lcd顯示漢字 2008 06 13 18 54 33 做了無數的windows程式,從來沒有把顯示漢字和英文本母當成一回事兒。這也難怪,寫視窗程式的時候,什麼setwindowtext messagebox setdlgitemtext等等,你只需要把自己想要顯示的字串傳進去,然後編譯 ...

ARM平台LCD顯示漢字

做了無數的windows程式,從來沒有把顯示漢字和英文本母當成一回事兒。這也難怪,寫視窗程式的時候,什麼setwindowtext messagebox setdlgitemtext等等,你只需要把自己想要顯示的字串傳進去,然後編譯 鏈結,就能夠顯示出來了,非常非常簡單 若說麻煩,可能就是在asci...

ARM學習筆記 LCD顯示

lcd概述 lcd liquid crystal display 即液晶顯示器,是一種採用了液晶控制透光度技術來實現色彩的顯示器。lcd有多種型別,比如stn tft ltps tft oled等。cpu或顯示卡發出的影象資料是ttl訊號,lcd本身接收的也是ttl訊號。由於ttl訊號在高速率的長距...