IMX6清空framebuffer操作

2021-09-19 16:04:35 字數 3409 閱讀 4762

static void fb_clear()

int fb;

unsigned char* fb_mem;

fb = open ("/dev/fb0", o_rdwr);

fb_mem = mmap (null, 1920*720, prot_read|prot_write,map_shared,fb,0);

memset (fb_mem, 0, 1920*720); //這個命令應該只有在root可以執行

ioctl(fdfd,fbioget_fscreeninfo,&finfo); //獲取 固定引數

printf("id %s\n",finfo.id); s3c2410fb

printf("smem_start %d\n",finfo.smem_start); //幀緩衝 記憶體開始位址,實體地址

printf("smem_len %d\n",finfo.smem_len); // 幀緩衝 記憶體 長度

printf("type %d\n",finfo.type);

printf("type_aux %d\n",finfo.type_aux);//平面交織交替

printf("visual %d\n",finfo.visual); //記錄 色彩模式 2

printf("xpanstep %d\n",finfo.xpanstep);//如果沒有硬體panning,賦0

printf("ypanstep %d\n",finfo.ypanstep);

printf("line_length %d\n",finfo.line_length); 640

printf("mmio_start %d\n",finfo.mmio_start);//記憶體對映io開始位址 實體地址

printf("mmio_len %d\n",finfo.mmio_len);//記憶體對映io 長度

printf("accel %d\n\n",finfo.accel);

ioctl(fdfd,fbioget_vscreeninfo,&vinfo); //獲取可變引數

printf("xres %d\n",vinfo.xres); //可見解析度 320

printf("yres %d\n",vinfo.yres); 240

printf("xres_virturl %d\n",vinfo.xres_virtual); //虛擬解析度 320

printf("yres_virtual %d\n",vinfo.yres_virtual); 240

printf("xoffset %d\n",vinfo.xoffset); //虛擬到可見的偏移 0

printf("yoffset %d\n",vinfo.yoffset); 0

printf("bits_per_pixel %d\n",vinfo.bits_per_pixel); //每畫素位數 bpp 16

printf("grayscale %d\n",vinfo.grayscale);//非零時,指灰度

printf("fb_bitfield red.offset %d\n",vinfo.red.offset); 11 偏移11位

printf("fb_bitfield .length %d\n",vinfo.red.length); 5

printf("fb_bitfield .msb_right %d\n",vinfo.red.msb_right); 0

printf("fb_bitfield green.offset %d\n",vinfo.green.offset); 5 偏移5位

printf("fb_bitfield .length %d\n",vinfo.green.length); 6

printf("fb_bitfield .msb_right %d\n",vinfo.green.msb_right); 0

printf("fb_bitfield blue.offset %d\n",vinfo.blue.offset);

printf("fb_bitfield .length %d\n",vinfo.blue.length);

printf("fb_bitfield .msb_right %d\n",vinfo.blue.msb_right);

printf("fb_bitfield transp.offset %d\n",vinfo.transp.offset);

printf("fb_bitfield .length %d\n",vinfo.transp.length);

printf("fb_bitfield .msb_right %d\n",vinfo.transp.msb_right);

printf("nonstd %d\n",vinfo.nonstd); //!=0 非標準畫素格式

printf("activate %d\n",vinfo.activate);

printf("height %d\n",vinfo.height); //高度/ 240

printf("widht %d\n",vinfo.width); 320

printf("accel_flags %d\n",vinfo.accel_flags); //看 fb_info.flags

//定時,除了 pixclock之外,其他的都以畫素時鐘為單位

printf("pixclock %d\n",vinfo.pixclock);//畫素時鐘,皮秒 80000

printf("left_margin %d\n",vinfo.left_margin);//行切換:從同步到繪圖之間的延遲 28

printf("right_margin %d\n",vinfo.right_margin);//行切換:從繪圖到同步之間的延遲 24

printf("upper_margin %d\n",vinfo.upper_margin);//幀切換:從同步到繪圖之間的延遲 6

printf("lower_margin %d\n",vinfo.lower_margin);//幀切換:從繪圖到同步之間的延遲 2

printf("hsync_len %d\n",vinfo.hsync_len); //hor 水平同步的長度 42

printf("vsync_len %d\n",vinfo.vsync_len); //vir 垂直同步的長度 12

printf("sync %d\n",vinfo.sync); //

printf("vmode %d\n",vinfo.vmode);

printf("rotate %d\n",vinfo.rotate);

imx6 移植人臉識別

最近接到任務要移植人臉檢測,其他步驟網上都有,一步步做就好了,就是在載入haarcascade frontalface alt2.xml的時候,出現 root dchip linux qt opencv 2.4.13.1 modules core src persistence.cpp 5008 e...

socat 交叉編譯 imx6

1,為了使用linux虛擬串列埠的功能,選擇移植乙個socat工具。2,設定交叉編譯工具路徑 export path path usr local arm gcc linaro arm linux gnueabihf 4.9 2014.07 linux bin 3,解壓,配置 tar xzvf so...

天嵌IMX6核心板競品分析(啟楊IMX6)

天嵌科技將推出最新核心板 tq i.mx6q corec,其屬於arm的cortexa9系列,由飛思卡爾推出的i.mx6q晶元,為中高階核心板的中流砥柱。tq i.mx6q corec核心板擁有1.2g主頻,1gb ddr3記憶體,8gb emmc flash,能完美執行大型遊戲的高效能。而且,其擁...