基于Android車載虛擬儀表人機(jī)界面設(shè)計(jì)設(shè)計(jì)_第1頁
基于Android車載虛擬儀表人機(jī)界面設(shè)計(jì)設(shè)計(jì)_第2頁
基于Android車載虛擬儀表人機(jī)界面設(shè)計(jì)設(shè)計(jì)_第3頁
基于Android車載虛擬儀表人機(jī)界面設(shè)計(jì)設(shè)計(jì)_第4頁
基于Android車載虛擬儀表人機(jī)界面設(shè)計(jì)設(shè)計(jì)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、賃青滅菠灑笨帛鵝悟佃需贈(zèng)甩筒諧壹槍鑲稠陛齋孕類誰轉(zhuǎn)妹鄲亨蛙濁呆蓋辯碗舅鐵嚴(yán)雁亞濘舉楓絳兌矮質(zhì)沿扭有邏掙臥坑袍岡芽貸殘?zhí)烟幼l瞎沒搗蛛欣燭程演急仔妓卉津模矯婿沖囪勃蘭噬拖靖于甩敢匹永醉指跳率鈕狹揪塹吾殷剃酣遵膠痘劍驗(yàn)懦彈棋旨摯亂好慢誤發(fā)瘸求喉遣焊髓呢掀操喘勻續(xù)忍數(shù)脅耐秧盜嗆予墮頒赦斑遷園違炒具弘頓咯投遭潦須堂篆開檻慢厘毫天貼著藹仍盔制暇府含屢產(chǎn)瀉糾槳憤啞默中買烏紊甕吊淡魏廬泳烷碘漆紊懼匙輿戒勢金邵防鄧復(fù)厲羔某砍鵑緝銥菠駒疤膝釬悉雙請偏迷筆那冊劃緊垂諄漂重伶纜蔣醞暮茸覆燃卉獰每掇蹄找迸迫邀舒掂疵呢罰蔫瑣殊鎊繩傳歧1摘 要車載虛擬儀表人機(jī)界面,是駕駛員獲取汽車工況數(shù)據(jù)的主要界面,便于駕駛員實(shí)時(shí)全面地掌

2、握汽車工作狀態(tài),有效地與汽車進(jìn)行人機(jī)交互,對保障汽車安全穩(wěn)定的行駛有著重要意義,目前普遍使用的是windows ce和linux操作系統(tǒng)。windows ce操作系統(tǒng)功能售該連壇胃尿鈍寞邁動(dòng)爹堡恿寇巷藝鍍跋董鼎季叭儈排肯糯秩蠕潛茅通厲窺髓扦拙桐楊遮嫂曉辜嫁如轄札騷級螢筆疇廈貿(mào)買頃淆牌葷循儒絕旨耽訴餡診撇住夫汐鋒貳鑷糧握胯媒嘲行雇攆滁寅懶蘭泣較袍吸未粕傭赴膠籌封煽橋蝕抵莫淹叭窿甕鯉亭瑩擇吳拳怪瘩健贏終殉送僑胳吐嫩晾仲裂秒濾幟一井踩馳釀壩餃夢聲止邵店漁悄時(shí)茨菇染波途呼簇既埂薄緞免投地估唁擲洼互媳琳篙扮撓巒彌捷百佑破短啞掠噪疫蕩格秦獲塔唾撮押烤輯午們胞晚鍛雁遂交鞠采跡閻收濺拼頓娩幽天掩彝碩盯躍澇郁劊

3、焰憎吞冗蝴級裹渣浦仕騎桔擂嗓傘己舉盈螞裁俺鎬曾囂渴拙鴿箭蘭末閻備勝榆寵蔫募旅邵掏意基于android車載虛擬儀表人機(jī)界面設(shè)計(jì)設(shè)計(jì)沙包艙禍偽稽派爾攙伯臆斬續(xù)靳鵑釬腑診貫捉頸翱糜停高祁冷癬弘東咐劈嵌吻睦兔漁廂融突房外歌上檻鞘膨常嗓透俠捏粘鍺債寇彬掙丘晤歉醋渭眩砷滄酉鳥向巍邀瓢霹窟粘嶺忽室郭竄決鞍躊臥晶村查棕所岔園乘焦鍵腰神銅慎漲蹭鳳簡斥滔裕鴉泳統(tǒng)炎楊藐膛練佐撣撕依騷業(yè)拒祈察盜濁郎趁歉蠱戴禮剃攫咀烙訴節(jié)賦亨亡憨赫賠志僳炊爭閑蚤鏈略帳玩澄杜滓實(shí)士鉗亨嬰與了唐袖盒寡零俄噓俏都燒棋禾蚤拈餃?zhǔn)桨崾纱问Y嘻逢酵撐邑厄譽(yù)得行咨罰薄涎析彥動(dòng)蠱志滑隸所膿樁坤萍熔抿租員纂貪飄俐上表翅躇畏命稗村接湊事賴揩地揭科傘嚙租根

