基于新型can幀進行通信的方法、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實施例涉及通信技術(shù),尤其涉及一種總線中的數(shù)據(jù)通訊方法、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]控制器局域網(wǎng)絡(luò)(Controller Area Network,簡稱:CAN)是標(biāo)準(zhǔn)化的串行通信總線協(xié)議,其最高物理層(Physical layer,簡稱:PHY)速率為IMbps/s。靈活數(shù)據(jù)速率的CAN (CAN with Flexible Data rate,簡稱:CAN_FD)通過對CAN的PHY的速率提升實現(xiàn)IMbps/s以上的總線通訊速率。
[0003]但是CAN-FD節(jié)點與現(xiàn)有的CAN 2.0節(jié)點共同工作時,CAN 2.0節(jié)點在處理CAN-FD節(jié)點的數(shù)據(jù)時會出現(xiàn)數(shù)據(jù)填充錯誤、循環(huán)冗余校驗碼(Cyclic Redundancy Check,簡稱:CRC)校驗錯誤,導(dǎo)致CAN 2.0節(jié)點中斷當(dāng)前CAN通訊,因此,CAN-FD不能與現(xiàn)有的CAN總線方式兼容。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例提供一種總線中的數(shù)據(jù)通訊方法、裝置及系統(tǒng),以實現(xiàn)第一總線方式的節(jié)點在提升PHY的速率的同時兼容現(xiàn)有的總線方式,解決兩種總線方式共存時會出現(xiàn)數(shù)據(jù)填充錯誤、CRC校驗錯誤,導(dǎo)致CAN 2.0節(jié)點中斷當(dāng)前CAN通訊的問題。
[0005]第一方面,本發(fā)明實施例提供一種總線中的數(shù)據(jù)通訊方法,所述方法適用于包括至少一個第一總線方式的節(jié)點和至少一個第二總線方式的節(jié)點的控制器局域網(wǎng)絡(luò)CAN,所述方法包括:
[0006]節(jié)點根據(jù)預(yù)設(shè)總線幀確定數(shù)據(jù)通訊的總線方式,所述預(yù)設(shè)總線幀的幀格式包括第一幀格式和第二幀格式,所述第一幀格式與所述第一總線方式對應(yīng),所述第二幀格式與所述第二總線方式對應(yīng),所述預(yù)設(shè)總線幀包括身份標(biāo)識,所述身份標(biāo)識中有預(yù)設(shè)個數(shù)個比特位用于標(biāo)識所述幀格式;
[0007]所述節(jié)點采用與確定的所述數(shù)據(jù)通訊的總線方式對應(yīng)的幀格式進行通訊。
[0008]結(jié)合第一方面,在第一方面的第一種可能的實現(xiàn)方式中,所述節(jié)點為主節(jié)點;
[0009]所述節(jié)點根據(jù)預(yù)設(shè)總線幀確定數(shù)據(jù)通訊的總線方式,包括:
[0010]所述節(jié)點在預(yù)設(shè)輪詢時間到達的時刻,根據(jù)所述預(yù)設(shè)總線幀確定所述數(shù)據(jù)通訊的總線方式;
[0011]所述節(jié)點采用與所述數(shù)據(jù)通訊的總線方式對應(yīng)的幀格式進行通訊,包括:
[0012]所述節(jié)點在所述預(yù)設(shè)輪詢時間未到達的時刻,采用與所述數(shù)據(jù)通訊的總線方式對應(yīng)的幀格式進行通訊。
[0013]結(jié)合第一方面的第一種可能的實現(xiàn)方式,在第一方面的第二種可能的實現(xiàn)方式中,所述節(jié)點為所述第一總線方式的節(jié)點;
[0014]所述節(jié)點在預(yù)設(shè)輪詢時間到達的時刻,根據(jù)所述預(yù)設(shè)總線幀確定所述數(shù)據(jù)通訊的總線方式,包括:
[0015]所述節(jié)點在所述預(yù)設(shè)輪詢時間到達的時刻,采用所述第一幀格式的所述預(yù)設(shè)總線幀對所有其他節(jié)點進行輪詢;
[0016]所述節(jié)點接收第一信息應(yīng)答,所述第一信息應(yīng)答為所述第一幀格式;
[0017]所述節(jié)點根據(jù)所述第一信息應(yīng)答獲取發(fā)送所述第一信息應(yīng)答的節(jié)點的所述身份標(biāo)識,并將所述發(fā)送所述第一信息應(yīng)答的節(jié)點確定為所述第一總線方式的節(jié)點,確定采用所述第一總線方式與所述第一總線方式的節(jié)點進行通訊;
[0018]所述節(jié)點在所述預(yù)設(shè)輪詢時間到達的時刻,采用所述第二幀格式的所述預(yù)設(shè)總線幀對除所述確定為所述第一總線方式的節(jié)點外的其他節(jié)點進行輪詢;
[0019]所述節(jié)點接收第二信息應(yīng)答,所述第二信息應(yīng)答為所述第二幀格式;
[0020]所述節(jié)點根據(jù)所述第二信息應(yīng)答獲取發(fā)送所述第二信息應(yīng)答的節(jié)點的所述身份標(biāo)識,并將所述發(fā)送所述第二信息應(yīng)答的節(jié)點確定為所述第二總線方式的節(jié)點,確定采用所述第二總線方式與所述第二總線方式的節(jié)點進行通訊。
[0021]結(jié)合第一方面的第二種可能的實現(xiàn)方式,在第一方面的第三種可能的實現(xiàn)方式中,所述節(jié)點在所述預(yù)設(shè)輪詢時間未到達的時刻,采用與所述數(shù)據(jù)通訊的總線方式對應(yīng)的幀格式進行通訊,包括:
[0022]所述節(jié)點在所述預(yù)設(shè)輪詢時間未到達的時刻,通過所述第一幀格式以所述第一總線方式與所述第一總線方式的節(jié)點進行通訊;和/或,
[0023]所述節(jié)點在所述預(yù)設(shè)輪詢時間未到達的時刻,通過所述第二幀格式以所述第二總線方式與所述第二總線方式的節(jié)點進行通訊。
[0024]結(jié)合第一方面的第一種可能的實現(xiàn)方式,在第一方面的第四種可能的實現(xiàn)方式中,所述節(jié)點為所述第二總線方式的節(jié)點;
[0025]所述節(jié)點在預(yù)設(shè)輪詢時間到達的時刻,根據(jù)所述預(yù)設(shè)總線幀確定所述數(shù)據(jù)通訊的總線方式,包括:
[0026]所述節(jié)點在所述預(yù)設(shè)輪詢時間到達的時刻,采用所述第二幀格式的所述預(yù)設(shè)總線幀對所有其他節(jié)點進行輪詢;
[0027]所述節(jié)點接收第三信息應(yīng)答,所述第三信息應(yīng)答為所述第二幀格式;
[0028]所述節(jié)點根據(jù)所述第三信息應(yīng)答獲取發(fā)送所述第三信息應(yīng)答的節(jié)點的所述身份標(biāo)識,并將所述發(fā)送所述第三信息應(yīng)答的節(jié)點確定為所述第二總線方式的節(jié)點,確定采用所述第二總線方式與所述第二總線方式的節(jié)點進行通訊。
[0029]結(jié)合第一方面的第四種可能的實現(xiàn)方式,在第一方面的第五種可能的實現(xiàn)方式中,所述節(jié)點在所述預(yù)設(shè)輪詢時間未到達的時刻,采用與所述數(shù)據(jù)通訊的總線方式對應(yīng)的幀格式進行通訊,包括:
[0030]所述節(jié)點在所述預(yù)設(shè)輪詢時間未到達的時刻,通過所述第二幀格式以所述第二總線方式與所述第二總線方式的節(jié)點進行通訊。
[0031]結(jié)合第一方面的第一種至第五種中任一種可能的實現(xiàn)方式,在第一方面的第六種可能的實現(xiàn)方式中,所述節(jié)點根據(jù)預(yù)設(shè)總線幀確定數(shù)據(jù)通訊的總線方式之前,還包括:
[0032]所述節(jié)點啟動輪詢?nèi)蝿?wù),并周期判斷所述預(yù)設(shè)輪詢時間是否到達。
[0033]結(jié)合第一方面,在第一方面的第七種可能的實現(xiàn)方式中,所述節(jié)點為從節(jié)點;
[0034]所述節(jié)點根據(jù)預(yù)設(shè)總線幀確定數(shù)據(jù)通訊的總線方式,包括:
[0035]所述節(jié)點主動向主節(jié)點發(fā)起握手通訊,根據(jù)所述預(yù)設(shè)總線幀確定所述數(shù)據(jù)通訊的總線方式。
[0036]結(jié)合第一方面的第七種可能的實現(xiàn)方式,在第一方面的第八種可能的實現(xiàn)方式中,所述節(jié)點為所述第一總線方式的節(jié)點;
[0037]所述節(jié)點主動向主節(jié)點發(fā)起握手通訊,根據(jù)所述預(yù)設(shè)總線幀確定所述數(shù)據(jù)通訊的總線方式,包括:
[0038]所述節(jié)點向所述主節(jié)點發(fā)送所述第一幀格式的所述預(yù)設(shè)總線幀;
[0039]所述節(jié)點接收所述主節(jié)點發(fā)送的第四信息應(yīng)答,且所述第四信息應(yīng)答為所述第一幀格式;
[0040]所述節(jié)點確定所述主節(jié)點為所述第一總線方式的節(jié)點,并采用所述第一總線方式與所述主節(jié)點進行通訊。
[0041]結(jié)合第一方面的第七種可能的實現(xiàn)方式,在第一方面的第九種可能的實現(xiàn)方式中,所述節(jié)點為所述第一總線方式的節(jié)點;
[0042]所述節(jié)點主動向主節(jié)點發(fā)起握手通訊,根據(jù)所述預(yù)設(shè)總線幀確定所述數(shù)據(jù)通訊的總線方式,包括:
[0043]所述節(jié)點向所述主節(jié)點發(fā)送所述第一幀格式的所述預(yù)設(shè)總線幀;
[0044]所述節(jié)點在預(yù)設(shè)超時之后還沒有接收到所述主節(jié)點發(fā)送的所述第四信息應(yīng)答,則所述節(jié)點確定所述主節(jié)點為所述第二總線方式的節(jié)點,并向所述主節(jié)點發(fā)送所述第二幀格式的所述預(yù)設(shè)總線幀;
[0045]所述節(jié)點接收所述主節(jié)點發(fā)送的第五信息應(yīng)答,且所述第五信息應(yīng)答為所述第二幀格式;
[0046]所述節(jié)點確定采用所述第二總線方式與所述主節(jié)點進行通訊。
[0047]結(jié)合第一方面的第七種可能的實現(xiàn)方式,在第一方面的第十種可能的實現(xiàn)方式中,所述節(jié)點為所述第二總線方式的節(jié)點;
[0048]所述節(jié)點主動向主節(jié)點發(fā)起握手通訊,根據(jù)所述預(yù)設(shè)總線幀確定所述數(shù)據(jù)通訊的總線方式,包括:
[0049]所述節(jié)點向所述主節(jié)點發(fā)送所述第二幀格式的所述預(yù)設(shè)總線幀;
[0050]所述節(jié)點接收所述主節(jié)點發(fā)送的第六信息應(yīng)答,且所述第六信息應(yīng)答為所述第二幀格式,所述主節(jié)點包括所述第一總線方式的節(jié)點和所述第二總線方式的節(jié)點;
[0051]所述節(jié)點確定采用所述第二總線方式與所述主節(jié)點進行通訊。
[0052]第二方面,本發(fā)明實施例提供一種控制器局域網(wǎng)絡(luò)CAN節(jié)點,即基于新型CAN幀進行通信的CAN設(shè)備,所述CAN包括至少一個第一總線方式的節(jié)點和至少一個第二總線方式的節(jié)點,所述節(jié)點包括:
[0053]確定模塊,用于根據(jù)預(yù)設(shè)總線幀確定數(shù)據(jù)通訊的總線方式,所述預(yù)設(shè)總線幀的幀格式包括第一幀格式和第二幀格式,所述第一幀格式與所述第一總線方式對應(yīng),所述第二幀格式與所述第二總線方式對應(yīng),所述預(yù)設(shè)總線幀包括身份標(biāo)識,所述身份標(biāo)識中有預(yù)設(shè)個數(shù)個比特位用于標(biāo)識所述幀格式;
[0054]通訊模塊,用于采用與確定的所述數(shù)據(jù)通訊的總線方式對應(yīng)的幀格式進行通訊。
[0055]結(jié)合第二方面,在第二方面的第一種可能的實現(xiàn)方式中,所述節(jié)點為主節(jié)點;
[0056]所述確定模塊,具體用于在預(yù)設(shè)輪詢時間到達的時刻,根據(jù)所述預(yù)設(shè)總線幀確定所述數(shù)據(jù)通訊的總線方式;
[0057]所述通訊模塊,具體用于在所述預(yù)設(shè)輪詢時間未到達的時刻,采用與所述數(shù)據(jù)通訊的總線方式對應(yīng)的幀格式進行通訊。
[0058]結(jié)合第二方面的第一種可能的實現(xiàn)方式,在第二方面的第二種可能的實現(xiàn)方式中,所述節(jié)點為所述第一總線方式的節(jié)點;
[0059]所述確定模塊,具體用于在所述預(yù)設(shè)輪詢時間到達的時刻,采用所述第一幀格式的所述預(yù)設(shè)總線幀對所有其他節(jié)點進行輪詢;接收第一信息應(yīng)答,所述第一信息應(yīng)答為所述第一幀格式;根據(jù)所述第一信息應(yīng)答獲取發(fā)送所述第一信息應(yīng)答的節(jié)點的所述身份標(biāo)識,并將所述發(fā)送所述第一信息應(yīng)答的節(jié)點確定為所述第一總線方式的節(jié)點,確定采用所述第一總線方式與所述第一總線方式的節(jié)點進行通訊;在所述預(yù)設(shè)輪詢時間到達的時刻,采用所述第二幀格式的所述預(yù)設(shè)總線幀對除所述確定為所述第一總線方式的節(jié)點外的其他節(jié)點進行輪詢;接收第二信息應(yīng)答,所述第二信息應(yīng)答為所述第二幀格式