The Dual Digital Pot V1.0 (Manufacturer Part ID: DFR-10838) by DFRobot is a versatile electronic component designed to provide precise control over resistance values. This dual digital potentiometer is ideal for applications that require variable resistance adjustments, such as audio volume control, sensor calibration, and adjustable power supplies.
Parameter | Value |
---|---|
Supply Voltage | 2.7V to 5.5V |
Resistance Range | 10kΩ |
Number of Channels | 2 |
Interface | I2C |
Operating Current | 1mA (typical) |
Operating Temperature | -40°C to +85°C |
Pin Number | Pin Name | Description |
---|---|---|
1 | VCC | Power supply (2.7V to 5.5V) |
2 | GND | Ground |
3 | SDA | I2C data line |
4 | SCL | I2C clock line |
5 | A0 | I2C address bit 0 |
6 | A1 | I2C address bit 1 |
7 | WP | Write protect (connect to GND for normal use) |
8 | NC | Not connected |
#include <Wire.h>
#define POT_I2C_ADDRESS 0x2C // Adjust based on A0 and A1 configuration
void setup() {
Wire.begin(); // Initialize I2C communication
Serial.begin(9600); // Initialize serial communication for debugging
}
void loop() {
setPotentiometer(0, 128); // Set channel 0 to mid-scale (128 out of 255)
delay(1000); // Wait for 1 second
setPotentiometer(1, 64); // Set channel 1 to quarter-scale (64 out of 255)
delay(1000); // Wait for 1 second
}
void setPotentiometer(uint8_t channel, uint8_t value) {
Wire.beginTransmission(POT_I2C_ADDRESS);
Wire.write(channel); // Select the channel (0 or 1)
Wire.write(value); // Set the resistance value (0 to 255)
Wire.endTransmission();
Serial.print("Channel ");
Serial.print(channel);
Serial.print(" set to ");
Serial.println(value);
}
No Response from the Potentiometer:
Incorrect Resistance Values:
I2C Communication Errors:
By following this documentation, users can effectively integrate and utilize the Dual Digital Pot V1.0 in their electronic projects, ensuring precise control over resistance values for various applications.