《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于Android車載虛擬儀表人機(jī)界面設(shè)計(jì)
基于Android車載虛擬儀表人機(jī)界面設(shè)計(jì)
電子科技
李培培,朱維杰
摘要: 提出了利用Google的Android作為車載虛擬儀表人機(jī)界面的軟件開發(fā)平臺(tái)。在Android系統(tǒng)框架上實(shí)現(xiàn)虛擬儀表的人機(jī)界面,闡述了如何對(duì)Android現(xiàn)有系統(tǒng)框架進(jìn)行裁剪和調(diào)整,使系統(tǒng)更加符合車載虛擬儀表人機(jī)界面的要求,利用Android提供的組件設(shè)計(jì)虛擬儀表人機(jī)界面的各個(gè)功能邏輯模塊,使得模塊設(shè)計(jì)更加合理.模塊之間的耦合性更小。設(shè)計(jì)了基于REAL210車載儀表人機(jī)界面,結(jié)果表明,基于Android的虛擬儀表人機(jī)界面功能更加豐富、操作更加友
Abstract:
Key words :

車載虛擬儀表人機(jī)界面,是駕駛員獲取汽車工況數(shù)據(jù)的主要界面,便于駕駛員實(shí)時(shí)全面地掌握汽車工作狀態(tài),有效地與汽車進(jìn)行人機(jī)交互,對(duì)保障汽車安全穩(wěn)定的行駛有著重要意義,目前普遍使用的是Windows CE和Linux操作系統(tǒng)。Windows CE操作系統(tǒng)功能穩(wěn)定,有完善的技術(shù)支持,但價(jià)格昂貴、源代碼封閉、網(wǎng)絡(luò)可利用資源較少;Linux操作系統(tǒng)的最大優(yōu)勢(shì)在于免費(fèi)和開源,是車載信息顯示系統(tǒng)的主流操作系統(tǒng),但其并不是基于移動(dòng)設(shè)備開發(fā)的,不能完全滿足移動(dòng)設(shè)備的需求。
Android是Google開發(fā)的一款基于開源操作系統(tǒng)Linux的開放、開源移動(dòng)平臺(tái),對(duì)于目前主流的嵌入式平臺(tái)支持良好,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ā)平臺(tái),在Android提供的應(yīng)用程序框架上來(lái)實(shí)現(xiàn)虛擬儀表的人機(jī)界面。

1 系統(tǒng)硬件體系
雖然Android是作為一款手機(jī)軟件平臺(tái)進(jìn)行開發(fā)的應(yīng)用程序框架和應(yīng)用程序但其本質(zhì)是一個(gè)嵌入式軟件開發(fā)平臺(tái)。若將Android用于車載虛擬儀表系統(tǒng)的開發(fā),需要對(duì)儀表系統(tǒng)應(yīng)用的特點(diǎn)進(jìn)行調(diào)整,系統(tǒng)采用的硬件平臺(tái)是REAL210,CPU處理速度600 MHz~1 GHz,基于Cortex—A8架構(gòu)。系統(tǒng)中主要的硬件模塊有音頻模塊、CAN模塊、液晶顯示模塊、串口和以太網(wǎng)通信模塊,如圖1所示。

a.JPG



2 Android軟件系統(tǒng)的定制
由于Android最初是基于手機(jī)軟件開發(fā)平臺(tái)進(jìn)行設(shè)計(jì)的,而且其中大部分模塊都是為手機(jī)通信所設(shè)計(jì),為節(jié)約開發(fā)板資源,需要將Android系統(tǒng)中不必要的組件剪裁掉,保留必要的最小系統(tǒng)。因此必須對(duì)框架進(jìn)行修改,將與電話、短信等相關(guān)的模塊移除。僅留下必需的Android的核心模塊,包括Package Manager、System Service、Input Service、Hardware SerVice和System Server等。通過(guò)修改System Server的加載過(guò)程可以去掉不需要的服務(wù)和模塊,另外還要實(shí)現(xiàn)底層硬件的驅(qū)動(dòng)程序,重新交叉編譯Linux 2.6內(nèi)核,并在驅(qū)動(dòng)程序?qū)崿F(xiàn)的基礎(chǔ)上封裝函數(shù)庫(kù),以便Android的應(yīng)用程序通過(guò)JNI的方式訪問底層驅(qū)動(dòng)。經(jīng)過(guò)定制和修改過(guò)的Android系統(tǒng)架構(gòu)如圖2所示。

