Digital-to-analog converter (DAC1)
RM0365
399/1080
DocID025202 Rev 7
16.7 Triangle-wave generation
It is possible to add a small-amplitude triangular waveform on a DC or slowly varying signal.
DAC triangle-wave generation is selected by setting WAVEx[1:0] to “10”. The amplitude is
configured through the MAMPx[3:0] bits in the DAC_CR register. An internal triangle counter
is incremented three APB clock cycles after each trigger event. The value of this counter is
then added to the DAC_DHRx register without overflow and the sum is stored into the
DAC_DORx register. The triangle counter is incremented as long as it is less than the
maximum amplitude defined by the MAMPx[3:0] bits. Once the configured amplitude is
reached, the counter is decremented down to 0, then incremented again and so on.
It is possible to reset triangle wave generation by resetting the WAVEx[1:0] bits.
Figure 116. DAC triangle wave generation
Figure 117. DAC conversion (SW trigger enabled) with triangle wave generation
Note:
The DAC trigger must be enabled for triangle generation by setting the TENx bit in the
DAC_CR register.
The MAMPx[3:0] bits must be configured before enabling the DAC, otherwise they cannot
be changed.
-!-0X;=MAXAMPLITUDE
$!#?$(2XBASEVALUE
$!#?$(2XBASEVALUE
)NCREMENTATION
AIC
$ECREMENTATION
$3%B&/.
[$%(
[$%(
'+5
'25
DLE
[$%)
6:75,*
[$&