[發明專利]一種基于單個CAN卡的多地址接收、發送方法有效
| 申請號: | 200810225452.4 | 申請日: | 2008-10-31 |
| 公開(公告)號: | CN101447904A | 公開(公告)日: | 2009-06-03 |
| 發明(設計)人: | 楊水麗;惠東;來小康 | 申請(專利權)人: | 中國電力科學研究院 |
| 主分類號: | H04L12/40 | 分類號: | H04L12/40;H04L29/06;G05B19/418 |
| 代理公司: | 北京安博達知識產權代理有限公司 | 代理人: | 徐國文 |
| 地址: | 100192北京市海淀區清河*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 單個 can 地址 接收 發送 方法 | ||
技術領域
本發明涉及計算機多任務處理領域,尤其是一種基于單個CAN卡的多地址接收、發送方法。
背景技術
目前的CAN卡收發協議,只提供單地址接收,一臺工控機要想實現多任務、多地址接收,就必須安裝、連接多個CAN卡,一則增加了工業成本,二則不利于靈活擴展應用,三則連接的CAN卡總數有限。
發明內容
本發明提出了一種基于單個CAN卡的多地址接收、發送方法,其特征在于:采用緩沖區存儲,先進先出的處理方式,使用單個CAN卡實現多地址、多任務收發的實現功能,其特征在于包括以下步驟:
(1)地址組的初始化
采用圖形化界面或配置文件的方式,協議獲得用戶所需的接收地址組參數,首先,采用軟件對參數進行合理化判別,返回錯誤信息,提高協議的可靠性,根據用戶提供的接收地址組,為每個地址開辟一個緩沖區,緩沖區的大小可由協議根據系統開銷缺省配置,也可根據合理的用戶參數設定大小,為了保證數據的可靠性和防止數值的二意性,協議采取對每一個緩沖區進行初始化的方式,徹底的杜絕系統隨機數值的干擾;
(2)CAN卡的底層接收,存入緩沖區
通過設置內部定時器,采用CAN卡最高頻率的兩倍為定時器的步長,每響應一次定時器事件,調用一次CAN卡驅動程序提供的底層函數,將所接收的數據根據不同的地址碼,存入不同的緩沖區,同時讓讀寫標志加一,緩沖區存儲采用循環使用原則,充分發揮最大的利用效率;
(3)上層接收函數調用,通過地址碼獲取對應的緩沖區數據
用戶根據其需要設置適當頻率的定時器,如果用戶頻率低于CAN卡的頻率,則協議返回告警信息,提示用戶采用此頻率可能造成丟包,并且每響應一次定時器事件,調用一次上層接收函數接口,按照不同的地址碼去取得對應緩沖區的數據,而后將該緩沖區清空,再將讀寫標志減一,如果讀取速度快于寫入速度,則緩沖區將被清空,此時返回數據標志FALSE,表示此次CAN卡沒有數據返回,反之,如果寫入速度快于讀取速度,那么緩沖區將不能及時讀取的數據保存起來,如果在某一段時間內,寫入速度一直快于讀取速度,那么,緩沖區將被寫滿,軟件將從時間軸上最遠的數據開始覆蓋,確保最新的數據能最及時的讀取。
并且本發明具有以下優點:提供了一種中層協議的方法,連接CAN卡和上層監控系統的多個任務,從而實現多地址、多任務同時通信的功能。其上層模塊具有實時性強、獨立性好、結構簡單易于實現等優點。
附圖說明
圖1是依據本發明的基于單個CAN卡的多地址接收、發送方法的多任務協議系統框圖;
圖2是依據本發明的基于單個CAN卡的多地址接收、發送方法的實現方案;
圖3是實驗室的PM1000模塊監控系統結構采用CAN初始協議的結構示意圖;
圖4是實驗室的PM1000模塊監控系統結構采用CAN卡的多任務協議的結構示意圖。
具體實施方式
為實現本發明的基于單個CAN卡的多地址接收、發送方法,其可分為三部分:
1、址組的初始化
根據用戶提供的接收地址組,為每個地址開辟一個緩沖區,并對每一個緩沖區進行初始化。
2、CAN卡的底層接收,存入緩沖區
通過設置內部定時器,按適當的頻率調用CAN卡驅動程序提供的底層函數,將所接收的數據根據不同的地址碼,存入不同的緩沖區,同時讓寫入標志加一,如果緩沖區已滿,則循環使用。
3、層接收函數調用,通過地址碼獲取對應的緩沖區數據
用戶根據其需要設置適當頻率的定時器,調用上層接收函數接口,按照不同的地址碼去取得對應緩沖區的數據,而后將該緩沖區清空,再將讀寫標志減一,如果緩沖區已讀空,則返回數據標志FALSE。
CAN卡多任務協議系統實現方案說明書參見附圖2所示。
以下是本發明方法的一個實施例,以某實驗室的PM1000模塊監控系統作實施例,進一步說明如下:
一實驗室的PM1000模塊監控系統結構,如果采用CAN初始協議,則結構如圖3所示。
如果采用CAN卡的多任務協議,則結構如圖4所示
對于已經固化的充電機工控模塊來說,修改發往其監控上層的CAN目的地址是很困難的,所以,對于多臺采用CAN協議的充電機,如果采用初始的CAN協議,那么監控系統將必須采用三個CAN卡,一則增加了工業成本,二則不利于靈活擴展應用,三則連接的CAN卡總數有限。通過直觀的對比,顯然采用CAN卡的多任務協議的系統(圖B)更具有工業成本優勢和系統靈活性。
已經根據優選的實施例描述了本發明。顯然,在閱讀和理解了上述詳細說明書后能做出多種修正和替換。本發明意欲的是本申請構建成包括了落入附屬的權利要求書或其等同物的范圍之內的所有這些修正和替換。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國電力科學研究院,未經中國電力科學研究院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810225452.4/2.html,轉載請聲明來源鉆瓜專利網。