b.JPG

   車載虛擬儀表人機(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)主界面的程序。

3 應(yīng)用程序的設(shè)計(jì)與實(shí)現(xiàn)
應(yīng)用程序的系統(tǒng)架構(gòu)。通過(guò)PackageManager提供的各個(gè)APK的信息以菜單方式對(duì)各個(gè)功能模塊進(jìn)行調(diào)用。
3.1 CAN模塊
CAN模塊用于數(shù)據(jù)的采集和處理,CAN模塊接到數(shù)據(jù)后,要對(duì)數(shù)據(jù)進(jìn)行解析,判斷出接收到的數(shù)據(jù)類型。最終得到所需要的值。計(jì)算方法為根據(jù)參數(shù)所在數(shù)據(jù)域的字節(jié)位置提取其對(duì)應(yīng)的原始數(shù),再根據(jù)該參數(shù)對(duì)應(yīng)的分辨率和偏移量得到參數(shù)值,其參數(shù)值的計(jì)算方法為:參數(shù)值=參數(shù)原始數(shù)×分辨率+偏移量。通過(guò)編程計(jì)算出數(shù)據(jù)代表的實(shí)際發(fā)動(dòng)機(jī)狀態(tài)值,即可準(zhǔn)確地在車輛實(shí)時(shí)功能模塊中顯示當(dāng)前的車輛狀態(tài)。
3.2 數(shù)據(jù)訪問模塊
程序的數(shù)據(jù)訪問模塊,采用Android系統(tǒng)內(nèi)置的SQLite數(shù)據(jù)庫(kù),對(duì)一些重要車況信息自動(dòng)記憶存儲(chǔ),便于分析和維修,起到汽車“黑匣子”的作用。存儲(chǔ)的車況信息可以通過(guò)點(diǎn)擊回放按鈕直接在儀表界面上回放,真實(shí)再現(xiàn)汽車行進(jìn)過(guò)程中的狀況。
首先調(diào)用.openOrCreateDatabase()創(chuàng)建vehicle_database.db數(shù)據(jù)庫(kù),然后配置SQLite數(shù)據(jù)庫(kù)屬性通過(guò)。創(chuàng)建一個(gè)數(shù)據(jù)表分別定義:行駛?cè)掌凇⒊鰪S信息、車速、轉(zhuǎn)速信號(hào)、啟動(dòng)、停止時(shí)刻、行使里程、報(bào)警信息等。將黑匣子接收到的數(shù)據(jù)對(duì)應(yīng)數(shù)據(jù)表定義的格式通過(guò).insert()向數(shù)據(jù)表中插入數(shù)據(jù),通過(guò).delete()指定日期來(lái)刪除過(guò)期的數(shù)據(jù)。顯示歷史數(shù)據(jù)需要先通過(guò)DatePicker獲取用戶輸入的年、月、日,并將具體日期數(shù)值提取出來(lái),將條件放入SQL查詢語(yǔ)句.query()中來(lái)查詢,定義一個(gè)Cursor返回結(jié)果,然后創(chuàng)建一個(gè)數(shù)據(jù)適配器將Cursor的結(jié)果直接映射到ListView中的對(duì)應(yīng)的TextView上。
3.3 功能模塊
功能模塊用于測(cè)控車輛的速度、發(fā)動(dòng)機(jī)轉(zhuǎn)速、水溫和燃油、告警事件的顯示。系統(tǒng)設(shè)計(jì)的功能模塊界面顯示如圖3所示。

c.JPG


