Hi I am trying to do SPI comm. between ADC7066 and Arduino Uno. I am giving 2V from the external Power supply to the CH1 (AIN1) but getting some random data on SDO. I am using manual mode and SPI mode 0.
Connections:
| ADC7066 | Uno |
| CS | Digital Pin 10 |
| SDI | MOSI (D11 ) |
| SDO | MISO (D12) |
| CLK | CLK (D13) |
| 5V | 5V |
| AVDD | 3.3V |
| AIN1 | 2V |
Arduino CODE:
#include <SPI.h>
const int CS = 10;
uint32_t ADC_GET(int CS);
#define DELAYTIME 2 //delay, in seconds
void setup(){
pinMode(13, OUTPUT); //SPI SCK
pinMode(11, OUTPUT); //SPI MOSI
pinMode(12, INPUT); //SPI MISO
pinMode (CS, OUTPUT);
digitalWrite(CS, HIGH);
SPI.begin();
SPI.setBitOrder(MSBFIRST);
SPI.setDataMode(SPI_MODE0);
SPI.setClockDivider(SPI_CLOCK_DIV2);
Serial.begin(9600);
}
void loop() {
uint8_t RD_REG = 0b00010000;
uint8_t Add = 0x11;
uint8_t Data = 0x00;
digitalWrite(CS, LOW);
SPI.transfer(WR_REG);
SPI.transfer(0b00010001);
SPI.transfer(Data);
digitalWrite(CS, HIGH);
uint32_t data = (RD_REG)+(Add)+ (Data); //combine bytes, scale 32bit to 24bit
return data;
delay(5000);
}

