数据存档文件,用于保存所有从节点的字典配置。
在从节点初始化时,从节点将上报boot_up报文。主节点收到boot_up报文后,将对从节点的字典和数据存档文件进行对比,如果不匹配,则需要通过sdo报文对从节点字典进行重新配置,并根据配置决定是否命令从节点将新的配置存入非易失性存储器。
主站可以为每个从站配置一个节点数据存档文件,节点数据存档文件的格式如图:
/* DCF入口 */
typedef struct
{
UNS16 Index; //索引
UNS8 Subindex; //子索引
UNS32 Size; //字节数
UNS8 *Data; //数据指针
}dcf_entry_t;
void SaveNode(CO_Data *d, UNS8 nodeId);
static UNS8 read_consise_dcf_next_entry(CO_Data *d, UNS8 nodeId);
static UNS8 write_consise_dcf_next_entry(CO_Data *d, UNS8 nodeId);
UNS8 init_consise_dcf(CO_Data *d,UNS8 nodeId);
#ifdef _MSC_VER
#define inline _inline
#endif
/* 启动节点 */
void start_node(CO_Data *d, UNS8 nodeId)
{
/* 节点开始运行 */
masterSendNMTstateChange(d, nodeId, NMT_Start_Node);
/* 节点进入运行状态 */
d->NMTable[nodeId] = Operational;
}
/* 该函数被post_