
15. Three-Phase Motor Control Timer Function
Figure 15.14
Sawtooth Wave Modulation Operation
Dead time
DUB0 = 0
n2
n1
Sawtooth Waveform as a Carrier Wave
Triangular wave
TB2S bit in the
TABSR register
Signal wave
Timer B2
Timer A4 start trigger signal(1)
TA4 register
n3
n4
n5
n6
n7
n8
INV14 bit in
INVC1 register = 0
("L" active)
Dead time
Transfer values to the three-phase shift register from registers IDB0 and IDB1
Rewrite registers IDB0 and IDB1
U-phase output signal(1)
U-phase
INV14 bit in
INVC1 register = 1
("H" active)
U-phase
IR bit in the TB2IC register
DU0 = 1
DUB1 = 1
DUB1 = 0
DUB0 = 0
DU0 = 0
DU1 = 1
Set to 0 by an interrupt request acknowledgement or by program
n2
n1
n4
n3
n6
n5
n8
n7
Timer A4 one-shot pulse(1)
DU1 = 1
NOTE:
1. Internal signals. See Three-Phase Motor Control Timer Function Block Diagram.
The above applies under the following conditions:
- INVC0 register: INV01 bit = 0 (ICTB2 counter is incremented by 1 when timer B2 underflows)
INV02 bit = 1 (Three-phase control timer function used)
INV03 bit = 1 (Three-phase control timer output enabled)
INV06 bit = 1 (Sawtooth wave modulation mode)
- INVC1 register: INV10 bit = 0 (Timer B2 underflows)
INV11 bit = 0 (Three-phase mode 0)
INV15 bit = 0 (Dead time enabled)
INV16 bit = 0 (Falling edge of one-shot pulses of timers A1, A2, and A4)
- ICTB2 register = 01h (Timer B2 interrupt is generated every timer B2 underflow)
- TB2SC register: PWCON bit = 0 (Timer B2 underflows)
The following shows examples to change PWM output levels.
- Default value of the timer: TA4 = n1 (The TA4 register is changed whenever the timer B2 interrupt is generated.)
First time TA4 = n2, second time TA4 = n3, third time TA4 = n4, fourth time = n5, and so on.
- Default value of the registers IDB0 and IDB1: DU0 = 1, DUB0 = 1, DU1 = 1, and DUB1 = 1
They are changed to DU0 = 1, DUB0 = 0, DU1 = 1, and DUB1 = 1 when the fourth timer B2 interrupt is generated.