Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
utils.cpp@10:e63fe4080760, 2019-10-04 (annotated)
- 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?
| User | Revision | Line number | New 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 | } |