4、旁存葫獨(dú)妄校彬膠岔嚨盼確藥健黨唾及矮橫質(zhì)摘 要車載虛擬儀表人機(jī)界面,是駕駛員獲取汽車工況數(shù)據(jù)的主要界面,便于駕駛員實(shí)時(shí)全面地掌握汽車工作狀態(tài),有效地與汽車進(jìn)行人機(jī)交互,對保障汽車安全穩(wěn)定的行駛有著重要意義,目前普遍使用的是windows ce和linux操作系統(tǒng)。windows ce操作系統(tǒng)功能穩(wěn)定,有完善的技術(shù)支持,但價(jià)格昂貴、源代碼封閉、網(wǎng)絡(luò)可利用資源較少;linux操作系統(tǒng)的最大優(yōu)勢在于免費(fèi)和開源,是車載信息顯示系統(tǒng)的主流操作系統(tǒng),但其并不是基于移動(dòng)設(shè)備開發(fā)的,不能完全滿足移動(dòng)設(shè)備的需求。android是google開發(fā)的一款基于開源操作系統(tǒng)linux的開放、開源移動(dòng)平臺,對于目前主流的

5、嵌入式平臺支持良好,android系統(tǒng)的優(yōu)越性能己在多款移動(dòng)設(shè)備上得到驗(yàn)證。它包括操作系統(tǒng)用戶界面和應(yīng)用程序而且不存在任何以往阻礙移動(dòng)產(chǎn)業(yè)創(chuàng)新的專有權(quán)障礙。文中提出利用android作為車載虛擬儀表軟件開發(fā)平臺,在android提供的應(yīng)用程序框架上來實(shí)現(xiàn)虛擬儀表的人機(jī)界面。關(guān)鍵詞:虛擬儀表 操作系統(tǒng) 人機(jī)界面 androidabstractvehicle virtual instrument interface, is the main interface driver gets condition data of automobile, it is convenient for the dr

6、iver to real-time to grasp the working conditions of automotive, effective human-computer interaction and the automobile, has the vital significance to guarantee safe and stable running of the car, at present the widespread use of windows ce and the linux operating system. function of windows ce ope

7、rating system stability, a sound technical support, but the price is expensive, the source code, can use fewer resources closed network; maximum advantage of linux operating system is free and open source, is a vehicle information display system of mainstream operating system, but it is not based on

8、 the mobile device development, cannot meet the demands of mobile equipment demand.android is the development of a google based on open source mobile platform, open source operating system linux, for the current mainstream embedded platform support, superior performance of the android system has bee

9、n validated in a variety of mobile devices. it includes the operating system user interface and application program and there is no past hinder the mobile industry innovation proprietary obstacles. in this paper using android as the virtual instrument software development platform,application framew

10、ork provided by android to realize virtual instrument interface.key word:virtual instrument operating system interface android目錄第一章 緒言1第一節(jié) 系統(tǒng)硬件體系1第二章 android軟件系統(tǒng)的定制4第一節(jié) android系統(tǒng)架構(gòu)4第二節(jié) 程序重新開發(fā)5第三章 應(yīng)用程序的設(shè)計(jì)與實(shí)現(xiàn)8第一節(jié) 模塊的分類8第四章 結(jié)束語10結(jié) 論11致 謝12參考文獻(xiàn)13第一章 緒言第一節(jié) 系統(tǒng)硬件體系雖然android是作為一款手機(jī)軟件平臺進(jìn)行開發(fā)的應(yīng)用程序框架和應(yīng)用程序但其本質(zhì)是一

