EEPROMTEST

Dependencies:   ADS1015 mbed

Fork of Test_nucleo_MCUUU by BAP TUDelft

Committer:
MockyBirdTwo
Date:
Mon May 07 11:02:15 2018 +0000
Revision:
5:ff21a388985c
Parent:
4:fd10d8609295
Parent:
3:efb3a5b4bc9e
Child:
6:7859d19b781a
compiller errors removed

Who changed what in which revision?

UserRevisionLine numberNew contents of line
xorjoep 0:952479e15354 1 #include "mbed.h" // Include files and define parameters.
xorjoep 0:952479e15354 2 #include "Adafruit_ADS1015.h"
xorjoep 0:952479e15354 3
xorjoep 0:952479e15354 4 I2C i2c_sensorplate_adc(PB_9, PB_8); // I2C for sensorplate.
xorjoep 0:952479e15354 5 Adafruit_ADS1115 piezo_resistive_adc1(&i2c_sensorplate_adc, 0x48); // i2c pins, i2c address.
xorjoep 0:952479e15354 6 Adafruit_ADS1115 piezo_resistive_adc2(&i2c_sensorplate_adc, 0x49); // i2c pins, i2c address.
xorjoep 0:952479e15354 7 Adafruit_ADS1115 piezo_electric_adc(&i2c_sensorplate_adc, 0x4B); // i2c pins, i2c address.
xorjoep 0:952479e15354 8 Serial usb_serial(SERIAL_TX, SERIAL_RX); // tx, rx
xorjoep 0:952479e15354 9
xorjoep 0:952479e15354 10 int i2c__frequency = 100000; // I2C Frequency.
xorjoep 0:952479e15354 11 int baud_rate = 115200; // Baud rate.
xorjoep 0:952479e15354 12
xorjoep 4:fd10d8609295 13 Timer timer;
xorjoep 4:fd10d8609295 14
MockyBirdTwo 5:ff21a388985c 15 int S_data[8]={}; // array to save sensor data
MockyBirdTwo 3:efb3a5b4bc9e 16
xorjoep 0:952479e15354 17 DigitalOut myled(LED1);
MockyBirdTwo 3:efb3a5b4bc9e 18
xorjoep 0:952479e15354 19 int main(){
xorjoep 0:952479e15354 20
xorjoep 0:952479e15354 21
xorjoep 0:952479e15354 22 i2c_sensorplate_adc.frequency(i2c__frequency); // Set frequency for i2c connection to sensorplate (variable is declared in config part).
xorjoep 0:952479e15354 23 usb_serial.baud(baud_rate); // Set serial USB connection baud rate (variable is declared in config part).
xorjoep 0:952479e15354 24
MockyBirdTwo 3:efb3a5b4bc9e 25 usb_serial.printf("MCUs rule the World !\n");
xorjoep 1:8c5bcf47869e 26
xorjoep 0:952479e15354 27 piezo_resistive_adc1.setGain(GAIN_TWOTHIRDS); // Set ranges of ADC to +/-6.144V (end is marked with #):
xorjoep 0:952479e15354 28 piezo_resistive_adc2.setGain(GAIN_TWOTHIRDS);
xorjoep 0:952479e15354 29
xorjoep 4:fd10d8609295 30 usb_serial.printf("Gains set.\n");
xorjoep 1:8c5bcf47869e 31
xorjoep 4:fd10d8609295 32 timer.start();
xorjoep 0:952479e15354 33 while(1){
xorjoep 4:fd10d8609295 34 while(timer.read_us() < 2000){}; timer.reset(); //Set readout frequency
xorjoep 0:952479e15354 35
xorjoep 0:952479e15354 36 myled = !myled;
xorjoep 0:952479e15354 37 //usb_serial.printf("Piezo electric 0_1 dif %d \n", piezo_electric_adc.readADC_Differential_0_1()); // First PE readout.
xorjoep 0:952479e15354 38 // usb_serial.printf("Piezo electric 2_3 dif %d \n", piezo_electric_adc.readADC_Differential_2_3());
xorjoep 0:952479e15354 39
xorjoep 0:952479e15354 40 for (uint8_t k = 0; k < 4; ++k) {
xorjoep 4:fd10d8609295 41 usb_serial.printf("R %d Ar %d: %d\n", k, 1, (int16_t) piezo_resistive_adc1.readADC_SingleEnded(k)); // First 4 PR readout.
xorjoep 4:fd10d8609295 42 usb_serial.printf("R %d Ar %d: %d\n", k, 2, (int16_t) piezo_resistive_adc2.readADC_SingleEnded(k)); // First 4 PR readout.
xorjoep 0:952479e15354 43 }
MockyBirdTwo 5:ff21a388985c 44
xorjoep 0:952479e15354 45 usb_serial.printf("This program runs since %d seconds.\n", i++);
MockyBirdTwo 3:efb3a5b4bc9e 46
MockyBirdTwo 3:efb3a5b4bc9e 47 for (uint8_t t=0; t<4; ++t){ //Save data into array
MockyBirdTwo 5:ff21a388985c 48 S_data[t] = piezo_resistive_adc1.readADC_SingleEnded(t); //Put first 4 PR data into first 4 S_data array
MockyBirdTwo 5:ff21a388985c 49 S_data[t+4]=piezo_resistive_adc2.readADC_SingleEnded(t); //Put next 4 PR data into first 4 S_data array
MockyBirdTwo 3:efb3a5b4bc9e 50 }
MockyBirdTwo 5:ff21a388985c 51
xorjoep 0:952479e15354 52 }
MockyBirdTwo 3:efb3a5b4bc9e 53
xorjoep 0:952479e15354 54 }