Autor Tema: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!  (Leído 13828 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« en: 28 de Diciembre de 2010, 14:26:18 »
Bueno, con eso de que las vacaciones son ese periodo en el cual, en vez de descansar, hacemos más que cuando estamos sumidos en la rutina... me he dedicido a sacar de la pila de cosas que tenía ganas de probar, una sencilla aplicación que relaciona nuestros queridos PICs, la aclamada conexión Bluetooth y el sistema operativo para móviles de moda, Android. Para el desarrollo en esta plataforma (Android), podemos optar por dos caminos, hacer uso de las SDK ó usar una Aplicación Web de los GoogleLabs llamada App Inventor. Programación visual, por bloques, muy sencillito y con el objetivo de hacer aplicaciones de una forma rápida! Recientemente ha dejado de ser una Beta privada por lo que cualquiera de nosotros puede usarla. Como ya os imaginaréis me he decidio por el App Inventor, con el objetivo, como siempre, de hacer algo sencillo y que seais vosotros quienes lo compliquéis para hacer una aplicación con una utilidad real!! :)

- Dispositivos utilizados:
* PIC18F4553Trainer: http://www.microingenia.com/electronics/product.php?id_product=31
* ModBluetooth: http://www.microingenia.com/electronics/product.php?id_product=4
* Samsung Galaxy S: http://www.samsungmobile.es/moviles/samsung-galaxy-s

- Software utilizado:
* CCS: http://www.ccsinfo.com
* App Inventor: http://appinventor.googlelabs.com

El Objetivo de esta sencilla aplicación es hacer un toggle del led bicolor de la entrendora, verde -> rojo -> ambar -> off...

La aplicación en concreto consta de dos partes, por un lado, la aplicación para el PIC y por el otro la aplicación que cargaremos en el terminal Android.

Código fuente para el PIC (está mas menos explicado, si tenéis dudas preguntadlas en el hilo!)
Código: [Seleccionar]
////////////////////////////////////////////////////////////////////////
//ModBluetooth V1.0 Test Code - www.microingenia.com        12/02/2010//
//                                                                    //
//Simple code to show how to use a communication over bluetooth.      //
//You must link your Bluetooth dongle with ModBluetooth first.        //
//Pswd: 0000, this catch an ascii to turn on/off led                  //
//                                                                    //
//Released under the cc by-nc-sa 3.0 License.                         //
//http://creativecommons.org/licenses/by-nc-sa/3.0/                   //
////////////////////////////////////////////////////////////////////////
#include <18F4553.h>
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,NOBROWNOUT,USBDIV,PLL2,CPUDIV1,VREGEN,PUT,MCLR
#use delay(clock=48000000)

// MiE USB HID Bootloader
#define CODE_START   0x1000
#build(reset=CODE_START, interrupt=CODE_START+0x08)
#org 0, CODE_START-1 {}

// Definitions for LEDs on Board
#define  ON    output_high
#define  OFF   output_low

// Connections in 18F4553Trainer
#define  LedV   PIN_B0
#define  LedR   PIN_B1

// Connections between ModBluetooth and 18F4553Trainer
#define  Rx     PIN_C6
#define  Tx     PIN_C7

#use rs232(UART1, baud=115200, xmit=Rx, rcv=Tx, STREAM=BLUE)
#include "string.h"

int8 CR = 0x0d; // Carriage Return

void main()
{  
   ON(LedR);      // Red: No connection
   OFF(LedV);
  
   enable_interrupts(INT_RDA);
   enable_interrupts(GLOBAL);
      
   delay_ms(3000);
   fprintf(BLUE,"$$$");                // Get into command mode
      
   delay_ms(250);
   fprintf(BLUE,"SA,1");               // Enable authentication
   fputc(CR,BLUE);

   delay_ms(250);
   fprintf(BLUE,"SP,0000");            // Set Password
   fputc(CR,BLUE);
  
   delay_ms(250);
   fprintf(BLUE,"SN,ModBluetooth");    // Device name
   fputc(CR,BLUE);
  
   delay_ms(250);
   fprintf(BLUE,"SS,ModBluePort");     // Service name
   fputc(CR,BLUE);

   delay_ms(250);
   fprintf(BLUE,"ST,0");               // Enable vinculation
   fputc(CR,BLUE);                

   delay_ms(250);
   fprintf(BLUE,"---");                // Get out command mode
   fputc(CR,BLUE);
  
   ON(LedV);      // Green: Bluetooth ready! Link it now.
   OFF(LedR);
      
   while(true);
}

#INT_RDA
void rda_isr(void)
{  
   char c;
   c = fgetc(blue);
  
   if(c == '@')
   {    
      ON(ledR);
      OFF(ledV);
   }  
   else if(c == '#')
   {    
      ON(ledV);
      OFF(ledR);
   }  
   else if(c == '$')
   {    
      ON(ledR);
      ON(ledV);
   }  
   else if(c == '%')
   {    
      OFF(ledR);
      OFF(ledV);
   }
}

