def

Committer:
arturogasca
Date:
Thu Jan 19 20:22:47 2017 +0000
Revision:
0:0e0eedacd26a
Definiciones

Who changed what in which revision?

UserRevisionLine numberNew contents of line
arturogasca 0:0e0eedacd26a 1 //////////////////////////////Definiciones BLE
arturogasca 0:0e0eedacd26a 2
arturogasca 0:0e0eedacd26a 3 #define WAIT_CONECTION_TIMEOUT 20
arturogasca 0:0e0eedacd26a 4 const char *bleName = "BIOMETRICOS";
arturogasca 0:0e0eedacd26a 5 BLEDevice ble;
arturogasca 0:0e0eedacd26a 6 UARTService *uartServicePtr;
arturogasca 0:0e0eedacd26a 7 bool BLE_DATA_AVAILABLE = false;
arturogasca 0:0e0eedacd26a 8 bool BLE_AVAILABLE =true;
arturogasca 0:0e0eedacd26a 9 bool BLE_TIMEOUT = true;
arturogasca 0:0e0eedacd26a 10 int BleSeconds = 0;
arturogasca 0:0e0eedacd26a 11 uint8_t datosBle[20];
arturogasca 0:0e0eedacd26a 12
arturogasca 0:0e0eedacd26a 13
arturogasca 0:0e0eedacd26a 14 #define NEED_CONSOLE_OUTPUT 0 /* Set this if you need debug messages on the console;
arturogasca 0:0e0eedacd26a 15 * it will have an impact on code-size and power consumption. */
arturogasca 0:0e0eedacd26a 16 #if NEED_CONSOLE_OUTPUT
arturogasca 0:0e0eedacd26a 17 #define DEBUG(STR) { if (uartServicePtr) uartServicePtr->write(STR, strlen(STR)); }
arturogasca 0:0e0eedacd26a 18 #else
arturogasca 0:0e0eedacd26a 19 #define DEBUG(...) /* nothing */
arturogasca 0:0e0eedacd26a 20 #endif /* #if NEED_CONSOLE_OUTPUT */
arturogasca 0:0e0eedacd26a 21
arturogasca 0:0e0eedacd26a 22
arturogasca 0:0e0eedacd26a 23 ///////////////////////////Definiciones para RTC
arturogasca 0:0e0eedacd26a 24
arturogasca 0:0e0eedacd26a 25 const char *week[] = {"Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado"};//days of the week
arturogasca 0:0e0eedacd26a 26 const char *months[] = {"ENE","FEB","MAR","ABR","MAY","JUN", "JUL", "AGO","SEP","OCT","NOV","DIC"};//months of the year
arturogasca 0:0e0eedacd26a 27 I2C device(I2C_SDA,I2C_SCL); //sda scl
arturogasca 0:0e0eedacd26a 28 Hotboards_rtcc rtcc(device);
arturogasca 0:0e0eedacd26a 29
arturogasca 0:0e0eedacd26a 30
arturogasca 0:0e0eedacd26a 31 //////////////////Variables de sensores para almacenamiento / envio
arturogasca 0:0e0eedacd26a 32
arturogasca 0:0e0eedacd26a 33 float Temperatura;
arturogasca 0:0e0eedacd26a 34 float RitmoCardiaco;
arturogasca 0:0e0eedacd26a 35 uint16_t Oxigeno;
arturogasca 0:0e0eedacd26a 36 uint16_t Pasos;
arturogasca 0:0e0eedacd26a 37
arturogasca 0:0e0eedacd26a 38 ///////////////////////Definicion para Sensor de temperatura
arturogasca 0:0e0eedacd26a 39
arturogasca 0:0e0eedacd26a 40 LM35 SensorTemp(PIN_ADC1); //PIN_ADC
arturogasca 0:0e0eedacd26a 41
arturogasca 0:0e0eedacd26a 42 //////////////////////Definicion para Thermistor
arturogasca 0:0e0eedacd26a 43
arturogasca 0:0e0eedacd26a 44 AnalogIn thermistor(PIN_ADC2);
arturogasca 0:0e0eedacd26a 45
arturogasca 0:0e0eedacd26a 46 ///////////////////////////////////////Definicion de SD
arturogasca 0:0e0eedacd26a 47
arturogasca 0:0e0eedacd26a 48 SDFileSystem sd(MOSI,MISO,SCLK,CS, "sd"); // // mosi, miso, sclk, cs, name
arturogasca 0:0e0eedacd26a 49 const char* PathSensores = "/sd/LogSensores/sensores.txt";
arturogasca 0:0e0eedacd26a 50 const char* PathECG = "/sd/LogSensores/ECG.txt";
arturogasca 0:0e0eedacd26a 51 const char* PathAxis = "/sd/LogSensores/Axis.txt";
arturogasca 0:0e0eedacd26a 52 bool archivo = true;
arturogasca 0:0e0eedacd26a 53
arturogasca 0:0e0eedacd26a 54
arturogasca 0:0e0eedacd26a 55 //////////////////////////Definicion de tiempos
arturogasca 0:0e0eedacd26a 56
arturogasca 0:0e0eedacd26a 57 #define REGISTER_TIME 30
arturogasca 0:0e0eedacd26a 58 #define UPDATE_TIME 1
arturogasca 0:0e0eedacd26a 59 int RegisterSeconds = 0;
arturogasca 0:0e0eedacd26a 60 int UpdateSeconds = 0;
arturogasca 0:0e0eedacd26a 61 bool SampleTime = false;
arturogasca 0:0e0eedacd26a 62 Ticker t1;
arturogasca 0:0e0eedacd26a 63 Ticker t2;
arturogasca 0:0e0eedacd26a 64
arturogasca 0:0e0eedacd26a 65
arturogasca 0:0e0eedacd26a 66 /////////////////////////Definicion de sensor ECG
arturogasca 0:0e0eedacd26a 67
arturogasca 0:0e0eedacd26a 68 #define MUESTRAS_ECG 100
arturogasca 0:0e0eedacd26a 69 bool ECG_SAMPLE_READY = false;
arturogasca 0:0e0eedacd26a 70 int ecg_idx = 0;
arturogasca 0:0e0eedacd26a 71 unsigned short ecgSamples[MUESTRAS_ECG];
arturogasca 0:0e0eedacd26a 72 float ecgSamples_f[MUESTRAS_ECG];
arturogasca 0:0e0eedacd26a 73 HeartRate HR(ECG_OUT, ECG_LO_PLS, ECG_LO_MIN);
arturogasca 0:0e0eedacd26a 74
arturogasca 0:0e0eedacd26a 75 ////////////////////Definicion de sensor RESPIRACION
arturogasca 0:0e0eedacd26a 76
arturogasca 0:0e0eedacd26a 77 #define MUESTRAS_RESP 100
arturogasca 0:0e0eedacd26a 78 bool RESP_SAMPLE_READY = false;
arturogasca 0:0e0eedacd26a 79 int resp_idx = 0;
arturogasca 0:0e0eedacd26a 80 unsigned short respSamples[MUESTRAS_RESP];
arturogasca 0:0e0eedacd26a 81 float respSamples_f[MUESTRAS_RESP];
arturogasca 0:0e0eedacd26a 82
arturogasca 0:0e0eedacd26a 83 ////////////////////Definicion de muestras ACELEROMETRO
arturogasca 0:0e0eedacd26a 84 #define MMA8451_I2C_ADDRESS (0x1d<<1)
arturogasca 0:0e0eedacd26a 85 MMA8451Q acc(I2C_SDA, I2C_SCL, MMA8451_I2C_ADDRESS);
arturogasca 0:0e0eedacd26a 86
arturogasca 0:0e0eedacd26a 87 #define MUESTRAS_AXIS 100
arturogasca 0:0e0eedacd26a 88 bool AXIS_SAMPLE_READY = false;
arturogasca 0:0e0eedacd26a 89 int axis_idx = 0;
arturogasca 0:0e0eedacd26a 90 float axisSamples[MUESTRAS_AXIS][3]; //100 muestras, 3 ejes
arturogasca 0:0e0eedacd26a 91 //float axisSamples_f[MUESTRAS_axis];
arturogasca 0:0e0eedacd26a 92
arturogasca 0:0e0eedacd26a 93
arturogasca 0:0e0eedacd26a 94 // PulseOximeter is the higher level interface to the sensor
arturogasca 0:0e0eedacd26a 95 // it offers:
arturogasca 0:0e0eedacd26a 96 // * beat detection reporting
arturogasca 0:0e0eedacd26a 97 // * heart rate calculation
arturogasca 0:0e0eedacd26a 98 // * SpO2 (oxidation level) calculation
arturogasca 0:0e0eedacd26a 99
arturogasca 0:0e0eedacd26a 100 ///////////////////////////Definiciones para sensor OXIMETRIA
arturogasca 0:0e0eedacd26a 101
arturogasca 0:0e0eedacd26a 102 PulseOximeter pox;
arturogasca 0:0e0eedacd26a 103
arturogasca 0:0e0eedacd26a 104 bool newValueMAX30100 = 0;
arturogasca 0:0e0eedacd26a 105 float heartRate;
arturogasca 0:0e0eedacd26a 106 float finalHeartRate;
arturogasca 0:0e0eedacd26a 107 uint8_t sp02;
arturogasca 0:0e0eedacd26a 108 uint16_t finalSp02;
arturogasca 0:0e0eedacd26a 109 std::vector<float> valuesHeartRate;
arturogasca 0:0e0eedacd26a 110 std::vector<uint8_t> valuesSp02;
arturogasca 0:0e0eedacd26a 111
arturogasca 0:0e0eedacd26a 112 uint32_t REPORTING_PERIOD_MS = 1000;
arturogasca 0:0e0eedacd26a 113 uint8_t samplesMAX30100 = 10;
arturogasca 0:0e0eedacd26a 114 uint8_t counterMAX30100 = 0;;
arturogasca 0:0e0eedacd26a 115 /////////////////////////////////////////////////////////////////
arturogasca 0:0e0eedacd26a 116
arturogasca 0:0e0eedacd26a 117 Serial pc(SERIAL_TX, SERIAL_RX);
arturogasca 0:0e0eedacd26a 118
arturogasca 0:0e0eedacd26a 119 DigitalOut led1(LED_R);
arturogasca 0:0e0eedacd26a 120 DigitalOut led2(LED_N);