Paso 4: Firmware
El firmware está basado en el código incluido en AN1076 de Microchip. Habilité 6 canales AdC y ciclo a través de ellos devuelven datos que se colocan en las variables de dirección, que espera para ser enviados.
También ha añadido la capacidad de desviar la dirección de inicio, así que en vez de él siempre enviando su primer byte de datos a 1 de dirección DMX, los interruptores DIP se puede usar y configurarlo para comenzar en cualquiera de las direcciones.
Lamentablemente la única manera que podría ponerlo a trabajar con todas las direcciones era utilizar un método que produce picado AdC resultados mayores se establece la dirección en. Pero funciona con todas las direcciones. Método 3
En el firmware, comentado, son otros dos métodos para utilizar el valor de desplazamiento.
Método 1: Permite que los interruptores DIP 1-8 funcione correctamente, que es DMX direcciones 1 - 255
Método 2: Permite que los interruptores DIP 1-7 y 9 funciona correctamente que es direcciones 1-127 y 256-383
Método 3: Se discutió anteriormente.
Incluido en el ZIP en el paso 1 fue el firmware con el método 1 & 2 comentada. Y los archivos HEX para todos los 3 métodos, listos para programar.
Un montón de espacio del PWB puede salvarse mediante la eliminación de las funciones de compensación, en el código fuente, quite todos los 3 de los métodos y eliminar el "rcall OffsetAddress" y luego el transmisor debe siempre empezar a enviar en la dirección 1.
Si alguien puede arreglar o encontrar una mejor manera de implementarlo me avisas. He pasado manera mucho tiempo tratando de descifrarlo, tengo algunos comentarios sobre lo que he probado en el código fuente. Tiene que ver con el direccionamiento indirecto.