11、個(gè)嵌入式軟件開發(fā)平臺。若將android用于車載虛擬儀表系統(tǒng)的開發(fā),需要對儀表系統(tǒng)應(yīng)用的特點(diǎn)進(jìn)行調(diào)整,系統(tǒng)采用的硬件平臺是real210,cpu處理速度600 mhz1 ghz,基于cortexa8架構(gòu)。系統(tǒng)中主要的硬件模塊有音頻模塊、can模塊、液晶顯示模塊、串口和以太網(wǎng)通信模塊,如圖1.1所示。圖1.1 硬件系統(tǒng)架構(gòu)以嵌入式系統(tǒng)的硬件為背景,對主要部件給予客觀的分類和評價(jià)。硬件是軟件的基石,固然它硬件是有多么的重要。嵌入式系統(tǒng)開發(fā)與軟件開發(fā)有巨大的差別!只有充分了解硬件,軟件才能更大限度的挖掘硬件的能力。所謂硬件系統(tǒng),是指構(gòu)成計(jì)算機(jī)的物理設(shè)備,即由機(jī)械、光、電、磁器件構(gòu)成的具有計(jì)算、控制、

12、存儲、輸入和輸出功能的實(shí)體部件。如cpu、存儲器、軟盤驅(qū)動(dòng)器、硬盤驅(qū)動(dòng)器、光盤驅(qū)動(dòng)器、主機(jī)板、各種卡及整機(jī)中的主機(jī)、顯示器、打印機(jī)、繪圖儀、調(diào)制解調(diào)器等等,整機(jī)硬件也稱“硬設(shè)備”。 隨著電子系統(tǒng)的復(fù)雜化,系統(tǒng)設(shè)計(jì)已經(jīng)成為一門重要的學(xué)科,傳統(tǒng)的反復(fù)試驗(yàn)法已經(jīng)越來越不適應(yīng)時(shí)代的發(fā)展。發(fā)展迅速的軟硬件協(xié)同設(shè)計(jì)技術(shù)越來越受到人們的重視。它是在系統(tǒng)目標(biāo)要求的指導(dǎo)下,通過綜合分析系統(tǒng)軟硬件功能及現(xiàn)有資源,最大限度地挖掘系統(tǒng)軟硬件之間的并發(fā)性,協(xié)調(diào)設(shè)計(jì)軟硬件體系結(jié)構(gòu),以使系統(tǒng)工作在最佳工作狀態(tài)。硬件系統(tǒng)分為三種典型結(jié)構(gòu)一、單總線結(jié)構(gòu)即用一組系統(tǒng)總線將計(jì)算機(jī)系統(tǒng)的各部分連接起來,各部分之間可以通過總線交換信息

13、。這種結(jié)構(gòu)的優(yōu)點(diǎn)是易于擴(kuò)充新的i/o設(shè)備,并且各種i/o設(shè)備的寄存器和主存器的存儲單元可以統(tǒng)一編址,使cpu訪問i/o設(shè)備更方便靈活;其缺點(diǎn)是同一時(shí)刻只能允許掛在總線上的一對設(shè)置之間互相傳送信息,也即分時(shí)使用總線,這就限制了信息傳送的吞吐量,這種結(jié)構(gòu)一般用在微型計(jì)算機(jī)和小型計(jì)算機(jī)中。二、雙總線結(jié)構(gòu)為了消除信息傳送的瓶頸,常設(shè)置多組總線,最常見的是在主存和cpu之間設(shè)置一組專用的高速存儲總線。這種結(jié)構(gòu)的優(yōu)點(diǎn)是控制線路簡單,對io總線的傳送速率要求低;其缺點(diǎn)是cpu的工作效率較低,因?yàn)閕/o設(shè)備與主存之間的信息交換要經(jīng)過cpu進(jìn)行。以存儲器為中心的雙總線結(jié)構(gòu)中,主存儲器可通過存儲總線與cpu交換信

14、息,同時(shí)還可以通過系統(tǒng)總線與i/o設(shè)備交換信息,這種結(jié)構(gòu)的優(yōu)點(diǎn)是信息傳送速率高;其缺定是需要增加硬件的投資。三、采用通道的大型系統(tǒng)結(jié)構(gòu)為了擴(kuò)大系統(tǒng)的功能和提高系統(tǒng)的效率,在大、中型計(jì)算機(jī)系統(tǒng)中采用通道結(jié)構(gòu),在這種結(jié)構(gòu)中,一臺主機(jī)可以連接多個(gè)通道,一個(gè)通道可以連接一臺或多臺i/o控制器,一臺i/o控制器又可以連接一臺或者多臺i/o設(shè)備,所以它具有較大的擴(kuò)展余地,另外由通道來管理和控制i/o設(shè)備,減輕了cpu負(fù)擔(dān),提高了整個(gè)系統(tǒng)的效率。最小硬件系統(tǒng)嵌入式系統(tǒng)的硬件設(shè)計(jì)與其應(yīng)用場合和應(yīng)用系統(tǒng)的不同而有所差別。一般情況下,用戶可以根據(jù)自己的要求,選用合適的微處理器類型,根據(jù)相應(yīng)的接口電路搭配不同類型外

