En esta tarea se gráfica el voltaje de un potenciometro, en el celular y se cambiará un pwm con botones en el mismo

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
GermanD
Date:
Tue Nov 24 04:47:14 2015 +0000
Commit message:
tarea de APP

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
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Tue Nov 24 04:47:14 2015 +0000
@@ -0,0 +1,66 @@
+#include "mbed.h"
+#include <stdio.h>
+
+PwmOut led(PTD0);   //Salida Pwm
+AnalogIn input(PTC2);    //Entrada potenciometro
+Serial GSM(PTE0,PTE1);   //puertos del FRDM para el modem
+Serial pc(USBTX,USBRX);  //Comunicacion PC
+
+int med,num,i,j,k,C;
+int Lectura
+float B=0,ciclo=0,periodo=0;
+
+int main(void)
+       { 
+       
+       GSM.baud(9600);         // asigno baudios y configuro puerto serie de la usart
+       GSM.format(8,Serial::None,1); 
+               
+       while(1){ 
+                              //leer el puerto analógico
+       wait(0.5);
+       num = input*1000;      //se escala el numero 
+           //pc.printf("num=%d\n", num);
+
+       if(num<256){          //debo generar dos casos a APP inventor solo me recibe hex asi: 0xhhhh (4 cifras)    
+           GSM.putc(0);      //si el número es hasta 255 se le ponen dos ceros adelante a la secuencia de bits
+           GSM.putc(i);      //luego la cifra menos significativa
+       }
+       if(num>255){          //pero si es mayor a 255 las cifras deben ser convertidas a un hex de dos bytes de la siguiente forma   
+           j=num/256;        //calculo la cifra mas significativa
+           k=num-j*256;      //calculo la cifra menos significativa
+           GSM.putc(j);      //las envío a la usart para que se las ponga al modulo bluetooth y la lleve al android
+           GSM.putc(k);      //mas significativa primero, menos después si no no funciona!!! y con la orden PUTC solo asi le envia binarios
+    
+       }
+        //Tomo lo que viene del bluetooth:
+        // Como no se como hacer para que la freescale sepa cual de los dos sliders le está mandando el dato de bit,
+        // Entones pongo un slider a mandar bits en un rango de valores y el otro en otro rango y lugo los transformo en número de 0 a 1.
+        
+       if (GSM.readable())
+       {    
+            
+            Lectura = GSM.getc(); //Leo el valor del slider;
+            pc.printf("%i\n\r", Lectura);
+            
+             if (Lectura <101) {      //condición para mostrar el ciclo de trabajo
+             
+                ciclo=Lectura/100.0; //calculo el ciclo de trabajo
+                led.write(ciclo);
+                pc.printf("Ciclo de Dureza: %f\n\r", ciclo);
+                
+            }
+
+            if (Lectura >101) {   //condición para mostrar el periodo
+            
+                B=Lectura;    
+                periodo=((B-100.0))/100+0.1; //Calculo el periodo
+                led.period (periodo);
+
+                pc.printf("Frecuencia: %f\n\r", periodo);
+                
+            }      
+ 
+        }
+}
+}       
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Tue Nov 24 04:47:14 2015 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/34e6b704fe68
\ No newline at end of file