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.
Dependencies: mbed FRDM-KL46Z_ECG
main.cpp
- Committer:
- JulioDLuna
- Date:
- 2020-12-06
- Revision:
- 4:fde3fe13c27b
- Parent:
- 3:3213a5e5113c
- Child:
- 5:43a7c05b02cd
File content as of revision 4:fde3fe13c27b:
#include "mbed.h" #include "Senales.h" #include "Serial.h" Serial pc_serial(USBTX, USBRX); int c=0; int frec=0; bool flag1=0; bool flag2=0; float m=0; int G=0; int qrs=0; int cont=0; int escala=0; float valor[]={}; float valoraux[]={}; float y[2799]={0}; float E=0.0; float Pico=0.0; float Pico50=0.0; float Vmax=0.0; float Vmin=0.0; float Vmaxaux=0.0; float Vminaux=0.0; float maxRP=0.0; void Monitorea(); void Controla(); void Pantalla(); int main(){ pc_serial.baud(9600); m=1; Controla(); Monitorea(); } void Controla(){ do{ Bradicardia6s[c]=(Bradicardia6s[c]-1.65)*m; Vmaxaux=Bradicardia6s[c]-Vmax; Vminaux=Bradicardia6s[c]-Vmin; if(Vmaxaux>0){Vmax=Bradicardia6s[c];} if(Vminaux<0){Vmin=Bradicardia6s[c];} //pc_serial.printf("Vmax:%f Vmin:%f muestra:%d\r\n",Vmax,Vmin,c); c=c+1; }while(c<2799); //pc_serial.printf("Vmax:%f Vmin:%f\r\n",Vmax,Vmin); Pico=abs(Vmax)-abs(Vmin); c=0; if(Pico>0){Pico=Vmax;} if(Pico<0){Pico=abs(Vmin);} if(0<=Pico&&Pico<=0.424){maxRP=0.424;} if(0.425<=Pico&&Pico<=0.824){maxRP=0.824;} if(0.825<=Pico&&Pico<=1.65){maxRP=1.65;} E=1.65-maxRP; if(1<=E&&E<=1.3){G=4; escala=20;} if(0.7<=E&&E<=0.9){G=2; escala=10;} if(0<=E&&E<=0.1){G=1;escala=5;} pc_serial.printf("G:%d escala:%d mm/mV\r\n",G,escala); /*do{ Bradicardia6s[c]=(Bradicardia6s[c]*G)+1.65; c=c+1; }while(c<2799);*/ } void Monitorea(){ c=0; Pico50=Pico*0.5; do{ y[c]=abs(Bradicardia6s[c]); if(y[c]>Pico50){flag1=1;} if(flag1==1&&y[c]<Pico50){flag2=1;} if(flag1==1&&flag2==1){qrs=qrs+1;flag1=0;flag2=0;} c=c+1; }while(c<2799); frec=qrs*10; pc_serial.printf("QRS:%d f: %d\r\n",qrs,frec); if(frec>=60&&frec<=100){pc_serial.printf("LED Verde Normal\r\n");} if(frec>50&&frec<60){pc_serial.printf("LED Amarillo Posible Bradicardia!\r\n");} if(frec>100&&frec<110){pc_serial.printf("LED Amarillo Posible Taquicardia!\r\n");} if(frec<=50){pc_serial.printf("LED Rojo Bradicardia!\r\n");} if(frec>=110){pc_serial.printf("LED Rojo Taquicardia!\r\n");} } void Pantalla(){ /*do{ pc_serial.printf("QRS:%d f: %d\r\n",qrs,frec); }while(c<2799);*/ }