¿Cómo funcionan los microcontroladores AVR?

El AVR es un microcontrolador RISC de 8 bits modificado de Harvard Architecture modificado, que fue desarrollado por Atmel en 1996. El AVR fue una de las primeras familias de microcontroladores en utilizar la memoria Falsh en el chip para el almacenamiento del programa, en lugar del programable de una sola vez. Memoria, EPROM o EEPROM utilizada por otros microcontroladores en ese momento.

Caracteristicas

Los AVR ofrecen una amplia gama de características:

  • Puertos de E / S de propósito general bidireccionales y multifunción con resistencia incorporada configurable incorporada.
  • Múltiples osciladores internos, incluido el oscilador RC sin partes externas
  • Memoria flash interna de instrucciones automáticas programables de hasta 256 KB (384 KB en XMega) Programable en el sistema mediante interfaces propietarias de bajo voltaje serie / paralelo o JTAG Sección de código de arranque opcional con bits de bloqueo independientes para protección
  • Soporte de depuración en chip (OCD) a través de JTAG o Debug Wire en la mayoría de los dispositivos Las señales JTAG (TMS, TDI, TDO y TCK) se multiplexan en GPIO. Estos pines se pueden configurar para funcionar como JTAG o GPIO dependiendo de la configuración de un bit de fusible, que se puede programar a través de ISP o HVSP. Por defecto, los AVR con JTAG vienen con la interfaz JTAG habilitada. Debug WIRE usa el pin / RESET como un canal de comunicación bidireccional para acceder a los circuitos de depuración en chip. Está presente en dispositivos con recuentos de pines más bajos, ya que solo requiere un pin.
  • Datos internos EEPROM hasta 4 KB
  • SRAM interna de hasta 16 KB (32 KB en XMega)
  • Espacio de datos endian pequeño de 64 KB externo en ciertos modelos, incluidos Mega8515 y Mega162. El espacio de datos externo se superpone con el espacio de datos interno, de modo que el espacio de direcciones completo de 64 KB no aparece en el bus externo y accede a, por ejemplo, la dirección 010016 accederá a la RAM interna, la serie XMega, el espacio de datos externo se ha mejorado para admitir tanto SRAM como SDRAM. Además, los modos de direccionamiento de datos se han ampliado para permitir que se aborden directamente hasta 16 MB de memoria de datos. Los AVR generalmente no admiten la ejecución de código desde la memoria externa. Algunos ASSP que utilizan el núcleo AVR admiten memoria de programa externa.
  • Salida PWM de temporizadores de 8 y 16 bits (algunos dispositivos tienen un periférico PWM mejorado que incluye un generador de tiempo muerto) Captura de entrada que registra una marca de tiempo activada por un borde de señal
  • Comparador analógico
  • Convertidores A / D de 10 o 12 bits, con multiplex de hasta 16 canales
  • Convertidores D / A de 12 bits.
  • Una variedad de interfaces seriales, que incluyen periféricos seriales síncronos / asíncronos (UART / USART) de interfaz de dos hilos (TWI) compatibles con I2C (utilizados con RS-232, RS-485 y más) Interfaz serie universal de interfaz periférica (SPI) (SPI) USI): un módulo de comunicación de hardware multipropósito que se puede utilizar para implementar una interfaz SPI, I2C o UART.
  • Detección de brouwnout.
  • Temporizador de vigilancia (WDT).
  • Múltiples modos de suspensión para ahorrar energía.
  • Modelos de controlador de iluminación y control de motor (específico de PWM).
  • Soporte de controlador CAN.
  • Compatibilidad con controlador USB Hardware de velocidad completa (12 Mbit / s) y controlador Hub con AVR incorporado. También emulaciones de software de bitbanging de baja velocidad (1.5 Mbit / s) (HID) disponibles gratuitamente.
  • Soporte de controlador de Ethernet.
  • Soporte de controlador LCD.
  • Dispositivos de bajo voltaje que funcionan hasta 1,8 V (a 0,7 V para piezas con convertidor CC-CC incorporado).
  • dispositivos picoPower.
  • Controladores DMA y comunicación periférica del “sistema de eventos”.
  • Soporte rápido de criptografía para AES y DES.

La línea AVR normalmente puede soportar velocidades de reloj de 0 a 20 MHz, con algunos dispositivos que alcanzan los 32 MHz. La operación de baja potencia generalmente requiere una velocidad de reloj reducida. Todos los AVR recientes (Tiny, Mega y Xmega, pero no 90S) cuentan con un oscilador en el chip, lo que elimina la necesidad de relojes externos o circuitos de resonador. Algunos AVR también tienen un preescalador del reloj del sistema que puede dividir el reloj del sistema por hasta 1024. Este preescalador puede ser reconfigurado por software durante el tiempo de ejecución, lo que permite optimizar la velocidad del reloj.

