亚洲精品一二区_国产黄色片网站_99久久久成人国产精品_蜜臀网_国产精品一区二区三区免费_成人av中文字幕_91精品国产欧美一区二区成人


嵌入式培訓(xùn)資料:Qt/Embedded編程入門

分享到:
           

    Qt/Embedded以原始Qt為基礎(chǔ),并做了許多出色的調(diào)整以適用于嵌入式環(huán)境。Qt/Embedded通過Qt API與Linux I/O設(shè)施直接交互,成為嵌入式Linux端口。同Qt/X11相比,Qt/Embedded很省內(nèi)存,因為它不需要一個X服務(wù)器或是Xlib庫,它在底層拋棄了X lib,采用framebuffer(幀緩沖)作為底層圖形接口。同時,將外部輸入設(shè)備抽象為keyboard和mouse輸入事件。Qt/Embedde的應(yīng)用程序可以直接寫內(nèi)核緩沖幀,這避免開發(fā)者使用繁瑣的Xlib/Server系統(tǒng)。圖1.1比較了Qt/Embedded與Qt/X11的架構(gòu)區(qū)別。


圖1.1 Qt/Embedded與Qt/ X11的Linux版本的比較

    使用單一的API進行跨平臺的編程可以有很多好處。提供嵌入式設(shè)備和桌面計算機環(huán)境下應(yīng)用的公司可以培訓(xùn)開發(fā)人員使用同一套工具開發(fā)包,這有利于開發(fā)人員之間共享開發(fā)經(jīng)驗與知識,也使得管理人員在分配開發(fā)人員到項目中的時候增加靈活性。更進一步來說,針對某個平臺而開發(fā)的應(yīng)用和組件也可以銷售到Qt支持的其他平臺上,從而以低廉的成本擴大產(chǎn)品的市場。

    (1)窗口系統(tǒng)

    一個Qt/Embedded窗口系統(tǒng)包含了一個或多個進程,其中的一個進程可作為服務(wù)器。該服務(wù)進程會分配客戶顯示區(qū)域,以及產(chǎn)生鼠標和鍵盤事件。該服務(wù)進程還能夠提供輸入方法和一個用戶接口給運行起來的客戶應(yīng)用程序。該服務(wù)進程其實就是一個有某些額外權(quán)限的客戶進程。任何程序都可以在命令行上加上“-qws”的選項來把它作為一個服務(wù)器運行。

    服務(wù)器與客戶之間使用UNIX Domain Socket進行通信,通過重載QApplication的qwsEventFilter()函數(shù),可以對客戶從服務(wù)器收到的所有事件進行直接的訪問?蛻襞c服務(wù)器,以及客戶之間使用QCOP協(xié)議進行通信,QCOP是一個在不同的通道上進行消息傳遞的多對多通信協(xié)議。在Qt/Embedded中,這種通信機制使用QCopChannel類來實現(xiàn),有關(guān)這個類的描述,請讀者參考相關(guān)資料。

    QProcess類提供了另外一種異步的進程間通信機制。它用于啟動一個外部的程序并且通過寫一個標準的輸入和讀取外部程序的標準輸出和錯誤碼來和它們通信。

    (2)字體

    Qt/Embedded使用FreeType 2字體引擎來產(chǎn)生字體的輸出,所支持的格式取決于本機所安裝的FreeType庫的版本。另外,Qt/Embedded支持Qt預(yù)渲染的字體格式(QPF與QPF2)。QPF2是Qt/Embedded自帶的格式,QPF是由Qt/Embedded 2.x,3.x所繼承過來的。所有支持的字體均使用Unicode字符編碼,一個完整的16點陣的Unicode字體的存儲空間通常超過1MB。

    FreeType 2庫支持下列字體格式:TrueType(TTF),PostScript Type1(PFA/PFB),Bitmap Distribution Format(BDF),CID-keyed Type1,Compact Font Format(CFF),OpenType fonts,SFNT-based bitmap fonts,Portable Compiled Format(PCF),Microsoft Windows Font File Format(Windows FNT),Portable Font Resourse(PFR),Type 42(limited support)。可以為FreeType 2字體引擎添加模塊,以使其支持其它的字體。

    Qt預(yù)渲染字體(QPF2)是Qt/Embedded特有的、與架構(gòu)無關(guān)的、輕量級的字體格式。Nokia提供了交叉編譯工具makeqpf,可以由系統(tǒng)字體中生成QPF2文件。另外,考慮到兼容性,Nokia提供了對繼承而來的QPF格式的支持。

    (3)輸入設(shè)備及輸入法

    Qt/Embedded支持幾種鼠標協(xié)議:BusMouse、IntelliMouse,Microsoft和MouseMan.Qt/ Embedded還支持NECVr41XX和iPAQ的觸摸屏。通過從QWSMouseHandler或者Qcalibra- tedMouseHandler派生子類,開發(fā)人員可以讓Qt/Embedded支持更多的客戶指示設(shè)備。

    Qt/Embedded支持標準的101鍵盤和Vr41XX按鍵,通過子類化QWSKeyboardHandler可以讓Qt/Embedded支持更多的客戶鍵盤和其他的非指示設(shè)備。

    對于非拉丁語系字符(例如阿拉伯,中文,希伯來和日語)的輸入法,需要把它寫成過濾器的方式,并改變鍵盤的輸入。輸入法的作者應(yīng)該對全部的Qt API的使用有完整的認識。在一個無鍵盤的設(shè)備上,輸入法成了惟一的輸入字符的手段。Qtopia提供了4種輸入方法:筆跡識別器、圖形化的標準鍵盤、Unicode鍵盤和基于字典方式提取的鍵盤。

    (4)屏幕加速

    通過子類化QScreen和QRasterPaintEngine可以實現(xiàn)硬件加速,從而為屏幕操作帶來好處。Trolltech提供了Mach64和Voodoo3視頻卡的硬件加速的驅(qū)動例子,同時可以按照協(xié)議編寫其他的驅(qū)動程序。

    精品課程推薦:QT應(yīng)用開發(fā)培訓(xùn),幫助學(xué)員熟悉Qt 的開發(fā)工具與開發(fā)環(huán)境,了解Qt 基本組件與框架,能夠基于各種常見的操作系統(tǒng)平臺撰寫Qt 窗口程序,并掌握 Qt 在嵌入式系統(tǒng)的核心運用,包括Qt/Embedded編程方法和編程技能、常用的基礎(chǔ)類、信號和槽的概念和對象間通訊機制及圖形界面的編寫。


   熱點鏈接:

   1、FPGA硬件系統(tǒng)設(shè)計實用技巧
   2、python可以編寫android程序嗎?
   3、嵌入式Android系統(tǒng)移植
   4、三種常見的FPGA結(jié)構(gòu)
   5、FPGA從事的工作是什么