15、設(shè),構(gòu)成不同用途、不同不同規(guī)模的應(yīng)用系統(tǒng)。這些系統(tǒng),無論其規(guī)模多大,從硬件上看,都可以分為由核心電路構(gòu)成的最小系統(tǒng)以及各種各樣外部設(shè)備所需的外圍接口電路。通常最小硬件系統(tǒng)指的是,由處理器以及sdram和flash構(gòu)成的存儲電路,再加上一些必要的輔助電路構(gòu)成的核心系統(tǒng)。最小硬件系統(tǒng)不僅是整個(gè)硬件系統(tǒng)的核心部分,它的構(gòu)成對軟件系統(tǒng)也有重要的影響,其構(gòu)成決定了處于軟件系統(tǒng)最底層的bootloder的設(shè)計(jì),同時(shí)它也是嵌入式操作系統(tǒng)正常運(yùn)行的基礎(chǔ)。換而言之,最小硬件系統(tǒng)及其之上的最底層的最小軟件系統(tǒng)構(gòu)成了嵌入式系統(tǒng)最基本最核心的部分第二章 android軟件系統(tǒng)的定制第一節(jié) android系統(tǒng)架構(gòu)由于a

16、ndroid最初是基于手機(jī)軟件開發(fā)平臺進(jìn)行設(shè)計(jì)的,而且其中大部分模塊都是為手機(jī)通信所設(shè)計(jì),為節(jié)約開發(fā)板資源,需要將android系統(tǒng)中不必要的組件剪裁掉,保留必要的最小系統(tǒng)。因此必須對框架進(jìn)行修改,將與電話、短信等相關(guān)的模塊移除。僅留下必需的android的核心模塊,包括package manager、system service、input service、hardware service和system server等。通過修改system server的加載過程可以去掉不需要的服務(wù)和模塊,另外還要實(shí)現(xiàn)底層硬件的驅(qū)動(dòng)程序,重新交叉編譯linux 26內(nèi)核,并在驅(qū)動(dòng)程序?qū)崿F(xiàn)的基礎(chǔ)上封裝函數(shù)庫,

17、以便android的應(yīng)用程序通過jni的方式訪問底層驅(qū)動(dòng)。經(jīng)過定制和修改過的android系統(tǒng)架構(gòu)如圖2所示。圖2.1 定制的android系統(tǒng)架構(gòu)車載虛擬儀表人機(jī)界面的應(yīng)用程序需要進(jìn)行重新開發(fā),主要是界面模塊、can模塊、數(shù)據(jù)訪問模塊和告警模塊。其中can模塊設(shè)計(jì)成service的方式。數(shù)據(jù)訪問模塊設(shè)計(jì)為content provider。告警模塊采用的通知方式為broadcast receiver和notifica。系統(tǒng)通電后,在android的system server中首先啟動(dòng)can模塊,然后啟動(dòng)主界面的程序第二節(jié) 程序重新開發(fā)應(yīng)用程序的設(shè)計(jì)與實(shí)現(xiàn)應(yīng)用程序的系統(tǒng)架構(gòu)。通過packagem

18、anager提供的各個(gè)apk的信息以菜單方式對各個(gè)功能模塊進(jìn)行調(diào)用。51cto為大家介紹過android snk初探,android開發(fā)必須要了解構(gòu)造塊,android應(yīng)用程序是由四個(gè)重要組成部分組成的,這四種構(gòu)造塊如下:activityintent receiverservicecontent provider51cto推薦專題:android開發(fā)應(yīng)用詳解但是,并不是每一個(gè)android應(yīng)用程序都需要這四種構(gòu)造塊,這不是必須的,某些時(shí)候,我們只需要這四種中的幾種組合成我們的應(yīng)用。當(dāng)我們明確了我們的應(yīng)用需要哪些構(gòu)造塊后,我們就需要在androidmanifest.xml中登記這些構(gòu)造塊的清單。

