Initial report by Amit Pitaru, 13, Feb, 2006

Datasheet Report for MAXIM DS1804: Non-Volatile Trimmer Potentiometer

1. Description:

The DS1804 is a digital potentiometer. It operates like a regular Pot, but instead of manually rotating a wiper, we can program the wiper's position with a micro-controller (or three on/off switches). The DS1804 has non-volatile memory, so it remembers the wiper's position when turned off. The DS1804 allows us to move the wiper to 100 different locations (steps), and comes in three models: 10K, 50K, and 100K.

2. Applications

I'm waiting on an order to test this unit, and will update this page accordingly. This is what I think is happening...
The DS1804 can be used instead of a regular POT in any circuit. Being programmable, it is especially suited for auto-calibration applications. For example, it could be used in a voltage-devider circuit, allowing the microchip to determine and save the best resistance-value for the sensor (I'll attempt such a circuit during the semester).

3. Electrical Characteristics

3.1 Download the DS1804 DATASHEET

3.2 Available Models:

Free samples are available on the Maxim site. You may probably want one of these PDIP models (for breadboards/Perf-boards):
DS1804-010 - 10K model
DS1804-050 - 50K model
DS1804-0100 - 100K model

3.3 Voltage Operating Conditions

3.3.a Quick specifications:

- Supplied Voltage, Vcc: The DS1804 requires between 3V and 5V to operate.
- The programmable pins should be provided digital input: 0V (low) / Vcc (high).
- The resistor inputs can take values between Gnd (0) and Vcc (3-5V).

3.3.b Detailed specifications:

Vcc Supply voltage: The DS1804 operates from 2.7V to 5.5V, and can therefor share a power-source with a micro-controller. For optimal operation, supply voltage from 3V to 5V.
Input Logic 1/0: To program the DS1804 (see programming procedure section), supply each of the input pins the following voltages:
To pull the pin down (Low logic-0), supply very low voltage from -0.5V to 0.6V (or maximum of 0.8V if Supplied voltage is very low - 2.7V)
To pull the pin up (High logic-1), supply voltage from 2V to Vcc+0.5V. Vcc is the Supply voltage (usually from 3V to 5V).
Resistor pins: The three resistor pins can handle voltage from Gnd-0.5V to Vcc+0.5V. In a typical circuit Gnd is usually 0V and Vcc is 5V; in this case the pins will handle between -0.5V to 5.5V

4. Pins Description:

* Some of the following text is taken directly from the datasheet:

Power Supply to logic unit and wiper:

VCC - Power Supply. The DS1804 will support supply voltages ranging from +2.7V to +5.5V.
GND - Ground.

Resistor Pins:

H - High-Terminal Potentiometer. This is the high terminal of the potentiometer. It is not required that this terminal be connected to a potential greater than the L-terminal. Voltage applied to the H-terminal cannot exceed the power-supply voltage, VCC, or go below ground.
L - Low-Terminal Potentiometer. This is the low terminal of the potentiometer. It is not required that this terminal be connected to a potential less than the H-terminal. Voltage applied to the L-terminal cannot exceed the power-supply voltage, VCC, or go below ground.
Verify in class: if i get this right - these two pins mirror leads on a regular Pot. In that sense, they are interchangeable (it doesn't matter if L is connected to Vcc and H to Gnd.
W - Wiper of the Potentiometer. This pin is the wiper of the potentiometer. Its position on the resistor array is controlled by the three-terminal control port. Voltage applied to the wiper cannot exceed the power-supply voltage, VCC, or go below ground.

Login-unit pins, used for programming the wiper:

CS - Chip Select. The CS input is used to activate the control port of the DS1804. This input is active low. When in a high-state, activity on the INC and U/ D port pins will not affect or change wiper position.
INC - Wiper Movement Control. This input provides for wiper position changes when the CS pin is low. Wiper position changes of the W-terminal will occur one position per high-to-low transition of this input signal. Position changes will not occur if the CS pin is in a high state.
U/ D - Up/Down Control. This input sets the direction of wiper movement. When in a high state and CS is low, any high-to-low transition on INC will cause a one position movement of the wiper towards the H-terminal. When in a low state and CS is low, any high-to-low transitions on INC will cause the position of the wiper to move towards the L-terminal.

In other words, to program the wiper, do the following:

1. Connect CS to Gnd.
2. To move the wiper towards the H pin, set U/D pin to High (Vcc).
OR To move the wiper towards the L pin, set U/D pin to Low (Gnd).
3. Set INC to High (Vcc), and than Low (Gnd). This transition will move the wiper one unit in the direction set in step 2.

5. Microcontroller Connections


6. Code Sample


7. Typical Behavior


8. Application Notes


9. Questions:

- Am i correct that the three resistor pins (H/L/W) mirror pins on a regular Pot?
- Are the L/H pins interchangeable, just like a regular pot?
- Is (Gnd-0.5V) really -0.5V when Gnd is 0v?