AVRSH: Un intérprete comandos para Arduino/AVR. ¿ (3 / 6 paso)

Paso 3: Lectura y escritura de fusibles

Fusibles son tipos especiales de registros. Ellos controlan todo, desde la velocidad de reloj de su microcontrolador a qué métodos de programación están disponibles para proteger contra escritura EEPROM. A veces usted necesitará cambiar la configuración, especialmente si usted está creando un sistema independiente de la AVR. No estoy seguro de que debe cambiar su configuración de fusibles de Arduino. Tenga cuidado de sus fusibles; podrá bloquear a ti mismo si les establece incorrectamente.

En un anterior instructable, demostré cómo leer y configurar tus fusibles con su programador y avrdude. Aquí, te voy a mostrar cómo leer nuevamente tus fusibles en tiempo de ejecución para ver cómo realmente ha establecido su MCU les. Tenga en cuenta que este no es el ajuste de tiempo de compilación que obtiene de las definiciones en < avr/io*.h > pero los fusibles reales como el MCU lo lee que en tiempo de ejecución.

De la tabla 27-9 en la hoja de datos de ATmega328P (databook, más como él) los bits del Byte bajo del fusible son las siguientes:

Una cosa interesante a observar es que con fusibles, 0 significa programado y un 1 significa que esa particular es no programada. Un poco contra-intuitivo, pero una vez que sabes tu lo sabes.

  • CKDIV8 establece el reloj de la CPU se divide por 8. El ATmega328P viene de fábrica programada para utilizar su oscilador interno 8 MHz con CKDIV8 programado (es decir se establece en 0) que le da un final F_CPU o CPU frecuencia de 1MHz. En Arduino, esto cambia ya que están configurados para usar un oscilador externo a 16MHz.
  • CKOUT cuando programado dará salida a su reloj de la CPU en PB0, que es el pin digital 8 de Arduinos.
  • SUT [1..0] especifica el tiempo de inicio de su AVR.
  • CKSEL [3..0] establece la fuente de reloj, el oscilador interno RC, oscilador externo, etc..

Cuando lees tus fusibles, se devolverá a usted en hexadecimal. Este es el formato que usted necesita si desea escribir los fusibles mediante avrdude. En mi arduino, aquí está lo que me sale al leer el byte inferior del fusible:

Por lo tanto, todos los bits se establecen en 1. Hice el mismo procedimiento en un clon de Arduino y tiene el mismo valor. Control de uno de mis sistemas independientes de AVR, conseguí 0xDA cual es el valor que me había marcado algunas tiempo atrás cuando se configura el chip.

El mismo procedimiento se utiliza para comprobar el Byte alto de fusible, extendido fusible bytes, y bloqueo de fusibles. La calibración y firma fusible bytes que se haya desactivado en el código con una directiva de preprocesador #if 0, que puede cambiar si usted se siente escasa.

Artículos Relacionados

Módulo de Sensor de nivel de agua para Arduino AVR brazo STM32 STM8

Módulo de Sensor de nivel de agua para Arduino AVR brazo STM32 STM8

felicitaciones al equipo de ICStation ! Han desarrollado este maravilloso módulo de sensor de nivel de agua por grandes esfuerzos. Este módulo con tamaño pequeño y alto rentable es fácil de usar. En este artículo, utilizaremos el osciloscopio de alma
Un ATTiny13A de programación utilizando Arduino y servo intérprete

Un ATTiny13A de programación utilizando Arduino y servo intérprete

así que ahí estaba, navegando eBay, buscando algunas ofertas baratas en chips Atmel cuando me topé con un par de chips ATTiny13 por £2.50. Sólo tenía que tenerlos! Después de todo, ¿qué tan difícil puede ser?Necesitaba un pequeño chip para leer señal
Cómo intérpretes utilizan tácticas inusuales para afectar los resultados de la negociación

Cómo intérpretes utilizan tácticas inusuales para afectar los resultados de la negociación

En la historia, un montón de preocupaciones sobre la capacidad y exactitud de los intérpretes en la reproducción de las traducciones a una lengua. Incluso sentencia Tribunal juicios dependen fuertemente de tal traducción, y un montón de rumores circu
ESP8266 Wifi adiciónales para Arduino fácil

