Motion Master 6.0.0-alpha.50
Next-generation motion control software
Loading...
Searching...
No Matches
mm::comm::ProcessDataWatchdogConfig Struct Reference

Process-data (sync-manager) watchdog configuration of one slave. More...

#include <fieldbus_driver.h>

Public Attributes

bool enabled = false
 False when the time register (0x0420) is zero.
 
bool running = false
 
std::chrono::nanoseconds timeout {0}
 Decoded timeout: ticks × 40 ns × (divider + 2).
 
uint16_t divider = 0
 Raw 0x0400 divider (shared with the PDI watchdog).
 
uint16_t ticks = 0
 Raw 0x0420 process-data watchdog time register.
 

Detailed Description

Process-data (sync-manager) watchdog configuration of one slave.

Decoded from the watchdog divider (0x0400) and process-data watchdog time (0x0420) ESC registers. The divider is the common time base for both the process-data and PDI watchdogs; the time register scales it. A zero time register disables the watchdog. Unlike SlaveDiagnostics::processDataWatchdog (an expiration counter), this is the configured timeout itself. Produced/consumed by FieldbusDriver::processDataWatchdog and setProcessDataWatchdog.

Member Data Documentation

◆ divider

uint16_t mm::comm::ProcessDataWatchdogConfig::divider = 0

Raw 0x0400 divider (shared with the PDI watchdog).

◆ enabled

bool mm::comm::ProcessDataWatchdogConfig::enabled = false

False when the time register (0x0420) is zero.

◆ running

bool mm::comm::ProcessDataWatchdogConfig::running = false

Live status (0x0440 bit 0): true = counting, false = expired or disabled. Meaningful only while enabled.

◆ ticks

uint16_t mm::comm::ProcessDataWatchdogConfig::ticks = 0

Raw 0x0420 process-data watchdog time register.

◆ timeout

std::chrono::nanoseconds mm::comm::ProcessDataWatchdogConfig::timeout {0}

Decoded timeout: ticks × 40 ns × (divider + 2).


The documentation for this struct was generated from the following file: