SLAAES1 April   2026 TAA5212 , TAC5112 , TAC5112-Q1 , TAC5212

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
  5. 2Detailed Description
    1. 2.1 What is an Incremental ADC (IADC)?
    2. 2.2 IADC Operation
      1. 2.2.1 RESET
      2. 2.2.2 SKIP
      3. 2.2.3 CONVERT
    3. 2.3 IADC Modes of Operation
    4. 2.4 Test Examples Using TAC5212EVM-K
      1. 2.4.1 One-Shot, Single Channel Conversion
      2. 2.4.2 One-Shot, Multichannel Conversion
      3. 2.4.3 One-Shot Conversion Using GPIO2
      4. 2.4.4 Sequential, Single Channel Conversion
      5. 2.4.5 Sequential, Multichannel Conversion
      6. 2.4.6 Impact of OSR on the IADC Output
  6. 3Summary
  7. 4References

One-Shot Conversion Using GPIO2

In this test, the IADC is configured to a one-shot, single-channel conversion. In this example, instead of initiating a conversion through I2C write, the conversion is initiated by pulling the GPIO2 pin to HI. The two ADCs of the TAC5212 convert the input DC voltage of all four input channels set as per Figure 2-2(a).

The results corresponding to this example are listed in Table 2-6.

####################################################################
##### IADC Configured in One-Shot Mode using GPIO2 
w a0 00 00
w a0 01 01
w a0 02 09
d 10

#Configure ADC channels
w a0 50 88 #Channel 1 - DC-coupled, Single-ended MUX INP1 input
w a0 55 88 #Channel 1 - DC-coupled, Single-ended MUX INP2 input

w a0 0b 10 #Configure GPIO2 as GPI
w a0 15 20 #Use GPIO2 to initiate conversion on IADC

#IADC Configurations
w a0 51 80 #Enable IADC in one-shot single channel mode
w a0 4c 6e #NSKIP = 1024, NRESET = 75, OSR = 128

w a0 00 01 #Page 1
w a0 55 08 #Get IADC data in diags register
w a0 00 00

w a0 76 f0
w a0 78 80 #Power up ADC

b #Breakpoint, Set GPIO2 to 1 here

r a0 51 01 #Read conversion status
#Read IADC Locations
w a0 00 01 #Page 1
r a0 62 03 #IADC Channel 1
r a0 65 03 #IADC Channel 2
w a0 00 00

b #Breakpoint, Set GPIO2 to 0 here
d 64

r a0 51 01 #Read conversion status
#Read IADC Locations (will read same value as above)
w a0 00 01 #Page 1
r a0 62 03 #IADC Channel 1
r a0 65 03 #IADC Channel 2
w a0 00 00

b #Breakpoint, Set GPIO2 to 1 here
d 64

r a0 51 01 #Read conversion status
#Read IADC Locations
w a0 00 01 #Page 1
r a0 62 03 #IADC Channel 1
r a0 65 03 #IADC Channel 2
w a0 00 00

b #Breakpoint, Set GPIO2 to 0 here
d 64

r a0 51 01 #Read conversion status
#Read IADC Locations (will read same value as above)
w a0 00 01 #Page 1
r a0 62 03 #IADC Channel 1
r a0 65 03 #IADC Channel 2
w a0 00 00

w a0 78 00 #Power down ADC
w a0 51 00 #Disable IADC
Table 2-6 Readback Values of IADC in One-Shot Single-Channel Conversion Using GPIO2
Readback IterationCH1 Readback CH2 Readback
1
(GPIO2 = 1)
1.610549V
1.677306V(cal)
(0x02E18A)
0.966599V
0.863218V(cal)
(0xFB013D
2
(GPIO2 = 0)
1.610549V
1.677306V(cal)
(0x02E18A)
0.966599V
0.863218V(cal)
(0xFB013D)
3
(GPIO2 = 1)
1.606439V
1.672131V(cal)
(0x02D4AB)
0.962487V
0.858043V(cal)
(0xFAF45D)
4
(GPIO2 = 0)
1.606439V
1.672131V(cal)
(0x02D4AB)
0.962487V
0.858043V(cal)
(0xFAF45D)