Finally my motor control board with two MCF8316A is ready to test.
Two months ago I posted a thread here. But it was locked before I can confirm the suggested solution is workable or not.
Now I know the initial I2C address is 0x01. To change the I2C address of the 1st MCF8316A, I have to let the 2nd MCF8316A go to sleep. According to the data sheet, pin SPEED can be set to high (3.3V) and wait for 200ms for it to wake and enter STANDBY mode. Or, set SPEED pin low (0V) and wait for 200ms for it to enter SLEEP mode.
So, here is the testing procedures:
1. 1st MCF8316A.SPEED = 1
2. 2nd MCF8316A.SPEED = 0
3. wait for 300ms
4. set 1st MCF8316A.DEVICE_CONFIG.I2C_TARGET_ADDR = 0x40
5. write shadow registers to EEPROM
6. power cycle (I found the new I2C address will take effect only after the power is cycled)
But it seems not working. Now both chips seems to be at address 0x40.
Does anyone has this experience? Any suggestion?