新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于Microwindows的嵌入式GUI分析及應(yīng)用

基于Microwindows的嵌入式GUI分析及應(yīng)用

作者: 時間:2012-04-05 來源:網(wǎng)絡(luò) 收藏

總而言之,最新版本的 在硬件驅(qū)動加速上、在圖形引擎算法上以及代碼質(zhì)量上,都比原先的版本有較大的改進(jìn)。

的API

采用分層體系結(jié)構(gòu)設(shè)計,提供了豐富的API 支持,支持Win32/ WinCE GDI 和Nano-X兩種API 集。

Microwindows 體系結(jié)構(gòu)

Microwindows 的體系結(jié)構(gòu)由下至上,分別為具體硬件、驅(qū)動層、圖形引擎層和API 層,如圖1 所示。用戶可以根據(jù)具體應(yīng)用需求對不同層的代碼進(jìn)行修改或重寫。

(1) 設(shè)備驅(qū)動程序。

鍵盤驅(qū)動程序主要有兩個,分別是kbd _ tty. c 和kbd _ bios. c 。前者主要用于Linux 和EL KS 系統(tǒng),而后者主要用于MSDOS 實模式。

鼠標(biāo)驅(qū)動程序主要有三個:mou_gpm. c ,用于Linux 的一個GPM 驅(qū)動; mou _ ser. c ,用于Linux 和EL KS 系統(tǒng);mou_gpm. c ,主要用于MSDOS 系統(tǒng)。

屏幕驅(qū)動程序有面向16 位EL KS、MSDOS 實模式的V GA 驅(qū)動( scr_bios. c、vgaplan4. c、memp14. c 、scr_here. c)和面向Linux 的Framebuffer ( scr_fb. c、fb. c 等) 兩種。這部分驅(qū)動程序最復(fù)雜,在設(shè)計時可以參考scr_fb. c 來設(shè)計自己的屏幕驅(qū)動程序。

(2) 設(shè)備獨立的圖形引擎。

Microwindows 的圖形引擎是設(shè)備獨立的。引擎的每一例程都接受SCREENDEVICE 結(jié)構(gòu)的指針( PSD) 來作為第一個參數(shù)。PSD 說明了底層的顯示細(xì)節(jié),如屏幕大小的x 、y 值,屏幕顏色ncolors ,以及諸如打開、關(guān)閉、畫線等函數(shù)指針。PSD 結(jié)構(gòu)定義如下:

Microwindows 的API

Microwindows 提供兩個應(yīng)用程序接口:一是Win32 接口,這種API 不是很成熟;二是Nano-X ,這種API 比較好,結(jié)構(gòu)上清晰,功能上也完全。



關(guān)鍵詞: Microwindows 嵌入式GUI

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