色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于CAN總線和LIN總線實現車載嵌入式瀏覽器的設計

電子設計 ? 來源:電子設計應用 ? 作者:張彧;馮輝宗 ? 2021-03-31 14:12 ? 次閱讀

現在,車輛的控制向高精度、高安全性發展,汽車行業正走向智能化、網絡化。在此過程中,汽車網絡起著重要的作用,CAN總線和LIN總線就是重要的汽車網絡總線。

但是,在汽車逐漸發展成為一個信息終端時,卻存在著網絡體系結構滯后的情況,在互聯網絡普遍采用B/S(瀏覽器/服務器模式)三層網絡結構的同時,車載網絡還處在簡單的C/S(客戶端/服務器模式)兩層網絡結構的階段。針對汽車網絡標準不統一、接口混亂、管理困難、網絡體系滯后的狀況,可以引入當前互聯網絡中廣泛使用的標記語言(ML Markup Language)和B/S網絡結構。標記語言是一種跨平臺的信息交換方式,在汽車網絡中采用標記語言,可以解決不同智能節點之間標準不統一、接口不同和跨層信息交換的問題。B/S網絡結構可以很好地解決網絡節點信息處理能力不足的狀況,把大部分的信息處理通過網絡提交到處理能力強大的主設備,甚至通過互聯網絡連接到大型主機,而從設備僅僅需要通過瀏覽器軟件解析主機處理的結果。

但是目前使用標記語言和B/S網絡結構最大的問題是缺乏針對車載網絡的嵌入式瀏覽器系統。通用的嵌入式瀏覽器使用HTML語言作為信息的載體,而HTML語言存在著內容和顯示信息不分、描述結構數據能力差等缺點。此外,通用的嵌入式瀏覽器對實時數據的處理和顯示的能力不足等,也是需要解決的問題。因此,設計一款面向多層汽車局域網絡,針對車載網絡信息處理需要,使用可擴展標記語言(XML)為信息載體,可以同時顯示汽車內部實時信息和互聯網絡信息的專用嵌入式瀏覽器,具有非常重要的意義。

嵌入式瀏覽器總體設計

根據汽車網絡自身的特點、車載網絡瀏覽器的特殊要求,以及模塊內高內聚和模塊間低耦合的要求,將車載網絡瀏覽器的設計和實現劃分5個模塊,分別為擴展標記語言模塊、網絡接入和信息緩存模塊、標記語言解析模塊、布局模塊、用戶界面模塊。

擴展標記語言模塊主要根據車載網絡的特點,在保持與HTML語言兼容性的同時,使用XML技術對HTML語言進行擴展,定義一種基于車載網絡的標記語言EXML,擴展標記語言模塊以模塊的方式定義。網絡接口與緩沖模塊主要用于同時連接汽車局域網絡和互聯網絡,以獲取汽車實時信息和廣泛的互聯網信息;文檔解析模塊是在基于車載網絡的嵌入式瀏覽器中使用的標記語言,有兩種,分別為HTML和EXML,其中包括HTML語言的基本標簽。因此,在語言解析模塊中使用同一個解析器,對兩種標記語言進行解析,并將解析的結果存在內存中;文檔布局模塊主要用于確定每個頁面元素的大小,頁面元素分為文本、圖像和圖形兩類,其中圖像和圖像的大小可以直接獲取,文本的大小則受標簽和屬性的影響;用戶界面顯示模塊的作用是顯示用戶界面,其中包括:工作區、標題欄、標簽欄、實時標簽顯示區等。他們之間的關系如圖1所示。

pIYBAGBv-Y-AZu2aAAC8Piw8CeA434.png

基于車載網絡的嵌入式瀏覽器的模塊設計

網絡接口設計

網絡結構模塊分為兩部分,即互聯網絡接口與實時網絡接口。

