Paso 2: El código - proyecto CYZ_RGB (no, no sé lo que significa bien)
Si dirígete a la página de código de google CYZ_RGB, podrás descargar el firmware desde el proyecto. Hay dos configuraciones diferentes, amo y esclavo, no sé siquiera si funciona maestro, o lo que hace, utilizar las estructuras del esclavo que están muy bien para mis necesidades, con una excepción!
Creo que se supone que va a correr CYZ_RGB en el hardware BlinkM oficial, o algunos directos tipo de clon de él, y por lo tanto, el código está escrito para LEDs de RGB cátodo común (uso de que BlinkM). Tengo un excedente de LEDs de RGB ánodo común, así que tuve que hacer un pequeño cambio en el código para apoyar esto.
Si usted se preocupa: en el archivo cyz/io.h, donde se establecen los bits para activar o desactivar puertos concretos, yo he cambiado la asignación de bits. Cuando un color se enciende en el código, el perno va bajo, de modo que puede hundirse corriente desde el ánodo común.
He incluido mi archivo de Hex de ánodo común abajo, en caso de sea útil. Además el cambio encima, es idéntica a la última versión de la configuración del esclavo en la página de código de google.
Ahora tienes el archivo .hex que vas a quemar en la uC, que permite habla de programadores y la programación. Hay muchos grandes instructables sobre el tema, pero mi favorito y el que me inició con el de AVR es este entorno de desarrollo uno, de la Ghetto. Usar el mismo programador, el USBtinyISP de Adafruit, y es impresionante. Comenzó con un tablero hecho en casa (cuna), pero ahora han comprado un tablero del programador tiny25/45/85 de la TinkerStore, que se acaba de hacer de impresionante. Sería fino con una base hecha en casa, o simplemente programación en un protoboard.
Siga las instrucciones en el entorno de desarrollo de la Ghetto para la carga de código en las fichas, pero tenga en cuenta que usted está usando un ATtiny45, por lo que el comando de avrdude reflejar esa parte (t45). Obviamente, también especificar el nombre del archivo .hex CYZ_RGB que usted está usando demasiado.
También deben ser conscientes de los fusibles. Estas son opciones en las fichas que cambian cómo se comportan. Utilizar una pieza de software (windows) llamado Burn-O-Mat de AVR8 para comprobar mi configuración de fusibles (usted puede también utilizar como una interfaz gráfica para avrdude). Parece que desde la fábrica, mi Tiny45 el fusible "Reloj dividen por ocho" ya, esto tiene que ser desactivada para el chip correr lo suficientemente rápido para suave se desvanece. Un chip estaba usando también tenía la capacidad de almacenar datos en la EEPROM deshabilitada, así que tuve que cambiar ese fusible (probablemente no necesitará hacer eso)
Ahora que has leído la GDE instructable, la siguiente línea...
AVRDUDE - c usbtiny -p t45-U flash:w:cyzrgb_slave_CA.hex
... no le desmadrarse. Si eres un verdadero keenie, probablemente has todo listo, si no, seguir adelante y programar el chip ahora.
Suponiendo que no hay ningún error en la salida, debe ser bueno para ir.
Mientras estamos en el ambiente de programación, debe agarrar su Arduino como tenemos que cargar un dibujo en el también. El Arduino va a ser usado para controlar los píxeles de la Ghetto y forma un puente entre ellos y su equipo. Podemos usar el bosquejo del comunicador BlinkM para probar, pero en el tiempo usted probablemente querrá escribir tu propio más adecuado a su aplicación. El bosquejo BlinkM comunicador está aquí, y usted deberá cargarlo en su Arduino ahora. Mientras estás en el sitio BlinkM, descargar el secuenciador multipista, necesitará para probar también.
Con su recién programado Chip y tu Arduino a tu lado, es el momento de subirse con Das social!...