Part Number: AM625
Hi Team,
I use AM62 as EtherCAT master, AM64 as EtherCAT slave.
Why AM64 PDOs SM2&SM3 DefaultSize = 0? Is this setting reasonable?
root@am62xx-evm:~# ethercat cstruct -p 0
/* Master 0, Slave 0, "TI EtherCAT Toolkit for AM64X.R5F"
* Vendor ID: 0xe000059d
* Product code: 0x54490022
* Revision number: 0x00010000
*/
ec_pdo_entry_info_t slave_0_pdo_entries[] = {
{0x2000, 0x02, 8},
{0x2000, 0x03, 8},
{0x2000, 0x04, 16},
{0x2000, 0x01, 32},
{0x2002, 0x02, 8},
{0x2002, 0x04, 16},
{0x2002, 0x03, 8},
{0x2002, 0x01, 32},
};
ec_pdo_info_t slave_0_pdos[] = {
{0x1600, 3, slave_0_pdo_entries + 0},
{0x1601, 1, slave_0_pdo_entries + 3},
{0x1a00, 3, slave_0_pdo_entries + 4},
{0x1a01, 1, slave_0_pdo_entries + 7},
};
ec_sync_info_t slave_0_syncs[] = {
{0, EC_DIR_OUTPUT, 0, NULL, EC_WD_DISABLE},
{1, EC_DIR_INPUT, 0, NULL, EC_WD_DISABLE},
{2, EC_DIR_OUTPUT, 2, slave_0_pdos + 0, EC_WD_ENABLE},
{3, EC_DIR_INPUT, 2, slave_0_pdos + 2, EC_WD_DISABLE},
{0xff}
};
root@am62xx-evm:~# ethercat pdos SM0: PhysAddr 0x1000, DefaultSize 256, ControlRegister 0x26, Enable 1 SM1: PhysAddr 0x1100, DefaultSize 256, ControlRegister 0x22, Enable 1 SM2: PhysAddr 0x1200, DefaultSize 0, ControlRegister 0x64, Enable 1 RxPDO 0x1600 "RxPDO" PDO entry 0x2000:02, 8 bit, "i2c-leds" PDO entry 0x2000:03, 8 bit, "SubIndex 3" PDO entry 0x2000:04, 16 bit, "SubIndex 4" RxPDO 0x1601 "RxPDO2" PDO entry 0x2000:01, 32 bit, "SubIndex 1" SM3: PhysAddr 0x1e00, DefaultSize 0, ControlRegister 0x20, Enable 1 TxPDO 0x1a00 "TxPDO" PDO entry 0x2002:02, 8 bit, "SubIndex 2" PDO entry 0x2002:04, 16 bit, "SubIndex 4" PDO entry 0x2002:03, 8 bit, "SubIndex 3" TxPDO 0x1a01 "TxPDO2" PDO entry 0x2002:01, 32 bit, "SubIndex 1"