Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@0:d66493246074, 2015-04-24 (annotated)
- Committer:
- caarbelaezg
- Date:
- Fri Apr 24 03:18:03 2015 +0000
- Revision:
- 0:d66493246074
- Child:
- 1:8596494b7d9d
Programa para comunicaci?n bluetooth
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
caarbelaezg | 0:d66493246074 | 1 | //programa para enviar valores analogos y probarlos con app inventor |
caarbelaezg | 0:d66493246074 | 2 | //el programa en esta oportunidad manda valores provenientes del puero analogico en |
caarbelaezg | 0:d66493246074 | 3 | //enteros HEX (xxxx) entre 0 y 1000 |
caarbelaezg | 0:d66493246074 | 4 | //se prueba con voltimetro1 .apk APPINVENTOR. cambie GSM A pc si quere probar directo sobre la pc |
caarbelaezg | 0:d66493246074 | 5 | |
caarbelaezg | 0:d66493246074 | 6 | #include "mbed.h" |
caarbelaezg | 0:d66493246074 | 7 | #include <stdio.h> |
caarbelaezg | 0:d66493246074 | 8 | //#include <conio.h> |
caarbelaezg | 0:d66493246074 | 9 | |
caarbelaezg | 0:d66493246074 | 10 | |
caarbelaezg | 0:d66493246074 | 11 | DigitalOut LedVerde(LED2); |
caarbelaezg | 0:d66493246074 | 12 | DigitalOut LedRojo(LED1); |
caarbelaezg | 0:d66493246074 | 13 | DigitalOut LedAzul(LED3); |
caarbelaezg | 0:d66493246074 | 14 | |
caarbelaezg | 0:d66493246074 | 15 | Serial GSM(PTE0,PTE1); //puertos del FRDM para el modem |
caarbelaezg | 0:d66493246074 | 16 | Serial pc(USBTX,USBRX); |
caarbelaezg | 0:d66493246074 | 17 | int med,num,i,j,k; |
caarbelaezg | 0:d66493246074 | 18 | AnalogIn input(PTC2); |
caarbelaezg | 0:d66493246074 | 19 | |
caarbelaezg | 0:d66493246074 | 20 | int main(void) |
caarbelaezg | 0:d66493246074 | 21 | { |
caarbelaezg | 0:d66493246074 | 22 | |
caarbelaezg | 0:d66493246074 | 23 | GSM.baud(9600); // asigno baudios y configuro puerto serie de la usart |
caarbelaezg | 0:d66493246074 | 24 | GSM.format(8,Serial::None,1); |
caarbelaezg | 0:d66493246074 | 25 | |
caarbelaezg | 0:d66493246074 | 26 | while(1){ |
caarbelaezg | 0:d66493246074 | 27 | //leo puerto analogico |
caarbelaezg | 0:d66493246074 | 28 | wait(0.5); |
caarbelaezg | 0:d66493246074 | 29 | num = input*1000; //agrando el numero de cero a mil |
caarbelaezg | 0:d66493246074 | 30 | //pc.printf("num=%d\n", num); |
caarbelaezg | 0:d66493246074 | 31 | |
caarbelaezg | 0:d66493246074 | 32 | if(num<256){ //debo generar dos casos a APP inventor solo me recibe hex asi: 0xhhhh (4 cifras) |
caarbelaezg | 0:d66493246074 | 33 | GSM.putc(0); //si el numero es hasta 255 se le ponen dos ceros adelante a la secuencia de bits |
caarbelaezg | 0:d66493246074 | 34 | GSM.putc(i); //luego la cifra menos significativa |
caarbelaezg | 0:d66493246074 | 35 | } |
caarbelaezg | 0:d66493246074 | 36 | if(num>255){ //pero si es mayor a 255 las cifras deben ser convertidas a un hex de dos bytes de la siguiente forma |
caarbelaezg | 0:d66493246074 | 37 | j=num/256; //calculo la cifra mas significativa |
caarbelaezg | 0:d66493246074 | 38 | k=num-j*256; //calculo la cifra menos significativa |
caarbelaezg | 0:d66493246074 | 39 | GSM.putc(j); //las envio a la usart para que se las ponga al modulo bluetooth y la lleve al android |
caarbelaezg | 0:d66493246074 | 40 | GSM.putc(k); //mas significativa primero, menos despues si no no funciona!!! y con la orden PUTC solo asi le envia binarios |
caarbelaezg | 0:d66493246074 | 41 | |
caarbelaezg | 0:d66493246074 | 42 | } |
caarbelaezg | 0:d66493246074 | 43 | } |
caarbelaezg | 0:d66493246074 | 44 | } |