27.3 Functional Description
An overview of the IDAC module is shown in
Figure 27.1 IDAC Overview on page 921
. The IDAC is designed to source or sink a
programmable current which can be controlled by setting the range and the step in the RANGESEL and STEPSEL bitfields in
IDAC_CURRPROG register. The IDAC output enable can be controlled by software or PRS. The IDAC is enabled by setting EN in
IDAC_CTRL.
IDAC
OUTPAD
RANGESEL
STEPSEL
EN
CURSINK
Internal
output
PRSSEL
MINOUTTRANS
APORTOUTENPRS
APORTOUTEN
PRSCH0 PRSCHn
MAINOUTEN
PRSCH0 PRSCHn
PRSSEL
MAINOUTENPRS
APORT1Y
APORT1X
Figure 27.1. IDAC Overview
27.3.1 Current Programming
The four different current ranges can be selected by configuring the RANGESEL bitfield in IDAC_CURRPROG. The current output in
each range is linearly programmable in 32 steps, and is controlled by the STEPSEL bitfield in IDAC_CURRPROG. These current rang-
es and their step sizes are shown in
Table 27.1 Range Selection on page 921
.
Table 27.1. Range Selection
Range Select
Range Value [µA]
Step Size [nA]
Step Counts
0
0.05 - 1.6
50
32
1
1.6 - 4.7
100
32
2
0.5 - 16
500
32
3
2 - 64
2000
32
27.3.2 IDAC Enable and Warm-up
The IDAC is enabled by setting the EN bit in IDAC_CTRL. When this bit is set, the IDAC must stabilize before its output current is
stable.
It is important to wait until the IDAC is warmed up, or until any current programming is complete and the output current is stabilized,
before entering EM1, EM2, or EM3.
Reference Manual
IDAC - Current Digital to Analog Converter
silabs.com
| Building a more connected world.
Rev. 1.1 | 921