SLLSFI0C august 2021 – june 2023 MCF8316A
PRODUCTION DATA
ALGORITHM_CONTROL Registers lists the memory-mapped registers for the Algorithm_Control registers. All register offset addresses not listed in ALGORITHM_CONTROL Registers should be considered as reserved locations and the register contents should not be modified.
Address | Acronym | Register Name | Section |
---|---|---|---|
ECh | ALGO_CTRL1 | Algorithm Control Register | ALGO_CTRL1 Register (Address = ECh) [Reset = 00000000h] |
EEh | ALGO_CTRL2 | Algorithm Control Register | ALGO_CTRL2 Register (Address = EEh) [Reset = 00000000h] |
F0h | CURRENT_PI | Current PI Controller Register | CURRENT_PI Register (Address = F0h) [Reset = 00000000h] |
F2h | SPEED_PI | Speed PI Controller Register | SPEED_PI Register (Address = F2h) [Reset = 00000000h] |
Complex bit access types are encoded to fit into small table cells. Algorithm_Control Access Type Codes shows the codes that are used for access types in this section.
Access Type | Code | Description |
---|---|---|
Read Type | ||
R | R | Read |
Write Type | ||
W | W | Write |
Reset or Default Value | ||
-n | Value after reset or the default value |
ALGO_CTRL1 is shown in ALGO_CTRL1 Register and described in ALGO_CTRL1 Register Field Descriptions.
Return to the Summary Table.
Algorithm control register for debug
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
OVERRIDE | DIGITAL_SPEED_CTRL | ||||||
W-0h | W-0h | ||||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
DIGITAL_SPEED_CTRL | |||||||
W-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
CLOSED_LOOP_DIS | FORCE_ALIGN_EN | FORCE_SLOW_FIRST_CYCLE_EN | FORCE_IPD_EN | FORCE_ISD_EN | FORCE_ALIGN_ANGLE_SRC_SEL | FORCE_IQ_REF_SPEED_LOOP_DIS | |
W-0h | W-0h | W-0h | W-0h | W-0h | W-0h | W-0h | |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
FORCE_IQ_REF_SPEED_LOOP_DIS | |||||||
W-0h | |||||||
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31 | OVERRIDE | W | 0h | Use to control the SPD_CTRL bits.
If OVERRIDE = 1b, speed command can be written by the user through serial interface.
0h = SPEED_CMD using Analog/PWM/Freq mode 1h = SPEED_CMD using SPD_CTRL[14:0] |
30-16 | DIGITAL_SPEED_CTRL | W | 0h | Digital speed control If OVERRIDE = 1b, then SPEED_CMD is control using DIGITAL_SPEED_CTRL |
15 | CLOSED_LOOP_DIS | W | 0h | Use to disable closed loop
0h = Enable Closed Loop 1h = Disable Closed loop, motor commutation in open loop |
14 | FORCE_ALIGN_EN | W | 0h | Force align state enable
0h = Disable Force Align state, device comes out of align state if MTR_STARTUP is selected as ALIGN or DOUBLE ALIGN 1h = Enable Force Align state, device stays in align state if MTR_STARTUP is selected as ALIGN or DOUBLE ALIGN |
13 | FORCE_SLOW_FIRST_CYCLE_EN | W | 0h | Force slow first cycle enable
0h = Disable Force Slow First Cycle state, device comes out of slow first cycle state if MTR_STARTUP is selected as SLOW FIRST CYCLE 1h = Enable Force Slow First Cycle state, device stays in slow first cycle state if MTR_STARTUP is selected as SLOW FIRST CYCLE |
12 | FORCE_IPD_EN | W | 0h | Force IPD enable
0h = Disable Force IPD state, device comes out of IPD state if MTR_STARTUP is selected as IPD 1h = Enable Force IPD state, device stays in IPD state if MTR_STARTUP is selected as IPD |
11 | FORCE_ISD_EN | W | 0h | Force ISD enable
0h = Disable Force ISD state, device comes out of ISD state if ISD_EN is set 1h = Enable Force ISD state, device stays in ISD state if ISD_EN is set |
10 | FORCE_ALIGN_ANGLE_SRC_SEL | W | 0h | Force align angle state source select
0h = Force Align Angle defined by ALIGN_ANGLE 1h = Force Align Angle defined by FORCED_ALIGN_ANGLE |
9-0 | FORCE_IQ_REF_SPEED_LOOP_DIS | W | 0h | Sets Iq_ref when speed loop is disabled If SPEED_LOOP_DIS = 1b, then Iq_ref is set using IQ_REF_SPEED_LOOP_DIS Iq_ref = (FORCE_IQ_REF_SPEED_LOOP_DIS / 500) * 10, if FORCE_IQ_REF_SPEED_LOOP_DIS < 500 -(FORCE_IQ_REF_SPEED_LOOP_DIS - 512) / 500 * 10 if FORCE_IQ_REF_SPEED_LOOP_DIS > 512 Valid values are 0 to 500 and 512 to 1000 |
ALGO_CTRL2 is shown in ALGO_CTRL2 Register and described in ALGO_CTRL2 Register Field Descriptions.
Return to the Summary Table.
Algorithm control register for debug
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
RESERVED | CURRENT_LOOP_DIS | FORCE_VD_CURRENT_LOOP_DIS | |||||
W-0h | W-0h | W-0h | |||||
23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
FORCE_VD_CURRENT_LOOP_DIS | |||||||
W-0h | |||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
FORCE_VQ_CURRENT_LOOP_DIS | |||||||
W-0h | |||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
FORCE_VQ_CURRENT_LOOP_DIS | MPET_CMD | MPET_R | MPET_L | MPET_KE | MPET_MECH | MPET_WRITE_SHADOW | |
W-0h | W-0h | W-0h | W-0h | W-0h | W-0h | W-0h | |
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-27 | RESERVED | W | 0h | Reserved |
26 | CURRENT_LOOP_DIS | W | 0h | Use to control the FORCE_VD_CURRENT_LOOP_DIS and FORCE_VQ_CURRENT_LOOP_DIS.
If CURRENT_LOOP_DIS = 1b, current loop and speed loop are disabled
0h = Enable Current Loop 1h = Disable Current Loop |
25-16 | FORCE_VD_CURRENT_LOOP_DIS | W | 0h | Sets Vd_ref when current loop and speed loop are disabled If CURRENT_LOOP_DIS = 1b, then Vd is controlled using FORCE_VD_CURRENT_LOOP_DIS Vd_ref = (FORCE_VD_CURRENT_LOOP_DIS / 500) if FORCE_VD_CURRENT_LOOP_DIS < 500 -(FORCE_VD_CURRENT_LOOP_DIS - 512) / 500 if FORCE_VD_CURRENT_LOOP_DIS > 512 Valid values: 0 to 500 and 512 to 1000 |
15-6 | FORCE_VQ_CURRENT_LOOP_DIS | W | 0h | Sets Vq_ref when current loop speed loop are disabled If CURRENT_LOOP_DIS = 1b, then Vq is controlled using FORCE_VQ_CURRENT_LOOP_DIS Vq_ref = (FORCE_VQ_CURRENT_LOOP_DIS / 500) if FORCE_VQ_CURRENT_LOOP_DIS < 500 -(FORCE_VQ_CURRENT_LOOP_DIS - 512) / 500 if FORCE_VQ_CURRENT_LOOP_DIS > 512 Valid values: 0 to 500 and 512 to 1000 |
5 | MPET_CMD | W | 0h | Initiates motor parameter measurement routine when set to 1b |
4 | MPET_R | W | 0h | Enables motor resistance measurement during motor parameter measurement routine
0h = Disable Motor Resistance measurement during motor parameter measurement routine 1h = Enable Motor Resistance measurement during motor parameter measurement routine |
3 | MPET_L | W | 0h | Enables motor inductance measurement during motor parameter measurement routine
0h = Disable Motor Inductance measurement during motor parameter measurement routine 1h = Enable Motor Inductance measurement during motor parameter measurement routine |
2 | MPET_KE | W | 0h | Enables motor BEMF constant measurement during motor parameter measurement routine
0h = Disables Motor BEMF constant measurement during motor parameter measurement routine 1h = Enable Motor BEMF constant measurement during motor parameter measurement routine |
1 | MPET_MECH | W | 0h | Enables motor mechanical parameter measurement during motor parameter measurement routine
0h = Disable Motor mechanical parameter measurement during motor parameter measurement routine 1h = Enable Motor mechanical parameter measurement during motor parameter measurement routine |
0 | MPET_WRITE_SHADOW | W | 0h | Write measured parameters to shadow register when set to 1b |
CURRENT_PI is shown in CURRENT_PI Register and described in CURRENT_PI Register Field Descriptions.
Return to the Summary Table.
Current PI controller used
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
CURRENT_LOOP_KP | CURRENT_LOOP_KI | ||||||||||||||
R-0h | R-0h | ||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
CURRENT_LOOP_KI | RESERVED | ||||||||||||||
R-0h | R-0h | ||||||||||||||
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-22 | CURRENT_LOOP_KP | R | 0h | 10-bit value for current loop Kp; same scaling as CURR_LOOP_KP |
21-12 | CURRENT_LOOP_KI | R | 0h | 10-bit value for current loop Ki; same scaling as CURR_LOOP_KI |
11-0 | RESERVED | R | 0h | Reserved |
SPEED_PI is shown in SPEED_PI Register and described in SPEED_PI Register Field Descriptions.
Return to the Summary Table.
Speed PI controller used
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
SPEED_LOOP_KP | SPEED_LOOP_KI | ||||||||||||||
R-0h | R-0h | ||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
SPEED_LOOP_KI | RESERVED | ||||||||||||||
R-0h | R-0h | ||||||||||||||
Bit | Field | Type | Reset | Description |
---|---|---|---|---|
31-22 | SPEED_LOOP_KP | R | 0h | 10-bit value for speed loo Kp; same scaling as SPD_LOOP_KP |
21-12 | SPEED_LOOP_KI | R | 0h | 10-bit value for speed loop Ki; same scaling as SPD_LOOP_KI |
11-0 | RESERVED | R | 0h | Reserved |