
GD32L23x User Manual
207
Figure 13-3. Continuous conversion mode
CH2
CH2
CH2
CH2
CH2
CH2
EOC
Regular
trigger
Sample
Convert
CH2
Software procedure for continuous conversion on a regular channel:
1.
Set the CTN bit in the ADC_CTL1 register;
2.
Configure the RSQ0 with the analog channel number;
3.
Configure the ADC_SAMPTx register;
4.
Configure the ETERC and ETSRC bits in the ADC_CTL1 register if it is needed;
5.
Set the SWRCST bit, or generate an external trigger for the regular group;
6.
Wait the EOC flag to be set;
7.
Read the converted
result
in the ADC_RDATA register;
8.
Clear the EOC flag by writing 0 to it;
9.
Repeat steps 6~8 as soon as the conversion is in need.
To avoid checking, DMA can be used to transfer the converted data:
1.
Set the CTN and DMA bits in the ADC_CTL1 register;
2.
Configure the RSQ0 with the analog channel number;
3.
Configure the ADC_SAMPTx register;
4.
Configure the ETERC and ETSRC bits in the ADC_CTL1 register if it is needed;
5.
Prepare the DMA module to transfer data from the ADC_RDATA;
6.
Set the SWRCST bit, or generate an external trigger for the regular group.
Scan conversion mode
The scan conversion mode will be enabled when the SM bit in the ADC_CTL0 register is set.
In this mode, the ADC performs conversion on the channels with a specific sequence
specified in the ADC_RSQ0~ADC_RSQ2 registers or ADC_ISQ register. When the ADCON
is 1, the ADC samples and converts specified channels one by one in the regular or inserted
group till the end of the regular or inserted group, once the corresponding software trigger or
external trigger is active. The conversion data will be stored in the ADC_RDATA or
ADC_IDATAx register. After conversion of the regular or inserted channel group, the EOC or
EOIC will be set. An interrupt will be generated if the EOCIE or EOICIE bit is set. The DMA
bit in ADC_CTL1 register must be set when the regular channel group works in scan mode.
After conversion of a regular channel group, the conversion can be restarted automatically if
the CTN bit in the ADC_CTL1 register is set.