canopen协议框架

从上图中可以看出,canopen结构。
其中canopen的对象字典是最核心的部分。
canopen主从站进行连接后,通过SDO对canopen设备的对象字典进行配置,同时通过PDO进行数据的通信。
关于硬件电路:

关于模块化设计:

SDO是点对点的,收发应答。
PDO是一个主机对应多个从机的。
NMT实现节点的管理和错误管理。
怎么知道SDO,PDO,NMT呢?
主要是根据can的ID的高4位。它用来区分不同通信对象的功能码,
can报文接收到以后,通过判断高4位功能码来区分所接收到的通信对象,
并通过一个指向函数的指针来调用相应的函数对报文进行处理。
