新聞中心

EEPW首頁 > 汽車電子 > 設(shè)計(jì)應(yīng)用 > 汽車平臺中的HTML5硬件通信

汽車平臺中的HTML5硬件通信

作者:AndyGryc 時(shí)間:2012-08-17 來源:電子產(chǎn)品世界 收藏

  摘要: QNX CAR 2應(yīng)用平臺的總體架構(gòu)簡單且靈活。由于消息傳遞模式采用松耦合架構(gòu),因此非常靈活。如果新增組件或設(shè)備,也只需要極少的工作,因?yàn)樾碌慕M件只需要發(fā)布數(shù)據(jù),并訂閱相關(guān)的對象。即使修改HMI技術(shù),也不會(huì)給底層組件帶來較大的影響。所有這些需求都可為相關(guān)的API帶來改變。

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

  挑戰(zhàn)

  利用開發(fā)的人機(jī)界面(HMI)位于軟件開發(fā)的上層環(huán)境中,但它們通常需要接入硬件。在汽車系統(tǒng)中,他們必須從CAN總線、GPIO引腳以及I2C和SPI器件等底層組件中取回信息。

  試圖編寫讓HMI與底層服務(wù)通信的界面是比較昂貴的辦法。更好的方法是使用無關(guān)HMI的異步通信模式,比如永久性發(fā)布/訂閱()。

  永久性發(fā)布/訂閱

  QNX的PPS部署是在松耦合消息架構(gòu)中針對發(fā)布者和訂閱者提供的一種基于對象的服務(wù)。由于PPS利用標(biāo)準(zhǔn)的POSIX文件系統(tǒng)服務(wù),它可以使用任何編程語言或者應(yīng)用環(huán)境。

  任何 PPS 服務(wù)客戶端都可以是一個(gè)獨(dú)立的發(fā)布者、訂閱者,也可以既是發(fā)布者又是訂閱者。發(fā)布以異步方式進(jìn)行。發(fā)布者可修改對象及其屬性并寫入文件系統(tǒng)中。當(dāng)任何發(fā)布者更改對象時(shí),PPS 服務(wù)都會(huì)通知訂閱該對象的所有客戶端。PPS 客戶端能訂閱多個(gè)對象,PPS對象能有多個(gè)發(fā)布者和多個(gè)訂閱者。因此,能訪問不同對象屬性應(yīng)用數(shù)據(jù)的發(fā)布者可使用相同對象與該對象的所有訂閱者交流信息。

  永久性是由系統(tǒng)設(shè)計(jì)人員定義的特性,并為個(gè)體目標(biāo)屬性所設(shè)。當(dāng)PPS運(yùn)行時(shí),不但可以維護(hù)內(nèi)存中的對象,而且可以按需要或在關(guān)機(jī)時(shí)將對象保存到永久性存儲體中。

  PPS還能簡化新組件的集成。由于發(fā)布者和訂閱者不必認(rèn)識對方,因此開發(fā)人員只需確定這些新組件的發(fā)布內(nèi)容,以及他們需要其他 PPS客戶端得到的數(shù)據(jù)內(nèi)容?! ?/p>

 

  QNX CAR 2應(yīng)用平臺

  QNX CAR 2應(yīng)用平臺為PPS提供了理想的實(shí)施環(huán)境。從用戶角度說,該平臺的關(guān)鍵功能包括如下。

  ● HMI:基于的HMI,支持簡易標(biāo)識、換膚和個(gè)性化。
  ● 信息和娛樂:多媒體(音頻和視頻);調(diào)幅、調(diào)頻和高清電臺;流網(wǎng)絡(luò)電臺;整合天氣預(yù)報(bào);基于電話或家庭的媒體支持蘋果和DLNA。
  ● 汽車界面:氣候控制和診斷程序可在低油位、剎車問題及其他情況下通知司機(jī)。
  ● 導(dǎo)航、免提電話、語音辨識和社交網(wǎng)絡(luò)。

  QNX CAR 2平臺還支持將眾多應(yīng)用和廣泛的底層軟件組件直接連接至硬件。

  QNX CAR 2平臺的HMI使用,并采用包括Sencha和jQuery JavaScript 庫的JavaScript架構(gòu)。該架構(gòu)也支持如Adobe AIR和Elektrobit GUIDE HMI等其它易于集成HMI的技術(shù)。HTML5和Cascading Style Sheets(CSS3)的使用可以實(shí)現(xiàn)應(yīng)用程序在車內(nèi)系統(tǒng)以及移動(dòng)智能手機(jī)以及平板電腦之間來回切換。  

 

  PPS處理眾多系統(tǒng)組件和HMI之間的通信。由于PPS無關(guān)技術(shù)和語言,因此僅需要極少數(shù)的API來為HMI和組件提供界面:

  ● 一個(gè)PPS API處理HMI和PPS服務(wù)客戶端之間的通信;
  ● 一個(gè)SQL API與本地媒體庫接口。

  另一套被稱為UI內(nèi)核的API,處理HTML5層和用戶界面核心組件之間的通信,以及介于這個(gè)核心組件和其它HMI技術(shù)之間的通信。

  HMI和硬件之間的通信由JavaScriptwrapper類和JNEXT處理。C/C++程序直接與車輛硬件接口,并對PPS對象進(jìn)行讀寫。要訪問為這些對象寫入的信息,HMI中的JavaScript會(huì)呼叫一個(gè)wrapper類來與JavaScript PPS類通信。對于其它呼叫者來說,wrapper類展現(xiàn)了自然的、基于類別的JavaScript API。

c++相關(guān)文章:c++教程


數(shù)字通信相關(guān)文章:數(shù)字通信原理


通信相關(guān)文章:通信原理




關(guān)鍵詞: HTML5 PPS 201208

評論


相關(guān)推薦

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

關(guān)閉