CANopenNode
CO_SRDO.h File Reference

CANopen Safety Related Data Object protocol. More...

Go to the source code of this file.

Data Structures

struct  CO_SRDOCommPar_t
 SRDO communication parameter. More...
 
struct  CO_SRDOGuard_t
 Gurad Object for SRDO monitors: More...
 
struct  CO_SRDO_t
 SRDO object. More...
 

Functions

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. More...
 
uint8_t CO_SRDOGuard_process (CO_SRDOGuard_t *SRDOGuard)
 Process operation and valid state changes. More...
 
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. More...
 
void CO_SRDO_initCallbackPre (CO_SRDO_t *SRDO, void *object, void(*pFunctSignalPre)(void *object))
 Initialize SRDO callback function. More...
 
void CO_SRDO_initCallbackEnterSafeState (CO_SRDO_t *SRDO, void *object, void(*pFunctSignalSafe)(void *object))
 Initialize SRDO callback function. More...
 
CO_ReturnError_t CO_SRDO_requestSend (CO_SRDO_t *SRDO)
 Send SRDO on event. More...
 
void CO_SRDO_process (CO_SRDO_t *SRDO, uint8_t commands, uint32_t timeDifference_us, uint32_t *timerNext_us)
 Process transmitting/receiving SRDO messages. More...
 

Detailed Description

CANopen Safety Related Data Object protocol.

Author
Robert GrĂ¼ning

This file is part of CANopenNode, an opensource CANopen Stack. Project home page is https://github.com/CANopenNode/CANopenNode. For more information on CANopen see http://www.can-cia.org/.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.