jj

Dependencies:   mbed

Fork of VOLTIMETRO1 by d.a. santana

main.cpp

Committer:
Christianh
Date:
2017-12-01
Revision:
4:ebe7948a209e
Parent:
3:61fd3a58c5bf

File content as of revision 4:ebe7948a209e:

//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 bt A pc si quere probar directo sobre la pc

#include "mbed.h"
#include <stdio.h>
//#include <conio.h>
DigitalOut ledA (LED1);
DigitalOut ledR (LED2);
DigitalOut ledV (LED3);

Serial bt(PTE0,PTE1);  //puertos el bluetooth tx rx
Serial pc(USBTX,USBRX);
int med,num1,num2,i,j,k;
AnalogIn input1(A4); //Pot1
AnalogIn input2(A5); //Pot2
  
  
  
  
int main(void){
       
   ledA=1;
   ledR=1;
   ledV=1;
   ledA=0;
       
        
    bt.baud(9600);   // asigno baudios y configuro puerto serie de la usart
    bt.format(8,Serial::None,1); 
               
    while(1){                //leo puerto analogico los potenciometros
        wait(0.5);           //tiempo entre lecturas
            
        num1 = input1*1000;    //agrando el numero de cero a mil
        num2 = input1*1000;    //agrando el numero de cero a mil
       
              
        if(num1<256){         //debo generar dos casos a APP inventor solo me recibe hex asi: 0xhhhh (4 cifras)    
           bt.putc(0);        //si el numero es hasta 255 se le ponen dos ceros adelante a la secuencia de bits
           bt.putc(num1);        //luego la cifra menos significativa
           pc.printf("vol 1\n");
           pc.printf("%i",num1);
            }
        if(num1>255){         //pero si es mayor a 255 las cifras deben ser convertidas a un hex de dos bytes de la siguiente forma   
           j=num1/256;       //calculo la cifra mas significativa
           k=num1-j*256;     //calculo la cifra menos significativa
           bt.putc(j);     //las envio a la usart para que se las ponga al modulo bluetooth y la lleve al android
           bt.putc(k);     //mas significativa primero, menos despues si no no funciona!!! y con la orden PUTC solo asi le envia binarios
           pc.printf("vol 1\n");
           pc.printf("%i",num1);   
            }   
    
        if(num2<256){         //debo generar dos casos a APP inventor solo me recibe hex asi: 0xhhhh (4 cifras)    
           bt.putc(0);     //si el numero es hasta 255 se le ponen dos ceros adelante a la secuencia de bits
           bt.putc(num2);     //luego la cifra menos significativa
           pc.printf("vol 1\n");
           pc.printf("%i",num2);     
                  }
       if(num2>255){         //pero si es mayor a 255 las cifras deben ser convertidas a un hex de dos bytes de la siguiente forma   
           j=num2/256;       //calculo la cifra mas significativa
           k=num2-j*256;     //calculo la cifra menos significativa
           bt.putc(j);     //las envio a la usart para que se las ponga al modulo bluetooth y la lleve al android
           bt.putc(k);     //mas significativa primero, menos despues si no no funciona!!! y con la orden PUTC solo asi le envia binarios
           pc.printf("vol 1\n");
           pc.printf("%i",num2); 
                     }
    }
}