Paso 3: Algunos problemas del circuito
Aparte del ICSP y procesador que hemos visto, nos vemos el charliegrid que discute la siguiente sección. Se trata de los LEDs y resistencias limitantes en la esquina superior derecha.
En la esquina inferior izquierda vemos los tres microinterruptores.
Tenga en cuenta que los interruptores sólo tiene que conectar tres pines en el puerto B a tierra.
Esto era un problema.
Originalmente tenía intención de utilizar la función de subida débil en Puerto B del 16F88 para salvar a algunos de los componentes, en particular de enderezamiento en las entradas de interruptor. Sin embargo, al componer la Junta he asignado una de la charliegrid líneas de control a otro pin en PortB. Esto fue una decisión de diseño sencillo, más fácil de diseño de la Junta en un espacio tan pequeño moviendo los rastros a las clavijas más accesibles en el PCB. Si tienes suficiente espacio en todas las líneas de controles charliegrid habían conectado al mismo puerto.
Sin embargo cuando fue escrito el programa de charliegrid, trabajó muy bien, salvo algún tipo de fuga en el LED conectado al pin de PortB. Cuando un LED se iluminó, un par de otras ilumina débilmente. Al final añadí pullups a los switches y desactiva los pullups débil. Puedes ver el tirón extra añadido resistencias y algunos prototipos error alambre en el cuadro ICSP de la sección anterior.
Otro problema era un tonto, hecho por mí cortar y pegar código de otro proyecto al proyecto microdot sin pensar.
Tenía inadvertidamente copiado código que habilita el convertidor A/D para uno de los pasadores. Este es un gran problema si luego utilizas ese pin como salida. Consume demasiada corriente y eventualmente será matar o dañar el pin. Esto es exactamente lo que sucedió, todo funcionó OK en primer lugar y después de probar durante la noche que encontré algunos LEDs no eran iluminación a todos, y algunos fueron iluminación LEDs varios a la vez. Esto tomó varias noches para rastrear a un defectuoso pin RA0... uno que accidentalmente había configurado como una entrada analógica. Charliegrid multiplexado sistema necesariamente configura su control pines como entrada o salida.
Reemplacé el chip con mucho cuidado procurando no levantar las pistas finas en el proceso y ahora Asegúrese de que desactivar todas las entradas analógicas, que se aprecia en el fragmento de código anterior de secciones.
Último problema fue con la fuente de alimentación. Yo he usado un diodo simple caída a los 6V a 5.4V de dos pilas de botón, esto salvo freír el micro cada vez que cambia las pilas. No, la mejor manera de regular el voltaje, pero es espacio de ahorro.
El problema surgió porque sólo tenía un 16F88 dispositivo práctico, no un dispositivo de 16LF88. 'LF' permite operación a aproximadamente 3V, por lo que la batería podría caer a casi la mitad de potencia antes de que el dispositivo sería dejar de funcionar. Con el dispositivo de 'F', el par de la batería puede caer sólo sobre 1V antes de que el dispositivo iniciará reposición sí mismo porque el poder es demasiado bajo.
También había planeado conseguir el reloj y se puso en modo de baja potencia, empieza y termina cuando se pulsa un botón para conservar energía. El software en el momento no tiene esta funcionalidad, que se añadirán cuando la carcasa y montaje instructable está escrito.
Así que para esta sección:
-se puede usar pullups débil en un charliegrid las señales de control
-Tenga cuidado de no configurar una señal de control charliegrid como una entrada como analógica
-Utilice un dispositivo de 16LF88 en lugar de un dispositivo 16F88, para que pueda obtener mejor vida de la batería.