Como todas las operaciones (excluyendo la multiplicación y la suma / resta de 16 bits) en los registros R0 – R31 son de ciclo único, el AVR puede alcanzar hasta 1 MIPS por MHz, es decir, un procesador de 8 MHz puede alcanzar hasta 8 MIPS. Las cargas y los almacenes hacia / desde la memoria toman dos ciclos, la ramificación toma dos ciclos. Las sucursales en las últimas partes de “PC de 3 bytes” como ATmega2560 son un ciclo más lentas que en dispositivos anteriores.

El microcontrolador AVR se puede programar con AVR Studio.

La respuesta será similar a la pregunta si pregunta cómo funciona el microcontrolador .

Un microcontrolador es solo un procesador con almacenamiento con los periféricos necesarios para hacer un chip independiente para calcular el procesamiento en tiempo real y jugar con las señales eléctricas.

Necesita saber que AVR es solo otra empresa como PIC, STM, TI y, probablemente, su próxima pregunta será ¿en qué se diferencia el microcontrolador AVR de los mencionados anteriormente?

Bueno, la respuesta a esa pregunta es que solo dependerá de las especificaciones dadas con el microcontrolador específico. Por ejemplo, el popular Arduino Uno tiene un chip Atmega 328p, que es un microcontrolador de 8 bits. También hay un microcontrolador avr de 32 bits cortex M series basado en ARM. No solo AVR nuevamente, otras compañías también fabrican microcontroladores basados ​​en ARM.

Por otra parte, su próxima pregunta puede ser qué microcontrolador elegir .

Elíjalos en función de la aplicación. Para mí, estos factores siguientes funcionan
1. Poder de procesamiento

2. Memoria

3. Precio

4. Fácilmente disponible

5. Buen apoyo comunitario

Sigue aprendiendo y sigue construyendo cosas 😀

El AVR integra el núcleo del procesador, RAM, flash, periféricos, alimentación y circuitos de reloj en un solo dado. Dale energía y un reloj, y todo lo que falta es un software para ejecutar. Realmente no es diferente de cualquier otro microcontrolador de esta clase.

Es como una pequeña computadora con un procesador pequeño Ram y una pequeña memoria flash.
Además, también tiene algunos periféricos integrados, como temporizadores, comunicación en serie, etc.

Un microcontrolador AVR (Advanced Virtual Risc) tiene relojes efectivos y multifuncionales. Tiene la resolución de 8 o 16 bits manteniendo el valor del rango. Los dos contadores de 8 bits pueden contar hasta 255 y el contador de 16 bits puede contar hasta 65536. Los temporizadores pueden funcionar de forma asíncrona con el núcleo AVR principal, por lo tanto, los temporizadores son totalmente independientes de la CPU. Un temporizador generalmente se especifica por el valor máximo con el que puede contar y se restablece a cero. Consulte aquí una calculadora en línea, donde puede calcular el temporizador AVR en función de los tics totales del temporizador, el conteo de desbordamiento, el tiempo real y la nueva frecuencia.

La pregunta es en sí misma vasta … sea ​​poco específico …… aunque si decimos en términos simples -> funciona en la arquitectura RISC.

More Interesting

¿Qué curso es más beneficioso en sistemas electromecánicos de concentración mecatrónica, microcontroladores o control automático?

¿Los sistemas integrados son parte de IoT?

¿Cuáles son las áreas amplias de la ingeniería integrada? ¿Dónde está la sinapsis que conecta a los ingenieros automotrices con los ingenieros integrados? ¿Dónde se debe comenzar en el vasto campo de la ingeniería integrada?

¿El software de código abierto está sobrevalorado? Cual es la realidad ¿Las startups y otras empresas de sistemas integrados realmente usan código abierto en su proyecto?

¿Qué idioma debo aprender para programar el microcontrolador 8051?

¿Dónde usamos 8051 hoy?

¿Cuáles son las diferencias entre la computadora de placa única y el microcontrolador?

Como novedad, ¿cómo y dónde puedo encontrar un trabajo decente (posiblemente una buena MNC) como ingeniero de software integrado en la India?

¿Cómo escribe un programador ISP AVR en un microcontrolador AVR?

¿Qué debo hacer para conseguir un trabajo después de un descanso de 1 año?

¿Qué cualidades buscas al contratar ingenieros integrados? ¿Cómo se podría saber que él / ella está preparado para ingresar a la industria integrada?

¿Cuáles son los últimos e innovadores proyectos basados ​​en incrustaciones?

¿Cuáles son las habilidades necesarias para ser un ingeniero de firmware exitoso?

¿Qué tan útil es BITS Work Integrated Learning Programme (WILP) para M.Tech Embedded Systems en términos de ganar exposición?

¿Debo ir a aprender sistemas integrados en Ahmedabad?