在擴(kuò)展CAN數(shù)據(jù)幀中,緊隨SOF位的是32位的仲裁字段
掃描二維碼
隨時隨地手機(jī)看文章
我知道,我對與電子有關(guān)的所有事情都很著迷,但不論從哪個角度看,今天的現(xiàn)場可編程門陣列(FPGA),都顯得“鶴立雞群”,真是非常棒的器件。如果在這個智能時代,在這個領(lǐng)域,想擁有一技之長的你還沒有關(guān)注FPGA,那么世界將拋棄你,時代將拋棄你。本公眾號作者ALIFPGA,多年FPGA開發(fā)經(jīng)驗(yàn),所有文章皆為多年學(xué)習(xí)和工作經(jīng)驗(yàn)之總結(jié)。
在擴(kuò)展CAN 數(shù)據(jù)幀中,緊隨SOF 位的是32 位的仲裁字段。仲裁字段的前11 位為29 位標(biāo)識符的最高有效位(Most Significant bit,MSb)(基本lD) 。緊隨這11 位的是替代遠(yuǎn)程請求(Substitute Remote Request, SRR)位,定義為隱性狀態(tài)。SRR位之后是lDE 位,該位為隱性狀態(tài)時表示這是擴(kuò)展的CAN 幀。
應(yīng)該注意的是,如果發(fā)送完擴(kuò)展幀標(biāo)識符的前11 位后,總線仲裁無果,而此時其中一個等待仲裁的節(jié)點(diǎn)發(fā)出標(biāo)準(zhǔn)CAN 數(shù)據(jù)幀(11 位標(biāo)識符),那么,由于節(jié)點(diǎn)發(fā)出了顯性lDE 位而使標(biāo)準(zhǔn)CAN 幀贏得總線仲裁。另外,擴(kuò)展CAN 幀的
SRR 位應(yīng)為隱性,以允許正在發(fā)送標(biāo)準(zhǔn)CAN 遠(yuǎn)程幀的節(jié)點(diǎn)發(fā)出顯性RTR 位。SRR和lDE位之后是標(biāo)識符的其余18位(擴(kuò)展lD)及一個遠(yuǎn)程發(fā)送請求位。
為使標(biāo)準(zhǔn)幀和擴(kuò)展幀都能在共享網(wǎng)絡(luò)上發(fā)送,應(yīng)將29位擴(kuò)展報文標(biāo)識符拆成高11 位和低18 位兩部分。拆分后可確保lDE 位在標(biāo)準(zhǔn)數(shù)據(jù)幀和擴(kuò)展數(shù)據(jù)幀中的位置保持一致。仲裁字段之后是6 位控制字段??刂谱侄吻皟晌粸楸A粑?,必須定義為顯性位。其余4 位為DLC,用來指定報文中包含的數(shù)據(jù)字節(jié)數(shù)。擴(kuò)展數(shù)據(jù)幀的其他部分(數(shù)據(jù)字段、CRC 字段、確認(rèn)字段、幀結(jié)尾和間斷)與標(biāo)準(zhǔn)數(shù)據(jù)幀的結(jié)構(gòu)相同(見“標(biāo)準(zhǔn)數(shù)據(jù)幀”)。
數(shù)據(jù)幀部分
CRC校驗(yàn)及幀結(jié)束部分