He hecho un clon de sparkfun arduino pro para mí. Funciona en cristal de 3.3v y 8MHz. Puse la versión smd de atmega328p, tengo dos controladores de motor (L293) y una resistencia desplegable en todos los pines ADC (ya que el voltaje entrante es flotante, necesitaba un rsistor divisor). Y utilizo FT232RL como USB a IC serie.
Grabé el cargador de arranque arduino en él, usando el IDE, que cambia los bits del fusible. Por lo tanto, los bits de los fusibles de la placa se ajustan a estos:
(EXTEND:0xFD, HIGH:0xDA, LOW:0xFF)
Que quería utilizar la función de programación en serie de arduino. Todo estuvo bien por un tiempo, que de repente ya no pude programar mi arduino usando el puerto serial, pero estaba funcionando correctamente. Pero podría programarlo usando puertos ISP. A continuación, volví a comprobar los bits de fusible y vi que los bits de BLOQUEO han cambiado a 0xFF
. Leyendo de un tablero antiguo, descubrí que tengo que cambiar estos bits a 0xCF
, y después de eso está funcionando de nuevo.
Al cabo de un rato, vi que la placa no volvía a funcionar, y vi que el programador del ISP decía que la firma del chip era incorrecta, y que esta vez todos los bits del fusible cambiaron y, después de cambiarlos a la derecha Valores, todo volvió a funcionar.
Entonces, ¿cuál es la razón por la que se cambian los bits de fusible de mis tableros? ¿Es un problema común?