... después de hacer 300 millones de pruebas
Recordemos la idea del sistema de comunicaciones del C-A:
- Barato
- Controlable desde cualquier parte del mundo
- Varios canales simultáneos
- Respuesta inmediata
nos damos cuenta de que tiene 4 sticks analógicos, dos botones (digitales obviusly) y Vcc y GND. Para que las pulsaciones se envíen por bluetooth, necesitaremos además del bluetooth, un controlador que lo haga todo. En mi caso usaré un ATtiny84:
Se programa exactamente igual que el ATTiny85, desde un Arduino. Como esta parte es un poco liosa, voy a repetir los pasos, uno a uno, para que no me digáis que no os lo explico todo.
Preparación del Arduino en modo ISP:
- Descargamos e instalamos el IDE de Arduino, podemos usar la versión 1.5 o la 1.0, como gustes.
- Descargamos la última versión de las librerias de ATTiny, para la versión de nuestro IDE, desde la web https://code.google.com/p/arduino-tiny/
- Descomprimimos el archivo anterior, renombramos el nombre del directorio a "tiny" y el archivo Prospective-Boards.txt, lo renombramos a boards.txt. La estructura tiene que quedar así:
tiny
| - avr
| - bootloaders (...)
| - cores (...)
| - boards.txt
| - license.txt
| - platform.txt
| - README - Movemos el directorio tiny al directorio hardware del IDE de Arduino, por ejemplo:
C:\Users\juanmol\Documents\arduino\arduino-1.5.7\hardware - Abrimos el IDE, y cargamos el programa ArduinoISP:
- Nos aseguramos de tener correctamente los datos de la placa y el programador:
- Enchufamos el Arduino UNO (o el que tengas) y le damos a cargar (upload) programa.
Carga del bootloader del ATTiny84, usando el Arduino
Cableamos de la siguiente forma:
Mucho ojo al condensador, recuerda que si NO usas un Arduino UNO, NO es necesario. Ahora volvemos al IDE de Arduino:
- Si has ido conectando el ATTIny84 al Arduino, al mismo tiempo que tenias éste último encendido (conectado por USB), pulsa en el Arduino el botón de reset varias veces.
- En el IDE, selecciona la placa correspondiente:
- Cambia el programador y elige Arduino as ISP:
- REVISA EL CABLEADO!!!! (tres veces).
- Grabamos el bootloader (secuencia de inicio):
- Si lo has hecho todo bien, es probable que te salgan un par (o cuatro) de mensajes de advertencia, puedes ignorarlos.
Conexión BT-ATTiny84
La idea es la siguiente:
Fácil ¿verdad? Para las pruebas, conectamos los 5V y GND al Arduino. El programa a cargar en el ATTiny84 es el siguiente:
eh ... lo se, no se me da muy bien, si alguien sabe como encoger el código, se lo agradeceré. Si te fijas, las patitas 13 y 12 del ATTiny84 son botones, por lo que definirlas como analógicas y después limitarlas a 2 resultados, es un poco de tontos, pero yo soy muy tonto así queda más homogéneo.
Te lo explico un poco:
Te lo explico un poco:
- Limitamos a 2 los valores de los botones: 1 y 2.
- Limitamos a 9 los valores de los sticks: 1, 2, 3, 4, 5, 6, 7, 8 y 9.
- Los enviamos todos a la vez generando un único valor, por ejemplo: 114545
- Para que la conexión BT no se engollipe, dejamos 100ms entre envío y envío, y si no hay modificación, no hay emisión, qué listo soy ;)
Aspecto final
Aún no lo he terminado del todo, pero básicamente voy a usar un tapper del IKEA (de los verdes chiquitines) para guardarlo todo.
buenas disculpe, tengo un problema con tinydebugserial.h me marca error a pesar de que segui todos los pasos.
ResponderEliminar