App inventor 2 en español
Cómo programar los teléfonos móviles con Android.
Bluetooth, Arduino y App inventor 2 - Juan Antonio Villalpando
-- Tutorial de iniciación de App Inventor 2 en español --
Volver al índice del tutorial
___________________________
9C3.- Bluetooth Servidor - Cliente con móviles. Estudio.
_________________
- Presentación.
- Tenemos dos móviles o tablet y vamos a enviar desde el Servidor al Cliente distintas formas de datos: Texto, Lista de Bytes y 4 Bytes. El Cliente lo podrá recibir en forma de Texto, de Byte sin signo y de Byte con signo.
- Las aplicaciones tendrán la extensión com.KIO4_Bluetooth.aix por si fuera necesario habilitar y deshabilitar los Bluetooth.
_________________
- Vinculado o Pareado.
- Consiste en que un móvil reconozca a otro móvil por Bluetooth.
- Para que los móviles puedan comunicarse por Bluetooth deben estar pareados o vinculados de esta manera:
- Vamos a "Ajustes"...
- Buscamos dispositivo, el otro dispositivo también debe tener activa su conexion Bluetooth.
- Saldrá una clave que tendremos que poner en el otro móvil.
- Ya tenemos a los dos dispositivos vinculados.
_________________
- Servidor y Cliente.
- Debemos realizar dos aplicaciones, una instalarla en un móvil que actuará como Servidor y otra en el otro móvil que actuará como Cliente.
p9C3_Servidor_BT.aia
p9C3_Cliente_BT.aia
_________________
- Servidor Diseño.
- Situamos el ServidorBluetooth que está en la parte de "Conectividad".
_________________
- Servidor Bloques.
==============================================
==============================================
==============================================
_________________
- Cliente Diseño.
- Situamos el ClienteBluetooth que está en la parte de "Conectividad".
- Su Propiedad
ByteDelimitador la ponemos a 10.
_________________
- Cliente Bloques.
_________________
- Comentarios.
- Primero conectamos el Servidor, luego el Cliente. Cuando estén conectados, pulsamos en "Iniciar Reloj" para que comience a recibir datos
1.- Podemos enviar un Texto "El ñandú tiene 46 años." y recibirlo como texto en el Cliente.
- También podemos recibir ese texto como BytesSinSigno, obtendremos una lista con el valor ASCII de cada caracter:
[69, 108, 32, 195, 177, 97, 110, 100, 195, 186, 32, 116, 105, 101, 110, 101, 32, 52, 54, 32, 97, 195, 177, 111, 115, 46]
- Si lo recibimo como ByteConSigno, aquellos números superiores a 127, los recibiremos en negativo.
[69, 108, 32, -61, -79, 97, 110, 100, -61, -70, 32, 116, 105, 101, 110, 101, 32, 52, 54, 32, 97, -61, -79, 111, 115, 46]
----------------------------------------------------------------------------
2.- También podemos enviar una lista de Bytes con valores decimales, por ejemplo: 65, 66, 67, 68, 69
- Si los recibimos como texto, obtendremos su caracter ASCII, en nuestro caso recibiremos: ABCDE
- Si los recibimos como BytesSinSigno, obtendremos una lista con los valores numéricos enviados: [65, 66, 67, 68, 69]
- Si los recibimos como ByteConSigno, en esta ocasión obtendremos los mismos valores anteriores, ya que ninguno supera al 127
----------------------------------------------------------------------------
3.- Otra posibilidad es enviar la información mediante 4 Bytes, esto debe ser un número decimal del 0 al 4.294.967.296 (256 x 256 x 256 x 256)
- En el ejemplo enviamos: 3.999.368.245 lo recibieremos como BytesSinSigno en forma de lista: [53, 132, 97, 238]
- Es un número binario codificado en partes decimales, cuyo valor decimal es:
53 x 1 + 132 x 256 + 95 x 65.536 + 238 x 16.711.580 = 3.999.368.245
- Si lo recibimos como ByteConSigno, obtendremos: [53, -124, 97, -18]
- Los números negativos son debidos a que superan el 127.
_______________________________________________
- Números negativos en binario codificado en decimal.
- Tenemos el número 177, lo pasamos a binario y obtenemos:
- Si ese número los pasamos a binario con signo, resulta que el bit de la izquierda se convierte en signo y el valor numérico corresponde al complemento de 2 de los otros 7 bits.
- Complemento a 2, resulta de invertir los bits y añadirle un 1 al número obtenido:
- Este cambio lo hacemos cuando el número que queremos convertir es mayor de 127.
- Una forma para obtener el número decimal es restarlo a 256, es decir
256 - 177 = 79
_______________________________________________
__________________________________
|