新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于嵌入式的Tilcon用戶圖形界面設(shè)計(jì)與開發(fā)

基于嵌入式的Tilcon用戶圖形界面設(shè)計(jì)與開發(fā)

作者: 時(shí)間:2009-09-21 來(lái)源:網(wǎng)絡(luò) 收藏
實(shí)時(shí)環(huán)境是一種多平臺(tái)界面工具,用來(lái)健壯、高度交互性的界面,運(yùn)用它能夠快速、方便地開發(fā)出令人滿意的界面應(yīng)用程序,所開發(fā)的程序不需要修改代碼就可以從一個(gè)操作系統(tǒng)移植到另一個(gè)操作系統(tǒng)之上。
VxWorks是高性能實(shí)時(shí)操作系統(tǒng)。它以良好的可靠性和卓越的實(shí)時(shí)性被廣泛地應(yīng)用在通信、軍事、航空、航天等高精尖技術(shù)及實(shí)時(shí)性要求極高的領(lǐng)域。為滿足復(fù)雜界面用戶需求,VxWorks操作系統(tǒng)可以使用TiIcon開發(fā)工具,在Tornado環(huán)境下配置圖形開發(fā)庫(kù)WindML,而集成大量成熟控件,無(wú)需調(diào)用低級(jí)的圖形函數(shù)去畫線填充,用拖動(dòng)控件的方式構(gòu)造自己的圖形應(yīng)用,極大地簡(jiǎn)化了開發(fā)過(guò)程。
上述各個(gè)軟件工具的開發(fā)特點(diǎn),提出一種圖形開發(fā)的方案,該開發(fā)方法適用于嵌入式系統(tǒng)WindRiver VxWorks,利用與Tornado集成開發(fā)環(huán)境之間的無(wú)縫聯(lián)接,實(shí)現(xiàn)了嵌入式實(shí)時(shí)操作系統(tǒng)下圖形的開發(fā)。

1 VxWork,Tornado及Tilcon之間的層次關(guān)系
Tornado就是為開發(fā)VxWorks應(yīng)用系統(tǒng)提供的集成開發(fā)環(huán)境,Tornado中包含的工程管理軟件,可以將用戶自己的代碼與VxWorks的核心有效地組合起來(lái),可以按用戶的需要裁剪配置VxWorks內(nèi)核;VxSim原型仿真器可以讓程序員不用目標(biāo)機(jī)的情況下,直接開發(fā)系統(tǒng)原型,做出系統(tǒng)評(píng)估;功能強(qiáng)大的CrossWind調(diào)試器可以提供任務(wù)級(jí)和系統(tǒng)級(jí)的調(diào)試模式,可以進(jìn)行多目標(biāo)機(jī)的聯(lián)調(diào);優(yōu)化分析工具可以幫助程序員從多種方式真正地觀察、跟蹤系統(tǒng)的運(yùn)行,排除錯(cuò)誤,優(yōu)化性能。
VxWorks在此指的是主機(jī)上的Tornado集成開發(fā)環(huán)境編譯生成的目標(biāo)機(jī)上可執(zhí)行代碼IMAGE,即是可裁剪的VxWorks操作系統(tǒng)鏡像文件。它與DOS的*.EXE文件類似,可被靜態(tài)或動(dòng)態(tài)鏈接,在開發(fā)階段可動(dòng)態(tài)地下載目標(biāo)文件,并與其他目標(biāo)文件動(dòng)態(tài)鏈接;在成品階段是采用靜態(tài)鏈接的,產(chǎn)品上電后立即與其他目標(biāo)文件鏈接。
Tornado是一套強(qiáng)大的圖形化嵌入式集成開發(fā)環(huán)境,它的開發(fā)系統(tǒng)包括三個(gè)高度集成的部分:一是,運(yùn)行在主機(jī)和目標(biāo)機(jī)上的功能強(qiáng)大的交叉開發(fā)工具和實(shí)用程序;二是,運(yùn)行在目標(biāo)機(jī)上的高性能、可裁剪的實(shí)時(shí)操作系統(tǒng)VxWorks;三是,連接主機(jī)和目標(biāo)機(jī)的多種通信方式,如串行口、以太網(wǎng)、仿真器或其他通信手段相聯(lián)系。
Tilcon實(shí)時(shí)開發(fā)環(huán)境是一種多平臺(tái)用戶界面開發(fā)解決方案,可以用來(lái)開發(fā)健壯的、高度交互性的用戶界面。Tilcon開發(fā)系統(tǒng)包括三個(gè)基本組成部分:Tilcon圖形引擎,平臺(tái)無(wú)關(guān)的API和一個(gè)可視化圖形工具――Tilcon圖形編輯器。
在Tornado開發(fā)環(huán)境下,首先根據(jù)自己的應(yīng)用和目標(biāo)機(jī)的需要,對(duì)VxWorks模塊進(jìn)行配置,包括:C++模塊、圖形模塊、目標(biāo)機(jī)硬件模塊、操作系統(tǒng)模塊等;其次選擇VxWorks鏡像類型,包括RAM,ROM,Rom-Compress等;再次構(gòu)造VxWorks鏡像,最后引導(dǎo)Vx-Works鏡像,生成目標(biāo)加上所需的VxWorks鏡像文件。在Tilcon開發(fā)環(huán)境下實(shí)現(xiàn)圖形界面的設(shè)計(jì),包括拖拉所需的控件及各個(gè)控件的驅(qū)動(dòng)代碼,然后生成圖形庫(kù)文件;再根據(jù)Tornado與Tilcon之間的無(wú)縫連接關(guān)系,將Tilcon生成的圖形庫(kù)文件加載到Tornado環(huán)境中,從而實(shí)現(xiàn)嵌入式下的圖形開發(fā)。它們的層次關(guān)系如圖1所示。