互聯網絡接口主要負責互聯網絡接入功能。首先是通過網絡協議建立到服務器的連接,然后向服務器發送請求,服務器確認請求,并負責把瀏覽器請求的文件通過網絡協議傳送給瀏覽器。具體的過程如圖2所示。

o4YBAGBv-YmAHuZ9AAEFC3WLym0943.png

車載局域網絡接口主要實現瀏覽器對汽車實時信息的獲取。瀏覽器和汽車網絡節點通信的方式有兩種:應答式通信和被動式通信。

在應答式通信過程中,車載網絡嵌入式瀏覽器對節點發送獲取某項參數的請求,網絡節點根據請求以EXML消息的形式發送實時信息。瀏覽器收到信息后通過解析模塊解析,更新數據并刷新顯示。

在被動方式下,網絡節點按一定的時間周期發送包含實時信息的EXML消息,瀏覽器偵聽網絡節點發送來的信息。一旦有新消息傳來,瀏覽器就通知解析模塊更新數據,并刷新顯示。EXML消息的格式如下:

參數值

解析模塊的設計

文檔解析模塊是整個系統的基礎模塊。在基于車載網絡的嵌入式瀏覽器中,我們根據車載網絡的應用實踐將HTML語言進行擴展,形成了EXML語言。EXML語言是XML語言在車載網絡系統中的一個應用,所以對EXML語言的解析可以使用標準的XML語言解析技術。XML的解析方式又有兩種:基于事件驅動的解析方式(SAX方式)和基于樹的解析方式(DOM方式)。SAX技術在響應事件的同時對標記文本進行處理,并不保存中間數據結構。DOM解析方式采用的是基于樹的解析方式,并使用XML Schema驗證。這種方式在解析完XML文檔后生成一個文檔樹,應用程序可以遍歷、搜索、編輯該文檔樹。

在實際的車載網絡中,嵌入式瀏覽器不僅僅需要對靜態的超文本信息進行瀏覽,還需要把下層節點發來的數據進行實時處理、顯示和保存。這就需要在內存中保存一個完整的解析數據結構,以方便數據的實時更新和顯示。因此使用DOM解析技術更加符合車載網絡的應用要求。

在文檔解析中,遵循先外后內、標簽后屬性、先到先解析的順序。首先處理處于嵌套外層的標簽,然后處理標簽的屬性;對于同一層次的標簽,先解析前面的。通過一個標簽堆棧來獲得嵌套信息,對標簽的父標簽指針賦值。具體的解析算法如圖3所示。

o4YBAGBv-YOALy4qAACGfytU5FM717.png

布局模塊的設計

HTML語言在對標記的定義中包括兩類信息:數據信息和顯示信息,而在XML語言定義的標記語言文檔是對信息的結構化表示,并不包括顯示信息。在處理對XML語言的顯示中,可以使用CSS(Cascading Style Sheets)樣式單添加額外的顯示信息,或者通過xCBL將XML文檔轉換成HTML格式的文件,然后再交付給瀏覽器,由瀏覽器顯示轉換的結果。

EXML語言也不包括顯示信息,不能決定頁面元素的顯示位置。通過CSS和XML定義顯示的方式會照成瀏覽器的高資源占用。因此,在嵌入式瀏覽器中采用主題文件定義每個頁面元素的顯示位置。

頁面元素的布局分為動態布局和靜態布局兩種,因為HTML標記包含顯示數據,在解析HTML兼容標記時采用動態布局算法,通過標記的屬性和標記本身來決定布局。在對其他標簽布局時,根據顯示分辨率和使用習慣對元素的布局進行定義并儲存在主題文件中。瀏覽器在處理這些標簽的布局時,首先讀取主題文件獲得布局信息,然后根據標簽內容進行布局。

文檔布局模塊負責將經過解析器處理的標記語言文檔中元素在瀏覽器工作區中合適的位置顯示。頁面的布局分為以下3個步驟:

