![](/media/cache/profiles/c4661f6669f5f35823f39acb6d6be725.jpg.50x50_q85.jpg)
2 ports read ang
Fork of VOLTIMETRO1 by
main.cpp@2:8a0e46a84596, 2015-04-17 (annotated)
- Committer:
- tony63
- Date:
- Fri Apr 17 20:17:55 2015 +0000
- Revision:
- 2:8a0e46a84596
- Parent:
- 1:d0a4ddc1bd88
- Child:
- 3:61fd3a58c5bf
version corregida
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tony63 | 1:d0a4ddc1bd88 | 1 | //programa para enviar valores analogos y probarlos con app inventor |
tony63 | 1:d0a4ddc1bd88 | 2 | //el programa en esta oportunidad manda valores provenientes del puero analogico en |
tony63 | 1:d0a4ddc1bd88 | 3 | //enteros HEX (xxxx) entre 0 y 1000 |
tony63 | 1:d0a4ddc1bd88 | 4 | //se prueba con voltimetro1 .apk APPINVENTOR. cambie GSM A pc si quere probar directo sobre la pc |
tony63 | 0:4676a90107ca | 5 | |
tony63 | 0:4676a90107ca | 6 | #include "mbed.h" |
tony63 | 1:d0a4ddc1bd88 | 7 | #include <stdio.h> |
tony63 | 1:d0a4ddc1bd88 | 8 | //#include <conio.h> |
tony63 | 0:4676a90107ca | 9 | DigitalOut LedVerde(LED2); |
tony63 | 0:4676a90107ca | 10 | DigitalOut LedRojo(LED1); |
tony63 | 0:4676a90107ca | 11 | DigitalOut LedAzul(LED3); |
tony63 | 1:d0a4ddc1bd88 | 12 | |
tony63 | 0:4676a90107ca | 13 | Serial GSM(PTE0,PTE1); //puertos del FRDM para el modem |
tony63 | 0:4676a90107ca | 14 | Serial pc(USBTX,USBRX); |
tony63 | 1:d0a4ddc1bd88 | 15 | int med,num,i,j,k; |
tony63 | 1:d0a4ddc1bd88 | 16 | AnalogIn input(PTC2); |
tony63 | 1:d0a4ddc1bd88 | 17 | |
tony63 | 0:4676a90107ca | 18 | int main(void) |
tony63 | 0:4676a90107ca | 19 | { |
tony63 | 1:d0a4ddc1bd88 | 20 | GSM.baud(9600); // asigno baudios y configuro puerto serie de la usart |
tony63 | 0:4676a90107ca | 21 | GSM.format(8,Serial::None,1); |
tony63 | 1:d0a4ddc1bd88 | 22 | |
tony63 | 0:4676a90107ca | 23 | while(1){ |
tony63 | 2:8a0e46a84596 | 24 | //leo puerto analogico |
tony63 | 1:d0a4ddc1bd88 | 25 | wait(0.5); |
tony63 | 2:8a0e46a84596 | 26 | num = input*1000; //agrando el numero de cero a mil |
tony63 | 1:d0a4ddc1bd88 | 27 | if(num<256){ //debo generar dos casos a APP inventor solo me recibe hex asi: 0xhhhh (4 cifras) |
tony63 | 1:d0a4ddc1bd88 | 28 | GSM.putc(0); //si el numero es hasta 255 se le ponen dos ceros adelante a la secuencia de bits |
tony63 | 1:d0a4ddc1bd88 | 29 | GSM.putc(i); //luego la cifra menos significativa |
tony63 | 1:d0a4ddc1bd88 | 30 | } |
tony63 | 1:d0a4ddc1bd88 | 31 | if(num>255){ //pero si es mayor a 255 las cifras deben ser convertidas a un hex de dos bytes de la siguiente forma |
tony63 | 1:d0a4ddc1bd88 | 32 | j=num/256; //calculo la cifra mas significativa |
tony63 | 1:d0a4ddc1bd88 | 33 | k=num-j*256; //calculo la cifra menos significativa |
tony63 | 1:d0a4ddc1bd88 | 34 | GSM.putc(j); //las envio a la usart para que se las ponga al modulo bluetooth y la lleve al android |
tony63 | 1:d0a4ddc1bd88 | 35 | GSM.putc(k); //mas significativa primero, menos despues si no no funciona!!! y con la orden PUTC solo asi le envia binarios |
tony63 | 1:d0a4ddc1bd88 | 36 | } |
tony63 | 0:4676a90107ca | 37 | } |
tony63 | 1:d0a4ddc1bd88 | 38 | } |