Tu Hoang
/
Test_nucleo_MCUUU_EEPROMTEST
EEPROMTEST
Fork of Test_nucleo_MCUUU by
main.cpp
- Committer:
- MockyBirdTwo
- Date:
- 2018-05-08
- Revision:
- 7:65325c237ac5
- Parent:
- 6:7859d19b781a
- Child:
- 8:2875bb7a4e67
File content as of revision 7:65325c237ac5:
#include "mbed.h" // Include files and define parameters. #include "Adafruit_ADS1015.h" #include <vector> I2C i2c_sensorplate_adc(PB_9, PB_8); // I2C for sensorplate. Adafruit_ADS1115 piezo_resistive_adc1(&i2c_sensorplate_adc, 0x48); // i2c pins, i2c address. Adafruit_ADS1115 piezo_resistive_adc2(&i2c_sensorplate_adc, 0x49); // i2c pins, i2c address. Adafruit_ADS1115 piezo_electric_adc(&i2c_sensorplate_adc, 0x4B); // i2c pins, i2c address. Serial usb_serial(SERIAL_TX, SERIAL_RX); // tx, rx int i2c__frequency = 100000; // I2C Frequency. int baud_rate = 115200; // Baud rate. Timer timer; // array to save sensor data DigitalOut myled(LED1); void checkzero (std::vector<int>& sendat, int size){ //Check whether any sensor values are zero for(int i=0;i<size;++i){ if(sendat[i]!= 0) usb_serial.printf("Sensor %d is not zero\n", i); } } int main(){ std::vector<int> S_data(8); i2c_sensorplate_adc.frequency(i2c__frequency); // Set frequency for i2c connection to sensorplate (variable is declared in config part). usb_serial.baud(baud_rate); // Set serial USB connection baud rate (variable is declared in config part). usb_serial.printf("MCUs rule the World !\n"); piezo_resistive_adc1.setGain(GAIN_TWOTHIRDS); // Set ranges of ADC to +/-6.144V (end is marked with #): piezo_resistive_adc2.setGain(GAIN_TWOTHIRDS); usb_serial.printf("Gains set.\n"); timer.start(); while(1){ while(timer.read_us() < 2000){}; timer.reset(); //Set readout frequency myled = !myled; //usb_serial.printf("Piezo electric 0_1 dif %d \n", piezo_electric_adc.readADC_Differential_0_1()); // First PE readout. // usb_serial.printf("Piezo electric 2_3 dif %d \n", piezo_electric_adc.readADC_Differential_2_3()); for (uint8_t t=0; t<4; ++t){ //Save sensor data into array S_data[t] = (int16_t) piezo_resistive_adc1.readADC_SingleEnded(t); //Put first 4 PR sensor data into first 4 S_data array S_data[t+4]= (int16_t) piezo_resistive_adc2.readADC_SingleEnded(t); //Put next 4 PR sensor data into first 4 S_data array } for (uint8_t k = 0; k < 4; ++k) { usb_serial.printf("R %d Ar %d: %d\n", k, 1, S_data[k]); // First 4 PR readout. usb_serial.printf("R %d Ar %d: %d\n", k, 2, S_data[k+4]); // First 4 PR readout. } checkzero(S_data,S_data.size()); } }