CAN总线技术 | 数据链路层03 - CAN总线竞争与仲裁机制
文章目錄
- 一、前言
- 二、CAN總線非破壞性仲裁機(jī)制
- 三、非破壞性仲裁機(jī)制的前提
- 四、仲裁的實(shí)現(xiàn)
一、前言
CAN總線厲害的其中一個(gè)原因是CAN總線靈活且強(qiáng)大的競(jìng)爭(zhēng)與仲裁機(jī)制。
二、CAN總線非破壞性仲裁機(jī)制
當(dāng)CAN節(jié)點(diǎn)發(fā)送競(jìng)爭(zhēng)失敗時(shí),計(jì)劃發(fā)送的CAN報(bào)文并不會(huì)被破壞。然后CAN節(jié)點(diǎn)等待下一次的同步。
三、非破壞性仲裁機(jī)制的前提
CAN控制器有電平檢測(cè)的功能,再加上“線與”的原理就能實(shí)現(xiàn)非破壞性仲裁機(jī)制。說(shuō)白了,就是搶占總線之前先看看總線有沒(méi)有被其他CAN節(jié)點(diǎn)占用,如果占用了就進(jìn)入只聽(tīng)模式,等待下一次的同步。
每一個(gè)CAN節(jié)點(diǎn)都會(huì)在“幀開始”進(jìn)行同步,同步之后開始仲裁,看看能否獲得CAN總線的使用權(quán)。
四、仲裁的實(shí)現(xiàn)
每一個(gè)CAN節(jié)點(diǎn)在“幀同步”實(shí)現(xiàn)同步后,在仲裁段使用線與原理實(shí)現(xiàn)仲裁。從下圖看到,在仲裁段時(shí),如果節(jié)點(diǎn)處于隱性電平,將進(jìn)入只聽(tīng)模式,不會(huì)再爭(zhēng)奪CAN總線的使用權(quán),等待下一次的幀同步。
經(jīng)過(guò)兩次的仲裁后,節(jié)點(diǎn)A獲得CAN總線的使用權(quán),然后節(jié)點(diǎn)A將CAN報(bào)文發(fā)出去。
總結(jié)
以上是生活随笔為你收集整理的CAN总线技术 | 数据链路层03 - CAN总线竞争与仲裁机制的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux学习之VMware安装Linu
- 下一篇: jupyter notebook pyt