Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo grabar un programa C en TI 2812

Cómo grabar un programa C en TI 2812

I - Sistema de gestión y monitoreo de la fuente de alimentación basado en el microcontrolador MSP430 (papel de microcontrolador)

Introducción

La fuente de alimentación conmutada de CC de alta potencia consta de PFC y un convertidor CC-CC para mejorar la confiabilidad. y permitir el monitoreo y la administración fuera de línea o remotos, se configura un sistema de monitoreo y administración en el módulo de fuente de alimentación conmutada. El sistema puede monitorear el nivel de falla de energía, configurar y ajustar automáticamente el voltaje y la corriente de la salida de energía y realizar monitoreo y administración remotos con la estación de monitoreo central remota a través de la interfaz de comunicación en serie, lo cual es particularmente importante en el suministro de energía de la estación base. sistema del sistema de comunicación. Este artículo describe el diseño e implementación de un sistema de gestión y monitoreo del suministro de energía basado en el microcontrolador MSP430.

1 Estructura del sistema y diseño del circuito de hardware

La estructura de diseño general del sistema se muestra en la Figura 1. El chip central utilizado en el sistema es el microcontrolador de la serie MSP430 de 16 bits lanzado por TI. MSP430 tiene las ventajas de una alta integración, ricos periféricos y un consumo de energía ultrabajo. El chip único integra conversión A/D multicanal de 12 bits, comparadores de precisión en el chip, múltiples temporizadores con función PWM, USART en el chip, temporizador de vigilancia, oscilador controlado digitalmente (DCO) en el chip y una gran cantidad de I/ Los puertos O y la memoria en chip de gran capacidad adoptan programación en línea en serie y un solo chip puede cumplir con la mayoría de los requisitos de las aplicaciones. Este alto grado de integración del MSP430 permite a los ingenieros de aplicaciones diseñar fácilmente un verdadero sistema monolítico sin gastar demasiado esfuerzo en interfaces, E/S externas y memoria, por lo que se utiliza ampliamente en muchos campos. A continuación se presentarán las funciones que puede lograr este sistema y el diseño del sistema de control electrónico basado en MSP430F149.

1.1 Funciones del sistema:

a. Después de encenderlo, el microcontrolador comienza a funcionar. Presione el botón de encendido, la luz indicadora se enciende, la red eléctrica de 220 V ingresa al PFC, la fuente de alimentación conmutada comienza a funcionar y luego se conecta la carga.

b. Configuración y ajuste de voltaje. El valor del voltaje de salida de la fuente de alimentación conmutada es recopilado por el puerto A/D del microcontrolador y mostrado en la pantalla LCD. El valor del voltaje de salida se ajusta mediante el potenciómetro digital controlado por el microcontrolador para realizar el ajuste automático o el ajuste del voltaje. La página se puede seleccionar con las teclas izquierda y derecha del teclado, y con las teclas arriba y abajo. El ajuste manual también es posible a través de la interfaz de comunicación.

c. Cuando se utilizan varias fuentes de alimentación conmutadas en paralelo, se requiere que el voltaje de carga de cada fuente de alimentación sea igual. El puerto A/D del microcontrolador recoge el valor de la corriente de carga y lo convierte en un valor de voltaje, obtiene el valor actual de cada unidad a través del puerto de comunicación, toma el valor promedio de la corriente y controla el potenciómetro digital para ajustar la salida. voltaje para que la corriente de carga de salida alcance el valor promedio o Use las teclas izquierda y derecha del teclado para seleccionar la página de ajuste actual y use las teclas arriba y abajo para ajustar manualmente.

d.Alarma de fallo. El microcontrolador detecta varias fallas de entrada y salida a través del acoplador fotoeléctrico, el altavoz emite un zumbador, la luz indicadora de alarma correspondiente parpadea y la pantalla LCD muestra el tipo de falla y el método de procesamiento.

e. El puerto A/D del microcontrolador recopila y mide el voltaje de la red, el voltaje de salida y la corriente de salida, y emite alarmas cuando se exceden los límites.

f. Incluyendo la comunicación entre la computadora de un solo chip y cada fuente de alimentación conmutada y la comunicación entre la computadora de un solo chip y la estación central de monitoreo.

1.2 Circuito de ajuste de voltaje

