Paso 7: Sopa hasta su teléfono
Si usted está interesado en aprender cómo funciona la aplicación, leyendo. Cuando se inicia la aplicación, será inmediatamente intente conectarse al cañón. Para simplificar, hemos codificado la dirección MAC de nuestro modem BlueSmirf en lugar de desarrollar un selector. Este enfoque funciona, pero significa que tendrás que emparejar con el módem antes de lanzar la aplicación.
Para vincular el BlueSmirf de tu teléfono Android, vaya a Configuración >> conexiones inalámbricas y redes >> ajustes de Bluetooth y asegúrese de que Bluetooth está activado. A continuación, pulse "Buscar dispositivos" y seleccione el módem BlueSmirf cuando demuestra para arriba (nuestro nombre RN42-07EA). De forma predeterminada, la contraseña será "1234" o "0000".
Ahora, de nuevo en la aplicación para Android, si la conexión intenta veces, entonces los botones permanecerá deshabilitados. Pulsando el botón de menú aparece la opción para intentar volver a conectar. Esto es conveniente para cuando te pruebas la gama de su configuración. También tenga en cuenta que es importante para asegurarse de que toda la comunicación Bluetooth sucede en un subproceso independiente. Como la mayoría de las operaciones de la red, la comunicación de Bluetooth no tiene muchas garantías de tiempo. En un microcontrolador típico, generalmente puede garantizar que una instrucción se ejecutará en ciclo de reloj. Sin embargo, en este caso, la cantidad de tiempo al establecer que una conexión y envío de datos depende de una variedad de factores, incluyendo las características físicas como la distancia entre el transmisor y el receptor, la interferencia de radio en la sala (que se encarga del BlueSmirf por una técnica conocida como lupulización de frecuencia )
Para acceder a la interfaz de Android SPP, tuvimos que utilizar alguna reflexión de Java para recuperar una función miembro. Puede encontrar más información sobre este hack en esta conversación de StackOverflow detallada , que nos benefició, pero no participó en. Si usted viene para arriba con un mejor enfoque mediante el análisis de la documentación de BluetoothSocket mejor de lo que hicimos, entonces dude en dejar un comentario avisándonos de lo que hiciste.
Una vez establecida la conexión, se activan los botones. Cuando está golpeado ligeramente un botón, se trató de un byte a través de la red. El botón marrón envía un carácter ASCII '1' (0x31 si nos fijamos en los bits individuales), y el botón naranja envía '2' (0x32). Esto muy bien puede ser el protocolo más simple que jamás verás en tu vida. Si una transferencia de datos, nunca falla, los botones se desactivan y el usuario es notificado mediante un mensaje de brindis .