(1)獲取頁面元素。頁面元素以EXML文檔中標記的形式存儲,瀏覽器解析模塊通過對標記語言的解析,將標記中所包含的模塊化信息儲存在標簽數據結構中。布局模塊首先順次讀取標簽信息。

(2)調用標簽的布局函數。布局模塊通過綁定布局函數實現對布局函數的調用。綁定元素的布局函數是通過查找布局函數列表來實現的。布局函數列表是一張儲存標簽名字和對應標簽布局函數地址的二維表。布局模塊調用布局函數,將元素根據布局算法布局到虛擬的顯示數據結構中。如果標簽的名字不在標簽布局函數列表中,說明標簽屬于擴展標記,將通過擴展標記函數顯示。

(3)通過顯示窗口完成以布局標記的顯示。由于嵌入式應用中顯示屏的分辨率限制,有時候不能一次顯示所有的元素。布局模塊會根據顯示屏分辨率和頁面的大小決定顯示元素的數量。

交互界面的設計

交互界面也即瀏覽器界面模塊,主要負責瀏覽器的主框架顯示,提供標簽瀏覽、主題顯示,以及處理與用戶的交互。

針對不同的硬件平臺甚至相同硬件平臺不同尺寸的液晶屏,交互界面也要發生改變。可移植性和可配置性也是嵌入式瀏覽器所必需的。

為了適應不同的硬件環境特別是不同分辨率的屏幕,在基于車載網絡的嵌入式瀏覽器設計過程中使用多主題,以實現可移植和可配置。主題方法是指使用配置文件對可視化系統中實現用戶交互界面進行圖形效果配置的一種方式。基于車載網絡的嵌入式瀏覽器的主題是對可配置主題方法的擴展,利用主題文件不僅僅可以配置界面的顏色樣式、顯示模式,還可以根據不同屏幕的分辨率,方便地調整界面元素的大小和布局。

考慮到系統的可移植性、可配置性和系統的時間空間性能,基于車載網絡的嵌入式瀏覽器的圖形系統采用microwindows 嵌入式圖形系統。這是一個開放源碼嵌入式GUI軟件,目的是把現代圖形視窗環境引入到小型設備平臺上。

雙層消息機制的設計

由于車載網絡的復雜性,瀏覽器所要處理的信息不僅僅來源于互聯網絡,還可以來自底層網絡通過網關傳來的實時消息。來自互聯網的信息往往是靜態的,根據用戶的要求進行更新,而來自底層網絡的實時消息是動態的,對實時性要求很高。使用單層的消息循環機制會造成實時信息不能及時顯示,或者交互消息占用大量的系統資源,因此,在瀏覽器中采用雙層消息機制。

在雙層消息機制是通過消息分組來實現的。首先把消息分為實時消息和交互消息兩組,實時消息表示消息需要實時處理,交互消息表示非實時的交互消息。其中,實時消息按照不同的優先級排列成為一組,系統自動處理優先級較高的消息,延遲優先級較低的消息。交互消息組的消息不分優先級,系統在某一時刻首先檢查實時優先級組消息結構體數組是否有被占用的消息,如果有則選擇最高優先級消息進行響應,響應完畢清除實時消息占用標志。如果為空則轉入交互消息循環。具體消息循環算法示意性代碼如下所示:

Msgloop()

