Oscar de Jesus Vasquez
/
Mata_iHand
proyecto biometrico
main.cpp@0:f836fc1bf1d7, 2017-07-14 (annotated)
- Committer:
- oscarvzfz
- Date:
- Fri Jul 14 00:44:21 2017 +0000
- Revision:
- 0:f836fc1bf1d7
proyecto ihand;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
oscarvzfz | 0:f836fc1bf1d7 | 1 | #include "mbed.h" |
oscarvzfz | 0:f836fc1bf1d7 | 2 | #include "beep.h" |
oscarvzfz | 0:f836fc1bf1d7 | 3 | |
oscarvzfz | 0:f836fc1bf1d7 | 4 | Beep buzzer(p21); |
oscarvzfz | 0:f836fc1bf1d7 | 5 | Ticker cut; |
oscarvzfz | 0:f836fc1bf1d7 | 6 | |
oscarvzfz | 0:f836fc1bf1d7 | 7 | |
oscarvzfz | 0:f836fc1bf1d7 | 8 | Serial bt(p28,p27); |
oscarvzfz | 0:f836fc1bf1d7 | 9 | Serial pc(USBTX,USBRX); |
oscarvzfz | 0:f836fc1bf1d7 | 10 | |
oscarvzfz | 0:f836fc1bf1d7 | 11 | AnalogIn s_bpm(p20); |
oscarvzfz | 0:f836fc1bf1d7 | 12 | AnalogIn s_temp(p19); |
oscarvzfz | 0:f836fc1bf1d7 | 13 | |
oscarvzfz | 0:f836fc1bf1d7 | 14 | DigitalOut beat(LED1); |
oscarvzfz | 0:f836fc1bf1d7 | 15 | |
oscarvzfz | 0:f836fc1bf1d7 | 16 | char c; |
oscarvzfz | 0:f836fc1bf1d7 | 17 | int setter=0; |
oscarvzfz | 0:f836fc1bf1d7 | 18 | float Threshold=2.615; |
oscarvzfz | 0:f836fc1bf1d7 | 19 | float bpm_val=0; |
oscarvzfz | 0:f836fc1bf1d7 | 20 | float temp_val=0; |
oscarvzfz | 0:f836fc1bf1d7 | 21 | int beatc=0; |
oscarvzfz | 0:f836fc1bf1d7 | 22 | |
oscarvzfz | 0:f836fc1bf1d7 | 23 | |
oscarvzfz | 0:f836fc1bf1d7 | 24 | |
oscarvzfz | 0:f836fc1bf1d7 | 25 | void send_bpm() |
oscarvzfz | 0:f836fc1bf1d7 | 26 | { |
oscarvzfz | 0:f836fc1bf1d7 | 27 | beatc=beatc*6; |
oscarvzfz | 0:f836fc1bf1d7 | 28 | if (beatc>130 || beatc<35) |
oscarvzfz | 0:f836fc1bf1d7 | 29 | { |
oscarvzfz | 0:f836fc1bf1d7 | 30 | buzzer.beep(1480,2); |
oscarvzfz | 0:f836fc1bf1d7 | 31 | } |
oscarvzfz | 0:f836fc1bf1d7 | 32 | bt.printf("%i %.2f\n\r",beatc,temp_val); |
oscarvzfz | 0:f836fc1bf1d7 | 33 | beatc=0; |
oscarvzfz | 0:f836fc1bf1d7 | 34 | } |
oscarvzfz | 0:f836fc1bf1d7 | 35 | void send_data() |
oscarvzfz | 0:f836fc1bf1d7 | 36 | { |
oscarvzfz | 0:f836fc1bf1d7 | 37 | bpm_val=s_bpm*3.3; |
oscarvzfz | 0:f836fc1bf1d7 | 38 | temp_val=s_temp*3.3*100; |
oscarvzfz | 0:f836fc1bf1d7 | 39 | bt.printf("%.3f,%.3f\n\r",bpm_val,temp_val); |
oscarvzfz | 0:f836fc1bf1d7 | 40 | } |
oscarvzfz | 0:f836fc1bf1d7 | 41 | |
oscarvzfz | 0:f836fc1bf1d7 | 42 | int main() |
oscarvzfz | 0:f836fc1bf1d7 | 43 | { |
oscarvzfz | 0:f836fc1bf1d7 | 44 | bt.baud(115200); |
oscarvzfz | 0:f836fc1bf1d7 | 45 | |
oscarvzfz | 0:f836fc1bf1d7 | 46 | while(setter == 0) |
oscarvzfz | 0:f836fc1bf1d7 | 47 | { |
oscarvzfz | 0:f836fc1bf1d7 | 48 | if(bt.readable()) |
oscarvzfz | 0:f836fc1bf1d7 | 49 | { |
oscarvzfz | 0:f836fc1bf1d7 | 50 | c = bt.getc(); |
oscarvzfz | 0:f836fc1bf1d7 | 51 | //bt.printf("%c\n\r",c); |
oscarvzfz | 0:f836fc1bf1d7 | 52 | setter=1; |
oscarvzfz | 0:f836fc1bf1d7 | 53 | } |
oscarvzfz | 0:f836fc1bf1d7 | 54 | } |
oscarvzfz | 0:f836fc1bf1d7 | 55 | |
oscarvzfz | 0:f836fc1bf1d7 | 56 | if(c =='a') |
oscarvzfz | 0:f836fc1bf1d7 | 57 | { |
oscarvzfz | 0:f836fc1bf1d7 | 58 | //bt.printf("a selected\n\r"); |
oscarvzfz | 0:f836fc1bf1d7 | 59 | cut.attach(&send_bpm, 10.0); |
oscarvzfz | 0:f836fc1bf1d7 | 60 | } |
oscarvzfz | 0:f836fc1bf1d7 | 61 | |
oscarvzfz | 0:f836fc1bf1d7 | 62 | //if(c =='b') |
oscarvzfz | 0:f836fc1bf1d7 | 63 | //{ |
oscarvzfz | 0:f836fc1bf1d7 | 64 | //pc.printf("b selected\n\r"); |
oscarvzfz | 0:f836fc1bf1d7 | 65 | //cut.attach(&send_data,.1); |
oscarvzfz | 0:f836fc1bf1d7 | 66 | //} |
oscarvzfz | 0:f836fc1bf1d7 | 67 | |
oscarvzfz | 0:f836fc1bf1d7 | 68 | while(1) |
oscarvzfz | 0:f836fc1bf1d7 | 69 | { |
oscarvzfz | 0:f836fc1bf1d7 | 70 | bpm_val=s_bpm*3.3; |
oscarvzfz | 0:f836fc1bf1d7 | 71 | temp_val=s_temp*3.3*100; |
oscarvzfz | 0:f836fc1bf1d7 | 72 | if(c =='b') |
oscarvzfz | 0:f836fc1bf1d7 | 73 | { |
oscarvzfz | 0:f836fc1bf1d7 | 74 | bt.printf("%.3f,%.3f\n\r",bpm_val,temp_val); |
oscarvzfz | 0:f836fc1bf1d7 | 75 | wait(.01); |
oscarvzfz | 0:f836fc1bf1d7 | 76 | } |
oscarvzfz | 0:f836fc1bf1d7 | 77 | |
oscarvzfz | 0:f836fc1bf1d7 | 78 | if(bpm_val > Threshold) |
oscarvzfz | 0:f836fc1bf1d7 | 79 | { |
oscarvzfz | 0:f836fc1bf1d7 | 80 | beat=1; |
oscarvzfz | 0:f836fc1bf1d7 | 81 | wait(.08); |
oscarvzfz | 0:f836fc1bf1d7 | 82 | beatc++; |
oscarvzfz | 0:f836fc1bf1d7 | 83 | } |
oscarvzfz | 0:f836fc1bf1d7 | 84 | else |
oscarvzfz | 0:f836fc1bf1d7 | 85 | { |
oscarvzfz | 0:f836fc1bf1d7 | 86 | beat=0; |
oscarvzfz | 0:f836fc1bf1d7 | 87 | } |
oscarvzfz | 0:f836fc1bf1d7 | 88 | } |
oscarvzfz | 0:f836fc1bf1d7 | 89 | } |