Paso 6: Software
No voy a entrar en detalles sobre cómo realmente programar un microcontrolador, hay mejores páginas para aprender a hacer eso. VerEl programa completo entra en 552 bytes, que hace sólo 276 instrucciones a nivel de ensamblador. Es decir casi nada, ya que hay todavía algunos código de arranque y configuración dentro de ella. Y consume sólo el 54,5% de la memoria flash por lo que aún puede agregar más características a la.
Apuesto a que el algoritmo de la base puede aplicarse en menos de 100 bytes.
¿Alguien?
Los pasos que ejecuta el programa son:
1. blink 5 times (say hello)2. compute the average brightness and store it3. power = power + 14. if brightness >= daylight (is it daylight?) * sleep some seconds5. if brightness > average brightness (that was a flash) * power = power + 1006. if power > MAX * flash * power = 0 7. goto 3
Realmente esto es un poco simplificado, pero usted consigue la idea.
Cargar el programa y empezar a las luciérnagas. Si todo está bien, debe ser capaces de sincronizar en un minuto o dos.
He tenido algunos problemas en conseguir las luciérnagas sincronizadas. Como se están ejecutando en su oscilador interno, todos tienen diferentes velocidades. Pensé que ayudaría a recallibrate cambiando el bucle de retardo de cada chip. Mi novia le preguntó, le dijo lo que estaba haciendo y yo. Pensó que eso es como hacer trampa. Luciérnagas no están calibrados. ¿Qué debo decir? Ella tenía razón. Decidido a no hacerlo y me ha buscado otra solución. Tenga en cuenta para la solución más fácil que posiblemente podría trabajar.