El circuito de ajuste de voltaje consta de un microcontrolador, un potenciómetro digital X9313 y un chip de referencia de derivación ajustable TL431. Su esquema de circuito se muestra en la Figura 2. El Xicor9313 es un potenciómetro no volátil de estado sólido que se puede utilizar como potenciómetro de ajuste controlado digitalmente. TL431 es una fuente de referencia paralela ajustable de tres terminales producida por TI y tiene buena estabilidad térmica. TL431 es una referencia de derivación ajustable de tres terminales producida por TI. Tiene buena estabilidad térmica y su voltaje de salida se puede configurar en cualquier valor dentro del rango de VREF (2,5 V) a 36 V a través de dos resistencias. Durante la operación, una IO del microcontrolador controla el pin de entrada de conteo INC y le proporciona pulsos de conteo. Esta entrada se activa por flanco descendente.

Otro IO controla la entrada de refuerzo U/D. Cuando U/D tiene un nivel alto, el contador interno X9313 realiza un conteo adicional y el voltaje de salida del terminal VW aumenta. Dado que VW está conectado a tierra, el voltaje del terminal VH disminuye y la salida REF del TL431. El voltaje es siempre de 2,5 V, lo que hace que el voltaje de salida del terminal Vcc aumente. De manera similar, cuando U/D es de nivel bajo, el voltaje de salida del terminal Vcc disminuye.

1>Así se consigue la regulación de la salida de tensión.

1.3 Adquisición de datos analógicos

MSP430F149 incorpora un módulo convertidor ADC de 12 bits de alta precisión con funciones de muestreo y retención, que puede proporcionar una variedad de fuentes internas de muestreo y retención de reloj. MSP430 proporciona 8 canales de entrada externos con una frecuencia de muestreo máxima de 200 KHZ y un sensor de temperatura incorporado que se puede utilizar para medir la temperatura dentro del chip. La temperatura del chip se puede medir. Si la temperatura medida es mayor o menor que la temperatura preestablecida, se puede mostrar un mensaje de alarma a través de componentes externos. Hay seis voltajes de referencia internos programables. Este módulo de conversión proporciona comodidad para algunas ocasiones que requieren adquisición de cantidades analógicas. El voltaje de referencia que elegimos es de 0 a 2,5 V, por lo que la resolución AD del MSP430F149 es de aproximadamente 2,5/4096 = 0,61 V. Dado que el voltaje analógico de entrada es alto y no se puede conectar directamente al puerto de muestreo ADC del microcontrolador, el problema anterior se resuelve con éxito conectando un reóstato deslizante en serie para reducir el voltaje.

1.4 Diseño de interfaz hombre-máquina

La interfaz hombre-máquina del sistema consta de una pantalla LCD, luces indicadoras y un teclado. La pantalla LCD utiliza el módulo LCD T6963C YM12864. El teclado está conectado en una matriz de 3×3 y el sistema adopta una interfaz gráfica de usuario, que es fácil de operar y tiene una pantalla práctica y hermosa. Cuando está en funcionamiento, la pantalla LCD puede mostrar el voltaje de red recopilado, el voltaje de salida, la corriente de salida y diversa información de alarma en tiempo real, y puede operar el teclado correspondiente para cambiar las páginas de visualización. También puede ajustar el voltaje de salida y la corriente de salida de forma automática y manual. y de forma remota. Cuando hay un mensaje de alarma, la luz indicadora correspondiente parpadeará para indicar la alarma y, al mismo tiempo, el altavoz conectado al microcontrolador emitirá un tono de alarma para recordarle al operador que debe tomar las medidas adecuadas.

2 Diseño de software del sistema

430 admite programación en lenguaje ensamblador y lenguaje C, por lo que ambos lenguajes se pueden usar en un archivo de proyecto al mismo tiempo y se usa programación en lenguaje ensamblador. para facilitar la depuración. Encuentre la corrección de la lógica y los enlaces de instrucciones y las ubicaciones de las direcciones. La programación en lenguaje C reduce en gran medida la carga de trabajo y el programa es muy legible y fácil de modificar y mantener. La herramienta de desarrollo es IAR Embedded Workbench de IARSystems, que integra funciones de edición, compilación, vinculación, descarga y depuración en línea. Es fácil de usar y tiene capacidades eficientes de compilación de C.

Teniendo en cuenta la eficiencia y la capacidad de mantenimiento del desarrollo de software, el diseño del software del sistema sigue la idea de programación modular y divide las funciones del sistema en una serie de módulos funcionales relativamente independientes. Incluyen un módulo de pantalla de cristal líquido, un módulo de conversión AD, un módulo de respuesta de monitoreo de botones, un módulo de respuesta de monitoreo de alarmas, un módulo de ajuste de voltaje y corriente, un módulo de procesamiento de datos y un módulo de comunicación. Cada módulo se prueba de forma independiente y finalmente se ensambla. El diagrama de flujo del software de todo el sistema se muestra en la Figura 3.

