Oscar Alejandro Martinez Mancilla
/
Parte_2_Practica_1_Actuadores
Actuadores - Practica 1 - Parte 2
Revision 0:580b324b04e9, committed 2015-02-06
- Comitter:
- oscarmtzman
- Date:
- Fri Feb 06 19:30:08 2015 +0000
- Commit message:
- Actuadores - Pr?ctica 1 - Parte 2
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 580b324b04e9 main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Fri Feb 06 19:30:08 2015 +0000 @@ -0,0 +1,48 @@ +#include "mbed.h" + +DigitalOut led(LED1); //Se declara LED1 como salida digital para identificar cuando el programa está corriendo +AnalogIn pot(A0); //Se declara A0 como entrada analogica para el potenciometro +PwmOut enable(PTA12); //Se declara PTA12 como PWM +DigitalIn button(PTD4); //Se declara PTD4 como entrada digital para el boton + +bool freqdef=0; //Se define una variable booleana para los dos estados de frecuencia (1kHz y 10kHz), se inicializa en estado 0 (1kHz) +float potval=0; //Se defne una viariable flotante para guardar la lectura del potenciometro + +Serial pc(USBTX, USBRX); //Se inicia comunicación serial con la computadora para visualizar el estado + //de frefuencia y la lectura del potenciometro +int main() +{ + button.mode(PullUp); //Se define el puerto del botón como PullUp + + while(1) { + + if(button==1) { //Cuando el boton es presionado se entra a esta condición + while (button==1) { //Ciclo que estanca el programa mientras esta presionado el botón, + potval=pot; //pero sigue haciendo lectura del potenciometro y modificando el PWM + pc.printf("%d\t",freqdef); + pc.printf("%f\n",potval); + enable=potval; + } + + freqdef=!freqdef; //Al soltar el botón se cambia del estado de frecuencia 0 al 1 o viceversa + } + + + if(freqdef==0){ //Si el estado es 0 se establece en el PWM una frecuencua de 1kHz + enable.period_ms(1); + } + + if(freqdef==1){ + enable.period_us(100); //Si el estado es 0 se establece en el PWM una frecuencua de 10kHz + } + + + potval=pot; //Se guarda el valorer leido del potenciometro en la variable flotante potval + pc.printf("%d\t",freqdef); //Se imprimen en el monitor serial el numero del estado de frecuencia y la lectura del potenciometro + pc.printf("%f\n",potval); + enable=potval; //Se establece el ciclo del trabajo del PWM mediante la lectura del potenciometro + + } +} + +
diff -r 000000000000 -r 580b324b04e9 mbed.bld --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Fri Feb 06 19:30:08 2015 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/e188a91d3eaa \ No newline at end of file