{

while (1){

if (msg_select_hmsg()==-1)

//沒有實時消息到來

{

GrSelectNextMSG();

//獲取交互消息隊列中的下個消息

switch()

//根據交互消息類型選擇消息處理函數

……。}

else

{

*(Rtmsg_msgarr[msg_select_ hmsg()].func)();

//選擇最高優先級實時消息進行響應。

}

}

雙層消息循環結構的實質是將交互消息組作為優先級最低的消息來處理。邏輯結構和具體消息響應如圖4所示。

o4YBAGBv-XyARYgxAACHPFhtbZ0282.png

圖4 實時消息優先級判斷流程圖

嵌入式瀏覽器在不同嵌入式硬件平臺上的應用像其他可移植軟件一樣,嵌入式瀏覽器的開發采用分層結構,根據不同的網絡環境預留了標準接口,并使用標準C語言編寫。因此,瀏覽器具可以很好地適應日益復雜的車載網絡環境。

只要提供對應操作系統的硬件驅動,就可以在不同的硬件平臺上使用。

表1是通過測試的嵌入式瀏覽器所支持的操作系統和編譯器列表。

o4YBAGBv-XeACA3RAACUbmuxHQc350.png

結語

基于車載網絡的嵌入式瀏覽器研發主要成果是設計和實現了一款面向多層汽車局域網絡,針對于車載網絡信息處理需要,使用XML為信息載體,可以同時顯示汽車內部實時信息和互聯網絡信息的專用嵌入式瀏覽器。該瀏覽器可以同時顯示汽車內部實時信息和互聯網絡信息,通用性好,能夠運行于不同的硬件平臺。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5106

    文章

    19288

    瀏覽量

    310208
  • 互聯網
    +關注

    關注

    54

    文章

    11202

    瀏覽量

    104402
  • 總線
    +關注

    關注

    10

    文章

    2914

    瀏覽量

    88713
收藏 人收藏

    評論

    相關推薦

    關于FPGA的can總線嵌入式設計

      本人FPGA菜鳥一名,想尋找關于FPGA的can總線嵌入設計資料。目前市面上大多數都是can總線嵌入
    發表于 02-06 12:24

    怎么實現基于車載網絡嵌入式瀏覽器的設計?

    怎么實現基于車載網絡嵌入式瀏覽器的設計?
    發表于 05-14 06:35

    基于Linux的嵌入式瀏覽器實現方法

    利于人們在日常生活中使用帶有嵌入式瀏覽器功能的小型電子設備即時實現上網功能.而且Linux操作系統是開源的操作系統,使用C語言編寫,具有良好的可移植性,所以嵌入式
    發表于 12-21 07:31

    基于嵌入式Linux圖片瀏覽器的設計與實現

    基于嵌入式Linux圖片瀏覽器的設計與實現PAGEPAGEII本科學生畢業論文(設計)題目(中 文):基于嵌入式Linux圖片瀏覽器的設計與
    發表于 12-21 06:27

    基于LINUX的嵌入式瀏覽器的設計與實現

    嵌入式瀏覽器可以廣泛應用于各種信息電器和便攜網絡終端中,在工業控制領域也有著非常廣闊的應用前景。本文提出了一種基于LINUX 的嵌入式瀏覽器
    發表于 01-07 14:50 ?28次下載

    嵌入式瀏覽器Konqueror的移植和漢化

    目前,嵌入式瀏覽器已經逐漸成為高端手機和PDA的標準置。Konqueror/embedded作為嵌入式Linux操作系統的首選瀏覽器得到了廣泛使用。但是由于該
    發表于 02-05 08:23 ?15次下載

    基于LINUX的嵌入式瀏覽器的設計與實現

    基于LINUX的嵌入式瀏覽器的設計與實現 隨著 Intemet普及率的迅猛增長,瀏覽器成為獲取信息的標準工具,并且已經為廣大 Intemet用戶所接受。與
    發表于 10-06 08:31 ?1094次閱讀
    基于LINUX的<b class='flag-5'>嵌入式</b><b class='flag-5'>瀏覽器</b>的設計與<b class='flag-5'>實現</b>

    一種WAP嵌入式瀏覽器的設計

    為解決傳統瀏覽器可移植性差、效率比較低的問題,設計出一種基于WAP的嵌入式瀏覽器。與傳統瀏覽器比較,該瀏覽器分為各個模塊同時去掉一些沒有用的
    發表于 09-29 15:55 ?1358次閱讀
    一種WAP<b class='flag-5'>嵌入式</b><b class='flag-5'>瀏覽器</b>的設計

    基于CAN總線嵌入式汽車儀表設計

    基于CAN總線嵌入式汽車儀表設計
    發表于 09-23 17:35 ?258次下載

    基于CAN總線嵌入式汽車儀表設計

    基于CAN總線嵌入式汽車儀表設計
    發表于 01-24 16:54 ?16次下載

    CAN總線嵌入式車燈監控系統設計

    CAN總線嵌入式車燈監控系統設計
    發表于 10-31 11:18 ?14次下載
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>的<b class='flag-5'>嵌入式</b>車燈監控系統設計

    LIN總線是什么?CAN/LIN總線的區別與結構

    花點時間看了一些關于LIN總線基礎的內容,把其中的關鍵點提取了出來,在這里分享給大家。在這里你可能要問“不都有CAN總線了嗎?這個LIN
    的頭像 發表于 03-17 17:51 ?2.8w次閱讀
    <b class='flag-5'>LIN</b><b class='flag-5'>總線</b>是什么?<b class='flag-5'>CAN</b>/<b class='flag-5'>LIN</b><b class='flag-5'>總線</b>的區別與結構

    什么是LIN總線車載總線LIN總線概述

    LIN(Local Interconnect Network)即局部連接網絡,也被稱為“局域網子系統”即LIN總線CAN總線網絡下的子系統
    發表于 07-26 10:12 ?1.7w次閱讀
    什么是<b class='flag-5'>LIN</b><b class='flag-5'>總線</b>?<b class='flag-5'>車載</b><b class='flag-5'>總線</b>之<b class='flag-5'>LIN</b><b class='flag-5'>總線</b>概述

    基于WAP的嵌入式瀏覽器設計

    電子發燒友網站提供《基于WAP的嵌入式瀏覽器設計.pdf》資料免費下載
    發表于 10-24 11:33 ?0次下載
    基于WAP的<b class='flag-5'>嵌入式</b><b class='flag-5'>瀏覽器</b>設計

    CAN總線LIN總線的區別

    隨著汽車電子系統的復雜性增加,車輛內部通信的需求也在不斷增長。CAN總線LIN總線作為兩種主要的車載通信協議,各自扮演著重要的角色。 1.
    的頭像 發表于 11-12 10:13 ?3488次閱讀
    主站蜘蛛池模板: 狠狠色狠狠色综合日日小说 | 国产在线播放精品视频 | 亚洲成 人a影院青久在线观看 | 一个人的视频全免费在线观看www | 最近的2019中文字幕国语版 | 国产成人免费片在线观看 | 999人在线精品播放视频 | 国产精品久久久久久日本 | 中文免费视频 | 亚洲 日韩 国产 中文视频 | 日韩高清在线亚洲专区 | 最新亚洲人成网站在线影院 | 欧美人与动交zOZ0 | 久青草国产在线视频亚瑟影视 | 成人欧美一区二区三区白人 | 日韩精品亚洲专区在线电影不卡 | 兔费看少妇性L交大片免费 偷偷要色偷偷 | 欧美精品3atv一区二区三区 | 亚洲国产成人久久精品影视 | 国产免费变态视频网址网站 | 亚洲日本天堂在线 | 欧美亚洲国产专区在线 | 91精品婷婷国产综合久久8 | 国产综合视频在线观看一区 | www黄色大片 | 亚洲福利区 | 成年人国产视频 | 国产高清砖码区 | 青青草狠狠干 | 国产曰韩无码亚洲视频 | 伊人天天躁夜夜躁狠狠 | 日本欧美久久久久免费播放网 | 吃奶啃奶玩乳漫画 | 亚洲 欧美 综合 高清 在线 | 国产看午夜精品理论片 | 无套内谢大学生A片 | 免费精品国产人妻国语麻豆 | 俄罗斯一级毛片aaaa | 十八禁肉动漫无修在线播放 | 国产小伙和50岁熟女23p | 免费中文字幕视频 |