前幾天來自北京某公司的計(jì)工使用我們的GCAN-205模塊時(shí)遇到了一個(gè)問題。
計(jì)工:“楊工,我在使用GCAN-205模塊周期發(fā)送CAN數(shù)據(jù)時(shí)遇到了這樣一個(gè)問題,當(dāng)我使用USBCAN分析儀測(cè)試這個(gè)模塊的時(shí)候,將模塊上電后,USBCAN分析儀可以正常接收到模塊發(fā)出的報(bào)文,但是還有些時(shí)候插上USBCAN分析儀只能收到幾幀數(shù)據(jù)之后就再也收不到數(shù)據(jù)了,這時(shí)我如果對(duì)GCAN-205重新上電,就又能正常的收到數(shù)據(jù)了。我還特意把數(shù)據(jù)保存下來了,麻煩你幫我看一下。”
一般出現(xiàn)通訊問題都是需要先檢查接線、終端電阻和波特率是否一致,但根據(jù)計(jì)工的描述來看,他遇到的問題不是由這三個(gè)問題引起的,因此我仔細(xì)的詢問了計(jì)工到底是如何操作才會(huì)出現(xiàn)這種收不到數(shù)據(jù)的現(xiàn)象,得到的結(jié)果是:在總線上只有USBCAN分析儀和GCAN-205模塊時(shí),并且只有在反復(fù)重啟USBCAN分析儀的軟件時(shí)或是模塊先上電再插入U(xiǎn)SBCAN分析儀時(shí)才會(huì)出現(xiàn)這種問題。
現(xiàn)象分析
基于計(jì)工的以上操作和現(xiàn)象,我們基本可以判斷出導(dǎo)致這種現(xiàn)象的原因是在USBCAN分析儀關(guān)閉軟件期間或沒有接入GCAN-205模塊時(shí),總線上只有GCAN-205模塊一個(gè)節(jié)點(diǎn),當(dāng)它發(fā)送數(shù)據(jù)時(shí)沒有其他節(jié)點(diǎn)與他應(yīng)答,導(dǎo)致GCAN-205模塊發(fā)送錯(cuò)誤,最終總線關(guān)閉,而在總線關(guān)閉的時(shí)候,再接入U(xiǎn)SBCAN分析儀就沒法接收到數(shù)據(jù)了。找到產(chǎn)生問題的原因后我們讓計(jì)工將這兩個(gè)設(shè)備接入到實(shí)際的CAN總線系統(tǒng)中就可以了。
楊工總結(jié)
最后楊工在這里要提醒一下廣大用戶:CAN總線物理層有一個(gè)保護(hù)機(jī)制,當(dāng)一個(gè)設(shè)備向總線上發(fā)送數(shù)據(jù)而沒有其他設(shè)備應(yīng)答的時(shí)候發(fā)送失敗的設(shè)備會(huì)提示主動(dòng)錯(cuò)誤,同時(shí)錯(cuò)誤計(jì)數(shù)會(huì)增加。當(dāng)錯(cuò)誤計(jì)數(shù)增長(zhǎng)到一定數(shù)量的時(shí)候發(fā)送失敗的設(shè)備就會(huì)主動(dòng)關(guān)閉CAN總線,此時(shí)將不再向總線上發(fā)送數(shù)據(jù)了。進(jìn)入總線關(guān)閉狀態(tài)的設(shè)備只能通過復(fù)位或重新啟動(dòng)的方式才能讓設(shè)備恢復(fù)正產(chǎn)通信模式。
-
CAN
+關(guān)注
關(guān)注
57文章
2920瀏覽量
467788 -
總線
+關(guān)注
關(guān)注
10文章
2959瀏覽量
89752
原文標(biāo)題:CAN通信收不到數(shù)據(jù)現(xiàn)象解讀
文章出處:【微信號(hào):gccanzx,微信公眾號(hào):廣成工控】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
為什么STM32F0 modbus在解析中接收不到任何數(shù)據(jù)?
SPI通信問題——芯片接收不到數(shù)據(jù),是什么原因?
labview與松下PLC通信不上PLC接收不到數(shù)據(jù)。
使用GATT_Notification發(fā)送數(shù)據(jù),但APP收不到。
CUBEMX HAL庫經(jīng)常接收不到數(shù)據(jù)
GSM模塊透?jìng)髂J较陆?b class='flag-5'>收不到數(shù)據(jù)
用GPRS的UDP協(xié)議跟服務(wù)器通信時(shí)服務(wù)器發(fā)送的數(shù)據(jù)收不到
藍(lán)牙串口通信收不到數(shù)據(jù)
LABVIEW程序接收不到周立功CAN卡的CAN消息
網(wǎng)關(guān)發(fā)送數(shù)據(jù),終端收不到
使用awr1642試驗(yàn)lab0003,在使用can想進(jìn)行數(shù)據(jù)接收查看時(shí),收不到任何數(shù)據(jù),為什么?
用CAN總線分析儀接收調(diào)試板發(fā)出的數(shù)據(jù)時(shí)接收不到怎么解決?
STM32F10X系列Cubemx庫CAN2接收不到數(shù)據(jù)問題

評(píng)論