Paso 5: Configurar fusibles en el AVR
A pesar de la importancia de la disociación, la configuración es muy simple y sencilla. He aquí cómo vamos a hacerlo. Vamos a poner dos condensadores entre la fuente de alimentación regulada y un diodo de pinza de voltaje. Junto con eso, vamos a añadir un LED con resistor asociado como un indicador de potencia. Que lo hecho en 30 segundos.
Hacer tu circuito de desacoplamiento
Coloque su fuente de alimentación regulada brillante, flamante en su protoboard. Conectar por medio de energía en lo postes de montaje superior. Revisa el regulador de tensión en la acción. Desea que sus condensadores de desacoplamiento como cerca de su Vcc como sea posible, así que moví mi ATmega328P sobre unos agujeros, junto con los cables y había criado mi circuito desacoplamiento desde la parte inferior izquierda. Positivo en la izquierda, negativa a la derecha y coloque un condensador electrolítico de 47uF de positivo a tierra, seguido de un 0.1uF condensador de tantalio, también de positivo a tierra. Después de eso, coloque un diodo 1N4002 a la pinza, tomando nota de la dirección (polarizado). Por último, coloque un LED "poder sobre" con su requisito 1K Ohm resistencia y que es el circuito del desacoplamiento. Revisa las imágenes.
Ejecutar un cable desde el extremo positivo del circuito del desacoplamiento al pin 7 del Vcc del AVR y listo! Tiene un característica rica AVR desarrollo entorno bastante completado.
Así que ¿por qué nos bautizar nuestro nuevo AVR por configurarlo?
Configurar su AVR nuevo
Lo principal que necesitamos para configurar son los ajustes del fusible para indicar que el AVR que queremos usar un cristal externo. Junto con esto, a configurar unas cuantas opciones a la vez que especifica la velocidad de reloj, tiempo de inicio y detección de brown-out.
Conectar el programador a la cabecera del ISP. Yo uso un USBTiny de Adafruit Industries. Nota la forma en que se conecta. Asegúrese de que mate el conector hembra para el encabezado en la orientación correcta.
Fuego avrdude y ejecute el siguiente comando:
Le debe bienvenida con un mensaje como se muestra a continuación. Haga clic en el [i] en la esquina superior izquierda de la imagen y seleccione el tamaño original si le resulta difícil leer la imagen.
Al emitir el comando "parte" para obtener cierta información del dispositivo, seguido por el comando siguiente:
Esto lee la configuración inferior del fusible, que nos interesa, ya que contiene la configuración del reloj. ¿Recuerde hoja de datos de 400-some página que vinculado antes? En él, encontrarás la configuración para el fusible de la baja en la tabla 27-9. Los ocho bits en él son:
Configuración de fusibles es peculiares, como un 1 significa sin programar y un 0 indica programada. CKDIV8 viene programada de fábrica y se divide el reloj por 8. El oscilador RC interno está programado por defecto a 8MHz y con CKDIV8 programado, que establece la velocidad de reloj de 1MHz. Vamos a cambiar eso.
El registro entero inferior del fusible es un byte y lo que vamos a hacer es:
- CKDIV 1
- CKOUT sin cambios
- SUT1 0
- SUT2 1
- CKSEL3 0
- CKSEL2 1
- CKSEL1 1
- CKSEL0 1
El fusible inferior viene programado de fábrica con un ajuste de 0x62. Para hacer los cambios que necesarios para convertir el hexadecimal a binario, luego volver a hex para realizar nuestro cambio. 0x62 en binario es 0110 0010. Basado en los cambios que he mencionado anteriormente, queremos que ese registro que contiene 1101 0111 que es 0xD7 en hexadecimal. Esto es lo que parece:
Fuego avrdude respaldo y emitir: avrdude - c usbtiny -p atmega328p -F -t
En el mensaje, escriba
Debe dar un mensaje sobre la escritura en el fusible. Emitir "LFusible leer" para leer el fusible y compruebe que escribió 0xD7. Una vez completa, tipo "quit" para salir.
Su AVR ahora está programado para ejecutarse en un ardiente 20MHz con un tiempo de inicio rápido y detección de brown-out habilitada. Son animados a leer la sección de ajustes más bajos de fusible si nada de eso es confuso.
En este punto, son capaces de programar el AVR a su contenido de corazones. Puede conectar LEDs y los parpadean, leer interruptores DIP, conducir motores, escribir en LCD, leerlas memorias externas y más. Pero no tienes alguna forma de capturar la producción a gran escala. Es el siguiente orden del día.