Haz una pregunta
  Foros de Electrónica » Temas de Interés » Aportes y documentación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

29/11/2014 #1

Avatar de Scooter

Aplicación en AppInventor para sustituir un teclado y un display
No tengo muy claro si esto debe de ir como aporte o en otro sitio, si no es este su sitio, algún amable moderador que lo cambie.

Adjunto una aplicación en AppInventor para Android que emula un display y un teclado hexadecimal conectandose a un microcontrolador con el típico modulito bluetooth.

Instrucciones:
Previamente hay que emparejar el módulito bluetooth con el teléfono/tablet.

Al abrir el programa lo primero que pregunta es con que dispositivo de la lista que dispone el teléfono como emparejados queremos comunicar, lo seleccionamos y ya está, aparece una pantalla con un teclado y un display.
Para cortar la conexión bluetooth basta con cerrar la aplicación.

La cadena que pasemos de una vez por la uart+bluetooth aparecerá en el "display", si se vuelve a enviar se "pisa" el contenido anterior.
Cada tecla que pulsemos envía por la uart su caracter ascii.
En el lado del microcontrolador hay que determinar que se hace con todo eso. Esto es un "terminal tonto" pero que muy tonto.

Está disponible la aplicación .apk y el archivo "fuente" .aia para que lo edite quien quiera, eso si, pediría al que haga algo interesante sobre esta base que lo comparta también en este foro.

Mas cosas; el programa me ha dado una guerra increíble porque según en que dispositivo android el tema del bluetooth se comporta diferente, en unos me da problemas cuando transmito que no vacía el buffer y en otros cuando recibo, así que puede que no le funcione a todo el mundo.
30/11/2014 #2


checando tu apk estoy viendo que, una vez que activas el timer y el cual genera la interrupcion no lo desactivas y tal vez por eso te de problemas, entonces intenta desactivarlo cuando atiendas la interrupcion, y una vez que termines vuelves a reactivar el timer, porque si no lo desactivas va a estar desbordando continuamente. (no se si con eso se solucione tu problema)
30/11/2014 #3

Avatar de Scooter

Si lo desactivas dejas de recibir datos.
No desborda porque 10ms es una eternidad, antes estaba a 100 que es mas tiempo y va igual de mal.

En algunos android lo que falla es el envío de cadenas; es como si se quedase esperando un ACK o algo así que nunca llega. Por ejemplo envías "1" y la aplicación se queda parada hasta que da error, aceptas y a continuación envías "2" pero lo que envía en realidad envías "12" porque se cree que el 1 no fue recibido. La aplicación va igual de mal si se elimina por completo la interrupción y todo el código de recepción.

Respecto a la recepción, en unos casos llega la cadena toda junta y en otros teléfonos llega a trozos, por eso la junto toda en una variable antes de ponerla en la etiqueta que hace de pantalla. Eso ahora va bien en todos.

Ahora mismo iba a probar a cambiar el control bluetoothClient por BluetoothServer, a ve si es que el modulito es client y dos clients no se hablan bien según que tipo de stack bluetooth tenga el teléfono. Edito, pues no, parece que bluetooth server es para responder si se conectan desde el otro lado y no es el caso.
05/12/2014 #4

Avatar de Scooter

He seguido probando la aplicación en mas dispositivos y en algunos va y en otros no. Debe de ser el driver o stack bluetooth de cada uno según como esté implementado.
Será cuestión de que lo pruebe cada uno a ver si va o no va.
17/01/2015 #5


app inventor retorno de carro
alguien que me pueda ayudar: como hago para enviar una cadena de caracteres con su respectivo RETORNO DE CARRO (ENTER) en app inventor..
Imágenes Adjuntas
Tipo de Archivo: png reto.png (49,2 KB (Kilobytes), 41 visitas)
17/01/2015 #6


washington14 dijo: Ver Mensaje
alguien que me pueda ayudar: como hago para enviar una cadena de caracteres con su respectivo RETORNO DE CARRO (ENTER) en app inventor..
y la imagen que subiste que tiene o que falla? pues como la veo envias lo q hay en texbox y despues el enter
17/01/2015 #7

Avatar de Scooter

En la cadena enlaza lo que quieras y después el caracter ascii 13
17/01/2015 #8


gracias por contestar. me pregunto si alguien tiene otra forma de concatenar la cadena de caracteres con un acci13 al final.

