Tillämpningen av justerbar effekt LCD-effekt baserad på DWIN T5L ASIC

——Delas från DWIN Froum

Använder DWIN T5L1-chipet som kontrollkärnan för hela maskinen, tar emot och bearbetar beröring, ADC-insamling, PWM-kontrollinformation och driver den 3,5-tums LCD-skärmen för att visa aktuell status i realtid.Stöd fjärrberöringsjustering av LED-ljuskällans ljusstyrka via WiFi-modul och stöder röstlarm.

Programfunktioner:

1. Använd T5L-chipet för att köras med hög frekvens, AD analog sampling är stabil och felet är litet;

2. Stöd TYPE C direkt ansluten till PC för felsökning och programbränning;

3. Stöd höghastighets OS-kärngränssnitt, 16-bitars parallellport;UI-kärna PWM-port, AD-port utledning, låg kostnad applikationsdesign, inget behov av att lägga till ytterligare MCU;

4. Stöd WiFi, Bluetooth-fjärrkontroll;

5. Stöd 5~12V DC bred spänning och brett spektrum ingång

bild1

1.1 Schemadiagram

bild2

1.2 PCB-kort

bild3

1.3 Användargränssnitt

Skam introduktion:

(1)Hårdvarukretsdesign

bild4

1.4 T5L48320C035 kretsschema

1. MCU logisk strömförsörjning 3,3V: C18, C26, C27, C28, C29, C31, C32, C33;

2. MCU kärna strömförsörjning 1,25V: C23, C24;

3. MCU analog strömförsörjning 3,3V: C35 är den analoga strömförsörjningen för MCU.Vid typsättning kan kärnan 1,25V jord och logisk jord kombineras, men den analoga jordningen måste separeras.Den analoga jordningen och den digitala jordningen bör samlas vid den negativa polen på LDO-utgångens stora kondensator, och den analoga positiva polen bör också samlas vid den positiva polen på den stora LDO-kondensatorn, så att AD-samplingsbrus minimeras.

4. AD analog signal förvärvskrets: CP1 är AD analog input filter kondensator.För att minska samplingsfelet separeras MCU:ns analoga jord och digitala jord oberoende av varandra.Den negativa polen på CP1 måste anslutas till MCU:ns analoga jord med minimal impedans, och de två parallella kondensatorerna på kristalloscillatorn är anslutna till MCU:ns analoga jord.

5. Summerkrets: C25 är strömförsörjningskondensatorn för summern.Summern är en induktiv enhet, och det kommer att finnas en toppström under drift.För att minska toppen är det nödvändigt att minska summerns MOS-drivström för att få MOS-röret att fungera i det linjära området, och designa kretsen för att få den att fungera i växlingsläget.Observera att R18 ska kopplas parallellt i båda ändarna av summern för att justera ljudkvaliteten på summern och få summern att låta skarpt och behagligt.

6. WiFi-krets: WiFi-chipsampling ESP32-C, med WiFi+Bluetooth+BLE.På ledningarna är RF-kraftjorden och signaljorden separerade.

bild5

1.5 WiFi-kretsdesign

I figuren ovan är den övre delen av kopparbeläggningen kraftjordslingan.WiFi-antennens reflektionsjordslinga måste ha en stor yta till strömjorden, och uppsamlingspunkten för strömjorden är den negativa polen till C6.En reflekterad ström måste tillhandahållas mellan strömjorden och WiFi-antennen, så det måste finnas kopparbeläggning under WiFi-antennen.Längden på kopparbeläggningen överstiger förlängningslängden för WiFi-antennen, och förlängningen kommer att öka känsligheten hos WiFi;punkt vid C2s negativa pol.Ett stort kopparområde kan skydda bruset som orsakas av WiFi-antennstrålningen.De 2 koppargrunderna separeras på bottenskiktet och samlas upp i mitten av ESP32-C genom vias.RF-kraftjorden behöver en lägre impedans än signaljordslingan, så det finns 6 vias från strömjorden till chippaden för att säkerställa en tillräckligt låg impedans.Kristalloscillatorns jordslinga kan inte ha RF-effekt som flödar genom den, annars kommer kristalloscillatorn att generera frekvensjitter och WiFi-frekvensförskjutningen kommer inte att kunna skicka och ta emot data.

7. Bakgrundsbelysning LED strömförsörjningskrets: SOT23-6LED drivrutin chip provtagning.DC/DC-strömförsörjningen till lysdioden bildar oberoende en slinga, och DC/DC-jorden är ansluten till 3,3V LOD-jorden.Eftersom PWM2-portens kärna har specialiserats, matar den ut en 600K PWM-signal, och en RC läggs till för att använda PWM-utgången som en PÅ/AV-kontroll.

