SBOU024C august 2004 – july 2023 PGA309
Some sensor applications, require the end-user access to three pins, VS, GND, and Sensor Out. It is also desired in these applications to digitally calibrate the sensor module after its final assembly of sensor and electronics. The PGA309 has a mode that allows the One-Wire interface pin (PRG) to be tied directly to the PGA309 output pin (VOUT), as shown in Figure 4-15.
For the PGA309 + sensor calibration, it is necessary to configure and reconfigure internal registers on the PGA309 and then measure the analog voltage on VOUT as a result of these register value settings. To do this while VOUT is tied to PRG requires the ability to enable and disable VOUT. This allows a multiplexing operation between PRG using the connection as a bidirectional digital interface and VOUT driving the connection as a conditioned sensor output voltage. In addition, it is convenient to configure the Temp ADC for Single Start Convert mode and delay the start of the Temp ADC until after VOUT is enabled and internal circuitry has had a chance to settle to accurate final values. This is especially important in applications that use the Linearization Circuit, tie the sensor to VEXC, and measure temperature external to the PGA309 (that is, a temperature sense series resistor in the upper or lower excitation leg of the bridge sensor).
Register 7 (Output Enable Counter Control Register) contains the control bits for setting both the amount of time VOUT is active on the common connection and also the delay from the time VOUT is enabled to the start of a Temp ADC conversion. These individual bits are defined in Table 4-3 and Table 4-4.
DLY3 [11] | DLY2 [10] | DLY1 [9] | DLY0 [8] | Decimal Equivalent (Initial Counter Value) | Temp ADC Delay (ms)(1) |
---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 1 | 1 | 10 |
0 | 0 | 1 | 0 | 2 | 20 |
0 | 0 | 1 | 1 | 3 | 30 |
0 | 1 | 0 | 0 | 4 | 40 |
0 | 1 | 0 | 1 | 5 | 50 |
0 | 1 | 1 | 0 | 6 | 60 |
0 | 1 | 1 | 1 | 7 | 70 |
1 | 0 | 0 | 0 | 8 | 80 |
1 | 0 | 0 | 1 | 9 | 90 |
1 | 0 | 1 | 0 | 10 | 100 |
1 | 0 | 1 | 1 | 11 | 110 |
1 | 1 | 0 | 0 | 12 | 120 |
1 | 1 | 0 | 1 | 13 | 130 |
1 | 1 | 1 | 0 | 14 | 140 |
1 | 1 | 1 | 1 | 15 | 150 |
Digital In put (Binary) OEN7......OEN0 [7......0] | Decimal Equivalent (Initial Counter Value) | VOUT Enable Timeout (ms) |
---|---|---|
0000 0000 | 0 | 0 (VOUT Disabled) |
0010 0000 | 32 | 320 |
0100 0000 | 64 | 640 |
0110 0000 | 96 | 960 |
1000 0000 | 128 | 1280 |
1010 0000 | 160 | 1600 |
1100 0000 | 192 | 1920 |
1110 0000 | 224 | 2240 |
1111 1111 | 255 | 2550 |
Figure 4-16 details the output enable/disable state machine. Upon initial POR, there is a 25ms wait for communication through either digital interface to prevent the PGA309 from going through its POR sequence and reaching Stand-Alone Mode. The output enable/disable state machine can be forced to run at any time the PGA309 is powered and either digital interface (One-Wire or Two-Wire) can write to Register 7. Writing a non-zero value to OEN7:OEN0 will cause VOUT to be immediately enabled and the Output Enable Counter to be loaded with the OEN7:OEN0 value (decimal equivalent x 10ms = initial Output Enable Counter value). VOUT remains enabled until this initial Output Enable Counter value is decremented to 0 by 10ms increments. VOUT is then disabled and a one second timeout begins waiting for bus activity on either digital interface (PRG pin for three-wire sensor application). As long as there is activity on the PRG pin, the one second timeout will be continually reset. After one second of no bus activity, the PGA309 stops and the state machine will try to read the EEPROM. It is important to store invalid data in the programmed flag values of the EEPROM for this calibration process, to prevent it from being read, which could change the register settings in the PGA309. This will also force the one second timeout to be reset and allow as long as needed for communication to start and stop on PRG. Once all registers in the PGA309 have been set to their desired values, another write to Register 7 will start the process all over again so a new analog value of VOUT can be measured.
The second part of the output enable/disable state machine is the Temp ADC delay. During calibration, the Temp ADC conversion results will be needed at different calibration temperatures. These readings combined with measured VOUT at the respective calibration temperatures are used to calculate the final temperature coefficients to be stored in the Lookup Table part of the external EEPROM. To use this function, the Temp ADC must be set to Single Start Convert mode (CEN = 0, Register 6 [10]). After a write to Register 7, the Temp ADC delay counter is loaded with the DLY3:DLY0 value (decimal equivalent x 10ms = initial Temp ADC delay counter value). This initial Temp ADC delay counter value is decremented to 0 by 10ms increments. When it reaches 0, a single Temp ADC conversion is triggered. No additional write to Register 6 [12] (the ADCS bit) is needed to initiate the conversion. Upon completion of the conversion, this branch of the state machine returns to waiting for the next valid Register 7 write.
The output enable/disable state machine allows three-wire sensor applications to measure temperature through the PGA309, against the calibration standard, for the PGA309 + sensor combination. It also allows PGA309 + sensor characteristics over pressure and temperature to be measured through the PGA309. These real-world results allow for accurate calculation of temperature coefficients for the Lookup Table and, therefore, accurate PGA309 + sensor digital calibration on a module-by-module basis.
The values of the Fault Monitor Alarm bits are latched immediately before the output is disabled to allow their values to be read through the One-Wire interface during factory calibration.
Once the final values are to be programmed into the EEPROM, it is desirable to have the One-Wire Interface disabled in three-wire sensor applications. This prevents VOUT changes in the final end-use from being read back into the PGA309 through the One-Wire interface (PRG pin) and potentially misinterpreted as bus activity, which could then cause VOUT to become disabled. To disable the One-Wire Interface, set the OWD bit to ‘1’ during the final EEPROM program write. The OWD (One-Wire Disable) bit is located in Register 4 [15]. After this final programming, the only way to communicate to the One-Wire Interface (PRG pin) is to cycle power on the PGA309 and begin communication within 33ms.