en la imagen que les mostre anteriormente no funciona solo llega el caracter acci13 y nada de cadenas.
18/01/2015 #9

Avatar de Scooter

En las funciones de cadenas hay un bloque para unir cadenas. Pones la cadena en si en uno de los enganches y un bloque de convertir a ASCII en el otro
18/01/2015 #10


muy bueno tu planteamiento pero no encuentro la forma de comvertir el numero 13 en ascii
para luego concatenarlos. o tal vez haya una función que comviarta los numero en ascii que no lo encuentro por ningun lado ,,,
21/01/2015 #11

Avatar de Scooter

Esta mañana lo he probado con otro módulo bluetooth y si que funciona en todos los dispositivos, uno dice que es BTBoard 1.05 el que va a según el teléfono y el 1.06 si que va

---------- Actualizado después de 4 minutos ----------

washington14 dijo: Ver Mensaje
muy bueno tu planteamiento pero no encuentro la forma de comvertir el numero 13 en ascii
para luego concatenarlos. o tal vez haya una función que comviarta los numero en ascii que no lo encuentro por ningun lado ,,,
Me parece que tienes que poner "La cadena que quieras \n" o \r directamente sin unir nada.
21/01/2015 #12


gracias por responderr. asunto solucionado lo he enviado el numero 13 como byte y si llegan las cadenas.
he utilizado la función SendByteNumer de app inventor.
22/01/2015 #13

Avatar de Scooter

Prueba con \n, quedará mas limpio
23/09/2015 #14


washington14 dijo: Ver Mensaje
gracias por responderr. asunto solucionado lo he enviado el numero 13 como byte y si llegan las cadenas.
he utilizado la función SendByteNumer de app inventor.
amigo puedes mostrar los bloques que usaste para enviar la cadena, necesito enviar el valor de un slider a un pic y recibirlo con la funcion gets, pero aun no logro como enviar con la tecla enter muestro la imagen del bloque slider que estoy tratando de enviar
Imágenes Adjuntas
Tipo de Archivo: jpg slider.JPG (44,1 KB (Kilobytes), 17 visitas)
24/09/2015 #15


unifim dijo: Ver Mensaje
amigo puedes mostrar los bloques que usaste para enviar la cadena, necesito enviar el valor de un slider a un pic y recibirlo con la funcion gets, pero aun no logro como enviar con la tecla enter muestro la imagen del bloque slider que estoy tratando de enviar
checa estos nloques
Imágenes Adjuntas
Tipo de Archivo: png slidex.png (32,8 KB (Kilobytes), 21 visitas)
12/12/2015 #16

Avatar de ilcapo

Hola como estan !
tengo varias dudas con el App inventor, les comento de a una para no ser tan pesado XD!

la primera es: si enviamos desde la App un numero ( NO una letra ) al pic , se puede recibir con la funcion getc() ??? o es solo para recibir char ?
13/12/2015 #17

Avatar de Scooter

Entonces tu duda no es de appinventor, es del compilador de c del pic
13/12/2015 #18

Avatar de ilcapo

pero el App Inventor envia el numero como char o como int ?
13/12/2015 #19

Avatar de Scooter

Creo que eso es intrascendente. Appinventor o cualquier otro, envía lo que tu le digas que envíe. Siempre son bytes en binario puro. Lo que luego hagas tu con esos bytes es asunto tuyo.
Ya no me acuerdo de como lo hice, me parece que es el valor asccii de la tecla lo que envía, un sólo byte.
13/12/2015 #20

Avatar de ilcapo

bueno si, será cuestion de probarlo yo tambien supongo que envia el valor ascii pero no estoy seguro por eso les consultaba a ustedes que tienen mas experiencia.

Y suponiendo que nosotros enviemos un 123(ciento veintitres) y entonces el App Inventor envie el valor ascii que seria: 49-50-51

lo recibimos en el pic con la funcion getc()

y lo guardamos en un INT o en un CHAR ?

char=getc()

int=getc()

Como que veo que hay algo raro pero tampoco puedo explicarlo bien, espero que se entienda un poco mi duda gracias !
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Aportes y documentación

Artículos técnicos, notas de aplicación, diagramas circuitales, y demás documentos de interés enviados por nuestra comunidad.

Cerrar
Foros de Electrónica » Temas de Interés » Aportes y documentación

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.