This class describes Receive PDOs, meaning PDOs that send data from the host to the device. More...
#include <RPDO.h>
Public Types | |
typedef boost::shared_ptr< RPDO > | Ptr |
Convenience typedef to use PDOs with shared pointers. | |
typedef std::vector < boost::shared_ptr< RPDO > > | PtrList |
Convenience typedef to use PDO lists with shared pointers. | |
Public Member Functions | |
PDOStringMatchVec | appendMapping (SDO &sdo, const MappingConfigurationList &mappings, const eTransmissionType &transmission_type, const bool dummy_mapping=false, const uint8_t cyclic_timeout_cycles=0) |
Appends one or more mapping parameters to the existing mapping. Note that the PDO will be disabled while appending another mapping. | |
bool | download () |
Downloads RPDO data from the master to the slave (From PC to node) | |
PDOStringMatchVec | remap (SDO &sdo, const MappingConfigurationList &mappings, const eTransmissionType &transmission_type, const bool dummy_mapping=false, const uint8_t cyclic_timeout_cycles=0) |
Configure a PDO by sending some SDO packages. This can be either done during NMT state pre-operational or during the NMT state Operational. If an empty mapping is given, we leave the mapping as is. | |
RPDO (const uint8_t node_id, const uint8_t pdo_nr, const CanDevPtr &can_device) | |
Construct a new RPDO. | |
Static Public Attributes | |
static const uint16_t | OD_RPDO_COMMUNICATION_MIN = 0x1400 |
static const uint16_t | OD_RPDO_MAPPING_PARAMETER_MIN = 0x1600 |
This class describes Receive PDOs, meaning PDOs that send data from the host to the device.
typedef boost::shared_ptr<RPDO> icl_hardware::canopen_schunk::RPDO::Ptr |
Convenience typedef to use PDOs with shared pointers.
Reimplemented from icl_hardware::canopen_schunk::PDO.
typedef std::vector<boost::shared_ptr<RPDO> > icl_hardware::canopen_schunk::RPDO::PtrList |
Convenience typedef to use PDO lists with shared pointers.
Reimplemented from icl_hardware::canopen_schunk::PDO.
icl_hardware::canopen_schunk::RPDO::RPDO | ( | const uint8_t | node_id, |
const uint8_t | pdo_nr, | ||
const CanDevPtr & | can_device | ||
) |
PDO::PDOStringMatchVec icl_hardware::canopen_schunk::RPDO::appendMapping | ( | SDO & | sdo, |
const MappingConfigurationList & | mappings, | ||
const eTransmissionType & | transmission_type, | ||
const bool | dummy_mapping = false , |
||
const uint8_t | cyclic_timeout_cycles = 0 |
||
) |
Appends one or more mapping parameters to the existing mapping. Note that the PDO will be disabled while appending another mapping.
sdo | Handle to the SDO object |
mappings | List of MappingConfigurations that should be mapped into this PDO |
transmission_type | Transmission type of this PDO |
dummy_mapping | if set to True, no download to the device will be performed, but the mapping will be done on host side. This is especially useful if a device has preconfigured PDOs which you like to use. |
cyclic_timeout_cycles | If the transmission type SYNCHRONOUS_CYCLIC is used, this parameter defines the PDO's frequency by defining the number of cycles between two send attempts. For example, a parameter value of 4 means, that the PDO is sent every 5th cycle. |
PDO::PDOStringMatchVec icl_hardware::canopen_schunk::RPDO::remap | ( | SDO & | sdo, |
const MappingConfigurationList & | mappings, | ||
const eTransmissionType & | transmission_type, | ||
const bool | dummy_mapping = false , |
||
const uint8_t | cyclic_timeout_cycles = 0 |
||
) |
Configure a PDO by sending some SDO packages. This can be either done during NMT state pre-operational or during the NMT state Operational. If an empty mapping is given, we leave the mapping as is.
sdo | Handle to the SDO object |
mappings | List of MappingConfigurations that should be mapped into this PDO |
transmission_type | Transmission type of this PDO |
dummy_mapping | if set to True, no download to the device will be performed, but the mapping will be done on host side. This is especially useful if a device has preconfigured PDOs which you like to use. |
cyclic_timeout_cycles | If the transmission type SYNCHRONOUS_CYCLIC is used, this parameter defines the PDO's frequency by defining the number of cycles between two send attempts. For example, a parameter value of 4 means, that the PDO is sent every 5th cycle. |
const uint16_t icl_hardware::canopen_schunk::RPDO::OD_RPDO_COMMUNICATION_MIN = 0x1400 [static] |
const uint16_t icl_hardware::canopen_schunk::RPDO::OD_RPDO_MAPPING_PARAMETER_MIN = 0x1600 [static] |