La aplicación de potencia LCD de potencia ajustable basada en DWIN T5L ASIC

——Compartido desde DWIN Fromum

Usando el chip DWIN T5L1 como el núcleo de control de toda la máquina, recibe y procesa el toque, la adquisición de ADC, la información de control de PWM y maneja la pantalla LCD de 3,5 pulgadas para mostrar el estado actual en tiempo real.Admite el ajuste táctil remoto del brillo de la fuente de luz LED a través del módulo WiFi y admite alarma de voz.

Características del programa:

1. Adopte el chip T5L para funcionar a alta frecuencia, el muestreo analógico AD es estable y el error es pequeño;

2. Admite TIPO C conectado directamente a la PC para depurar y grabar programas;

3. Admite interfaz central de sistema operativo de alta velocidad, puerto paralelo de 16 bits;Puerto PWM central de interfaz de usuario, salida de puerto AD, diseño de aplicación de bajo costo, sin necesidad de agregar MCU adicional;

4. Admite WiFi, control remoto Bluetooth;

5. Admite voltaje amplio de 5 ~ 12 V CC y entrada de amplio rango

imagen1

1.1 Diagrama de esquema

imagen2

1,2 placa de circuito impreso

imagen3

1.3 Interfaz de usuario

Vergüenza introducción:

(1) Diseño de circuito de hardware

imagen4

1.4 Diagrama de circuito T5L48320C035

1. Fuente de alimentación lógica MCU 3,3 V: C18, C26, C27, C28, C29, C31, C32, C33;

2. Fuente de alimentación central MCU 1,25 V: C23, C24;

3. Fuente de alimentación analógica MCU 3,3 V: C35 es la fuente de alimentación analógica para MCU.Al componer, la conexión a tierra del núcleo de 1,25 V y la conexión a tierra lógica se pueden combinar, pero la conexión a tierra analógica debe estar separada.La tierra analógica y la tierra digital deben recolectarse en el polo negativo del capacitor grande de salida LDO, y el polo positivo analógico también debe recolectarse en el polo positivo del capacitor grande LDO, de modo que se minimice el ruido de muestreo AD.

4. Circuito de adquisición de señal analógica AD: CP1 es el condensador de filtro de entrada analógica AD.Para reducir el error de muestreo, la tierra analógica y la tierra digital de la MCU se separan de forma independiente.El polo negativo de CP1 debe estar conectado a la tierra analógica de la MCU con una impedancia mínima, y ​​los dos capacitores paralelos del oscilador de cristal están conectados a la tierra analógica de la MCU.

5. Circuito del zumbador: C25 es el condensador de alimentación del zumbador.El zumbador es un dispositivo inductivo y habrá una corriente máxima durante el funcionamiento.Para reducir el pico, es necesario reducir la corriente de excitación MOS del zumbador para hacer que el tubo MOS funcione en la región lineal y diseñar el circuito para que funcione en el modo de conmutación.Tenga en cuenta que R18 debe conectarse en paralelo en ambos extremos del zumbador para ajustar la calidad del sonido del zumbador y hacer que suene nítido y agradable.

6. Circuito WiFi: muestreo de chip WiFi ESP32-C, con WiFi+Bluetooth+BLE.En el cableado, la tierra de alimentación de RF y la tierra de señal están separadas.

imagen5

1.5 diseño de circuito WiFi

En la figura anterior, la parte superior del revestimiento de cobre es el bucle de tierra de alimentación.El bucle de tierra de reflexión de la antena WiFi debe tener un área grande a la tierra de alimentación, y el punto de recolección de la tierra de alimentación es el polo negativo de C6.Se debe proporcionar una corriente reflejada entre la conexión a tierra y la antena WiFi, por lo que debe haber un revestimiento de cobre debajo de la antena WiFi.La longitud del revestimiento de cobre supera la longitud de extensión de la antena WiFi, y la extensión aumentará la sensibilidad de WiFi;punto en el polo negativo de C2.Una gran área de cobre puede proteger el ruido causado por la radiación de la antena WiFi.Los 2 terrenos de cobre se separan en la capa inferior y se recogen en la plataforma central de ESP32-C a través de vías.La tierra de alimentación de RF necesita una impedancia más baja que el bucle de tierra de la señal, por lo que hay 6 vías desde la tierra de alimentación hasta el chip pad para garantizar una impedancia lo suficientemente baja.El bucle de tierra del oscilador de cristal no puede tener energía de RF que fluya a través de él; de lo contrario, el oscilador de cristal generará fluctuaciones de frecuencia y la compensación de frecuencia WiFi no podrá enviar ni recibir datos.

7. Circuito de fuente de alimentación LED de retroiluminación: muestreo de chip de controlador SOT23-6LED.La fuente de alimentación CC/CC al LED forma un bucle de forma independiente, y la tierra CC/CC está conectada a la tierra LOD de 3,3 V.Dado que el núcleo del puerto PWM2 se ha especializado, emite una señal PWM de 600 K y se agrega un RC para usar la salida PWM como control de encendido/apagado.