Código para Android, como ya os he comentado, es visual y por bloques... aquí la imagen!



Y aquí una captura de pantalla del móvil corriendo la aplicación:



Ya que el App Inventor da la posibilidad de importar/exportar el código fuente de la aplicación os lo dejo acontinuación, así os ahorrais tener que construir el puzzle...!
http://www.microingenia.com/temp/MiEPICBT/MiEPICBT.zip

Os subo también el APK (instalador de Android) listo para ejecutar en vuestros móviles:
http://www.microingenia.com/temp/MiEPICBT/MiEPICBT.apk

Bueno ahora os toca a vosotros empezar a cacharrear! Me imagino que os surgirán dudas, así que id poniendolas por aquí abajo.

Un saludo a todos y feliz 2011 !! :mrgreen:

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #1 en: 28 de Diciembre de 2010, 16:41:50 »
Siempre innovando, Jaime  :shock:

Me suscribo al hilo porque me interesa mucho. Gracias por la info

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #2 en: 28 de Diciembre de 2010, 16:51:34 »
Interesantisimo! Gracias J1M!

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #3 en: 11 de Enero de 2011, 11:57:00 »
Hola.

Disculpa la pregunta ... como ejecuto el .apk? lo copie a mi móvil y no reconoce el archivo. Necesito algo más?

Saludos
El papel lo aguanta todo

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #4 en: 11 de Enero de 2011, 12:03:04 »
Hola.

Disculpa la pregunta ... como ejecuto el .apk? lo copie a mi móvil y no reconoce el archivo. Necesito algo más?

Saludos

Hola MLO. Yo sólo he instalado APKs en el emulador Android. Talvez esta guía te pueda dar alguna pista.

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #5 en: 11 de Enero de 2011, 12:13:03 »
Gracias mig. Lo leo con mucha antención  ;-)

Entonces, para que la aplicación corra en el celular .... que se debe hacer? toca usar otro soft? he visto que los juegos son .jar, es decir en JAVA cierto?

Saludos
El papel lo aguanta todo

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #6 en: 11 de Enero de 2011, 12:32:44 »
Gracias mig. Lo leo con mucha antención  ;-)

Entonces, para que la aplicación corra en el celular .... que se debe hacer? toca usar otro soft? he visto que los juegos son .jar, es decir en JAVA cierto?

Saludos

No sé si te vaya a servir ya que el link es para una SD card y no conozco bien los Android, pero me avisas si hay suerte.

JAR corre en la máquina virtual de Java y es independiente del móvil que uses.

Los APK sólo corren dentro del OS Android. Es como los EXE de Microsoft.

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #7 en: 11 de Enero de 2011, 13:09:15 »
Hola mig.

Esos comandos (mksdcard) en donde los escribo?  :oops:

El papel lo aguanta todo

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #8 en: 11 de Enero de 2011, 13:09:44 »
Para instalarlo puedes hacerlo de dos formas diferentes:

- Lanzarlo mediante un File Manager, yo uso el AndroZip. Mete el archivo en la memoria SD de tu móvil y desde el AndroZip lo ejecutas.
- Mete el código fuente del App Inventor en el panel de control de aplicaciones (deberás loguearte en Google y darte de alta en el App Inventor... de esta forma podrás crear tus aplicaciones) y la descargas al móvil mediante el código QR que genera. Para ello necesitarás un scanner de códigos QR, por ejemplo el Google Goggles.

Saludos!

PD: Entiendo que tu móvil lleva Android como SO verdad??

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #9 en: 12 de Enero de 2011, 12:47:30 »
MLO, mejor haz lo que el amigo J1M recomienda.  ;-)

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #10 en: 12 de Enero de 2011, 16:36:27 »
Gracias J1M.

Pues no se que SO tendrá, no soy ni medio en celulares  :D es un Nokia 5310 ... creo que es Symbian S40 si sirve mi carcacha???

Voy a intentar hacerlo a ver como me va ... cualquier cosa silbo  :oops:

Saludos
El papel lo aguanta todo

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #11 en: 12 de Enero de 2011, 18:02:50 »
Nop MLO_ por eso te lo decía, esto es solo para los móviles con sistema Android.

Saludos!

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #12 en: 12 de Enero de 2011, 20:03:42 »
 :(

No hay forma entonces ...

Gracias
El papel lo aguanta todo

Desconectado sergioaiki07

  • PIC10
  • *
  • Mensajes: 3
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #13 en: 11 de Agosto de 2011, 18:32:33 »
hola tengo una consulta con el envió de datos, solo envía por carácter ya que para mensajes largos es un poco engorroso y lo otro la recepción de datos tendrás algún ejemplo por ahí

gracias

Desconectado sergioaiki07

  • PIC10
  • *
  • Mensajes: 3
Re: MiEPICBT: PIC, Bluetooth y Android... juntos pero no revueltos!
« Respuesta #14 en: 12 de Agosto de 2011, 03:42:17 »
perdón por el up y me colgare de este tema alguien que maneje android para que me pueda dar una mano revisando mi código

desde ya gracias