Categorías: Electrónica práctica, Circuitos microcontroladores
Cantidad de vistas: 21376
Comentarios sobre el artículo: 0

Tipos y disposición de microcontroladores AVR

 


AVR - Este es el nombre de la popular familia de microcontroladores que produce la compañía. Atmel. Además de ABP bajo esta marca se emiten microcontroladores y otras arquitecturas como ARM e i8051.


¿Qué son los microcontroladores AVR?

Microcontroladores AVR

Hay tres tipos de microcontroladores:

  1. AVR de 8 bits.

  2. AVR de 32 bits.

  3. AVR xMega

Durante más de una década, la más popular es la familia de microcontroladores de 8 bits. Muchos jamones comenzaron a estudiar microcontroladores de él. Casi todos aprendieron el mundo de los controladores programables haciendo sus manualidades simples, como luces LED intermitentes, termómetros, relojes, así como también automatización simple, como el control de aparatos de iluminación y calefacción.

Los microcontroladores AVR de 8 bits, a su vez, se dividen en dos familias populares:

  • Attiny - el nombre muestra que el más joven (pequeño - joven, joven, más joven), básicamente tiene 8 pines o más. El volumen de su memoria y funcionalidad suele ser más modesto que en el siguiente;

  • Atmega - Los microcontroladores más avanzados tienen más memoria, pines y varias unidades funcionales;

Microcontroladores Attiny

La subfamilia más poderosa de microcontroladores es xMega: estos microcontroladores están disponibles en casos con una gran cantidad de pines, de 44 a 100. Se necesita mucho para proyectos con una gran cantidad de sensores y actuadores. Además, la mayor capacidad de memoria y velocidad le permiten obtener un alto rendimiento.

Microcontrolador Atmega

Decodificación: Pin (esp. Pin - aguja, pin) es la salida del microcontrolador o, como dicen, la pata. De ahí la palabra "pinout" - es decir información sobre el propósito de cada una de las piernas.


¿Para qué son los microcontroladores y para qué sirven?

¡Los microcontroladores se usan en casi todas partes! Casi todos los dispositivos del siglo XXI funcionan en un microcontrolador: instrumentos de medición, herramientas, electrodomésticos, relojes, juguetes, cajas de música y postales, y mucho más; un simple listado tomará varias páginas de texto.

El desarrollador puede usar la señal analógica desde la parte inferior hasta la entrada del microcontrolador y manipular los datos en su valor. Este trabajo lo realiza un convertidor analógico a digital (ADC). Esta función permite al usuario comunicarse con el microcontrolador, así como percibir varios parámetros del mundo circundante mediante sensores.

Microcontrolador AVR en placa de pruebas

En los microcontroladores AVR comunes, por ejemplo, Atmega328que en 2017 es el corazón de muchas placas de circuito Arduinopero sobre ellos más tarde. Utiliza 8 canales ADCcon poca profundidad 10 bit. Esto significa que puede leer el valor de 8 sensores analógicos. Y los sensores digitales están conectados a las salidas digitales, lo que puede ser obvio. Sin embargo, una señal digital puede ser solo 1 (unidad) o 0 (cero), mientras que una señal analógica puede tomar un número infinito de valores.

Señales digitales y analógicas

Explicación


Capacidad Es un valor que caracteriza la calidad, precisión y sensibilidad de la entrada analógica. Eso no suena muy claro. Un poco de práctica: un ADC de 10 bits, graba información analógica desde un puerto en 10 bits de memoria, en otras palabras, un microcontrolador reconoce una señal digital que cambia suavemente como un valor numérico de 0 a 1024.

Un ADC de 12 bits ve la misma señal, pero con mayor precisión, en la forma de 0 a 4096, lo que significa que los valores medidos de la señal de entrada serán 4 veces más precisos. Para entender de dónde provienen 1024 y 4096, simplemente eleve 2 a la potencia de la profundidad de bits ADC (2 a la potencia de 10, por 10 bits, etc.)

Para controlar la potencia de carga, hay canales PWM a su disposición, que pueden usarse, por ejemplo, para ajustar el brillo, la temperatura o la velocidad del motor. En el mismo controlador 328 hay 6 de ellos.

En general, la estructura del microcontrolador AVR se muestra en el diagrama:

Estructura del microcontrolador AVR

Todos los nodos están firmados, pero aún algunos nombres pueden no ser tan obvios. Veamos su notación.

  • ALU - dispositivo aritmético-lógico. Necesario para realizar el cálculo.

  • Registros de uso general (RON) - Los registros que pueden recibir datos y almacenarlos mientras el microcontrolador está conectado a la alimentación, se borran después de un reinicio. Servir como celdas temporales para operaciones de datos.

  • Interrupciones - algo así como un evento que ocurre debido a influencias internas o externas en el microcontrolador - desbordamiento del temporizador, interrupción externa del pin MK, etc.

  • Jtag - una interfaz para la programación en circuito sin quitar el microcontrolador de la placa.

  • Flash, RAM, EEPROM - tipos de memoria - programas, datos de trabajo temporales, almacenamiento a largo plazo independiente de la fuente de alimentación al microcontrolador, de acuerdo con el orden en los nombres.

  • Temporizadores y Contadores - los nodos más importantes en el microcontrolador, en algunos modelos su número puede ser de hasta una docena. Son necesarios para informar el número de medidas, respectivamente, los intervalos de tiempo, y los contadores aumentan su valor para cualquiera de los eventos. Su trabajo y su modo dependen del programa, sin embargo, estas acciones se realizan en hardware, es decir. Paralelamente al texto principal del programa, pueden causar interrupción (por desbordamiento del temporizador, como opción) en cualquier etapa de la ejecución del código, en cualquier línea del mismo.

  • A / D (analógico / digital) - ADC, ya hemos descrito su propósito.

  • WatchDogTime (temporizador de vigilancia) - un oscilador RC independiente del microcontrolador e incluso su generador de reloj, que cuenta un cierto período de tiempo y genera una señal de reinicio MK si funciona, y se activa si estaba en modo de suspensión (ahorro de energía). Su funcionamiento se puede deshabilitar estableciendo el bit WDTE en 0.


