Elmaddin Guliyev
/
ADS1299
configuring and reading adc1299 using spi interface
Diff: main.cpp
- Revision:
- 0:99e31762ab2f
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Wed May 29 03:43:46 2019 +0000 @@ -0,0 +1,90 @@ +#include "ads1299.h" +#include "spi_slave.h" +#include "mbed.h" + +DigitalOut CLKSEL(PB_0); +//DigitalOut STRT(PA_3); +//DigitalOut PWDN(PC_0); +//DigitalOut RST(PA_0); +DigitalOut LED(PC_6); +Serial pc(USBTX, USBRX); + +int main() { + + SPI_INIT(); + RSET(); + wait_ms(1000); + SDATAC(); + wait_us(20); + WREG(ADS129X_REG_CONFIG3,0x00); + wait_us(20); + WREG(ADS129X_REG_CONFIG1,0x94); + wait_us(20); + WREG(ADS129X_REG_CONFIG4,0x08); + wait_us(20); + WREG(0x14,0x80); + wait_us(20); + WREG(ADS129X_REG_CONFIG1,0x2); + wait_us(20); + for (int i = 1; i <= 9; i++) { + configChannel(i, false, ADS129X_GAIN_1X, ADS129X_MUX_SHORT); + } + + + /*SLV_INIT(); + wait_us(1); + */ + /* + CLKSEL = 1; + wait_us(5); + + STRT = 0; + PWDN = 1; + RST = 1; + wait_ms(100); + + RST = 0; + RST = 1; + + wait_ms(1); + //SDATAC(); // device wakes up in RDATAC mode, so send stop signal + */ + //WREG(ADS129X_REG_CONFIG1, ADS129X_SAMPLERATE_512); + // WREG(ADS129X_REG_CONFIG3, (1<<ADS129X_BIT_PD_REFBUF) | (1<<6)); + // WREG(0x14,0x80); + // WREG(ADS129X_REG_CONFIG2, (1<<ADS129X_BIT_INT_TEST) | ADS129X_TEST_FREQ_1HZ); + + // for (int i = 1; i <= 9; i++) { + // configChannel(i, false, ADS129X_GAIN_1X, ADS129X_MUX_NORMAL); + // } + + wait_ms(1); + //STRT = 1; + // RDATAC(); + // START(); + + LED=1; + +while(1){ + +char value[3]; +long buffer[9]; + START(); + if(getData(buffer)){ + for(int channel = 1; channel < 9; channel++) { + + value[0] = (char) (buffer[channel]>>16); + value[1] = (char) (buffer[channel]>>8); + value[2] = (char) (buffer[channel]); + // SLV_SEND(value[0],value[1],value[2]); + + } + + } + + } + + + } + + \ No newline at end of file