<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 現場(chǎng)總線(xiàn)CANopen學(xué)習總結筆記二---物理層和CAN協(xié)議

現場(chǎng)總線(xiàn)CANopen學(xué)習總結筆記二---物理層和CAN協(xié)議

作者: 時(shí)間:2016-12-14 來(lái)源:網(wǎng)絡(luò ) 收藏
第二章,物理層

主要有位定時(shí)和位填充、高速收發(fā)器、網(wǎng)絡(luò )拓撲結構、連接器。

本文引用地址:http://dyxdggzs.com/article/201612/329855.htm

CANopen的物理層相當于CAN控制器中采用的子層PLS(物理信號)、MAU(介質(zhì)訪(fǎng)問(wèn)單元)和MDI(介質(zhì)專(zhuān)用接口),這些子層均位于驅動(dòng)模塊中并通過(guò)連接器和電纜實(shí)現。

位定時(shí)其實(shí)就是針對各種不同的數據傳輸速率設定的采樣點(diǎn)。分為4個(gè)部分:同步段、傳播段、相位段1和相位段2。而位定時(shí)的采樣點(diǎn)恰好介于相位段1和2之間。

位填充可以表示為5個(gè)相同極性的位后面插入一個(gè)不同極性的填充位,而根據第3章里報文格式中得知,位填充只適合對幀起始SOF到CRC場(chǎng)之間的范圍內的數據進(jìn)行處理。填充位可以由接收CAN控制器自動(dòng)去除填充,因此CAN報文物理層上的長(cháng)度取決于待傳輸的位格式。

收發(fā)器芯片具有一個(gè)Rx引腳和一個(gè)Tx引腳,這些引腳可直接將二進(jìn)制信號輸入到CAN控制器中或微控制器中的CAN模塊,CAN_HCAN_L端口直接與兩條總線(xiàn)導線(xiàn)連接。另外用戶(hù)可以利用一個(gè)外部電阻,通過(guò)一個(gè)可選端口來(lái)改變脈沖沿斜率。

網(wǎng)絡(luò )拓撲結構ISO11898-2標準規定了一種帶2個(gè)終端電阻的線(xiàn)性總線(xiàn)結構,在總線(xiàn)兩端接上終端電阻可以避免導線(xiàn)上的信號反射。注意終端電阻的使用,總線(xiàn)導線(xiàn)的長(cháng)度和類(lèi)別選擇。

連接器采用9針D-Sub連接器的引腳分布。

第三章CAN協(xié)議

主要有報文格式錯誤的檢測、限制和處理。

3.1報文格式

CAN規范定義,隱性電平的邏輯為1,顯性電平邏輯為0.有一個(gè)助記的是:顯靈(顯零),記住一個(gè),另一個(gè)當然知道是隱1了。

CAN總線(xiàn)上傳輸的幀有4個(gè)類(lèi)型:數據幀、遠程幀、錯誤幀、超載幀。

標準格式的數據幀組成:

幀起始(SOF):指示一個(gè)數據幀和遠程幀的開(kāi)始,包含一個(gè)確定的顯性位。

標識符場(chǎng)(CAN-ID):標識符場(chǎng)由11位組成,用于表示確定的待傳輸消息,數值作侍傳輸消息的優(yōu)先級。

遠程傳輸請求位(RTR):用于區分數據幀還是遠程幀。當為顯性時(shí)傳輸數據幀,隱性為遠程幀。

控制段:由6位組成,其中有4位DLC(數據長(cháng)度代碼)。DLC表示此幀在數據段中的傳輸字節數。

數據段:0~8字節,包含此幀傳輸的實(shí)際有效信息。

CRC段:循環(huán)冗余校驗。用來(lái)識別是否接收錯誤的數據。

應答段:應答間隙位的電平值可以用來(lái)提示本網(wǎng)絡(luò )中沒(méi)有接收器正確收到了當前發(fā)送的消息。

幀結束:由7位隱性電平的位組成。

幀間空間(ITM)已經(jīng)不屬于前一條幀的組成單元。

錯誤幀:主動(dòng)錯誤標志由6個(gè)連續顯性電平的位組成,這違反了CAN填充規則,所以網(wǎng)絡(luò )中所有的設備都可以識別出這種錯誤標志。由主動(dòng)錯誤標志轉為被動(dòng)錯誤標志。錯誤界定符由8個(gè)隱性電平位組成,用于結束錯誤幀。

過(guò)載幀:通常由尚未處理完上一幀消息的CAN控制器發(fā)出,可以用于延遲網(wǎng)絡(luò )中其他設備發(fā)送下一條消息。過(guò)載標志由6個(gè)連續顯性電平位組成,且必須在幀空間ITM的前兩個(gè)位之內開(kāi)始。過(guò)載界定符由8個(gè)隱性電平組成,用于結束過(guò)載幀。過(guò)載幀不會(huì )影響錯誤計數器的讀數,這接收錯誤計數器REC在發(fā)送過(guò)載標志檢測到的位錯誤REC不加1的原因吧。

CAN位信息的傳輸使用不歸零編碼(NRZ)的方式。

NRZ:信號電平的一次反轉代表1,電平不變化表示0,并且在表示完一個(gè)碼元后,電壓不需回到0.

好處是在一個(gè)位時(shí)間間隔里,只需要進(jìn)行一次掃描就可以檢測到電平。缺點(diǎn)是當出現一些極性相同的連續位時(shí),沒(méi)有可用的信號邊沿來(lái)同步接收器。

CAN總線(xiàn)仲裁與填充原理需要注意。

3.2錯誤的檢測、限制和處理

有5種檢測機制檢測錯誤:

位錯誤

填充規則錯誤

CRC錯誤

應答錯誤

格式錯誤

所有CAN協(xié)議控制器都內置兩個(gè)錯誤計數器,一個(gè)接收錯誤計數器REC,一個(gè)是發(fā)送錯誤計數器TEC。

錯誤計數器的值大于127小于255時(shí),設備進(jìn)入被動(dòng)錯誤狀態(tài);當錯誤計數器的值小于127時(shí),設備處于主動(dòng)錯誤狀態(tài);當錯誤計數器大于255時(shí),設備進(jìn)入總線(xiàn)脫離(BusOff)狀態(tài)。

錯誤計數器的增減規定有8個(gè)。需要詳細的可以留言給我。

如果某一過(guò)載幀中檢測出錯誤,剛只有處于錯誤主動(dòng)狀態(tài)的設備才能允許發(fā)送一個(gè)錯誤標志。



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>