新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于嵌入式Linux與QT的汽車虛擬儀表設計

基于嵌入式Linux與QT的汽車虛擬儀表設計

作者: 時間:2012-04-25 來源:網絡 收藏


3 軟件
本系統(tǒng)采用作為操作系統(tǒng),在平臺下編寫的驅動程序和應用程序,采用/embedded軟面板。應用程序的主要功能有,當接收到各個經轉換處理的傳感器采集到的信號后,將其有用的數據提取并加以存儲,然后調用儀表顯示程序,將需要顯示的內容顯示到不同的虛擬儀表盤中,同時并行判斷各項參數是否正常,若出現異常則調用語音報警程序和顯示程序提示報警。虛擬儀表軟件結構圖如圖3所示。虛擬儀表軟件開發(fā)主要有2個內容:開發(fā)環(huán)境的搭建、虛擬儀表應用程序的。

本文引用地址:http://www.2s4d.com/article/149181.htm

c.JPG


3.1 開發(fā)環(huán)境的搭建
為了開發(fā)滿足功能的應用程序,本文采用的軟件開發(fā)環(huán)境是Vmware WorkStation 7虛擬機和Fedora 13操作系統(tǒng),在此環(huán)境中安裝交叉編譯器AlRM-linux-gcc 4.5.1,用來完成包含相關驅動程序的虛擬儀表系統(tǒng)內核、庫和應用程序的編譯;編譯安裝/Embedded庫,用來支持虛擬儀表人機交互界面程序的開發(fā)并生成虛擬儀表系統(tǒng)中需要的QT庫文件;編譯Tslib觸摸屏庫,為虛擬儀表系統(tǒng)添加觸摸屏支持;在Fedora13系統(tǒng)中安裝QT Creator軟件,用于完成虛擬儀表系統(tǒng)應用程序的開發(fā);移植設備的系統(tǒng)引導程序U-boot;編寫硬件平臺相關驅動,然后裁剪編譯2.6.10內核并在其中加載已編譯的相關驅動;制作硬件平臺需要的根文件系統(tǒng),在其中移植已配置、編譯過的tslib庫和QT/Embedded庫。
3.2 應用程序開發(fā)
本虛擬儀表系統(tǒng)的的應用程序QT/Embedded平臺,使用QT的輕量級集成開發(fā)環(huán)境QT Creator完成開發(fā),最后在已搭建的開發(fā)環(huán)境中編譯生成可執(zhí)行二進制文件,并將其移植到硬件平臺中的文件系統(tǒng)中進行測試。

d.JPG


虛擬儀表系統(tǒng)應用程序的主要工作流程如圖4所示,在系統(tǒng)上電后,應用程序開始運行,要實現虛擬儀表系統(tǒng)的功能,應用程序需要完成虛擬儀表面板和后臺處理程序的開發(fā):
3.2.1 虛擬儀表面板的繪制
虛擬儀表面板主要將的一些基本狀態(tài)在LCD上通過表盤和數字直觀、動態(tài)的顯示出來,本設計中采用速度、油量、電池電量、時間日期、安全帶、安全氣囊、行駛里程等狀態(tài)。
為了提高本虛擬儀表的可擴展性和可維護性,在本設計中,為每種具體的虛擬儀表對象定義一個抽象類。下面即以儀表盤類(QMeter)為例介紹本系統(tǒng)中虛擬儀器面板的繪制。
在需要顯示的各種狀態(tài)中,速度和油量通常以儀表盤形式顯示,虛擬儀表模塊中的虛擬儀表盤采用QT的二維圖形引擎的基礎類QPainter開發(fā)。QPainter具有豐富的圖形圖像繪制函數,并支持反走樣、漸變填充、像素混合、線性變換等特性,利用這些函數完成儀表盤的繪制。
e.JPG

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


評論


相關推薦

技術專區(qū)

關閉