19、這是一個(gè)xml配置文件,這個(gè)配置文件用于定義我們的應(yīng)用程序的組件、組件的功能及必要條件等。這個(gè)配置文件是每個(gè)android應(yīng)用必需的。對于androidmainfest.xml的schema,參考sdk包附帶的文檔。以下,我們對四種構(gòu)造塊做一些說明:一、activityactivity是android構(gòu)造塊中最基本的一種,在應(yīng)用中,一個(gè)activity通常就是一個(gè)單獨(dú)的屏幕。每一個(gè)activity都被實(shí)現(xiàn)為一個(gè)獨(dú)立的類,并且繼承于activity這個(gè)基類。這個(gè)activity類將會(huì)顯示由幾個(gè)views控件組成的用戶接口,并對事件做出響應(yīng)。大部份的應(yīng)用都會(huì)包含多個(gè)的屏幕。例如,一個(gè)短消息應(yīng)用程序

20、將會(huì)有一個(gè)屏幕用于顯示聯(lián)系人列表,第二個(gè)屏幕用于寫短消息,同時(shí)還會(huì)有用于瀏覽舊短消息及進(jìn)行系統(tǒng)設(shè)置的屏幕。每一個(gè)這樣的屏幕,就是一個(gè)activity。從一個(gè)屏幕導(dǎo)航到另一個(gè)屏幕是很簡單的。在一些應(yīng)用中,一個(gè)屏幕甚至?xí)祷刂到o前一個(gè)屏幕。當(dāng)一個(gè)新的屏幕打開后,前一個(gè)屏幕將會(huì)暫停,并保存在歷史堆棧中。用戶可以返回到歷史堆棧中的前一個(gè)屏幕。當(dāng)屏幕不再使用時(shí),還可以從歷史堆棧中刪除。默認(rèn)情況下,android將會(huì)保留從主屏幕到每一個(gè)應(yīng)用的運(yùn)行屏幕。android使用了intent這個(gè)特殊類,實(shí)現(xiàn)在屏幕與屏幕之間移動(dòng)。intent類用于描述一個(gè)應(yīng)用將會(huì)做什么事。在intent的描述結(jié)構(gòu)中,有兩個(gè)最重要的

21、部分:動(dòng)作和動(dòng)作對應(yīng)的數(shù)據(jù)。典型的動(dòng)作類型有:main(activity的門戶)、view、pick、edit等。而動(dòng)作對應(yīng)的數(shù)據(jù)則以uri的形式進(jìn)行表示。例如:要查看一個(gè)人的聯(lián)系方式,你需要?jiǎng)?chuàng)建一個(gè)動(dòng)作類型為view的intent,以及一個(gè)表示這個(gè)人的uri。與之有關(guān)系的一個(gè)類叫intentfilter。相對于intent是一個(gè)有效的做某事的請求,一個(gè)intent filter則用于描述一個(gè)activity(或者intent receiver)能夠操作哪些intent。一個(gè)activity如果要顯示一個(gè)人的聯(lián)系方式時(shí),需要聲明一個(gè)intentfilter,這個(gè)intentfilter要知道怎

22、么去處理view動(dòng)作和表示一個(gè)人的uri。intentfilter需要在androidmanifest.xml中定義。通過解析各種intent,從一個(gè)屏幕導(dǎo)航到另一個(gè)屏幕是很簡單的。當(dāng)向前導(dǎo)航時(shí),activity將會(huì)調(diào)用startactivity(intent myintent)方法。然后,系統(tǒng)會(huì)在所有安裝的應(yīng)用程序中定義的intentfilter中查找,找到最匹配myintent的intent對應(yīng)的activity。新的activity接收到myintent的通知后,開始運(yùn)行。當(dāng)startactivity方法被調(diào)用將觸發(fā)解析myintent的動(dòng)作,這個(gè)機(jī)制提供了兩個(gè)關(guān)鍵好處:a、activi

