In MCF8316C-Q1, EEPROM write procedure is as follows,
- Write register 0x000080
(ISD_CONFIG) with ISD and reverse drive configuration like resync enable,
reverse drive enable, stationary detect threshold, reverse drive handoff
threshold etc.
- Write register 0x000082
(REV_DRIVE_CONFIG) with reverse drive and active brake configuration like
reverse drive open loop acceleration, active brake current limit, Kp, Ki values
etc.
- Write register 0x000084
(MOTOR_STARTUP1) with motor start-up configuration like start-up method, IPD
parameters, align parameters etc.
- Write register 0x000086
(MOTOR_STARTUP2) with motor start-up configuration like open loop acceleration,
open loop current limit, first cycle frequency etc.
- Write register 0x000088
(CLOSED_LOOP1) with motor control configuration like closed loop acceleration,
overmodulation enable, PWM frequency, FG signal parameters etc.
- Write register 0x00008A
(CLOSED_LOOP2) with motor control configuration like motor winding resistance
and inductance, motor stop options, brake speed threshold etc.
- Write register 0x00008C
(CLOSED_LOOP3) with motor control configuration like motor BEMF constant,
current loop Kp, Ki etc.
- Write register 0x00008E
(CLOSED_LOOP4) with motor control configuration like speed loop Kp, Ki and
maximum speed.
- Write register 0x000090
(FAULT_CONFIG1) with fault control configuration software and hardware current
limits, lock current limit and actions, retry times etc.
- Write register 0x000092
(FAULT_CONFIG2) with fault control configuration like hardware current limit
actions, OV, UV limits and actions, abnormal speed level, no motor threshold
etc.
- Write registers 0x000094 –
0x00009E (SPEED_PROFILES1-6) with speed profile configuration like profile type,
duty cycle, speed clamp level, duty cycle clamp level etc.
- Write register 0x0000A0
(INT_ALGO_1) with miscellaneous configuration like ISD run time and timeout,
MPET parameters etc.
- Write register 0x0000A2
(INT_ALGO_2) with miscellaneous configuration like additional MPET parameters,
IPD high resolution enable, active brake current slew rate, closed loop slow
acceleration etc.
- Write registers 0x0000A4
(PIN_CONFIG1) with pin configuration for speed input mode (analog or PWM), BRAKE
pin mode etc.
- Write registers 0x0000A6 and
0x0000A8 (DEVICE_CONFIG1 and DEVICE_CONFIG2) with device configuration like pins
36, 37 configuration, pin 38 configuration, dynamic CSA gain enable, dynamic
voltage gain enable, clock source select, speed range select etc.
- Write register 0x0000AA
(PERI_CONFIG1) with peripheral configuration like dead time, bus current limit,
DIR input, SSM enable etc.
- Write registers 0x0000AC and
0x0000AE (GD_CONFIG1 and GD_CONFIG2) with gate driver configuration like slew
rate, CSA gain, OCP level, mode, OVP enable, level, buck voltage level, buck
current limit etc.
- Write 0x8A500000 into register
0x0000EA to write the shadow register(0x000080-0x0000AE) values into the
EEPROM.
- Wait for 300ms for the EEPROM write operation to
complete
Steps
1-17 can be selectively executed based on registers/parameters that need to be
modified. After all shadow registers have been updated with the required values,
step 18 should be executed to copy the contents of the shadow registers into the
EEPROM.