GD32VF103 User Manual
289
Result
:
When the wanted input signal is
captured, TIMERx_CHxCV will be set by counter’s
value and CHxIF is asserted. If the CHxIF is 1, the CHxOF will also be asserted. The
interrupt and DMA request will be asserted or not based on the configuration of CHxIE
and CHxDEN in TIMERx_DMAINTEN.
Direct generation
: A DMA request or interrupt is generated by setting CHxG directly.
The input capture mode can be also used for pulse width measurement from signals on the
TIMERx_CHx pins. For example, PWM signal connects to CI0 input. Select CI0 as channel 0
capture signals by setting CH0MS to 2
’
b01 in the channel control register (TIMERx_CHCTL0)
and set capture on rising edge. Select CI0 as channel 1 capture signal by setting CH1MS to
2
’
b10 in the channel control register (TIMERx_CHCTL0) and set capture on falling edge. The
counter is set to restart mode and is restarted on channel 0 rising edge. Then the
TIMERX_CH0CV can measure the PWM period and the TIMERx_CH1CV can measure the
PWM duty cycle.
Output compare mode
In output compare mode, the TIMERx can generate timed pulses with programmable position,
polarity, duration and frequency. When the counter matches the value in the TIMERx_CHxCV
register of an output compare channel, the channel (n) output can be set, cleared, or toggled
based on CHxCOMCTL. When the counter reaches the value in the TIMERx_CHxCV register,
the CHxIF bit will be set and the channel (n) interrupt is generated if CHxIE = 1. And the DMA
request will be asserted, if CxCDE=1.
So the process can be divided into several steps as below:
Step1:
Clock configuration. Such as clock source, clock prescaler and so on.
Step2:
Compare mode configuration.
Set the shadow enable mode by CHxCOMSEN
Set the output mode (Set/Clear/Toggle) by CHxCOMCTL
Select the active high polarity by CHxP
Enable the output by CHxEN
Step3:
Interrupt/DMA-request enables configuration by CHxIE/CxDEN
Step4:
Compare output timing configuration by TIMERx_CAR and TIMERx_CHxCV.
About the CHxVAL, you can change it on the go to meet the waveform you expected.
Step5:
Start the counter by configuring CEN to 1.
Figure 15-43. Output-compare in three modes
toggle/set/clear. CAR=0x63, CHxVAL=0x3