Paso 5: Programmimg el reloj fusible por nuestra cuenta!
Ahora sabemos que tenemos que cambiar CKOPT (poco número 4) de bytes de fusibles alta y modificar los valores del CKSEL0, CKSEL1, CKSEL2, CKSEL3 y SUT0, SUT1 de byte bajo fusible ya que son los bits que controlan la configuración del reloj. Puesto que sólo estemos configurando la configuración del reloj, otros ajustes de fusible quedará como es. Si otros valores de bits del fusible se cambia incluso por error, el microcontrolador puede conseguir bricked.
Esta hoja de cálculo contiene las opciones para los bits de bajo fusible CKSEL0, CKSEL3, CKSEL2 y CKSEL1. Esto nos ayudará a elegir qué fuente de reloj que necesitamos utilizar para nuestro microcontrolador. Me han hecho esta hoja de google de la hoja de datos de Atmega8, por favor manténgalo abierto junto con el tutorial
El enlace que está aquí,
https://docs.Google.com/Spreadsheets/d/11IjfDRkWHNW0dj0FEKCDzZMcXTvDuv1Q4jMPNpIYck0/Edit?USP=docslist_api
Así ya estoy corriendo el microcontrolador con un cristal externo, voy a utilizar los valores CKSEL3-CKSEL0 que corresponden a esa opción. Pero vemos que, los valores se encuentran entre el rango 1010 1111. Para seleccionar el valor exacto, tenemos que buscar en otra tabla que contiene los valores de frecuencia que queremos para el microcontrolador. Aquí hay una tabla que contiene CKOPT valor CKSEL3-1 valores y función de la frecuencia. Aquí está el enlace https://docs.google.com/spreadsheets/d/11rt148hgXhwvduZ4aEDTvDKYT3pGxDHP5RUNvuYWNPc/edit?usp=docslist_api
Desde aquí yo estoy eligiendo la value(0) CKOPT programada. Valor programado CKOPT se utiliza para operaciones de alta frecuencia. Yo también estoy eligiendo valores de CKSEL3-1 111.
Ahora tenemos opciones que podemos elegir los valores de CKSEL0 SUT1 y SUT0. Aquí está el enlace https://docs.google.com/spreadsheets/d/1028hW05QgAiBQzUzOMjDfJ1VCY8tcOMtgQAsnH5xOWw/edit?usp=docslist_api
Si miras la tabla, encontrará una lista de opciones para el tiempo y su correspondiente valor de bit de arranque. Yo estoy eligiendo oscilador de cristal con retraso de 65 milisegundos Inicio porque estoy usando un oscilador cryatal aquí. Así que según la tabla el CKSEL0 valor será 1, SUT1 valor será 1, y SUT0 valor será 1.
Puesto que utiliza oscilador de cristal y poner en marcha el tiempo correspondiente al oscilador de crytal, nuestros valores CKSEL3-CKSEL0 convertido en 1111.
Con esto finalizamos nuestras opciones de selección.