Go to the documentation of this file.
35 #ifndef CO_CONFIG_SRDO
36 #define CO_CONFIG_SRDO (0)
38 #ifndef CO_CONFIG_SRDO_MINIMUM_DELAY
39 #define CO_CONFIG_SRDO_MINIMUM_DELAY 0
42 #if ((CO_CONFIG_SRDO) & CO_CONFIG_SRDO_ENABLE) || defined CO_DOXYGEN
147 volatile void *CANrxNew[2];
151 void (*pFunctSignalSafe)(
void *object);
154 #if ((CO_CONFIG_SRDO) & CO_CONFIG_FLAG_CALLBACK_PRE) || defined CO_DOXYGEN
156 void (*pFunctSignalPre)(
void *object);
230 const CO_SRDOMapPar_t *SRDOMapPar,
241 #if ((CO_CONFIG_SRDO) & CO_CONFIG_FLAG_CALLBACK_PRE) || defined CO_DOXYGEN
256 void (*pFunctSignalPre)(
void *
object));
274 void (*pFunctSignalSafe)(
void *
object));
CO_ReturnError_t CO_SRDOGuard_init(CO_SRDOGuard_t *SRDOGuard, CO_SDO_t *SDO, CO_NMT_internalState_t *operatingState, uint8_t *configurationValid, uint16_t idx_SRDOvalid, uint16_t idx_SRDOcrc)
Initialize SRDOGuard object.
unsigned long int uint32_t
UNSIGNED32 in CANopen (0007h), 32-bit unsigned integer.
Definition: CO_driver.h:155
Interface between CAN hardware and CANopenNode.
uint8_t dataLength
Data length of the received SRDO message.
Definition: CO_SRDO.h:131
uint8_t nodeId
From CO_SRDO_init()
Definition: CO_SRDO.h:132
CO_SDO_t * SDO
From CO_SRDO_init()
Definition: CO_SRDO.h:126
unsigned int uint16_t
UNSIGNED16 in CANopen (0006h), 16-bit unsigned integer.
Definition: CO_driver.h:153
CO_NMT_internalState_t operatingStatePrev
last operation state
Definition: CO_SRDO.h:116
CO_ReturnError_t
Return values of some CANopen functions.
Definition: CO_driver.h:488
void * functSignalObjectPre
From CO_SRDO_initCallbackPre() or NULL.
Definition: CO_SRDO.h:158
SRDO communication parameter.
Definition: CO_SRDO.h:66
uint8_t informationDirection
Direction of the SRDO.
Definition: CO_SRDO.h:72
void * functSignalObjectSafe
From CO_SRDO_initCallbackEnterSafeState() or NULL.
Definition: CO_SRDO.h:153
CANopen Service Data Object - server protocol.
CO_SRDOGuard_t * SRDOGuard
From CO_SRDO_init()
Definition: CO_SRDO.h:127
CO_CANmodule_t * CANdevTx
From CO_SRDO_init()
Definition: CO_SRDO.h:140
uint8_t safetyRelatedValidationTime
SRVT.
Definition: CO_SRDO.h:80
uint32_t timer
transmit timer and receive timeout
Definition: CO_SRDO.h:145
CO_EM_t * em
From CO_SRDO_init()
Definition: CO_SRDO.h:125
uint8_t valid
0 - invalid, 1 - tx, 2 - rx
Definition: CO_SRDO.h:135
Emergency object.
Definition: CO_Emergency.h:369
uint16_t safetyCycleTime
Refresh-time / SCT.
Definition: CO_SRDO.h:76
CO_ReturnError_t CO_SRDO_init(CO_SRDO_t *SRDO, CO_SRDOGuard_t *SRDOGuard, CO_EM_t *em, CO_SDO_t *SDO, uint8_t nodeId, uint16_t defaultCOB_ID, const CO_SRDOCommPar_t *SRDOCommPar, const CO_SRDOMapPar_t *SRDOMapPar, const uint16_t *checksum, uint16_t idx_SRDOCommPar, uint16_t idx_SRDOMapPar, CO_CANmodule_t *CANdevRx, uint16_t CANdevRxIdxNormal, uint16_t CANdevRxIdxInverted, CO_CANmodule_t *CANdevTx, uint16_t CANdevTxIdxNormal, uint16_t CANdevTxIdxInverted)
Initialize SRDO object.
CO_NMT_internalState_t
Internal network state of the CANopen node.
Definition: CO_NMT_Heartbeat.h:77
void CO_SRDO_process(CO_SRDO_t *SRDO, uint8_t commands, uint32_t timeDifference_us, uint32_t *timerNext_us)
Process transmitting/receiving SRDO messages.
CANopen Network management and Heartbeat producer protocol.
uint8_t maxSubIndex
Equal to 6.
Definition: CO_SRDO.h:67
uint8_t transmissionType
Transmission type.
Definition: CO_SRDO.h:83
uint8_t toogle
defines the current state
Definition: CO_SRDO.h:144
CANopen Emergency protocol.
uint32_t COB_ID2_inverted
Communication object identifier for message received.
Definition: CO_SRDO.h:91
const CO_SRDOMapPar_t * SRDOMapPar
From CO_SRDO_init()
Definition: CO_SRDO.h:137
CO_CANmodule_t * CANdevRx
From CO_SRDO_init()
Definition: CO_SRDO.h:139
const CO_SRDOCommPar_t * SRDOCommPar
From CO_SRDO_init()
Definition: CO_SRDO.h:136
Complete CAN module object.
Definition: CO_driver.h:319
void CO_SRDO_initCallbackPre(CO_SRDO_t *SRDO, void *object, void(*pFunctSignalPre)(void *object))
Initialize SRDO callback function.
uint8_t CO_SRDOGuard_process(CO_SRDOGuard_t *SRDOGuard)
Process operation and valid state changes.
CO_NMT_internalState_t * operatingState
pointer to current operation state
Definition: CO_SRDO.h:115
SRDO object.
Definition: CO_SRDO.h:124
uint32_t COB_ID1_normal
Communication object identifier for message received.
Definition: CO_SRDO.h:87
Gurad Object for SRDO monitors:
Definition: CO_SRDO.h:114
const uint16_t * checksum
From CO_SRDO_init()
Definition: CO_SRDO.h:138
void CO_SRDO_initCallbackEnterSafeState(CO_SRDO_t *SRDO, void *object, void(*pFunctSignalSafe)(void *object))
Initialize SRDO callback function.
CO_ReturnError_t CO_SRDO_requestSend(CO_SRDO_t *SRDO)
Send SRDO on event.
uint8_t checkCRC
specifies whether a CRC check should be performed
Definition: CO_SRDO.h:118
Configuration object for CAN transmit message for specific CANopenNode Object.
Definition: CO_driver.h:299
uint8_t * configurationValid
pointer to the configuration valid flag in OD
Definition: CO_SRDO.h:117
unsigned char uint8_t
UNSIGNED8 in CANopen (0005h), 8-bit unsigned integer.
Definition: CO_driver.h:151