HRM with LPC1768, calculating the BPM and communicating with bluetooth

Dependencies:   mbed

Committer:
2675375x
Date:
Sun Jul 31 20:09:30 2022 +0000
Revision:
1:44f270926c4a
Parent:
0:312e7105da24
HRM with LPC1768, calculating the BPM and communicating with bluetooth

Who changed what in which revision?

UserRevisionLine numberNew contents of line
2675375x 0:312e7105da24 1 #include "mbed.h"
2675375x 0:312e7105da24 2
2675375x 0:312e7105da24 3 AnalogIn sensor(p20);
2675375x 0:312e7105da24 4 Serial bt(p9, p10);
2675375x 0:312e7105da24 5 float rate = 0;
2675375x 0:312e7105da24 6
2675375x 0:312e7105da24 7 float Get_Array_Max(float* array, int size){
2675375x 0:312e7105da24 8 float max = array[0];
2675375x 0:312e7105da24 9 for(int i = 1; i < size; i++){
2675375x 0:312e7105da24 10 if(array[i] > max){
2675375x 0:312e7105da24 11 max = array[i];
2675375x 0:312e7105da24 12 }
2675375x 0:312e7105da24 13 }
2675375x 0:312e7105da24 14 return max;
2675375x 0:312e7105da24 15 }
2675375x 0:312e7105da24 16
2675375x 0:312e7105da24 17 float Get_Array_Min(float* array, int size){
2675375x 0:312e7105da24 18 float min = array[0];
2675375x 0:312e7105da24 19 for(int i = 1; i < size; i++){
2675375x 0:312e7105da24 20 if(array[i] < min){
2675375x 0:312e7105da24 21 min = array[i];
2675375x 0:312e7105da24 22 }
2675375x 0:312e7105da24 23 }
2675375x 0:312e7105da24 24 return min;
2675375x 0:312e7105da24 25 }
2675375x 0:312e7105da24 26
2675375x 0:312e7105da24 27
2675375x 0:312e7105da24 28 float Get_MaxRate(float* array, int size){
2675375x 0:312e7105da24 29 float maxrate = 1;
2675375x 0:312e7105da24 30 for(int i = 1;i <size; i++){
2675375x 0:312e7105da24 31 float pre_rate = rate;
2675375x 0:312e7105da24 32 float rate = (array[i] - array[i-1])/0.001;
2675375x 0:312e7105da24 33 if(rate > pre_rate){
2675375x 0:312e7105da24 34 maxrate = rate;
2675375x 0:312e7105da24 35 }
2675375x 0:312e7105da24 36 }
2675375x 0:312e7105da24 37 return maxrate;
2675375x 0:312e7105da24 38 }
2675375x 1:44f270926c4a 39