[發(fā)明專利]一種CAN總線上電錯誤幀處理方法在審
| 申請?zhí)枺?/td> | 202010063020.9 | 申請日: | 2020-01-19 |
| 公開(公告)號: | CN111273636A | 公開(公告)日: | 2020-06-12 |
| 發(fā)明(設(shè)計)人: | 吳旭亮;向兵 | 申請(專利權(quán))人: | 湖北三江航天紅峰控制有限公司 |
| 主分類號: | G05B23/02 | 分類號: | G05B23/02 |
| 代理公司: | 武漢東喻專利代理事務(wù)所(普通合伙) 42224 | 代理人: | 雷霄 |
| 地址: | 432000*** | 國省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 can 線上 錯誤 處理 方法 | ||
本發(fā)明公開了一種CAN總線上電錯誤幀處理方法,所述CAN總線包括多個節(jié)點(diǎn),所述節(jié)點(diǎn)包括主控制器和CAN控制器,所述CAN控制器包括用于記錄總線狀態(tài)的總線狀態(tài)寄存器,所述方法包括:S1,所述CAN控制器檢測到所述總線狀態(tài)寄存器記錄總線狀態(tài)為總線關(guān)閉狀態(tài)后,所述CAN控制器發(fā)生中斷信號;S2,所述主控制器檢測到中斷信號后,向所述CAN控制器發(fā)出硬件復(fù)位信號脈沖,控制所述CAN控制器進(jìn)行硬件復(fù)位及初始化;S3,所述CAN控制器完成硬件復(fù)位及初始化后,若所述主控制器仍然檢測到中斷信號,則執(zhí)行步驟S2。本發(fā)明可以提高多節(jié)點(diǎn)CAN總線可靠性。
技術(shù)領(lǐng)域
本發(fā)明屬于嵌入式控制技術(shù)領(lǐng)域,更具體地,涉及一種CAN總線上電錯誤幀處理方法。
背景技術(shù)
CAN總線具有自動檢測總線錯誤狀態(tài)機(jī)制,基于錯誤計數(shù)器的值,每個CAN控制器能夠在三種錯誤狀態(tài)之一中工作,錯誤激活、錯誤認(rèn)可或總線關(guān)閉。如果錯誤計數(shù)器的值都在0~127之間,CAN控制器是錯誤激活的,此時產(chǎn)生錯誤激活標(biāo)志6個顯性位。如果一個錯誤計數(shù)器的值在128~255之間,CAN控制器是錯誤認(rèn)可的,此時,在檢測到錯誤前產(chǎn)生認(rèn)可錯誤標(biāo)志6個隱性位。如果發(fā)送錯誤計數(shù)器的值高于255,則到達(dá)總線關(guān)閉狀態(tài)。當(dāng)CAN總線控制系統(tǒng)上某一節(jié)點(diǎn)進(jìn)入總線關(guān)閉狀態(tài)時,會導(dǎo)致該節(jié)點(diǎn)自動關(guān)閉,進(jìn)而無法正常工作。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)的至少一個缺陷或改進(jìn)需求,本發(fā)明提供了一種CAN總線上電錯誤幀處理方法,可以提高多節(jié)點(diǎn)CAN總線可靠性。
為實(shí)現(xiàn)上述目的,按照本發(fā)明的一個方面,提供了一種CAN總線上電錯誤幀處理方法,所述CAN總線包括多個節(jié)點(diǎn),所述節(jié)點(diǎn)包括主控制器和CAN控制器,所述CAN控制器包括用于記錄總線狀態(tài)的總線狀態(tài)寄存器,所述方法包括:
S1,所述CAN控制器檢測到所述總線狀態(tài)寄存器記錄總線狀態(tài)為總線關(guān)閉狀態(tài)后,所述CAN控制器發(fā)生中斷信號;
S2,所述主控制器檢測到中斷信號后,向所述CAN控制器發(fā)出硬件復(fù)位信號脈沖,控制所述CAN控制器進(jìn)行硬件復(fù)位及初始化;
S3,所述CAN控制器完成硬件復(fù)位及初始化后,若所述主控制器仍然檢測到中斷信號,則再次執(zhí)行步驟S2。
優(yōu)選地,在執(zhí)行步驟S2時進(jìn)行計數(shù),每執(zhí)行一次步驟S2,則計數(shù)加一,當(dāng)計數(shù)大于預(yù)定閾值時,則提示發(fā)生CAN總線節(jié)點(diǎn)關(guān)閉錯誤。
優(yōu)選地,所述主控制器為MCU、DSP或FPGA。
優(yōu)選地,所述總CAN控制器包括錯誤計數(shù)器,用于記錄所述CAN控制器錯誤次數(shù);
當(dāng)所述CAN控制器錯誤次數(shù)為0~127,則所述總線狀態(tài)寄存器記錄總線狀態(tài)為錯誤激活狀態(tài);
當(dāng)所述CAN控制器錯誤次數(shù)為128~255,則所述總線狀態(tài)寄存器記錄總線狀態(tài)為錯誤認(rèn)可狀態(tài);
當(dāng)所述CAN控制器錯誤次數(shù)大于255,則所述總線狀態(tài)寄存器記錄總線狀態(tài)為總線關(guān)閉狀態(tài)。
優(yōu)選地,所述CAN控制器完成硬件復(fù)位及初始化后,等待預(yù)設(shè)時間再進(jìn)行中斷信號的檢測。
總體而言,通過本發(fā)明所構(gòu)思的以上技術(shù)方案與現(xiàn)有技術(shù)相比,具有有益效果:可以在某一節(jié)點(diǎn)進(jìn)入總線關(guān)閉狀態(tài)時進(jìn)行節(jié)點(diǎn)自動恢復(fù),提高多節(jié)點(diǎn)CAN總線控制系統(tǒng)工作可靠性。
附圖說明
圖1是本發(fā)明實(shí)施例提供的一種CAN總線上電錯誤幀處理方法流程圖。
具體實(shí)施方式
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于湖北三江航天紅峰控制有限公司,未經(jīng)湖北三江航天紅峰控制有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010063020.9/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





