#pragma once #include extern int TIMEOUT_PROCESSDATA; typedef struct { int slave; short index; char subindex; int addr_offset; int addr_bit; int bitlength; int type; char name[64]; } ecd_pdo_entry_t; typedef struct { int slave; uint16_t index; uint16_t datatype; uint8_t objectcode; uint8_t maxsub; char name[128]; } dto_servicedescriptor_t; typedef void (*cb_enum_indeces_t)(int slave, int index); typedef void (*cb_enum_sdo_descriptors_t)(int slave, int index, uint16_t dataType, uint16_t objectCode, int sub, char *name); typedef void (*cb_enum_pdo)(uint16_t slave, uint16_t index, char subindex, int addr_offset, int addr_bit, int bitlength); extern ecd_pdo_entry_t ecd_pdo_map[1024]; extern int ecd_pdo_map_length; int ecd_read_pdo_map(int slave);