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:
- Estoy 2013 desmayado, colocado en TCS. Después de estar en el banco durante 4 meses, me vi obligado a tomar un proyecto de Infraestructura. Trabajé durante 2 meses, sentí que estaba arruinando mi carrera y renuncié. Ahora me estoy preparando para la planificación de CDAC para el curso de sistemas integrados. ¿Cómo planificarme para conseguir un buen trabajo en CDAC?
- ¿Cuáles son algunos de los buenos institutos de capacitación de sistemas integrados en Lucknow?
- ¿Cuál es la diferencia entre una instrucción y una directiva en lenguaje ensamblador?
- Soy un ingeniero electrónico que se graduó recientemente y obtuve un trabajo como ingeniero de sistemas integrados donde tengo que trabajar en la programación C. ¿Es un buen trabajo para mí o no? ¿Debería continuarlo?
- ¿Los fabricantes de dispositivos (dispositivos biomédicos, monitores de acuarios, etc.) crean sus propias computadoras integradas o están utilizando algunas placas prefabricadas / modificadas?
- 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.