Las salidas del microcontrolador son bastante débiles, lo que significa que la corriente a través de ellos suele ser de hasta 20-40 miliamperios, que es suficiente para iluminar los LED y los indicadores LED. Para una carga más potente, se necesitan amplificadores de corriente o voltaje, por ejemplo, los mismos transistores.


¿Qué necesitas para comenzar a estudiar microcontroladores?

Primero debes comprar el microcontrolador. El papel del primer microcontrolador puede ser cualquier Attiny2313, Attiny85, Atmega328 y otros. Es mejor elegir el modelo que se describe en las lecciones en las que participará.

Attiny2313

Lo siguiente que necesitas es programador. Es necesario descargar firmware a la memoria de MK, se considera el más barato y popular. USBASP.

Programador

Un programador un poco más caro, pero no menos común. AVRISP MKII, que puedes hacer tú mismo, desde un tablero normal Arduino

Programador AVRISP MKII

Otra opción es mostrarlos USB UART adaptador, que generalmente se realiza en uno de los convertidores: FT232RL, CH340, PL2303 y CP2102.

Adaptador USB-UART

En algunos casos, se utilizan microcontroladores AVR con soporte de hardware USB para dicho convertidor; no hay demasiados modelos de este tipo. Aquí hay algunos:

  • ATmega8U2;

  • ATmega16U2;

  • ATmega32U2.

Microcontrolador AVR basado en hardware USB

Solo un "pero": el gestor de arranque UART primero debe cargarse en la memoria del microcontrolador. Por supuesto, para esto, aún necesita un programador para microcontroladores AVR.


Interesante: gestor de arranque - Este es un programa normal para un microcontrolador, pero con una tarea inusual: después de su lanzamiento (conexión a la alimentación), espera durante algún tiempo que se pueda cargar el firmware. La ventaja de este método es que puede flashear cualquier adaptador USB-UART, y son muy baratos. La desventaja es que el firmware tarda mucho en cargarse.

Para el trabajo UART La interfaz (RS-232) en los microcontroladores AVR asignó un registro completo UDR (Registro de datos UART). UCSRA (configuración de bits del transceptor RX, TX), UCSRB y UCSRС: un conjunto de registros responsables de la configuración de la interfaz en su conjunto.


¿Cómo puedo escribir programas?

Además del programador, para escribir y descargar el programa necesita un entorno de desarrollo IDE. Por supuesto, puede escribir código en el bloc de notas, pasar por compiladores, etc. ¿Por qué es necesario cuando hay excelentes opciones preparadas? Quizás uno de los más poderosos es el IAR, pero se paga.

El IDE oficial de Atmel es AVR Studio, que pasó a llamarse Atmel studio en la versión 6. Admite todos los microcontroladores AVR (8, 32, xMega), detecta automáticamente los comandos y ayuda a ingresar, resalta la sintaxis correcta y mucho más.Con su ayuda, puede flashear MK.

El más común es C AVR, así que encuentre un tutorial sobre él, hay toneladas de opciones en idioma ruso, y una de ellas es Khartov V.Ya. “Microcontroladores AVR. Taller para principiantes ".

Programación de microcontroladores

La forma más fácil de aprender AVR

Compre o hágalo usted mismo Tablero Arduino. El proyecto arduino está diseñado específicamente para fines educativos. Tiene docenas de tableros con varias formas y número de contactos. Lo más importante en arduino es que está comprando no solo un microcontrolador, sino una placa de depuración completa soldada a una placa de circuito impreso de textolita de alta calidad, cubierta con una máscara y componentes SMD montados.

Los más comunes son Arduino Nano y Arduino UNO, son esencialmente idénticos, excepto que el "Nano" es aproximadamente 3 veces más pequeño que el "Uno".

Arduino uno

Algunos hechos:

  • Arduino se puede programar en un lenguaje estándar: "C AVR";

  • el suyo - cableado;

  • entorno de desarrollo estándar - Arduino IDE;

  • para conectar a una computadora, solo necesita conectar el cable USB a la toma micro-USB en la placa nano Arduino, instalar los controladores (lo más probable es que esto ocurra automáticamente, excepto cuando el convertidor en el CH340, no tenía controladores en Win 8.1, tuve que descargarlo, pero No tomó mucho tiempo.) Entonces puedes subir tus "bocetos";

  • "Bocetos" es el nombre de los programas para arduino.

Experimentos con Arduino UNO

Conclusiones

Los microcontroladores serán una excelente ayuda en su práctica de radioaficionados, lo que le permitirá descubrir el mundo de la electrónica digital, diseñar sus propios instrumentos de medición y equipos de automatización del hogar.

Ver también en i.electricianexp.com:

  • Microcontroladores PIC para principiantes
  • Programación de microcontroladores para principiantes.
  • Conectando y programando Arduino para principiantes
  • Microcontroladores programables en JavaScript: cuál elegir, características ...
  • ¿Qué son los microcontroladores? Propósito, dispositivo, software

  •