3.4 告警模塊
告警模塊本身是一個(gè)Broadcast Receiver,它負(fù)責(zé)接收其他模塊的告警事件,超速、油量、水溫、油壓等,并將這些信息寫入數(shù)據(jù)庫(kù),同時(shí)調(diào)用告警顯示界面顯示對(duì)應(yīng)的信息或以Notification的方式在狀態(tài)欄進(jìn)行提示。在Android系統(tǒng)中,所有的應(yīng)用程序之間都通過(guò)Binder進(jìn)行通信,這種IPC機(jī)制是基于Linux底層驅(qū)動(dòng)實(shí)現(xiàn)的,與傳統(tǒng)的進(jìn)程間通信機(jī)制相比,它的執(zhí)行具有更高的效率和更好的擴(kuò)展性。

4 結(jié)束語(yǔ)
利用Android作為人機(jī)界面所開發(fā)的框架通過(guò)對(duì)各個(gè)功能模塊的細(xì)化,可以使系統(tǒng)設(shè)計(jì)更合理,模塊結(jié)構(gòu)更獨(dú)立,容易進(jìn)行軟件維護(hù)和代碼二次開發(fā),基于Android應(yīng)用程序框架設(shè)計(jì)的各個(gè)模塊,可以進(jìn)行自由修改和替換,提高了系統(tǒng)的可定制性,雖然Android是手機(jī)軟件開發(fā)平臺(tái),但憑借其優(yōu)秀的系統(tǒng)架構(gòu)設(shè)計(jì)和理念,會(huì)有越來(lái)越多的車載虛擬儀表采用Android作為開發(fā)平臺(tái)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品亚洲| 女主播福利一区| 欧美另类女人| 亚洲自拍16p| 久久精品一区二区三区不卡| 国产亚洲在线| 亚洲精品国产精品国自产观看浪潮 | 国产精品久久久一区二区三区| 亚洲午夜激情网页| 久久久久**毛片大全| 亚洲黄色在线视频| 亚洲欧美久久| 亚洲电影天堂av| 先锋影音网一区二区| 一色屋精品视频免费看| 亚洲国产精品日韩| 香蕉久久国产| 亚洲精品久久久久中文字幕欢迎你 | 亚洲毛片一区二区| 国产精品美女久久久久av超清 | 91久久久久久久久| 欧美一级免费视频| 亚洲日本精品国产第一区| 欧美一区成人| 亚洲美女免费视频| 久久久av毛片精品| 亚洲视频在线观看网站| 欧美 日韩 国产一区二区在线视频| 亚洲午夜精品久久久久久app| 欧美激情区在线播放| 午夜亚洲激情| 欧美日本在线播放| 亚洲人成亚洲人成在线观看图片| 国产日韩欧美在线观看| 亚洲在线黄色| 亚洲精品乱码久久久久久日本蜜臀| 久久久久久久999精品视频| 亚洲天天影视| 欧美韩日一区二区| 亚洲国产影院| 国产色产综合产在线视频| 国产精品99久久99久久久二8 | 亚洲人成啪啪网站| 在线电影欧美日韩一区二区私密| 久久精品二区亚洲w码| 中文有码久久| 国产精品三上| 好男人免费精品视频| 亚洲一卡久久| 久久精品国产一区二区三区| 亚洲国产精品va在看黑人| 午夜一区二区三区不卡视频| 亚洲国产精品123| 国内精品视频在线观看| 国产精品久久国产精麻豆99网站| 欧美成人精品三级在线观看| 一本色道**综合亚洲精品蜜桃冫| 亚洲高清在线观看一区| 国产视频在线观看一区二区| 欧美揉bbbbb揉bbbbb| 欧美精品在线视频| 欧美二区乱c少妇| 老司机午夜精品视频| 在线视频欧美日韩| 一区二区欧美国产| 中文欧美在线视频| 亚洲午夜性刺激影院| 亚洲一级高清| 亚洲欧美日韩国产成人精品影院| 亚洲视频专区在线| 亚洲一区二区欧美| 小嫩嫩精品导航| 亚洲福利在线观看| 亚洲精品久久久久久下一站| 亚洲片在线观看| 一个色综合导航| 亚洲私人影院在线观看| 亚洲淫片在线视频| 欧美一区成人| 免费视频一区二区三区在线观看| 欧美国产国产综合| 欧美三区视频| 国语自产在线不卡| 99在线视频精品| 欧美亚洲一区| 一本久道久久综合中文字幕 | 午夜精品网站| 亚洲精品国产精品乱码不99| 亚洲在线第一页| 免费观看不卡av| 国产精品青草综合久久久久99| 激情另类综合| 亚洲午夜精品久久久久久app| 亚洲高清在线视频| 欧美一区二区视频97| 欧美精品日韩www.p站| 国产日韩精品入口| 在线天堂一区av电影| 亚洲啪啪91| 久久先锋影音| 欧美激情一区| 国产精品久久久久久久久免费桃花| 欧美日韩一区二区三区在线视频| 欧美日韩视频在线观看一区二区三区 | 欧美成人精品三级在线观看| 免费成人黄色| 欧美色综合天天久久综合精品| 国产精品二区影院| 欧美日韩国产三级| 国产精品一区二区在线观看不卡| 国产私拍一区| 亚洲日本一区二区三区| 一区二区三区国产精华| 欧美在线免费播放| 一区二区三区日韩精品视频| 亚洲一区一卡| 鲁大师成人一区二区三区| 欧美日韩成人免费| 欧美日韩在线看| 国产一区久久| 亚洲五月六月| 日韩一区二区久久| 亚洲伊人网站| 欧美成人免费全部观看天天性色| 国产精品美女| 亚洲欧洲精品一区| 小辣椒精品导航| 欧美一区二区视频在线| 欧美日韩在线直播| 亚洲国产高清在线| 国产欧美日韩在线视频| 亚洲精选视频免费看| 日韩网站在线看片你懂的| 免费在线亚洲欧美| 亚洲第一色在线| 欧美在线免费观看| 欧美一区二视频| 国产精品一区久久久久| 亚洲一区二区三区四区五区黄| 一本久道久久久| 欧美精品一区二区在线观看| 狠狠色丁香久久婷婷综合丁香| 亚洲在线免费| 先锋影音国产精品| 国产乱码精品一区二区三区五月婷 | 亚洲精品久久久久久久久久久| 91久久久国产精品| 欧美不卡三区| 亚洲久久视频| 午夜精品免费| 国产亚洲精品一区二区| 久久精品论坛| 欧美成人激情视频| 亚洲免费久久| 亚洲综合色在线| 国产婷婷色一区二区三区四区| 新狼窝色av性久久久久久| 欧美亚洲综合在线| 好吊色欧美一区二区三区四区| 久久精品国产999大香线蕉| 欧美91视频| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 午夜日韩在线| 久久综合伊人77777蜜臀| 一区二区视频免费在线观看| 亚洲国产精品嫩草影院| 欧美日韩免费在线视频| 欧美在线视频网站| 欧美午夜在线一二页| 日韩系列在线| 亚洲第一区在线| 久久久久久国产精品mv| 在线综合亚洲欧美在线视频| 欧美成人精品| 亚洲男同1069视频| 国产精品第一区| 亚洲一区在线直播| 狠狠色狠狠色综合日日五| 日韩亚洲一区二区| 国产视频观看一区| 亚洲在线视频免费观看| 亚洲电影网站| 久久免费国产| 亚洲欧美综合一区| 欧美视频不卡中文| 亚洲精品国产精品久久清纯直播| 国产精品成av人在线视午夜片| 亚洲欧美日韩在线不卡| 欧美精品激情在线观看| 午夜综合激情| 欧美日韩成人免费| 亚洲国产另类 国产精品国产免费| 国产精品亚洲产品| 亚洲一二三区精品| 亚洲国产色一区| 久久五月天婷婷| 性18欧美另类| 国产日韩亚洲欧美精品| 欧美在线高清| 午夜精品福利电影|