基于A(yíng)RM9的液晶驅動(dòng)終端設計
setsIdl3506_reg();//配置S1D13506顯卡寄存器,并填充顯卡狀態(tài)數據結構
本文引用地址:http://dyxdggzs.com/article/247437.htmregister_framebuffer(&fb_info.gen.info);||注豫framebuffer,初始化完成
}
將驅動(dòng)文件添加至Linux根目錄下的driversvide0目錄中,并在當前目錄下makefile文件中添加obi一$(CONFIG FBS1D13506)+=sldl3506fb.O,在Config.ini文件中添加boolSldl3506'CONFIG_FB_EPSON,在 Linux移植過(guò)程中可將驅動(dòng)程序靜態(tài)編譯到內核中。若要使MiniGUl支持Frame-buffer,需將MiniGUI.efg文件中GAL引擎設為Framebuffer,如gal_engine=fbcon。
4.3 應用程序
在應用程序設計中,使用多線(xiàn)程可更好的協(xié)調串口接收、圖像顯示、數據存儲以及超時(shí)處理等操作。終端中基于POSIX的應用程序由圖形顯示與串口命令解析組成,由于Linux操作系統中不同的線(xiàn)程之間可通過(guò)全局變量傳遞參數,應用程序中使用了一個(gè)全局的循環(huán)FIFO作為兩個(gè)線(xiàn)程之間的命令緩沖區,采用兩個(gè)靜態(tài)數據緩沖區用于存放串口傳來(lái)的圖像數據資源,數據緩沖區大小與LCD分辨率和像素深度有關(guān)。命令循環(huán)FIFO管理結構如下所示。

系統中,基于Framebuffer的設備被映射為/dev/fb0文件,應用程序啟動(dòng)后,首先調用open()函數打開(kāi)設備,然后調用 mmap()函數將顯存影射到用戶(hù)空間開(kāi)辟的數據緩沖區內,初始化命令緩沖隊列后,啟動(dòng)串口命令接收,接收到有效的串口命令后則執行相應的顯示操作。
5 結語(yǔ)
目前,該終端可成功驅動(dòng)SHARP LQ035Q3DG01、LQl04-V1DG21等多種分辨率18 bit接口LCD,并在某紡織廠(chǎng)的細紗機車(chē)速監控儀中得到應用。使用該終端可降低人機界面的設計難度,提高儀器儀表的開(kāi)發(fā)效率,并且可進(jìn)一步擴展網(wǎng)絡(luò )視頻播放及網(wǎng)絡(luò )命令接口等功能,具有良好的市場(chǎng)前景和使用價(jià)值。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
linux相關(guān)文章:linux教程
led顯示器相關(guān)文章:led顯示器原理
晶振相關(guān)文章:晶振原理 調光開(kāi)關(guān)相關(guān)文章:調光開(kāi)關(guān)原理
評論