8. Spänningsingångsområde: två DC/DC-stegnedgångar är utformade.Observera att motstånden R13 och R17 i DC/DC-kretsen inte kan utelämnas.De två DC/DC-chippen stöder upp till 18V-ingång, vilket är bekvämt för extern strömförsörjning.

9. USB TYPE C felsökningsport: TYPE C kan kopplas in och ur framåt och bakåt.Insättning framåt kommunicerar med WIFI-chippet ESP32-C för att programmera WIFI-chippet;omvänd insättning kommunicerar med XR21V1410IL16 för att programmera T5L.TYPE C stöder 5V strömförsörjning.

10. Parallellportkommunikation: T5L OS-kärnan har många lediga IO-portar, och 16-bitars parallellportkommunikation kan utformas.I kombination med ST ARM FMC parallellportprotokoll stöder den synkron läsning och skrivning.

11. LCM RGB höghastighetsgränssnittsdesign: T5L RGB-utgång är direkt ansluten till LCM RGB, och buffertmotstånd läggs till i mitten för att minska LCM-vattenstörningar.Vid kabeldragning, minska längden på RGB-gränssnittsanslutningen, särskilt PCLK-signalen, och öka RGB-gränssnittet PCLK, HS, VS, DE testpunkter;SPI-porten på skärmen är ansluten till P2.4~P2.7-portarna på T5L, vilket är bekvämt för att designa skärmdrivrutinen.Led ut RST, nCS, SDA, SCI testpunkter för att underlätta utvecklingen av den underliggande mjukvaran.

(2) DGUS-gränssnitt

bild6 bild7

1.6 Datavariabel displaykontroll

(3) OS
//———————————DGUS läs- och skrivformat
typdef struct
{
u16 adr;//UI 16bit variabel adress
u8 datLen;//8bitdatalängd
u8 *pBuf;//8bit datapekare
} UI_packTypeDef;//DGUS läsa och skriva paket

//——————————-datavariabel displaykontroll
typdef struct
{
u16 VP;
u16 X;
u16 Y;
u16 Färg;
u8 Lib_ID;
u8 FontSize;
u8 Algnment;
u8 IntNum;
u8 DecNum;
u8 Typ;
u8 LenUint;
u8 StringUinit[11];
} Number_spTypeDef;//datavariabelbeskrivningsstruktur

typdef struct
{
Number_spTypeDef sp;//definiera SP-beskrivningspekare
UI_packTypeDef spPack;//definiera SP-variabel DGUS läs- och skrivpaket
UI_packTypeDef vpPack;//definiera vp-variabel DGUS läs- och skrivpaket
} Number_HandleTypeDef;//datavariabelstruktur

Med föregående datavariabel handtagsdefinition.Definiera sedan en variabel för spänningssamplingsdisplayen:
Number_HandleTypeDef Hsample;
u16 voltage_sample;

Kör först initieringsfunktionen
NumberSP_Init(&Hsample,voltage_sample,0×8000);//0×8000 här är beskrivningspekaren
//——Datavariabel som visar SP-pekarstrukturinitiering——
void NumberSP_Init(Number_HandleTypeDef *number,u8 *value, u16 numberAddr)
{
nummer->spPack.addr = nummerAddr;
number->spPack.datLen = sizeof(number->sp);
nummer->spPack.pBuf = (u8 *)&number->sp;
        
Read_Dgus(&number->spPack);
nummer->vpPack.addr = nummer->sp.VP;
switch(number->sp.Type) //Datalängden för vp-variabeln väljs automatiskt enligt datavariabeltypen som är designad i DGUS-gränssnittet.

{
fall 0:
fall 5:
nummer->vpPack.datLen = 2;
ha sönder;
fall 1:
fall 2:
fall 3:
fall 6:
nummer->vpPack.datLen = 4;
fall 4:
nummer->vpPack.datLen = 8;
ha sönder;
}
nummer->vpPack.pBuf = värde;
}

Efter initiering är Hsample.sp beskrivningspekaren för spänningssamplingsdatavariabeln;Hsample.spPack är kommunikationspekaren mellan OS-kärnan och gränssnittets spänningssamplingsdatavariabel via DGUS-gränssnittsfunktionen;Hsample.vpPack är attributet för att ändra spänningssamplingsdatavariabeln, såsom teckensnittsfärger, etc. skickas också till UI-kärnan via DGUS-gränssnittsfunktionen.Hsample.vpPack.addr är spänningssamplingsdatavariabeladressen, som har erhållits automatiskt från initieringsfunktionen.När du ändrar variabeladressen eller variabeldatatypen i DGUS-gränssnittet behöver du inte uppdatera variabeladressen i OS-kärnan synkront.Efter att OS-kärnan har beräknat voltage_sample-variabeln behöver den bara köra Write_Dgus(&Hsample.vpPack)-funktionen för att uppdatera den.Det finns inget behov av att packa voltage_sample för DGUS-överföring.


Posttid: 2022-jun-15