ESP8266 Wifi adiciónales para Arduino fácil

ActualizaciónEl proceso descrito aquí ya no se recomienda. Este instructivo ha sido reemplazado por ESP8266 WiFi Shield para Arduino y otros micros que proporciona una función de configuración de página web más universal.IntroducciónESP8266 es un chi
Escudo de programación de Arduino AVR

Escudo de programación de Arduino AVR

Necesita una manera rápida y fácil programa AVR virutas. ¿Sabías que puedes usar el Arduino y el IDE de Arduino? Este escudo Arduino hace el proceso mucho más fácil.Puedes:Quemar un bootloader en un reemplazo Atmega328 para su UNO.Hacer un proyecto i
Construcción de un escudo de ISP para Arduino

Construcción de un escudo de ISP para Arduino

es este Instructable para las instrucciones de construcción de nuestro nuevo AVR ISP escudo para Arduino. Su desarrollo debe mucho a Instructables y nuestra propia comunidad (sobre todo Nick!) y espero poder explicar algo de eso en el camino.Han pedi
Telnet a tu Arduino/AVR.

Telnet a tu Arduino/AVR.

El otro día yo quería comprobar en uno de mi AVR pero estaba arriba y Dios sabe era demasiado de una molestia que ir abajo a donde estaba el microcontrolador. Pero, había dos ordenadores ociosos sentados arriba junto a mis nalgas vagos, así que tenía
ArduDroid: Un Simple 2-Way Bluetooth controlador basado en Android para Arduino

ArduDroid: Un Simple 2-Way Bluetooth controlador basado en Android para Arduino

ACTUALIZACIONES:19 de noviembre. 2031: opinión: la increíble sinergia entre Arduino y Android.30 de octubre de 2013: Andruino está ahora oficialmente ARDUDROID y pronto estará disponible en Google Play. Este cambio de nombre para evitar conflicto con
Añadir dispositivo de juego USB para Arduino Leonardo/Micro

Añadir dispositivo de juego USB para Arduino Leonardo/Micro

Nota importante: Este artículo es para IDE de Arduino versión 1.6.5 (o inferior). Para agregar un dispositivo de juego USB a un Arduino Leonardo o Micro mediante Arduino IDE versión 1.6.6 (o superior) ver el Instructable siguiente: Arduino Leonardo M
Intérprete de código de G de CNC mediante procesamiento

Intérprete de código de G de CNC mediante procesamiento

Hola chicos, hace años estoy tratando de hacer mi propio router CNC por lo que puedo hacer PCB fácil.Lo que estoy tratando de hacer es un intérprete de código de G que envía señales a una placa arduino. Así que la placa arduino puede controlar un sim
Interconexión de circuitos electrónicos para Arduinos

Interconexión de circuitos electrónicos para Arduinos

interconexión de circuitos electrónicos para ArduinoEn este instructable utilizo un ejemplo de interfaz un Arduino a un transmisor-receptor de ARINC 429 para demostrar el proceso general de interconexión un Arduino a circuitos electrónicos para poder
Juego protector del RGB LED para arduino

Juego protector del RGB LED para arduino

me preguntaba por qué no hay un montón de juegos hecho por arduino, quiero decir que encontré una página de ellos, pero no fue tht muchos. Así que he decidido que debo tratar de hacer uno de mi propia!Para jugar este juego, usted tiene que emparejar
Joystick de RF para Arduino

Joystick de RF para Arduino

Se trata de un Instructable muy simple que te ayudarán a aprender a controlar de forma inalámbrica un segundo Arduino y los componentes conectados a él. Esto podría utilizarse para el control de motores en un coche, servos en un brazo robótico o prop
Herramientas de procesamiento para Arduino

Herramientas de procesamiento para Arduino

Hay muchas maneras de controlar su Arduino. Muchas muchas muchas maneras. Estos pueden ser a través de otro Arduino, botones, potenciómetros, R/C y más. Una forma genial es a través de la computadora. También hay un montón de maneras de lograr esto.