struct fb_videomode ;
結構體中引數和顯示影象的對應關係如下:
各引數具體含義:
u32 pixclock; /*每個畫素時鐘週期的長度,單位是皮秒(10 ^ -12 秒)*/
u32 left_margin; /*即hbp (horizontal back porch),從水平同步訊號到一行的有效資料之間的vclk數*/
u32 right_margin; /*即hfp(horizontal front porth),一行的有效資料結束到下乙個水平同步訊號開始之間的vclk數*/
u32 upper_margin; /*即vbp(vertical back porch),在一幀影象開始時,垂直同步訊號以後的無效行數*/
u32 lower_margin; /*即vfb(vertical front porch),在一幀影象結束後,垂直同步訊號以前的無效行數*/
u32 hsync_len; /*即hspw(horizontal sync pulse width),表示水平同步訊號的寬度,用vclk計算*/
u32 vsync_len; /*即vspw(vertical sync pulse width),表示垂直同步脈衝的寬度,用行數計算*/
計算公式:
pixclock的計算:
dotclk = refresh × (xres + left_margin + right_margin + hsync_len) × (yres + upper_margin + lower_margin + vsync_len) (單位:hz)
pixclock = 10^12 / dotclk (單位:皮秒)
例如:static const struct fb_videomode vga_mode =
;其中,refresh=60,xres=640,yres=480,left_margin=48, right_margin=16,upper_margin=33, lower_margin=10,hsync_len=96,vsync_len=2。
dotclk = refresh × (xres + left_margin + right_margin + hsync_len) × (yres + upper_margin + lower_margin + vsync_len)
= 60 * (640 + 48 + 16 + 96) * (480 + 33 + 10 + 2)
= 25.2 * 10^6 (hz)
則重新整理一幀畫面所需的時間為 1 / dotclk (s) = (1 / 25.2) * (10 ^ -6) (s) = 0.039683 (us)。
而pixclock引數的單位是ps,1us = 10^6 ps,故:
pixclock = 0.039683 * (10 ^ 6) (ps)
= 39683 (ps)
imx6q can驅動理解
理解imx536的can驅動還是從probe開始吧,2.6版本核心can驅動是歸屬於網路驅動 所以我得先去把網路驅動幾個重要結構體先找出來吧。前進吧 年輕人。static struct platform driver flexcan driver probe flexcan probe,remove...
imx6q 驅動開發
一 leds驅動 vim imx6q arm2.dts 根節點中新增 leds led5 led6 測試leds cd sys bus platform devices leds leds led5 echo 1 brightness echo 0 brightness 二 lcd驅動 檢視解析度 ...
WINCE流驅動介面函式引數詳解
dword init dword dwcontext,lpcvoid lpvbuscontext dwcontext 指向登錄檔的指標,說明流驅動的活動鍵的路徑。lpvbuscontext 作為activedevice的第四個引數傳遞程序對映的指標。返回值 若此函式執行成功,則返回乙個裝置上下文控制...