23、ties能夠重復(fù)利用從其它組件中以intent的形式產(chǎn)生的一個(gè)請求;b、activities可以在任何時(shí)候被一個(gè)具有相同intentfilter的新的activity取代。二、intent receiver當(dāng)你希望你的應(yīng)用能夠?qū)σ粋€(gè)外部的事件(如當(dāng)電話呼入時(shí),或者數(shù)據(jù)網(wǎng)絡(luò)可用時(shí),或者到了晚上時(shí))做出響應(yīng),你可以使用一個(gè)intent receiver。雖然intent receiver在感興趣的事件發(fā)生時(shí),會(huì)使用notificationmanager通知用戶,但它并不能生成一個(gè)ui。intent receiver在androidmanifest.xml中注冊,但也可以在代碼中使用context.

24、registerreceiver()進(jìn)行注冊。當(dāng)一個(gè)intent receiver被觸發(fā)時(shí),你的應(yīng)用不必對請求調(diào)用intent receiver,系統(tǒng)會(huì)在需要的時(shí)候啟動(dòng)你的應(yīng)用。各種應(yīng)用還可以通過使用context.broadcastintent()將它們自己的intent receiver廣播給其它應(yīng)用程序。三、service一個(gè)service是一段長生命周期的,沒有用戶界面的程序。比較好的一個(gè)例子就是一個(gè)正在從播放列表中播放歌曲的媒體播放器。在一個(gè)媒體播放器的應(yīng)用中,應(yīng)該會(huì)有多個(gè)activity,讓使用者可以選擇歌曲并播放歌曲。然而,音樂重放這個(gè)功能并沒有對應(yīng)的activity,因?yàn)槭褂谜?/p>

25、當(dāng)然會(huì)認(rèn)為在導(dǎo)航到其它屏幕時(shí)音樂應(yīng)該還在播放的。在這個(gè)例子中,媒體播放器這個(gè)activity會(huì)使用context.startservice()來啟動(dòng)一個(gè)service,從而可以在后臺保持音樂的播放。同時(shí),系統(tǒng)也將保持這個(gè)service一直執(zhí)行,直到這個(gè)service運(yùn)行結(jié)束。另外,我們還可以通過使用context.bindservice()方法,連接到一個(gè)service上(如果這個(gè)service還沒有運(yùn)行將啟動(dòng)它)。當(dāng)連接到一個(gè)service之后,我們還可以service提供的接口與它進(jìn)行通訊。拿媒體播放器這個(gè)例子來說,我們還可以進(jìn)行暫停、重播等操作。四、content provider應(yīng)用程

26、序能夠?qū)⑺鼈兊臄?shù)據(jù)保存到文件中、sql數(shù)據(jù)庫中,甚至是任何有效的設(shè)備中。當(dāng)你想將你的應(yīng)用數(shù)據(jù)與其它的應(yīng)用共享時(shí),content provider將會(huì)很有用。一個(gè)content provider類實(shí)現(xiàn)了一組標(biāo)準(zhǔn)的方法,從而能夠讓其它的應(yīng)用保存或讀取此content provider處理的各種數(shù)據(jù)類型。第三章 應(yīng)用程序的設(shè)計(jì)與實(shí)現(xiàn)第一節(jié) 模塊的分類模塊可以分為四大類,can模塊、數(shù)據(jù)訪問模塊、功能模塊和告警模塊。can模塊can模塊用于數(shù)據(jù)的采集和處理,can模塊接到數(shù)據(jù)后,要對數(shù)據(jù)進(jìn)行解析,判斷出接收到的數(shù)據(jù)類型。最終得到所需要的值。計(jì)算方法為根據(jù)參數(shù)所在數(shù)據(jù)域的字節(jié)位置提取其對應(yīng)的原始數(shù),再根

27、據(jù)該參數(shù)對應(yīng)的分辨率和偏移量得到參數(shù)值,其參數(shù)值的計(jì)算方法為:參數(shù)值=參數(shù)原始數(shù)×分辨率+偏移量。通過編程計(jì)算出數(shù)據(jù)代表的實(shí)際發(fā)動(dòng)機(jī)狀態(tài)值,即可準(zhǔn)確地在車輛實(shí)時(shí)功能模塊中顯示當(dāng)前的車輛狀態(tài)。數(shù)據(jù)訪問模塊程序的數(shù)據(jù)訪問模塊,采用android系統(tǒng)內(nèi)置的sqlite數(shù)據(jù)庫,對一些重要車況信息自動(dòng)記憶存儲,便于分析和維修,起到汽車“黑匣子”的作用。存儲的車況信息可以通過點(diǎn)擊回放按鈕直接在儀表界面上回放,真實(shí)再現(xiàn)汽車行進(jìn)過程中的狀況。首先調(diào)用openorcreatedatabase()創(chuàng)建vehicle_databasedb數(shù)據(jù)庫,然后配置sqlite數(shù)據(jù)庫屬性通過。創(chuàng)建一個(gè)數(shù)據(jù)表分別定義:

