AD5231 mit Arduino

Allgemein

Der AD5231 eist ein Digitaler Potentiometer mit 1024-Positionen. Den IC gibt es mit folgenden Widerstandswerten:  10k, 50k und 100k. Die Kommunikation erfolgt per SPI Interface. Der AD5231 ist in ein 16-lead TSSOP Gehäuse verpackt.

Pin Configuration

Outline Dimension

Outline Dimension:

Aufbau

Verbindungen:

AD5231BRUZ100 – PINs Arduino Micro – PINs
2 CK
3 MO
5,6,7 GND
11,12,13 +5V
14 10

Steckbrett:

Arduino Code

// Erste Tests mit einem Digitalen Potentiometer
// des Types: AD5231 mit SPI-Schnittstelle

#include <SPI.h>

const int slaveSelect = 10; // Zur Aktivierung es aktiven Slaves verwendeter Pin

void setup() 
{
  SPI.begin();
  SPI.setDataMode (SPI_MODE3);  //Mode 3: CPOL=1, CPHA=1 / (1,1)
  pinMode(slaveSelect, OUTPUT);
}
  
void loop() 
{
  digitalWrite(slaveSelect,LOW); // Slave waehlen
  SPI.transfer(176);  // 0xB0 MSB
  SPI.transfer(0);    // 0x00
  SPI.transfer(11);   // 0x11 LSB
  digitalWrite(slaveSelect,HIGH); // Slave deaktivieren
  delay(1000);
}

Messergebnisse und Erkentnisse

Blau: Clock
Rot: Daten
Grün: Chipselect

Da sich die Widerstandstoleranz des AD5231 zwischen -40 % … +20 % bewegt, ist der „Full Scale Wert“ von 77kOhm noch in der Toleranz.

Full Scale = 77,0 kOhm
Bei DEC: 10 = 0,811 kOhm
Bei DEC: 11 = 0,886 kOhm

=> Pro Step (1Bit) 0,075 kOhm
77 kOhm/1024 = 0,75 kOhm (kleinster Widerstandswert)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert