DC: change to EtherCAT epoch

pull/25/head
Mikael Heden 2015-12-18 16:04:19 +01:00
parent 82edc9a033
commit 918a6bad97
1 changed files with 3 additions and 1 deletions

View File

@ -292,8 +292,10 @@ boolean ecx_configdc(ecx_contextt *context)
context->slavelist[0].hasdc = FALSE;
context->grouplist[0].hasdc = FALSE;
ht = 0;
mastertime = osal_current_time();
ecx_BWR(context->port, 0, ECT_REG_DCTIME0, sizeof(ht), &ht, EC_TIMEOUTRET); /* latch DCrecvTimeA of all slaves */
mastertime = osal_current_time();
mastertime.sec -= 946684800UL; /* EtherCAT uses 2000-01-01 as epoch start instead of 1970-01-01 */
mastertime64 = (((uint64)mastertime.sec * 1000000) + (uint64)mastertime.usec) * 1000;
for (i = 1; i <= *(context->slavecount); i++)
{