TRR 2018 / Mbed 2 deprecated biniou-TRR2019

Dependencies:   mbed MPU6050

Committer:
GaspardD
Date:
Fri Oct 04 09:46:00 2019 +0000
Revision:
10:e63fe4080760
Parent:
9:1b54bac6d9a7
Child:
12:58ad06f9847d
ca marche

Who changed what in which revision?

UserRevisionLine numberNew contents of line
GaspardD 1:8faddee0e52f 1 #include "utils.h"
GaspardD 9:1b54bac6d9a7 2 #include "log.h"
GaspardD 1:8faddee0e52f 3
GaspardD 8:f23601373e8b 4 bool b_UTILS_flag_button_ESC = false;
GaspardD 8:f23601373e8b 5 bool b_UTILS_flag_button_SECTIONS = false;
GaspardD 1:8faddee0e52f 6 bool b_UTILS_flag_emergency_stop = false;
GaspardD 8:f23601373e8b 7 Timer t_utils_timerSinceStart;
GaspardD 6:ab9f3695633f 8 s_Section* s_UTILS_currentSection = NULL;
GaspardD 4:efa207509f63 9
GaspardD 8:f23601373e8b 10 InterruptIn b_UTILS_button(USER_BUTTON);
GaspardD 8:f23601373e8b 11 InterruptIn b_UTILS_emergency_signal(PD_0);
GaspardD 1:8faddee0e52f 12
GaspardD 9:1b54bac6d9a7 13 int i,j;
GaspardD 1:8faddee0e52f 14
GaspardD 4:efa207509f63 15 void it_pressed()
GaspardD 4:efa207509f63 16 {
GaspardD 8:f23601373e8b 17 if(t_utils_timerSinceStart.read_ms() > 500) {
GaspardD 10:e63fe4080760 18 rs_LOG_pc.printf("Button pressed; log ready: %d\r\n",b_LOG_READY);
GaspardD 9:1b54bac6d9a7 19 if(b_LOG_READY) {
GaspardD 10:e63fe4080760 20 log_pc();
GaspardD 9:1b54bac6d9a7 21 b_LOG_READY = false;
GaspardD 9:1b54bac6d9a7 22 } else {
GaspardD 9:1b54bac6d9a7 23 t_utils_timerSinceStart.reset();
GaspardD 9:1b54bac6d9a7 24 b_UTILS_flag_button_SECTIONS = true;
GaspardD 9:1b54bac6d9a7 25 b_UTILS_flag_button_ESC = true;
GaspardD 9:1b54bac6d9a7 26 b_UTILS_flag_emergency_stop = false;
GaspardD 9:1b54bac6d9a7 27 }
GaspardD 4:efa207509f63 28 }
GaspardD 4:efa207509f63 29 return;
GaspardD 1:8faddee0e52f 30 }
GaspardD 8:f23601373e8b 31
GaspardD 8:f23601373e8b 32 void it_emergency_signal_recieved()
GaspardD 8:f23601373e8b 33 {
GaspardD 8:f23601373e8b 34 b_UTILS_flag_emergency_stop = true;
GaspardD 9:1b54bac6d9a7 35 }
GaspardD 9:1b54bac6d9a7 36
GaspardD 9:1b54bac6d9a7 37 void bubbleSort(double arr[], int n)
GaspardD 9:1b54bac6d9a7 38 {
GaspardD 9:1b54bac6d9a7 39 for (i = 0; i < n-1; i++) {
GaspardD 9:1b54bac6d9a7 40 // Last i elements are already in place
GaspardD 9:1b54bac6d9a7 41 for (j = 0; j < n-i-1; j++) {
GaspardD 9:1b54bac6d9a7 42 if (arr[j] > arr[j+1]) {
GaspardD 9:1b54bac6d9a7 43 swap(&arr[j], &arr[j+1]);
GaspardD 9:1b54bac6d9a7 44 }
GaspardD 9:1b54bac6d9a7 45 }
GaspardD 8:f23601373e8b 46 }
GaspardD 9:1b54bac6d9a7 47 }
GaspardD 9:1b54bac6d9a7 48
GaspardD 9:1b54bac6d9a7 49 void swap(double *xp, double *yp)
GaspardD 9:1b54bac6d9a7 50 {
GaspardD 9:1b54bac6d9a7 51 double temp = *xp;
GaspardD 9:1b54bac6d9a7 52 *xp = *yp;
GaspardD 9:1b54bac6d9a7 53 *yp = temp;
GaspardD 9:1b54bac6d9a7 54 }