Hello everyone,
I'm just getting started with the ADS8332. First, I try to read data from a single channel to proof my ADC is working, but even this shows me just the maximum value (65535).
I work with the ESP32 mikrocontroller and got this code so far:
#include <Arduino.h> #include <SPI.h> #define SS 5 #define SCLK_Pin 18 #define MOSI 23 #define MISO 19 #define Reset 22 #define CONVST 17 static const int spiClk = 40 * 10^6; //40MHz int data; void setup() { Serial.begin(115200); pinMode(SS, OUTPUT); digitalWrite(SS, HIGH); //pinMode(CONVST, OUTPUT); //digitalWrite(CONVST, HIGH); SPISettings(spiClk, MSBFIRST, SPI_MODE2); SPI.begin(SCLK_Pin, MISO, MOSI, SS); digitalWrite(SS,LOW); SPI.transfer16(0xE07D); //0b1110000001111101 Serial.println("Uploaded CFR"); SPI.transfer16(0x7000); //0b0111000000000000 Serial.println("Selected Channel 7"); Serial.println(SPI.transfer16(0XC000)); //try to get CFR back. ->Also don't works digitalWrite(SS, HIGH); } void loop() { digitalWrite(SS, LOW), // digitalWrite(CONVST, LOW); // digitalWrite(CONVST, HIGH); // SPI.transfer16(0xD000); // data = SPI.transfer16(0); data = SPI.transfer16(0xD000); digitalWrite(SS, HIGH); Serial.println(data); delay(1000); }
The outcommented lines are attempts the get it work.
Thanks in Advance!