一般來說,除錯資訊可以通過串列埠輸出,也可以通過lcd螢幕輸出。輸出的終端就是/dev/tty1
比如:ls -l > /dev/tty1
這時候就可以在lcd屏上看到輸出的列印字元。
當你想在螢幕上顯示「hello",echo "hello" > /dev/tty1
在程式中,可以開啟這個裝置,如:
#include #include #include #include #include int main()
程式中無法使用命令的功能。
fb是通過描點的方式
#include #include #include #include #include
int main ()
if (ioctl(fp,fbioget_fscreeninfo,&finfo))
if (ioctl(fp,fbioget_vscreeninfo,&vinfo))
screensize = vinfo.xres * vinfo.yres * vinfo.bits_per_pixel / 8;
//這就是把fp所指的檔案中從開始到screensize大小的內容給對映出來,得到乙個指向這塊空間的指標
fbp =(char *) mmap (0, screensize, prot_read | prot_write, map_shared, fp,0);
if ((int) fbp == -1)
//這是你想畫的點的位置座標,(0,0)點在螢幕左上角
x = 100;
y = 100;
location = x * (vinfo.bits_per_pixel / 8) + y * finfo.line_length;
*(fbp + location) = 100; // 藍色的色深 直接賦值來改變螢幕上某點的顏色
*(fbp + location + 1) = 15; // 綠色的色深
*(fbp + location + 2) = 200; // 紅色的色深*
*(fbp + location + 3) = 0; // 是否透明*
munmap (fbp, screensize);
close (fp);
return 0;
}
FB顯示驅動框架
fb顯示驅動框架從上到下分為 5層,如圖 1所示。fb裝置驅動是乙個抽象的顯示驅動模型,抽象出了顯示驅動公有的操作,為上層提供系統呼叫,為底層驅動提供介面。原始碼主要在 fb.h kernel include linux 和fbmem.c kernel drivers video 兩個檔案中。fb驅...
fb裝置驅動1 fb裝置的顯像原理和步驟
lcd的顯像原理 將ddr記憶體的一部分劃分出來作為視訊記憶體,視訊記憶體與lcd顯示螢幕之間做乙個雙向的對映,然後使用者只需要將需要顯示的內容放入視訊記憶體之中,然後視訊記憶體中的內容就會重新整理到lcd的儲存器中進行顯示。視訊記憶體 在核心之中申請一塊記憶體作為視訊記憶體,由於核心空間和使用者空...
linux列印驅動適配
國產作業系統適配 cups除錯和可能產生的問題 linux作業系統列印驅動適配。cups即common unix printing system,即通用unix列印系統,所有linux作業系統,均採用cups進行列印。cups提供了列印任務所需要的介面和工具。cups將上層的資料,通過其自帶的轉換工...