作者:廣州致遠電子有限公司 時間:2009 CANopen協議作為CAN總線的應用層協議,擁有復雜的網絡管理、實時過程數據對象、服務數據對象、預定義連接和特殊功能對象等基本功能,另外CANopen協議還定義了指示燈規范、通信安全架構、在線配置、以及EDS文件規范、標準設備規范等一系列的協議規范。因此開發基于CANopen協議的設備有著非常高的難度以及較長的開發周期。 為了解決CANopen產品開發難的問題,廣州致遠電子有限公司開發的一款嵌入式CANopen從站協議轉換模塊——XGate-COP10,轉換為UART接口,支持CANopen標準協議DS301、DS302、DS303、DS305。XGate-COP10為CANopen從站協議轉換模塊,其內部已經集成了CANopen從站協議棧代碼,不需要二次開發,可快速方便的使現有設備具有CANopen通信能力。該模塊具有如下所示的功能特點:網絡管理服務對象(NMT:Boot up, Node Guarding /Life guarding,Heartbeat Producer);過程數據對象(TPDO與RPDO);服務數據對象(SDO服務器);緊急報文對象(Emergency );同步報文對象(Sync);網絡配置對象(LSS從站);串口通信能力(UART);96字節的輸入輸出數據緩沖(I/O);CAN總線支持 5k~1Mbit/s的波特率;體積小,18mm× 31mm(DIP24封裝)。 硬件設計 XGate-COP10在用戶系統中的典型應用,其中用戶CPU通過UART(TTL電平)與XGate-COP10進行通信,通過UART用戶可以方便的讀取或寫入XGate-COP10的輸入輸出數據區,實現應用數據與CANopen主站設備的交換。 由于XGate-COP10模塊中未集成有CAN收發器,因此該原理圖采用了CTM8251T隔離收發器,這樣可保證CAN通信的穩定可靠,也實現了整個系統與CAN總線的電氣隔離。 軟件設計 XGate-COP10的軟件設計,重點在于用戶CPU與XGate-COP10的UART通信的建立(即完成XGate-COP10所規定的串口通信協議),在XGate-COP10中,對串口數據進行了簡單的協議封裝,實現了對XGate-COP10的既定操作。 如圖1所示為操作XGate-COP10軟件流程圖。首先,用戶需要對XGate-COP10模塊進行相應的初始化操作,例如寫入用戶設備信息(必需)、節點地址(可選)和波特率(可選)等操作。其次,只有在XGate-COP10處于操作狀態時,與XGate-COP10進行的數據交換才有效。為了方便用戶快速的使用XGate-COP10,致遠電子提供了UART通信協議源代碼,用戶可直接在常用的單片機上使用,也可以稍作修改在特殊的單片機上使用。 |