近期小編開(kāi)發(fā)了【跟我學(xué)CANopen】系列課程,會(huì)陸陸續(xù)續(xù)連載更新完畢,相關(guān)目錄如下(由于內(nèi)容較多導(dǎo)致文字太小,下圖請(qǐng)放大后查看)。
一、CAN底層
從OSI的7層網(wǎng)絡(luò)模型的角度來(lái)看,CAN(Controller Area Network)現(xiàn)場(chǎng)總線僅僅定義了第1層(物理層,見(jiàn)ISO11898-2標(biāo)準(zhǔn))、第2層(數(shù)據(jù)鏈路層,見(jiàn)ISO11898-1標(biāo)準(zhǔn));而在實(shí)際設(shè)計(jì)中,這兩層完全由硬件實(shí)現(xiàn),設(shè)計(jì)人員無(wú)需再為此開(kāi)發(fā)相關(guān)軟件(Software)或固件(Firmware),只要了解如何調(diào)用相關(guān)的接口和寄存器,即可完成對(duì)CAN的控制。如圖2.1所示。
同時(shí),CAN只定義物理層和數(shù)據(jù)鏈路層,沒(méi)有規(guī)定應(yīng)用層,本身并不完整,需要一個(gè)高層協(xié)議來(lái)定義CAN報(bào)文中的11/29位標(biāo)識(shí)符、8字節(jié)數(shù)據(jù)的使用。而且,基于CAN總線的工業(yè)自動(dòng)化應(yīng)用中,越來(lái)越需要一個(gè)開(kāi)放的、標(biāo)準(zhǔn)化的高層協(xié)議:這個(gè)協(xié)議支持各種CAN廠商設(shè)備的互用性、互換性,能夠?qū)崿F(xiàn)在CAN網(wǎng)絡(luò)中提供標(biāo)準(zhǔn)的、統(tǒng)一的系統(tǒng)通訊模式,提供設(shè)備功能描述方式,執(zhí)行網(wǎng)絡(luò)管理功能。
- 應(yīng)用層(Application layer):為網(wǎng)絡(luò)中每一個(gè)有效設(shè)備都能夠提供一組有用的服務(wù)與協(xié)議。
- 通訊描述(Communication profile):提供配置設(shè)備、通訊數(shù)據(jù)的含義,定義數(shù)據(jù)通訊方式。
- 設(shè)備描述(Device proflile):為設(shè)備(類)增加符合規(guī)范的行為。
CANopen基于CAN總線的應(yīng)用層協(xié)議;
二、CANopen在OSI中的位置
所有標(biāo)準(zhǔn)的工業(yè)通信系統(tǒng),均必須符合國(guó)際標(biāo)準(zhǔn)化組織指定的OSI開(kāi)放協(xié)議標(biāo)準(zhǔn)。在OSI模型中,CAN標(biāo)準(zhǔn)、CANopen協(xié)議之間的關(guān)系如下圖所示:
用較為簡(jiǎn)單理解的圖示展示CANopen在OSI中的位置如下表所示。
CANopen以覆蓋物理層和數(shù)據(jù)鏈路層功能的串行總線系統(tǒng)CAN為基礎(chǔ),所有CANopen功能均被映射到一個(gè)或多個(gè)CAN報(bào)文。
End
成功沒(méi)有捷徑,只有通過(guò)不斷的學(xué)習(xí)、學(xué)習(xí)再學(xué)習(xí)才能離成功更近一點(diǎn)點(diǎn);想要學(xué)習(xí)的同學(xué)歡迎加入我們的技術(shù)交流群,共同學(xué)習(xí),共同成長(zhǎng),讓我們離成功更近一步
歡迎轉(zhuǎn)發(fā)
每篇原創(chuàng)內(nèi)容都是我們用心血換來(lái)的知識(shí)精華,如果您覺(jué)得本文有價(jià)值,歡迎轉(zhuǎn)載分享;
歡迎加入
如果您對(duì)單片機(jī)及嵌入式設(shè)計(jì)感興趣,歡迎加入我們的辯論探討,加我微信【xyzn3333】。