Bluetooth comunication, using Freescale, app inventor and a mobile phone.

Dependencies:   mbed

/media/uploads/caarbelaezg/voltimetro.apk /media/uploads/caarbelaezg/voltimetro.aia

main.cpp

Committer:
caarbelaezg
Date:
2015-04-24
Revision:
0:d66493246074

File content as of revision 0:d66493246074:

//programa para enviar valores analogos y probarlos con app inventor
//el programa en esta oportunidad manda valores provenientes del puero analogico en 
//enteros HEX (xxxx) entre 0 y 1000
//se prueba con voltimetro1 .apk APPINVENTOR. cambie GSM A pc si quere probar directo sobre la pc

#include "mbed.h"
#include <stdio.h>
//#include <conio.h>


DigitalOut LedVerde(LED2);
DigitalOut LedRojo(LED1);
DigitalOut LedAzul(LED3);

Serial GSM(PTE0,PTE1);  //puertos del FRDM para el modem
Serial pc(USBTX,USBRX);
int med,num,i,j,k;
AnalogIn input(PTC2);
  
int main(void)
       { 
       
       GSM.baud(9600);   // asigno baudios y configuro puerto serie de la usart
       GSM.format(8,Serial::None,1); 
               
       while(1){ 
                 //leo puerto analogico
       wait(0.5);
       num = input*1000;      //agrando el numero de cero a mil
           //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 numero 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 envio a la usart para que se las ponga al modulo bluetooth y la lleve al android
           GSM.putc(k);   //mas significativa primero, menos despues si no no funciona!!! y con la orden PUTC solo asi le envia binarios
    
       }
}
}