El módulo de monitoreo clave es una parte importante del mismo. Controla el inicio de la conversión AD, el cambio de páginas de visualización y el inicio y cambio del ajuste automático de voltaje y corriente, ajuste manual y ajuste remoto. . El módulo de monitoreo de alarma juega un papel vital en la protección de la fuente de alimentación conmutada. Monitorea si la fuente de alimentación conmutada falla en tiempo real. Cuando se produce sobretensión de entrada, subtensión de tensión de entrada y falla de PFC, la fuente de alimentación principal se corta; Se produce una sobretensión del voltaje de salida. El convertidor DC-DC se apaga cuando el voltaje es bajo, el voltaje de salida es bajo, el módulo se sobrecalienta y la protección IPM falla.

Al integrar módulos, preste atención a los conflictos entre interrupciones. Debido a que en el nivel de prioridad de interrupción de MSP430, la interrupción de conversión de muestreo ADC12 tiene una prioridad más alta que la interrupción TIMERA, por lo que cuando la interrupción de conversión de muestreo ADC12 se ejecuta durante la respuesta a la interrupción TIMERA, o la respuesta a la interrupción TIMERA se fuerza a se retrasa, esto El impacto de la interrupción de TIMERA no puede realizar la detección en tiempo real de una falla en la fuente de alimentación conmutada al ejecutar el programa de respuesta de monitoreo de alarma.

En este sistema, se utiliza un botón para controlar el inicio y el apagado de la interrupción de conversión de muestreo ADC12, resolviendo así el problema del conflicto de interrupciones.

3 Conclusión

Basado en el diseño y la implementación del sistema de gestión y monitoreo de energía MSP430F149, este artículo analiza el diseño del sistema de MSP430 y propone y resuelve problemas existentes en el diseño. El punto de innovación del autor de este artículo: aprovechando la estructura simple del sistema, pocos circuitos periféricos y alta eficiencia del MSP430, diseñó e implementó un sistema de administración y monitoreo del suministro de energía que es simple e intuitivo, fácil de usar y tiene indicaciones en caracteres chinos. durante toda la operación, tiene sólidas capacidades de monitoreo, operación estable y es seguro y confiable. El sistema ha reducido considerablemente los costos, ha logrado beneficios económicos considerables y ha satisfecho las necesidades reales.

Documento en lenguaje C:

El umbral para la integración es alto y es difícil comenzar, lo que ha bloqueado a innumerables estudiantes. Sin embargo, como curso de introducción a los microcontroladores integrados, cómo aprender a utilizarlos de la manera correcta determinará si puede aprender bien los microcontroladores integrados.

Como todos sabemos, si quieres aprender a integrarlo, primero debes jugar con ptotel y luego hacer un microcontrolador. protel es solo un software puramente inglés creado en una placa PCB. Antes de aprender ptotel, debes tener ciertos conocimientos de circuito e inglés. Creo que la mayoría de los estudiantes tienen conocimientos básicos de circuito, pero el inglés es un dolor de cabeza para muchas personas. Esto es un duro golpe para los estudiantes que no tienen una buena base en inglés. Además, si no tienes una gran perseverancia, no creo que puedas estudiar por tu cuenta. La perseverancia es una habilidad y cualidad que se debe poseer para aprender cualquier conocimiento, y es la determinación de no darse por vencido ante los contratiempos.

Ya sea que estés aprendiendo sobre protel o microcontrolador, primero debes encontrar a alguien que pueda guiarte. ¿Qué es la orientación? La orientación no significa que él te enseñará paso a paso, sino una persona que pueda guiarte en los momentos críticos.

Creo que aprender métodos integrados es lo más importante. Antes de aprender protel y microcontroladores, primero debes descubrir cómo aprenderlos. Por ejemplo, muchos estudiantes de ciencias aprenden desde una perspectiva puramente comprensiva. Al dibujar cables y componentes, deben preguntar por qué quieren dibujarlos. Al generar una tabla de redes, deben rastrear el origen de la lista de redes. . De hecho, mientras sepas usar muchas cosas, es inútil por mucho que sepas cosas teóricas pero no sepas cómo usarlas.

Entonces, si no entiendes algo mientras estudias Protel, pregúntale a tu profesor. Muchas cosas están prescritas y no se pueden cambiar en solo una noche. Esto es diferente del diseño de software. El diseño de software puede encontrar otra manera mejor a través de su pensamiento intenso.