本文引用地址:http://butianyuan.cn/article/152342.htm

2 嵌入式圖形開發(fā)步驟
2.1 Tilcon系統(tǒng)環(huán)境配置
在進(jìn)行圖形設(shè)計(jì)之前,將嵌入式系統(tǒng)開發(fā)環(huán)境配置好,首先要在VxWorks實(shí)時(shí)操作系統(tǒng)下正確運(yùn)行Til-con矢量圖形引擎,必須在Image鏡像文件中加載幾種組件支持,即:組件C++Components所有子項(xiàng)、WindML媒體庫(kù)組件。其次,IDS應(yīng)用程序模型需要tlncore.o和tlnapi.o目標(biāo)靜態(tài)庫(kù)文件支持,它們可以通過(guò)Tilcon附帶提供的Scalable.exe可執(zhí)行文件來(lái)生成,在運(yùn)行Scalable.exe之前還需選擇好處理器類型以及VxWorks版本信息并保證Tilcon能準(zhǔn)確定位到目標(biāo)機(jī)文件信息。再次,在Tornado的Downloadable工程項(xiàng)目中配置編譯環(huán)境C/C++ Compile和Micros。最后,在此工程項(xiàng)目中添加應(yīng)用程序。
2.2 Tilcon運(yùn)行機(jī)理
首先調(diào)用TRT_Start應(yīng)用程序接口函數(shù),此時(shí)打開VxWorks與TiIcon之間的信息通道,然后調(diào)用TRT_WindowLoad函數(shù)開始Tilcon圖形界面窗口的初始化操作,并加載和顯示窗口文件ID;隨后調(diào)用TRT_WindowDisplay函數(shù),顯示剛才加載的圖形窗口及其相關(guān)的子窗口和對(duì)話框;接著進(jìn)入主框架循環(huán)區(qū)域,同時(shí)TRT_GetInput函數(shù)處于等待狀態(tài)并實(shí)時(shí)接收來(lái)自于Tilcon引擎所傳遞的界面操作事件,將其通過(guò)條件語(yǔ)句結(jié)構(gòu)分發(fā)給相應(yīng)的處理子函數(shù),即用戶的具體事件處理函數(shù)。如果接收到終止信息則調(diào)用TRT_WindowDelete清除圖形用戶界面用于釋放內(nèi)存,最后調(diào)用TRT_Exit函數(shù)完成退出操作。具體操作流程如圖2所示。

3 示例開發(fā)
一個(gè)用Tileon工具開發(fā)的智能水表軟件界面開發(fā)實(shí)例。利用Tilcon在嵌人式VxWorks系統(tǒng)下,結(jié)合Tornado工具一起開發(fā)的圖形軟件,按照嵌入式開發(fā)流程圖的機(jī)理實(shí)現(xiàn)嵌入式系統(tǒng)下的智能水表圖形界面開發(fā),基本框架程序如下,界面圖形如圖3所示。

該實(shí)例創(chuàng)建了一個(gè)水表窗口,有四個(gè)表盤和表盤控制操作按鈕及水表數(shù)據(jù)的顯示等控件。該軟件與智能水表電路板可以實(shí)現(xiàn)真正意義上的嵌入式圖形開發(fā)和控制,具有實(shí)際應(yīng)用價(jià)值。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

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

關(guān)閉