Programación del diseño del sistema de control de temperatura multipunto de microordenador de un solo chip
Sistema de control de temperatura multipunto de computadora de un solo chip
La memoria interna del sensor de temperatura DSl8820 incluye 9?B de RAM de almacenamiento temporal de alta velocidad y 1?B de memoria RAM no volátil eléctricamente. E2PROM borrable, este último almacena los flip-flops de alta y baja temperatura TH, TL y los registros de estructura. El séptimo bit (TM) de este byte es 0, los 5 bits inferiores son siempre 1 y los bits 6 y 5. (R1, R0) se utilizan. Configure la resolución como se muestra en la Tabla 1.
De acuerdo con el protocolo de comunicación de DSl8820, el host debe seguir tres pasos para controlar DSl8820 y completar la conversión de temperatura: debe restablecerse antes de cada lectura y escritura, y se envía un comando ROM después de que el reinicio sea exitoso. y finalmente se envía un comando a la RAM, para que la operación programada se pueda realizar en DSl8820. El reinicio requiere que la CPU principal baje la línea de datos durante 500 μs y luego la suelte. Después de recibir la señal, el DSl8820 espera entre 16 y 60 μs y luego envía un pulso bajo de 60 a 240 μs. recibe esta señal para indicar que el reinicio fue exitoso. Dado que el DSl8820 utiliza una sola línea para controlar y leer datos, los requisitos de tiempo para la operación son muy estrictos, de lo contrario, el funcionamiento correcto del dispositivo no se completará debido a una discrepancia en el tiempo.
2.3 ¿En qué consiste la ejecución del control?
(1) Control del sistema de combustión de caldera mural. El circuito de control utiliza un dispositivo de relé de impulsos como parte de control general de todo el sistema. Cuando las temperaturas en todas las habitaciones alcanzan el valor establecido, la caldera de pared dejará de funcionar. Las características de este relé son: cuando la bobina recibe una señal de pulso, la bobina se energiza y el electroimán es atraído, haciendo que los contactos se cierren y conecten el circuito que necesita ser controlado. Cuando llega la siguiente señal, el electroimán se activa. y los contactos están desconectados cortan la fuente de alimentación controlada, por lo que tiene funciones de autobloqueo y control remoto de señal. Debido al efecto del imán, la posición de la corredera no cambia y permanece estable después de que desaparece el pulso de control, por lo que el dispositivo tiene un bajo consumo de energía y tiene función de memoria.
(2) Control de temperatura ambiente. El control de temperatura de cada habitación se basa en la premisa de funcionamiento del sistema de control de combustión y, según el valor de retorno de la medición de temperatura de cada habitación, se utiliza la válvula solenoide de pulso de mantenimiento automático OK6515 producida por Shanghai Okai Solenoid Valve Manufacturing Co., Ltd. Se utiliza para controlar el encendido y apagado de cada circuito. La válvula de solenoide de pulso utiliza tecnología de pulso e imán permanente. Solo necesita cambiar los contactos del electrodo de pulso a través del controlador para cambiar el estado de conmutación de la válvula de solenoide. Cuando el controlador envía un pulso eléctrico, el núcleo de la válvula de accionamiento supera el imán permanente. Fuerza y se mueve hacia arriba y hacia abajo, lo que hace que el disco de la válvula se mueva hacia arriba y hacia abajo. Después de estar en su lugar, se encuentra en un estado de automantenimiento bajo la acción de imanes permanentes.
2.4?Módulo de visualización gráfica de cristal líquido
Para proporcionar una interfaz de visualización de usuario intuitiva, el sistema utiliza el módulo de visualización gráfica de cristal líquido LCDl2864, que tiene datos estándar de 8 bits. bus, 6 La línea de control y la línea de alimentación pueden interactuar directamente con la CPU para mostrar varios caracteres y gráficos. Teniendo en cuenta que el uso de caracteres chinos en el sistema es pequeño, se selecciona una pantalla LCD sin biblioteca de caracteres chinos. Extraiga los patrones de fuente de los caracteres chinos utilizados y guárdelos en el FLASHROM interno en formato binario.
3? Diseño del software del sistema
El diseño del software del sistema se basa principalmente en el flujo del programa del sistema y los requisitos de tiempo del DSl8820 para la escritura de código. Para reducir la dificultad del desarrollo y mejorar la eficiencia del desarrollo, se introdujo el sistema operativo integrado μC/OS-II y se trasplantó el controlador de pantalla LCD al desarrollo del sistema. Por otro lado, para garantizar la precisión del tiempo de operación de DSl8820, todavía se utiliza el lenguaje ensamblador para la inicialización y lectura y escritura del código de DSl8820.
3.1? Estructura de datos del sistema
La estructura de datos requerida por el sistema incluye la tabla de números de serie de cada elemento de medición de temperatura, el almacenamiento de fuentes de caracteres chinos, el almacenamiento del programa de operación del sistema y cada temperatura. punto de control Los valores establecidos y los valores medidos, el almacenamiento de la hora del sistema y algunos almacenamientos temporales de datos.
Para distinguir varios sensores de temperatura, el número de serie de 64 bits del sensor se lee durante la inicialización del sistema y se almacena en el espacio de almacenamiento del programa para compararlo durante la ejecución del programa. ?B.
Las fuentes de caracteres chinos se extraen utilizando una biblioteca de fuentes de 16 × 16, en la que cada carácter chino requiere 32?B, aproximadamente 15 caracteres. Para facilitar la actualización y mejora de las funciones del programa, el espacio se asigna de acuerdo con 20 caracteres en el almacenamiento del programa. espacio, que requiere 640? espacio de almacenamiento. El cronograma de operación del sistema está diseñado con horas como unidad de configuración y es necesario guardar 24 valores para reducir la cantidad de cálculo de datos durante la comparación de tiempo y facilitar la programación, cada valor se almacena en un byte y un máximo; Aquí se requiere espacio de almacenamiento de 24? B, el espacio de almacenamiento del programa todavía se usa para el almacenamiento para que los valores establecidos no se pierdan cuando se apaga el sistema.
3.2? Programación del sistema
La programación del sistema se escribe principalmente con KeilC5l, pero debido a los estrictos requisitos de tiempo de lectura y escritura del dispositivo DSl8820, se utiliza código ensamblador. la temperatura El código principal de la subrutina de lectura es el siguiente: