Diseño de termómetro digital basado en un microordenador de un solo chip AT89C2051

2020-05-26 11:04:49 35

El control por microcontrolador se ha convertido en uno de los objetivos perseguidos por el diseño electrónico actual. Este artículo aplica esta tecnología de control a la medición de temperatura. AT89C2051 es un microordenador de un solo chip CMOS de alto rendimiento y bajo voltaje producido por Atmel Corporation de los Estados Unidos. El chip contiene 2 KB de memoria de programa de lectura y escritura repetitiva y 128 B de memoria de datos de acceso aleatorio (RAM). El sensor de temperatura inteligente de un solo cable DSl-8B20 producido por la compañía estadounidense de semiconductores DALLAS pertenece a una nueva generación de sensores inteligentes adaptados a microprocesadores. El termómetro digital utiliza DS18B20 como elemento de detección y AT89C2051 como controlador principal.Tiene las características de bajo consumo de energía, estructura simple, lectura conveniente, amplio rango de temperatura y medición precisa de temperatura.

1 composición del circuito y principio de funcionamiento

1.1 Diseño de hardware

El termómetro compuesto por AT89C2051 se compone principalmente de tres partes: sensor de temperatura DSl8B20, AT89C2051 de un solo chip, módulo de pantalla compuesto por tubo digital LED. El diagrama de bloques de su sistema se muestra en la Figura 1. DSl8B20 como fuente de señal externa del AT89C2051 de un solo chip, convierte la temperatura recolectada en una señal digital y la pasa a 2051 a través de la interfaz de E / S. El 2051 inicia el programa de control en la ROM para conducir el tubo digital LED. La interfaz entre la computadora de un solo chip y el tubo digital) transmite los datos al tubo digital y muestra la temperatura recogida.

1.2 Diagrama general del circuito

El diagrama de circuito del sistema de medición de temperatura basado en AT89C2051 convierte la temperatura en una señal digital con un signo (en forma de complemento de dieciséis bits, que representa dos bytes). Si se utiliza un cable de par trenzado blindado, la longitud de la conexión puede alcanzar los 150 m El pin de salida I / 0 está conectado directamente a P3.4 del microordenador de un solo chip, R1 es una resistencia pull-up y el sensor está alimentado por una fuente de alimentación externa. AT89C2051 es la parte central de todo el sistema, contiene 2 KB de ROM FLASH, los programas de usuario se almacenan aquí. El módulo de visualización consta de un tubo digital de ánodo común cuatro en uno y cuatro 9012. El programa del sistema se divide en dos partes: el programa de control del sensor y el programa de visualización El programa de control del sensor se compila de acuerdo con el protocolo de comunicación de DS18B20. El trabajo del sistema es completar la lectura y escritura del sensor y la visualización de la temperatura bajo el control del programa.

Los principales indicadores técnicos del producto: rango de medición: -55 ~ + 125 ℃, precisión de medición: 0.5 ℃; el tiempo de respuesta es menor o igual a 500 ms.

2 Diseño de software

2.1 Módulo de adquisición

El módulo utiliza un sensor de temperatura de línea única DSl8B20 para completar la adquisición de temperatura. El flujo de acceso del microordenador AT89C51 de un solo chip al DSl8B20 es el siguiente: primero inicialice el DSl8B20, luego ejecute el comando de operación ROM y finalmente opere la memoria. Cada operación de DSl8B20 debe seguir una secuencia de trabajo estricta y un protocolo de comunicación. De acuerdo con el protocolo de comunicación de DSl8B20, hay tres pasos: restablecer el DSl8B20 antes de cada lectura y escritura. Después de un restablecimiento exitoso, envíe una instrucción ROM (código de comando CCH) y establezca el bit indicador, de acuerdo con el bit indicador para determinar si la inicialización es exitosa Finalmente, envíe la instrucción RAM (código de instrucción 44H) DSl8B20 para iniciar la conversión, y luego lea el valor de conversión de temperatura (código de instrucción BEH), lea el valor de temperatura byte alto a la unidad 27H, byte bajo a la unidad 26H y luego según el byte del valor de temperatura El formato de representación y su bit de signo se pueden usar para obtener el valor de temperatura real después de una transformación simple.

2.2 Módulo de procesamiento principal

El módulo de procesamiento principal es coordinar el procesamiento de cada módulo para lograr la interacción de datos. El módulo de procesamiento principal primero completa el trabajo de inicialización, ingresa al procesamiento de bucle después de la inicialización, obtiene los datos del módulo de adquisición durante el proceso de bucle, procesa los datos y los muestra de acuerdo con el resultado procesado. El diagrama de flujo del proceso principal se muestra en la Figura 3.

2.3 Módulo de pantalla

Adopte el método de escaneo dinámico, en el cual P3.0, P3.1, P3.2, P3.3 seleccionan el bit de control, P1 seleccionan el segmento de control. Por P3.0, P3.1, P3.2, P3.3 emiten la señal de escaneo a cada bit por turno, de modo que en cada momento solo se selecciona un tubo digital, y luego se envía por P1 al código de fuente que se mostrará, iluminado El glifo que se muestra en este segmento de glifo de bits. Bajo el control cooperativo del segmento de código enviado por P1 y los segmentos de bits enviados por P3.0, P3.1, P3.2 y P3.3, cada tubo nixie se enciende para mostrar sus fuentes respectivas.

3 Conclusión

Este sensor de medición de temperatura de diseño adopta un sensor de temperatura inteligente mejorado DS18B20, el rango de medición de temperatura es -55 ~ + 125 ℃, la resolución máxima puede alcanzar 0.062 5 ℃, puede leer directamente el valor de temperatura medido y adopta un sistema de un solo cable y un solo chip Conectado, reduciendo el circuito de hardware externo, al mismo tiempo puede convertir directamente la temperatura en una señal digital en serie para el procesamiento de microcomputadoras.