Cómo aprender el microcontrolador AVR
¿Qué tipo de placa de desarrollo AVR es buena? Actualmente existen muchas placas de desarrollo AVR, tanto buenas como malas. La placa AVR que utilicé era la placa del sistema más pequeña con todos los puertos desconectados y funcionó bien.
Si quieres empezar a aprender, te recomendamos que primero establezcas tu objetivo más alto, es decir, elegir un microcontrolador AVR con un chip Atmega128. Una vez que domine esto, podrá dominar la serie de microcontroladores Atmega de 8 bits. Por supuesto, estoy interesado en conocer el microcontrolador AVR de 16 bits AtXmega o el microcontrolador AVR de 32 bits AVR32UC3.
El principal lugar para aprender AVR es www.OURDEV.CN, donde hay muchos expertos y mucha información. Este es un muy buen foro de aprendizaje.
Aprender a utilizar un microcontrolador implica comprender la estructura del hardware y la aplicación de los recursos internos del microcontrolador, aprender la configuración de inicialización de varias funciones en lenguaje ensamblador o C y realizar la programación de varias funciones.
Paso 1: Usar E/S digitales.
Puedes aprender la funcionalidad de E/S digital de los pines usando botones para ingresar señales y LED para mostrar los niveles de salida. Después de presionar un botón, se enciende un LED, que es el papel de la lógica combinacional en los circuitos digitales. Aunque es muy sencillo, puedes aprender ideas generales de programación de microcontroladores. Por ejemplo, se deben configurar varios registros para inicializar un pin de modo que pueda tener funciones de entrada, salida y salida digitales. Cada vez que se utiliza una función del microcontrolador, se debe configurar el registro que controla esa función. Ésta es la característica de la programación de microcontroladores. No tengas miedo de los problemas. Todos los microcontroladores son así.
Paso 2: Aprende a usar temporizadores y luego podrás usar microcontroladores para implementar circuitos secuenciales. Los circuitos secuenciales son potentes y tienen muchas aplicaciones en el control de electrodomésticos industriales y domésticos. Por ejemplo, puede utilizar un microcontrolador para implementar un interruptor de luz de pasillo con pulsador. Después de presionar el botón una vez, la luz se apagará automáticamente durante 3 minutos. Cuando se presiona el botón dos veces seguidas, la luz permanecerá encendida. Cuando se presiona el botón durante más de 2 segundos, la luz se apagará automáticamente. Los circuitos integrados digitales pueden implementar circuitos secuenciales, los dispositivos lógicos programables (PLD) pueden implementar circuitos secuenciales y los controladores programables (PLC) también pueden implementar circuitos secuenciales, pero solo los microcontroladores pueden lograr el costo más simple y más bajo.
El uso de temporizadores es muy importante. La lógica más el control del tiempo es la base para el uso de microcontroladores.
Paso 3: Interrumpir
La característica del microcontrolador es ejecutar repetidamente un programa. La ejecución de cada instrucción del programa requiere un tiempo de ejecución determinado. Si el programa no ejecuta la instrucción, la acción de la instrucción no ocurrirá, lo que retrasará muchas cosas rápidas, como el flanco descendente cuando se presiona el botón. Para que el microcontrolador responda a acciones rápidas cuando el programa se ejecuta normalmente, se debe utilizar la función de interrupción del microcontrolador, es decir, después de que ocurre una acción rápida, el microcontrolador interrumpe la ejecución normal del programa y procesa la acción rápida. acción y regresa al programa normal después del procesamiento. La dificultad de usar la función de interrupción es saber exactamente cuándo no se permiten interrupciones (enmascarar interrupciones), cuándo se permiten interrupciones (las interrupciones están habilitadas), qué registros deben configurarse para que ciertas interrupciones funcionen, qué debe hacer el programa cuando comienza la interrupción y qué hace el programa después de que se completa la interrupción. Qué se debe hacer, etc.
Después de aprender a interrumpir, podrás crear un programa con una estructura más compleja. Un programa de este tipo puede hacer una cosa y monitorear otra cosa. Una vez que ocurre algo que está siendo monitoreado, puede interrumpir lo que está haciendo y procesar lo que está siendo monitoreado. Por supuesto, también puedes controlar muchas cosas. Para usar una analogía, la función de interrupción permite que el microcontrolador tenga la función de vigilar el potenciómetro.
Aprender los tres pasos anteriores equivale a someter a un dragón con dieciocho palmas. Conociendo tres palmas, apenas puedes protegerte.
Paso 4: Comunicación RS232 con PC.
El microcontrolador tiene una interfaz USART, especialmente muchos modelos de la serie MSP430 tienen dos interfaces USART. La interfaz USART no se puede conectar directamente a la interfaz RS232 de la PC. Los niveles lógicos de los dos son diferentes y se requiere un chip MAX3232 para la conversión de nivel.
El uso de la interfaz USART es muy importante. A través de esta interfaz se puede intercambiar información entre el microcontrolador y la PC. Aunque la comunicación RS232 no es avanzada, es muy importante para aprender a utilizar la interfaz. Para utilizar correctamente la interfaz USART, es necesario aprender el protocolo de comunicación, la programación de la interfaz RS232 de la PC, etc. Imagine que los datos del tablero experimental del microcontrolador se muestran en el monitor de la PC y que la señal del teclado de la PC se puede mostrar en el tablero experimental del microcontrolador. ¡Qué divertido será esto!
Paso 5: Aprenda la conversión A/D.
El microcontrolador MAP430 tiene múltiples convertidores A/D de 12 bits. A través de estos convertidores, el microcontrolador puede operar con señales analógicas, mostrar y detectar señales como voltaje y corriente. Preste atención a los conceptos de tierra analógica y tierra digital, voltaje de referencia, tiempo de muestreo, tasa de conversión, error de conversión, etc.
Un ejemplo sencillo del uso de la función de conversión de analógico a digital es diseñar un voltímetro.
Paso 6: Aprenda PCI, interfaz I2C e interfaz LCD.
El uso de estas interfaces puede facilitar la conexión del microcontrolador a dispositivos externos, lo cual es muy importante para ampliar la funcionalidad del microcontrolador.
Paso 7: Conoce las funciones de comparación, captura y PWM.
Estas funciones permiten que el microcontrolador controle el motor, detecte la señal de velocidad y realice la función de control del regulador de velocidad del motor.
Después de aprender los siete pasos anteriores, podrás diseñar un sistema de aplicación general, lo que equivale a aprender diez movimientos y dieciocho palmas, y podrás atacar.
Paso 8: Aprenda el diseño de software y hardware de la interfaz USB, la interfaz TCP/IP y varios buses industriales. Es muy importante aprender el diseño de software y hardware de interfaces USB, interfaces TCP/IP y varios buses industriales, porque esta es la dirección actual del desarrollo de productos.
Hasta ahora, equivale a aprender 15 movimientos y 18 dragones de palma, pero no es tan bueno como vencer a todos los jugadores invencibles del mundo. Aun así, era un solo trozo de gamba.