8. Rango de entrada de voltaje: se han diseñado dos reductores de CC/CC.Tenga en cuenta que las resistencias R13 y R17 en el circuito CC/CC no se pueden omitir.Los dos chips CC/CC admiten una entrada de hasta 18 V, lo que es conveniente para la fuente de alimentación externa.

9. Puerto de depuración USB TYPE C: TYPE C se puede enchufar y desenchufar hacia adelante y hacia atrás.La inserción hacia adelante se comunica con el chip WIFI ESP32-C para programar el chip WIFI;la inserción inversa se comunica con el XR21V1410IL16 para programar el T5L.TIPO C admite fuente de alimentación de 5V.

10. Comunicación de puerto paralelo: el núcleo del sistema operativo T5L tiene muchos puertos IO gratuitos y se puede diseñar una comunicación de puerto paralelo de 16 bits.Combinado con el protocolo de puerto paralelo ST ARM FMC, admite lectura y escritura síncronas.

11. Diseño de interfaz de alta velocidad LCM RGB: la salida T5L RGB está conectada directamente a LCM RGB, y se agrega resistencia de amortiguación en el medio para reducir la interferencia de ondulación del agua LCM.Al cablear, reduzca la longitud de la conexión de la interfaz RGB, especialmente la señal PCLK, y aumente los puntos de prueba PCLK, HS, VS, DE de la interfaz RGB;el puerto SPI de la pantalla está conectado a los puertos P2.4~P2.7 del T5L, lo cual es conveniente para diseñar el controlador de pantalla.Dirija los puntos de prueba RST, nCS, SDA, SCI para facilitar el desarrollo del software subyacente.

(2) interfaz SDG

imagen6 imagen7

1.6 Control de visualización de variables de datos

(3) sistema operativo
//———————————Formato de lectura y escritura DGUS
estructura typedef
{
dirección u16;//Dirección variable de interfaz de usuario de 16 bits
u8 datLen;// longitud de datos de 8 bits
u8 *pBuf;// puntero de datos de 8 bits
} UI_packTypeDef;//DGUS leer y escribir paquetes

//——————————-control de visualización de variables de datos
estructura typedef
{
vicepresidente sub-16;
u16X;
u16 Y;
color u16;
u8 Lib_ID;
u8 Tamaño de fuente;
alineación u8;
u8 NumInt;
u8 Núm Dec;
tipo u8;
u8 LenUint;
u8 StringUinit[11];
} Número_spTypeDef;//estructura de descripción de variables de datos

estructura typedef
{
Número_spTypeDef sp;//definir puntero de descripción SP
UI_packTypeDef spPack;//define el paquete de lectura y escritura DGUS de la variable SP
UI_packTypeDef vpPack;//define el paquete de lectura y escritura de la variable vp DGUS
} Number_HandleTypeDef;//estructura de variables de datos

Con la definición de identificador de variable de datos anterior.A continuación, defina una variable para la pantalla de muestreo de voltaje:
Number_HandleTypeDef Hmuestra;
u16 muestra_voltaje;

Primero, ejecute la función de inicialización
NumberSP_Init(&Hsample,voltage_sample,0×8000);//0×8000 aquí está el puntero de descripción
//——Variable de datos que muestra la inicialización de la estructura del puntero SP——
void NumberSP_Init(Number_HandleTypeDef *número,u8 *valor, u16 númeroAddr)
{
numero->spPack.addr = numeroAddr;
numero->spPack.datLen = sizeof(numero->sp);
numero->spPack.pBuf = (u8 *)&numero->sp;
        
Read_Dgus(&número->spPack);
número->vpPack.addr = número->sp.VP;
switch(number->sp.Type) //La longitud de datos de la variable vp se selecciona automáticamente de acuerdo con el tipo de variable de datos diseñado en la interfaz DGUS.

{
caso 0:
caso 5:
número->vpPack.datLen = 2;
romper;
caso 1:
caso 2:
caso 3:
caso 6:
número->vpPack.datLen = 4;
caso 4:
número->vpPack.datLen = 8;
romper;
}
número->vpPack.pBuf = valor;
}

Después de la inicialización, Hsample.sp es el puntero de descripción de la variable de datos de muestreo de voltaje;Hsample.spPack es el puntero de comunicación entre el núcleo del sistema operativo y la variable de datos de muestreo de voltaje de la interfaz de usuario a través de la función de interfaz DGUS;Hsample.vpPack es el atributo de cambiar la variable de datos de muestreo de voltaje, como los colores de fuente, etc., también se pasan al núcleo de la interfaz de usuario a través de la función de interfaz DGUS.Hsample.vpPack.addr es la dirección de la variable de datos de muestreo de voltaje, que se ha obtenido automáticamente de la función de inicialización.Cuando cambia la dirección de la variable o el tipo de datos de la variable en la interfaz DGUS, no es necesario actualizar la dirección de la variable en el núcleo del sistema operativo de forma síncrona.Después de que el núcleo del sistema operativo calcula la variable voltage_sample, solo necesita ejecutar la función Write_Dgus(&Hsample.vpPack) para actualizarla.No es necesario empaquetar el voltage_sample para la transmisión DGUS.


Hora de publicación: 15-jun-2022