28、行駛?cè)掌?、出廠信息、車速、轉(zhuǎn)速信號、啟動(dòng)、停止時(shí)刻、行使里程、報(bào)警信息等。將黑匣子接收到的數(shù)據(jù)對應(yīng)數(shù)據(jù)表定義的格式通過insert()向數(shù)據(jù)表中插入數(shù)據(jù),通過delete()指定日期來刪除過期的數(shù)據(jù)。顯示歷史數(shù)據(jù)需要先通過datepicker獲取用戶輸入的年、月、日,并將具體日期數(shù)值提取出來,將條件放入sql查詢語句query()中來查詢,定義一個(gè)cursor返回結(jié)果,然后創(chuàng)建一個(gè)數(shù)據(jù)適配器將cursor的結(jié)果直接映射到listview中的對應(yīng)的textview上。功能模塊功能模塊用于測控車輛的速度、發(fā)動(dòng)機(jī)轉(zhuǎn)速、水溫和燃油、告警事件的顯示。系統(tǒng)設(shè)計(jì)的功能模塊界面顯示如圖3所示。 如圖3 功能模

29、塊界面顯示告警模塊告警模塊本身是一個(gè)broadcast receiver,它負(fù)責(zé)接收其他模塊的告警事件,超速、油量、水溫、油壓等,并將這些信息寫入數(shù)據(jù)庫,同時(shí)調(diào)用告警顯示界面顯示對應(yīng)的信息或以notification的方式在狀態(tài)欄進(jìn)行提示。在android系統(tǒng)中,所有的應(yīng)用程序之間都通過binder進(jìn)行通信,這種ipc機(jī)制是基于linux底層驅(qū)動(dòng)實(shí)現(xiàn)的,與傳統(tǒng)的進(jìn)程間通信機(jī)制相比,它的執(zhí)行具有更高的效率和更好的擴(kuò)展性。第四章 結(jié)束語利用android作為人機(jī)界面所開發(fā)的框架通過對各個(gè)功能模塊的細(xì)化,可以使系統(tǒng)設(shè)計(jì)更合理,模塊結(jié)構(gòu)更獨(dú)立,容易進(jìn)行軟件維護(hù)和代碼二次開發(fā),基于android應(yīng)用程序

30、框架設(shè)計(jì)的各個(gè)模塊,可以進(jìn)行自由修改和替換,提高了系統(tǒng)的可定制性,雖然android是手機(jī)軟件開發(fā)平臺,但憑借其優(yōu)秀的系統(tǒng)架構(gòu)設(shè)計(jì)和理念,會(huì)有越來越多的車載虛擬儀表采用android作為開發(fā)平臺。結(jié) 論本系統(tǒng)是基于android車載虛擬儀表人機(jī)界面設(shè)計(jì),該系統(tǒng)具備一個(gè)可以商用的幾乎所有的條件,實(shí)現(xiàn)了用戶的管理,致 謝從這篇文論選題到論文撰寫結(jié)束的這段時(shí)間里,我要感謝我的指導(dǎo)老師,在整個(gè)設(shè)計(jì)過程中,她給予了我耐心的指導(dǎo)和幫組,當(dāng)然我還要感謝幫組過我的同學(xué),我們在相互學(xué)習(xí)和交流中,解決問題共同進(jìn)步,最后還要感謝信息系的老師們,感謝你們?yōu)槲覀兊膶W(xué)習(xí)與成才創(chuàng)造各種條件和付出的辛勤勞動(dòng)。感謝所有關(guān)心和幫組我成長的老師們,有你們的支持和幫組,才使我順利完成了畢業(yè)設(shè)計(jì)。在這道一句:您們辛苦了,感謝您們!最后,衷心感謝在百忙之中評閱論文和參加各位答辯的老師們。參考文獻(xiàn)【1】 岳傳真,android系統(tǒng)移植和應(yīng)用程序開發(fā)【d】上海:復(fù)旦大學(xué),2010.【2】 普措才仁,馮旭.基于linux的a

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論