Correct unit for dc mastertime calulcation to (ns)

The correct factor for seconds should be 1000000000

fixes #432
This commit is contained in:
Andreas Karlsson 2020-08-14 15:35:45 +02:00
parent bae37b9028
commit 33aa7a3c57
1 changed files with 1 additions and 1 deletions

View File

@ -270,7 +270,7 @@ boolean ecx_configdc(ecx_contextt *context)
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;
mastertime64 = (((uint64)mastertime.sec * 1000000000) + (uint64)mastertime.usec) * 1000;
for (i = 1; i <= *(context->slavecount); i++)
{
context->slavelist[i].consumedports = context->slavelist[i].activeports;