MCU Bueno, tengo que admitir que no hay un buen libro sobre MCU en China. Cuando estaba aprendiendo sobre microcontroladores, leí siete libros sobre microcontroladores y la mayoría de ellos no fueron satisfactorios. En este punto, me atrevería a decir: los chinos carecen del principio de "primero el lector" cuando escriben libros. Después de leer los libros sobre microcontroladores, sentí que muchos de ellos estaban escritos desde su propia perspectiva y pocos desde la perspectiva de los lectores. Las anotaciones de los capítulos del libro son extremadamente confusas y muchos puntos importantes no se explican. Para decirlo sin rodeos, el autor parece pensar que el nivel del lector es tan alto como el suyo. La densidad de los libros escritos por extranjeros con el mismo contenido es dos o tres veces mayor que la de los libros chinos. Esto se debe a que los libros extranjeros están orientados al lector en cada detalle. Hay notas, explicaciones, resúmenes, de todo. Entonces, quiero dejar un punto aquí, tal vez mis compatriotas me arrojen huevos, es decir: no importa lo que estudies, debes dar prioridad a los libros traducidos a idiomas extranjeros o a los libros en inglés puro. Un buen libro puede tener un gran impacto en nosotros. Permítanme resumir esta parte en una frase: los libros chinos son adecuados para la enseñanza, mientras que los libros extranjeros son adecuados no sólo para la enseñanza, sino también para el autoaprendizaje.

Los libros chinos sobre microcontroladores a menudo presentan primero la estructura interna, las interrupciones y los temporizadores del microcontrolador, y luego los puertos de E/S. Desde el principio, nos pidieron que aprendiéramos la estructura interna y los principios de los microcontroladores, interrupciones y temporizadores, lo que nos confundió mucho al explicar ejemplos y cómo operar la placa experimental. Si estudias solo, creo que muchos estudiantes no podrán aprenderlo. ¿Por qué tienes que comprender la estructura interna del microcontrolador tan a fondo como la anatomía antes de poder practicarlo? Incluso si diseccionas todo el microcontrolador o tienes esta placa en la mano, todavía no funcionará. Creo que si no aprende el lenguaje ensamblador y simplemente usa el lenguaje C antes de aprender un microcontrolador, no tendrá una comprensión clara de la estructura interna del microcontrolador y el principio de funcionamiento del microcontrolador, incluso si aprende el microcontrolador. Si aprende primero a ensamblar y luego a microcontrolador, el efecto será mucho mejor, así que no se preocupe, algunas cosas no se pueden apresurar.

Así que creo que aprender microcontroladores debe pasar por la práctica y luego comprender la estructura y los principios de los microcontroladores. Si realmente no comprende la estructura y los principios del microcontrolador, no importa, ¡siempre que pueda usarlo! (Solo puedo decir esto si nunca he estudiado ensamblaje)

Podemos comenzar con el puerto de E/S, mirar algunos ejemplos y grabar algunos programas, luego observar el fenómeno y luego intentar comprenderlo. lo que se utiliza dentro de la estructura del microcontrolador y, finalmente, basándose en el conocimiento de los fenómenos, compila un programa y un fenómeno que se te haya ocurrido. Si estudias de esta manera, no te sentirás aburrido y tendrás una sensación de logro. Creo que esta es parte de la razón por la que algunas personas pueden considerar el aprendizaje como una especie de diversión, mientras que muchas personas suspiran.

Diferentes placas tienen diferentes placas de circuito impreso y, por lo tanto, diferentes operaciones de E/S. Pero el principio de funcionamiento es el mismo. Algunos estudiantes pueden quejarse de que el tablero experimental del tutorial es diferente del tablero experimental que tienen en sus propias manos. El concepto de observar los fenómenos es muy importante en la depuración del paso de E/S. Por ejemplo, ¿qué tipo de fenómeno ocurrirá al cambiar una declaración y por qué ocurre tal fenómeno? Todas estas son cosas que deben dominarse durante la depuración. .

El método de aprendizaje de interrupciones es similar. Primero, practique buscando los registros correspondientes en lugares desconocidos. Una vez que comprenda la realidad que desea, luego analice lentamente los registros del microcontrolador. Esto facilitará el aprendizaje. significado y será recordado con mayor firmeza. Las interrupciones no son complicadas, solo necesitas aprender algunas funciones de interrupción, prioridades, etc. Los estudiantes con cierta base en lenguaje C pueden contactar la prioridad de los operadores en lenguaje C en términos de prioridad. Creo que no es un problema para los estudiantes con una base en lenguaje C definir una o dos funciones de interrupción.

En mi documento, doy ejemplos del contenido del microcontrolador que he aprendido. No hay muchos ejemplos, pero estos son los puntos de conocimiento en los que se puede hacer clic directamente en el microcontrolador. A medida que avance el aprendizaje, pondré lo que he implementado en ejemplos.

¡Espero que esto te ayude y te deseo mucha suerte!