SDO server object. More...
#include <CO_SDOserver.h>
Data Fields | |
CO_CANmodule_t * | CANdevTx |
From CO_SDOserver_init() | |
CO_CANtx_t * | CANtxBuff |
CAN transmit buffer inside CANdevTx for CAN tx message. | |
const OD_t * | OD |
From CO_SDOserver_init() | |
uint8_t | nodeId |
From CO_SDOserver_init() | |
volatile CO_SDO_state_t | state |
Internal state of the SDO server. | |
OD_IO_t | OD_IO |
Object dictionary interface for current object. | |
uint16_t | index |
Index of the current object in Object Dictionary. | |
uint8_t | subIndex |
Subindex of the current object in Object Dictionary. | |
OD_attr_t | attribute |
Attribute bit-field of the current OD sub-object, see OD_attributes_t. | |
volatile void * | CANrxNew |
Indicates, if new SDO message received from CAN bus. More... | |
uint8_t | CANrxData [8] |
8 data bytes of the received message | |
CO_CANmodule_t * | CANdevRx |
From CO_SDOserver_init() | |
uint16_t | CANdevRxIdx |
From CO_SDOserver_init() | |
uint16_t | CANdevTxIdx |
From CO_SDOserver_init() | |
uint32_t | COB_IDClientToServer |
Copy of CANopen COB_ID Client -> Server, meaning of the specific bits: More... | |
uint32_t | COB_IDServerToClient |
Copy of CANopen COB_ID Server -> Client, similar as above. | |
OD_size_t | sizeInd |
Size of data, which will be transferred. More... | |
OD_size_t | sizeTran |
Size of data which is actually transferred. | |
uint8_t | toggle |
Toggle bit toggled in each segment in segmented transfer. | |
bool_t | finished |
If true, then: data transfer is finished (by download) or read from OD variable is finished (by upload) | |
uint32_t | SDOtimeoutTime_us |
Maximum timeout time between request and response in microseconds. | |
uint32_t | timeoutTimer |
Timeout timer for SDO communication. | |
char | buf [CO_CONFIG_SDO_SRV_BUFFER_SIZE+1] |
Interim data buffer for segmented or block transfer + byte for '\0'. | |
OD_size_t | bufOffsetWr |
Offset of next free data byte available for write in the buffer. | |
OD_size_t | bufOffsetRd |
Offset of first data available for read in the buffer. | |
uint32_t | block_SDOtimeoutTime_us |
Timeout time for SDO sub-block download, half of SDOtimeoutTime_us. | |
uint32_t | block_timeoutTimer |
Timeout timer for SDO sub-block download. | |
uint8_t | block_seqno |
Sequence number of segment in block, 1..127. | |
uint8_t | block_blksize |
Number of segments per block, 1..127. | |
uint8_t | block_noData |
Number of bytes in last segment that do not contain data. | |
bool_t | block_crcEnabled |
Client CRC support in block transfer. | |
uint16_t | block_crc |
Calculated CRC checksum. | |
void(* | pFunctSignalPre )(void *object) |
From CO_SDOserver_initCallbackPre() or NULL. | |
void * | functSignalObjectPre |
From CO_SDOserver_initCallbackPre() or NULL. | |
SDO server object.
volatile void* CO_SDOserver_t::CANrxNew |
Indicates, if new SDO message received from CAN bus.
It is not cleared, until received message is completely processed.
uint32_t CO_SDOserver_t::COB_IDClientToServer |
Copy of CANopen COB_ID Client -> Server, meaning of the specific bits:
OD_size_t CO_SDOserver_t::sizeInd |
Size of data, which will be transferred.
It is optionally indicated by client in case of download or by server in case of upload.