[發明專利]一種CAN信號封裝、解析方法及裝置在審
| 申請號: | 201810124346.0 | 申請日: | 2018-02-07 |
| 公開(公告)號: | CN108471401A | 公開(公告)日: | 2018-08-31 |
| 發明(設計)人: | 馬建輝;王知學;慕永云;胡代榮 | 申請(專利權)人: | 山東省科學院自動化研究所 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L12/40 |
| 代理公司: | 濟南圣達知識產權代理有限公司 37221 | 代理人: | 張勇 |
| 地址: | 250014 山*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數組變量 結構體 信號組 封裝 解析 報文數據 地址空間 報文 聯合體 報文數據發送 報文緩沖區 發送寄存器 方法和裝置 讀取信號 發送報文 接收報文 解析報文 名稱查找 軟件設計 信號變量 信號封裝 信號解析 體變量 位操作 組結構 寫入 | ||
本發明公開了一種CAN信號封裝、解析方法和裝置,需要發送報文進行信號封裝時,將需賦值的CAN信號直接對信號組結構體變量進行賦值;同時與報文聯合體變量中的信號組結構體變量位于相同地址空間的數組變量發生相同改變;將數組變量中的報文數據發送至CAN控制器的發送寄存器,完成CAN信號封裝。當接收報文進行信號解析時,根據待解析報文的名稱查找報文緩沖區對應的報文數據;將報文數據寫入報文聯合體變量的數組變量中,同時與數組變量位于相同地址空間的信號組結構體變量發生相同改變;讀取信號組結構體變量中的信號變量,完成CAN信號解析。本發明避免了大量的位操作,CAN節點軟件設計更加簡潔高效。
技術領域
本發明屬于現場總線信號處理的技術領域,尤其是涉及一種CAN信號封裝、解析方法和裝置。
背景技術
CAN總線是國際上應用最廣泛的現場總線之一,廣泛應用于工業控制、樓宇自動化、汽車、船舶等領域。在CAN節點的軟件開發中,底層通信完成CAN報文的發送和接收,上層應用根據網絡矩陣表的定義,從接收到的CAN報文中提取解析相應的CAN信號,并實現對CAN信號的賦值,將多個CAN信號封裝到相應的發送報文中。
對底層通信而言,CAN節點有報文發送者和報文接收者兩種角色。作為接收者,CAN節點接收到總線上的報文后,CAN控制器將接收到的報文數據存放在字節形式的接收寄存器中,作為發送者,CAN節點啟動報文發送前需要把報文數據寫入CAN控制器中字節形式的發送寄存器中。接收寄存器和發送寄存器均為字節形式,接收報文和待發送報文的數據均為字節數組形式。
對上層應用而言,CAN總線系統設計者以網絡矩陣表的形式定義了各個CAN信號在報文中的位置、長度、起始位置和取值范圍。CAN信號一般是位形式,從字節數組形式的接收報文中提取解析位形式的CAN信號,以及賦值CAN信號并封裝成字節數組形式的發送報文是上層應用一個非常重要的工作。
傳統的CAN信號讀取和賦值方法以報文字節數組為操作對象,讀取某個CAN信號或者對某個CAN信號賦值時,需要對報文字節數組中的某個字節進行位操作。根據具體應用不同,一個CAN節點需要讀取和賦值的CAN信號可能多達數十個甚至上百個,這種位操作方式使得提取解析CAN信號和賦值封裝CAN信號成為了一個非常繁重而且容易出錯的工作。而且,隨著CAN節點功能的升級,一旦網絡矩陣表發生改變,CAN信號的位置或長度或起始位置發生了變化,CAN信號對應的讀取和賦值操作也會隨之發生變化,這時需要對程序中所有涉及到該報文該信號的位操作進行修改。
綜上所述,現有技術中如何方便、快捷地進行提取解析CAN信號和賦值封裝CAN信號的問題,尚缺乏行之有效的解決方案。
發明內容
針對現有技術中存在的不足,解決現有技術中如何方便、快捷地進行提取解析CAN信號和賦值封裝CAN信號的問題,本發明提出了一種CAN信號封裝、解析方法和裝置,有效避免了現有技術中在提取解析CAN信號、賦值封裝CAN信號或網絡矩陣表發生改變時對CAN信號大量的位操作,以方便快捷地解析和封裝CAN信號。
本發明的第一目的是提供一種CAN信號封裝方法。
為了實現上述目的,本發明采用如下一種技術方案:
一種CAN信號封裝方法,該方法包括:
將需賦值的CAN信號直接對信號組結構體變量進行賦值;同時與報文聯合體變量中的信號組結構體變量位于相同地址空間的數組變量發生相同改變;
將數組變量中的報文數據發送至CAN控制器的發送寄存器,完成CAN信號封裝;
所述報文聯合體變量為預先定義的與報文數據長度一致的聯合體類型,包括數組變量和信號組結構體變量;所述信號組結構體變量為預先定義的與報文數據長度一致的信號組結構體類型,包括信號變量和占位符變量,所述信號變量的名稱、長度、在信號組結構體中的位置分別與網絡矩陣表中CAN信號的名稱、長度、在報文中的位置一致。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于山東省科學院自動化研究所,未經山東省科學院自動化研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810124346.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:鑒權方法、裝置及系統
- 下一篇:基于接頭暗號匿名的物聯網身份認證方法