更多新聞>> 

主站蜘蛛池模板: 国产剧情麻豆剧果冻传媒视频免费 | 免费播放国产性色生活片 | 国产人妖ts在线观看网站 | 国产亚洲天堂 | 欧美一区二区三区精品 | 久久久久亚洲精品影视 | 欧美xxxx黑人又粗又长 | 亚洲欧美v国产一区二区 | 免费一级a毛片在线播放视 免费一级a毛片在线搐放正片 | 中文字幕一区二区三区在线观看 | 精品在线免费观看视频 | 日韩在线视频线视频免费网站 | 目韩一区二区三区系列片丶 | 欧美成人tv在线观看免费 | 91久久人澡人人添人人爽 | 日韩六九视频 | 亚洲午夜精品久久久久久成年 | 午夜黄色影院 | a天堂视频 | 波多野结衣免费免费视频一区 | 欧美午夜精品久久久久免费视 | 免费观看黄色毛片 | 久久精品国产亚洲aa | 人人舔人人插 | 日本中文字幕不卡 | 日本免费不卡视频 | 日本人免费xxx在线视频 | 国产精品hd免费观看 | 天天干成人网 | 欧美另类视频 | 久久尹人香蕉国产免费天天 | 久久久久青草线蕉亚洲麻豆 | 黄网址免费| 乱人伦中文字幕视频在线 | 黄色片网址在线观看 | 一级做a爰性色毛片免费 | 女人午夜色又刺激黄的视频免费 | 激情视频网站在线观看 | 在线观看色视频 | 国产调教视频在线观看 | 欧美一级性视频 |