Christian Hernandez / Mbed 2 deprecated VOLTIMETRO2input

Dependencies:   mbed

Fork of VOLTIMETRO1 by d.a. santana

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 //programa para enviar valores analogos y probarlos con app inventor
00002 //el programa en esta oportunidad manda valores provenientes del puero analogico en 
00003 //enteros HEX (xxxx) entre 0 y 1000
00004 //se prueba con voltimetro1 .apk APPINVENTOR. cambie bt A pc si quere probar directo sobre la pc
00005 
00006 #include "mbed.h"
00007 #include <stdio.h>
00008 //#include <conio.h>
00009 DigitalOut ledA (LED1);
00010 DigitalOut ledR (LED2);
00011 DigitalOut ledV (LED3);
00012 
00013 Serial bt(PTE0,PTE1);  //puertos el bluetooth tx rx
00014 Serial pc(USBTX,USBRX);
00015 int med,num1,num2,i,j,k;
00016 AnalogIn input1(A4); //Pot1
00017 AnalogIn input2(A5); //Pot2
00018   
00019   
00020   
00021   
00022 int main(void){
00023        
00024    ledA=1;
00025    ledR=1;
00026    ledV=1;
00027    ledA=0;
00028        
00029         
00030     bt.baud(9600);   // asigno baudios y configuro puerto serie de la usart
00031     bt.format(8,Serial::None,1); 
00032                
00033     while(1){                //leo puerto analogico los potenciometros
00034         wait(0.5);           //tiempo entre lecturas
00035             
00036         num1 = input1*1000;    //agrando el numero de cero a mil
00037         num2 = input1*1000;    //agrando el numero de cero a mil
00038        
00039               
00040         if(num1<256){         //debo generar dos casos a APP inventor solo me recibe hex asi: 0xhhhh (4 cifras)    
00041            bt.putc(0);        //si el numero es hasta 255 se le ponen dos ceros adelante a la secuencia de bits
00042            bt.putc(num1);        //luego la cifra menos significativa
00043            pc.printf("vol 1\n");
00044            pc.printf("%i",num1);
00045             }
00046         if(num1>255){         //pero si es mayor a 255 las cifras deben ser convertidas a un hex de dos bytes de la siguiente forma   
00047            j=num1/256;       //calculo la cifra mas significativa
00048            k=num1-j*256;     //calculo la cifra menos significativa
00049            bt.putc(j);     //las envio a la usart para que se las ponga al modulo bluetooth y la lleve al android
00050            bt.putc(k);     //mas significativa primero, menos despues si no no funciona!!! y con la orden PUTC solo asi le envia binarios
00051            pc.printf("vol 1\n");
00052            pc.printf("%i",num1);   
00053             }   
00054     
00055         if(num2<256){         //debo generar dos casos a APP inventor solo me recibe hex asi: 0xhhhh (4 cifras)    
00056            bt.putc(0);     //si el numero es hasta 255 se le ponen dos ceros adelante a la secuencia de bits
00057            bt.putc(num2);     //luego la cifra menos significativa
00058            pc.printf("vol 1\n");
00059            pc.printf("%i",num2);     
00060                   }
00061        if(num2>255){         //pero si es mayor a 255 las cifras deben ser convertidas a un hex de dos bytes de la siguiente forma   
00062            j=num2/256;       //calculo la cifra mas significativa
00063            k=num2-j*256;     //calculo la cifra menos significativa
00064            bt.putc(j);     //las envio a la usart para que se las ponga al modulo bluetooth y la lleve al android
00065            bt.putc(k);     //mas significativa primero, menos despues si no no funciona!!! y con la orden PUTC solo asi le envia binarios
00066            pc.printf("vol 1\n");
00067            pc.printf("%i",num2); 
00068                      }
00069     }
00070 }