サイコン用プログラム BLE通信送信確認
Dependencies: mbed BLE_API nRF51822
Cadence.h@22:500a89982568, 2019-01-09 (annotated)
- Committer:
- taurin
- Date:
- Wed Jan 09 12:59:49 2019 +0000
- Revision:
- 22:500a89982568
a
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
taurin | 22:500a89982568 | 1 | #ifndef CADENCE_H |
taurin | 22:500a89982568 | 2 | #define CADENCE_H |
taurin | 22:500a89982568 | 3 | |
taurin | 22:500a89982568 | 4 | #include "mbed.h" |
taurin | 22:500a89982568 | 5 | |
taurin | 22:500a89982568 | 6 | #define CADENCE_SUM_NUM 2 |
taurin | 22:500a89982568 | 7 | |
taurin | 22:500a89982568 | 8 | Timer t; |
taurin | 22:500a89982568 | 9 | |
taurin | 22:500a89982568 | 10 | char cadence_ave = 0; |
taurin | 22:500a89982568 | 11 | char cadence_max = 0; |
taurin | 22:500a89982568 | 12 | int cadence_counter = 0; |
taurin | 22:500a89982568 | 13 | char cadence_sum[CADENCE_SUM_NUM] = {0}; |
taurin | 22:500a89982568 | 14 | |
taurin | 22:500a89982568 | 15 | class Cadence{ |
taurin | 22:500a89982568 | 16 | protected: |
taurin | 22:500a89982568 | 17 | |
taurin | 22:500a89982568 | 18 | public: |
taurin | 22:500a89982568 | 19 | char make_ave(char s[], int n){ |
taurin | 22:500a89982568 | 20 | char p = 0; |
taurin | 22:500a89982568 | 21 | int i; |
taurin | 22:500a89982568 | 22 | for(i = 0; i < n; i++){ |
taurin | 22:500a89982568 | 23 | p += s[i]; |
taurin | 22:500a89982568 | 24 | } |
taurin | 22:500a89982568 | 25 | if(n != 0) |
taurin | 22:500a89982568 | 26 | return p / n; |
taurin | 22:500a89982568 | 27 | else |
taurin | 22:500a89982568 | 28 | return 0; |
taurin | 22:500a89982568 | 29 | } |
taurin | 22:500a89982568 | 30 | |
taurin | 22:500a89982568 | 31 | void calcCadence(char x){ |
taurin | 22:500a89982568 | 32 | cadence_sum[cadence_counter % CADENCE_SUM_NUM] = x; |
taurin | 22:500a89982568 | 33 | if(cadence_counter % CADENCE_SUM_NUM == 0) |
taurin | 22:500a89982568 | 34 | cadence_counter = 0; |
taurin | 22:500a89982568 | 35 | cadence_ave = make_ave(cadence_sum, CADENCE_SUM_NUM); |
taurin | 22:500a89982568 | 36 | //cadence=cadence_ave; |
taurin | 22:500a89982568 | 37 | if(cadence_ave > cadence_max) |
taurin | 22:500a89982568 | 38 | cadence_max = cadence_ave; |
taurin | 22:500a89982568 | 39 | cadence_counter++; |
taurin | 22:500a89982568 | 40 | } |
taurin | 22:500a89982568 | 41 | }; |
taurin | 22:500a89982568 | 42 | #endif |