同步(SYNC),该报文对象基于生产者/消费者模式,由SYNC生产者周期性的广播,作为网络基本时钟,实现整个网络的同步传输,每个节点都以该同步报文作为同步PDO触发参数,因此该同步报文的COB-ID具有比较高的优先级以及最短的传输时间。
同步报文一般由主站进行发送,原理比较简单,只要按照字典中配置的周期,循环发送同步报文即可。
/* 启动同步报文 */
void startSYNC(CO_Data *d)
{
/* 如果同步报文定时器已经启动,则先停止 */
if(d->syncTimer != TIMER_NONE)
{
stopSYNC(d);
}
/* 按索引号0x1005和子索引号0注册字典入口的回调函数 */
RegisterSetODentryCallBack(d, 0x1005, 0, &OnCOB_ID_SyncUpdate);
/* 按索引号0x1006和子索引号0注册字典入口的回调函数 */
RegisterSetODentryCallBack(d, 0x1006, 0, &OnCOB_ID_SyncUpdate);
/* cob-id必须合法,sync配置字典时为0x4