Esta aplicación permite la recepción de datos de voltaje, los cuales son enviados a través del micro-controlador FRDM-KL25Z
la aplicación puede ser descargada a través de la siguiente url: https://mega.nz/#!ZhUBga4B!ZoGqelfKd7Q3dMDlQq1--JiZIOUOSD3WVSKTD4-Ldpo
main.cpp@0:a43ce1b469ab, 2015-11-05 (annotated)
- Committer:
- squinteroz
- Date:
- Thu Nov 05 23:24:19 2015 +0000
- Revision:
- 0:a43ce1b469ab
C?digo fuente para la aplicaci?n de medici?n de voltaje desarrollada para sistema operativo android
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
squinteroz | 0:a43ce1b469ab | 1 | #include "mbed.h" |
squinteroz | 0:a43ce1b469ab | 2 | #include <stdio.h> |
squinteroz | 0:a43ce1b469ab | 3 | //#include <conio.h> |
squinteroz | 0:a43ce1b469ab | 4 | |
squinteroz | 0:a43ce1b469ab | 5 | DigitalOut LedVerde(LED2); |
squinteroz | 0:a43ce1b469ab | 6 | DigitalOut LedRojo(LED1); |
squinteroz | 0:a43ce1b469ab | 7 | DigitalOut LedAzul(LED3); |
squinteroz | 0:a43ce1b469ab | 8 | |
squinteroz | 0:a43ce1b469ab | 9 | Serial GSM(PTE0,PTE1); //puertos del FRDM para el modem |
squinteroz | 0:a43ce1b469ab | 10 | Serial pc(USBTX,USBRX); |
squinteroz | 0:a43ce1b469ab | 11 | int med,num,i,j,k; |
squinteroz | 0:a43ce1b469ab | 12 | AnalogIn input(PTC2); |
squinteroz | 0:a43ce1b469ab | 13 | |
squinteroz | 0:a43ce1b469ab | 14 | int main(void) |
squinteroz | 0:a43ce1b469ab | 15 | { |
squinteroz | 0:a43ce1b469ab | 16 | |
squinteroz | 0:a43ce1b469ab | 17 | GSM.baud(9600); // asigno baudios y configuro puerto serie de la usart |
squinteroz | 0:a43ce1b469ab | 18 | GSM.format(8,Serial::None,1); |
squinteroz | 0:a43ce1b469ab | 19 | |
squinteroz | 0:a43ce1b469ab | 20 | while(1){ |
squinteroz | 0:a43ce1b469ab | 21 | //leer el puerto analógico |
squinteroz | 0:a43ce1b469ab | 22 | wait(0.5); |
squinteroz | 0:a43ce1b469ab | 23 | num = input*1000; //se escala el numero |
squinteroz | 0:a43ce1b469ab | 24 | //pc.printf("num=%d\n", num); |
squinteroz | 0:a43ce1b469ab | 25 | |
squinteroz | 0:a43ce1b469ab | 26 | if(num<256){ //debo generar dos casos a APP inventor solo me recibe hex asi: 0xhhhh (4 cifras) |
squinteroz | 0:a43ce1b469ab | 27 | GSM.putc(0); //si el número es hasta 255 se le ponen dos ceros adelante a la secuencia de bits |
squinteroz | 0:a43ce1b469ab | 28 | GSM.putc(i); //luego la cifra menos significativa |
squinteroz | 0:a43ce1b469ab | 29 | } |
squinteroz | 0:a43ce1b469ab | 30 | if(num>255){ //pero si es mayor a 255 las cifras deben ser convertidas a un hex de dos bytes de la siguiente forma |
squinteroz | 0:a43ce1b469ab | 31 | j=num/256; //calculo la cifra mas significativa |
squinteroz | 0:a43ce1b469ab | 32 | k=num-j*256; //calculo la cifra menos significativa |
squinteroz | 0:a43ce1b469ab | 33 | GSM.putc(j); //las envío a la usart para que se las ponga al modulo bluetooth y la lleve al android |
squinteroz | 0:a43ce1b469ab | 34 | GSM.putc(k); //mas significativa primero, menos después si no no funciona!!! y con la orden PUTC solo asi le envia binarios |
squinteroz | 0:a43ce1b469ab | 35 | |
squinteroz | 0:a43ce1b469ab | 36 | } |
squinteroz | 0:a43ce1b469ab | 37 | } |
squinteroz | 0:a43ce1b469ab | 38 | } |