Jorge Rodolfo Muñoz
/
Medidor_voltaje_resistencia
codigo para medir voltaje y resistencias mediante el microcontrolador Freedom KL25Z
Revision 0:85039ee1746a, committed 2014-03-05
- Comitter:
- rodomnz
- Date:
- Wed Mar 05 05:18:47 2014 +0000
- Commit message:
- Medidor de Voltaje y Resistencias;
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
mbed.bld | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 85039ee1746a main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Wed Mar 05 05:18:47 2014 +0000 @@ -0,0 +1,117 @@ +/*Laboratorio 3: Codigo para un medidor de voltaje de 0 V a 28 V, y de resistencias, utilizando el microcontrolador +Freedom KL25Z, para la materia de informatica industrial TECNOLOGICO DE MONTERREY CAMPUS GUADALAJARA +realizada por: Jorge Rodolfo Muñoz Zuñiga A01227893 - Ismael Davila Martin A01227911 */ + + +#include "mbed.h" +//DECLARACION DE VARIABLES +DigitalOut myled(LED1); + +AnalogIn vout(PTB0);//entrada analogico que lee el voltaje +AnalogIn res_analogic(PTB1);//entrada analogica que lee el voltaje para el calculo de resistencias +float res[10]; +float voltaje[10]; + +DigitalIn boton1 (PTD4); //boton para cambiar el modo +int botonA; +DigitalIn boton2 (PTA12); //boton para promedio +int botonB; + +Serial pc(USBTX, USBRX); + +int tiempo; // para el uso del timer +Timer timer; + +float promedio1; //promedios +float promedio2; + +int i; //variables para el cambio de modo y el for +int modo; + +float corriente; +//CODIGO +int main() +{ + myled = 1; + wait(1); + myled = 0; + wait(1); + modo = 0; +// comienzo del codigo para medidor de voltaje + + timer.start(); + +while(true) +{ + + while(modo==0) //modo voltaje + { + tiempo=timer.read_ms(); + if((tiempo%500==0)&&(tiempo<=5000)) + { + voltaje[(tiempo/500)-1]=(vout*28);//agregando los valores leidos al arreglo voltaje + } + + if(tiempo>5000) + { + timer.reset(); + } + botonB=boton2; + if(botonB==1)//calculo de promedio de valores leidos + { + for(i=0;i<=9;i++) + { + promedio1=promedio1+voltaje[i]; + } + pc.printf("valor del promedio del voltaje es: %f, \n ", promedio1/10); + pc.printf("valor de la suma de voltaje es: %f, \n \n ", promedio1); + timer.reset(); + promedio1 =0; + } + + botonA = boton1;//condicion para cambiar de modo + if (botonA==1) + { + modo = 1; + } + + } + + //fin del cofigo de medidor de voltaje + //inicio de codigo de medidor de resistencia + while (modo ==1) + { + corriente = 0.003; + tiempo=timer.read_ms(); + if((tiempo%500==0)&&(tiempo<=5000)) + { + res[(tiempo/500)-1]=(3.3-(res_analogic*3.3))/.003;//arreglo de resistencias + } + if(tiempo>5000) + { + timer.reset(); + } + botonB=boton2;//calculo del promedio de las resistencias + if(botonB==1) + { + for(i=0;i<=9;i++) + { + promedio2=promedio2+res[i]; + } + pc.printf("valor del promedio de resistencia es: %f, \n ", promedio2/10); + pc.printf("valor de la suma de resistencia es: %f, \n \n ", promedio2); + timer.reset(); + promedio2 =0; + } + botonA = boton2;//condicion para cambiar de modo + if (botonA==1) + { + modo = 0; + } + } + + +} + +} +
diff -r 000000000000 -r 85039ee1746a mbed.bld --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Wed Mar 05 05:18:47 2014 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/8e73be2a2ac1 \ No newline at end of file