Algoritmo funcionando com a biblioteca de inatividade utilizando dos dados do acelerômetro e a biblioteca de PeakSearch se utilizando dos dados filtrados pelo filtro Kalman.
Dependencies: mbed MatrixMath Matrix nrf51_rtc BMP180 MPU9250
ble_comands.h@5:d87c25f009d1, 2019-07-27 (annotated)
- Committer:
- Rogercl
- Date:
- Sat Jul 27 12:17:25 2019 +0000
- Revision:
- 5:d87c25f009d1
- Parent:
- 1:d1002dc109b9
PeakSearch working with Kalman. The best Treshold is 30
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Rogercl | 0:095b19b8fb7e | 1 | #include "ble_config.h" |
Rogercl | 5:d87c25f009d1 | 2 | |
Rogercl | 0:095b19b8fb7e | 3 | char data_ble[100]; |
Rogercl | 0:095b19b8fb7e | 4 | int flag_ble=0; |
Rogercl | 5:d87c25f009d1 | 5 | |
Rogercl | 0:095b19b8fb7e | 6 | void onDataWritten(const GattWriteCallbackParams *params) |
Rogercl | 0:095b19b8fb7e | 7 | { |
Rogercl | 0:095b19b8fb7e | 8 | |
Rogercl | 0:095b19b8fb7e | 9 | char alc[10]; |
Rogercl | 0:095b19b8fb7e | 10 | memset(data_ble, 0, sizeof(data_ble)); |
Rogercl | 0:095b19b8fb7e | 11 | if ((params->handle == uart->getTXCharacteristicHandle())) |
Rogercl | 0:095b19b8fb7e | 12 | { |
Rogercl | 0:095b19b8fb7e | 13 | for(int x=0; x < params->len; x++) |
Rogercl | 0:095b19b8fb7e | 14 | { |
Rogercl | 0:095b19b8fb7e | 15 | sprintf(alc,"%c", params->data[x]); |
Rogercl | 0:095b19b8fb7e | 16 | strcat(data_ble,alc); |
Rogercl | 0:095b19b8fb7e | 17 | }// end for |
Rogercl | 0:095b19b8fb7e | 18 | if(strcmp(data_ble,"Start")== 0||strcmp(data_ble,"Start ")== 0||flag_ble!=0) |
Rogercl | 0:095b19b8fb7e | 19 | { |
Rogercl | 0:095b19b8fb7e | 20 | flag_ble=flag_ble+1; |
Rogercl | 0:095b19b8fb7e | 21 | } //end if "Start" |
Rogercl | 0:095b19b8fb7e | 22 | }// end if params... |
Rogercl | 0:095b19b8fb7e | 23 | } //end onDataWritten |
Rogercl | 5:d87c25f009d1 | 24 | |
Rogercl | 0:095b19b8fb7e | 25 | void getting_pacient_data() |
Rogercl | 0:095b19b8fb7e | 26 | { |
Rogercl | 0:095b19b8fb7e | 27 | char dia[20]; |
Rogercl | 0:095b19b8fb7e | 28 | char horario[20]; |
Rogercl | 0:095b19b8fb7e | 29 | |
Rogercl | 0:095b19b8fb7e | 30 | ble.onEventsToProcess(scheduleBleEventsProcessing); |
Rogercl | 0:095b19b8fb7e | 31 | ble.init(bleInitComplete); |
Rogercl | 0:095b19b8fb7e | 32 | ble.onDataWritten(onDataWritten); |
Rogercl | 0:095b19b8fb7e | 33 | ble.waitForEvent(); |
Rogercl | 0:095b19b8fb7e | 34 | while(flag_ble!=4) |
Rogercl | 0:095b19b8fb7e | 35 | { |
Rogercl | 0:095b19b8fb7e | 36 | ble.waitForEvent(); |
Rogercl | 0:095b19b8fb7e | 37 | if(flag_ble==1) |
Rogercl | 0:095b19b8fb7e | 38 | { |
Rogercl | 5:d87c25f009d1 | 39 | uart->writeString("Threshold:"); |
Rogercl | 0:095b19b8fb7e | 40 | uart->writeString("\n"); |
Rogercl | 0:095b19b8fb7e | 41 | flag_ble=flag_ble+1; |
Rogercl | 0:095b19b8fb7e | 42 | } |
Rogercl | 0:095b19b8fb7e | 43 | if(flag_ble==3) |
Rogercl | 0:095b19b8fb7e | 44 | { |
Rogercl | 5:d87c25f009d1 | 45 | Threshold=atof(data_ble); |
Rogercl | 0:095b19b8fb7e | 46 | uart->writeString("Gravando..."); |
Rogercl | 0:095b19b8fb7e | 47 | uart->writeString("\n"); |
Rogercl | 0:095b19b8fb7e | 48 | flag_ble=flag_ble+1; |
Rogercl | 0:095b19b8fb7e | 49 | } |
Rogercl | 0:095b19b8fb7e | 50 | } //end while flag_ble !=4 |
Rogercl | 0:095b19b8fb7e | 51 | } //end getting_pacient_data |