Bruken av justerbar strøm LCD-effekt basert på DWIN T5L ASIC

——Delt fra DWIN Froum

Ved å bruke DWIN T5L1-brikken som kontrollkjernen til hele maskinen, mottar og behandler berøring, ADC-innhenting, PWM-kontrollinformasjon, og driver den 3,5-tommers LCD-skjermen for å vise gjeldende status i sanntid.Støtt ekstern berøringsjustering av LED-lyskildens lysstyrke gjennom WiFi-modul, og støtte talealarm.

Programfunksjoner:

1. Bruk T5L-brikken til å kjøre med høy frekvens, AD analog sampling er stabil, og feilen er liten;

2. Støtte TYPE C direkte koblet til PC for feilsøking og programbrenning;

3. Støtte høyhastighets OS-kjernegrensesnitt, 16-bits parallellport;UI-kjerne PWM-port, AD-port utgang, rimelig applikasjonsdesign, ingen grunn til å legge til ekstra MCU;

4. Støtte WiFi, Bluetooth-fjernkontroll;

5. Støtte 5~12V DC bred spenning og bred rekkevidde inngang

bilde1

1.1 Skjemadiagram

bilde2

1.2 PCB-kort

bilde3

1.3 Brukergrensesnitt

Skam introduksjon:

(1) Design av maskinvarekretser

bilde4

1.4 T5L48320C035 kretsskjema

1. MCU logisk strømforsyning 3,3V: C18, C26, C27, C28, C29, C31, C32, C33;

2. MCU kjerne strømforsyning 1,25V: C23, C24;

3. MCU analog strømforsyning 3,3V: C35 er den analoge strømforsyningen for MCU.Ved typesetting kan kjerne 1,25V jord og logisk jord kombineres, men analog jord må skilles.Den analoge jordingen og den digitale jordingen skal samles ved den negative polen til den store LDO-utgangskondensatoren, og den analoge positive polen skal også samles ved den positive polen til den store LDO-kondensatoren, slik at AD-samplingstøy minimeres.

4. AD analog signalinnsamlingskrets: CP1 er AD analog input filter kondensator.For å redusere samplingsfeilen, separeres den analoge jordingen og den digitale jordingen til MCU uavhengig.Den negative polen til CP1 må kobles til den analoge jordingen til MCU med minimum impedans, og de to parallelle kondensatorene til krystalloscillatoren er koblet til den analoge jordingen til MCUen.

5. Buzzer-krets: C25 er strømforsyningskondensatoren for summeren.Summeren er en induktiv enhet, og det vil være en toppstrøm under drift.For å redusere toppen, er det nødvendig å redusere MOS-drivstrømmen til summeren for å få MOS-røret til å fungere i det lineære området, og designe kretsen for å få det til å fungere i brytermodus.Merk at R18 bør kobles parallelt i begge ender av summeren for å justere lydkvaliteten på summeren og få summeren til å høres skarp og behagelig ut.

6. WiFi-krets: WiFi-brikkesampling ESP32-C, med WiFi+Bluetooth+BLE.På ledningene er RF-strømjord og signaljord atskilt.

bilde5

1.5 WiFi-kretsdesign

I figuren ovenfor er den øvre delen av kobberbelegget kraftjordsløyfen.WiFi-antennes refleksjonsjordsløyfe må ha et stort område til strømjorden, og oppsamlingspunktet for strømjorden er den negative polen til C6.En reflektert strøm må tilføres mellom strømjorden og WiFi-antennen, så det må være kobberbelegg under WiFi-antennen.Lengden på kobberbelegget overskrider utvidelseslengden til WiFi-antennen, og utvidelsen vil øke følsomheten til WiFi;punkt ved den negative polen til C2.Et stort område med kobber kan skjerme støyen forårsaket av WiFi-antennestrålingen.De 2 kobbergrunnene separeres på bunnlaget og samles til den midtre puten på ESP32-C gjennom vias.RF-strømjorden trenger en lavere impedans enn signaljordsløyfen, så det er 6 vias fra strømjorden til brikkeputen for å sikre en tilstrekkelig lav impedans.Jordsløyfen til krystalloscillatoren kan ikke ha RF-strøm som strømmer gjennom den, ellers vil krystalloscillatoren generere frekvensjitter, og WiFi-frekvensforskyvningen vil ikke kunne sende og motta data.

7. Bakgrunnsbelysning LED strømforsyningskrets: SOT23-6LED driver chip prøvetaking.DC/DC-strømforsyningen til LED-en danner uavhengig en sløyfe, og DC/DC-jorden er koblet til 3,3V LOD-jorden.Siden PWM2-portkjernen har blitt spesialisert, sender den ut et 600K PWM-signal, og en RC er lagt til for å bruke PWM-utgangen som en PÅ/AV-kontroll.

8. Spenningsinngangsområde: to DC/DC-nedtrappinger er designet.Merk at R13- og R17-motstandene i DC/DC-kretsen ikke kan utelates.De to DC/DC-brikkene støtter opptil 18V-inngang, noe som er praktisk for ekstern strømforsyning.

9. USB TYPE C feilsøkingsport: TYPE C kan kobles til og fra forover og bakover.Foroverinnsetting kommuniserer med WIFI-brikken ESP32-C for å programmere WIFI-brikken;omvendt innsetting kommuniserer med XR21V1410IL16 for å programmere T5L.TYPE C støtter 5V strømforsyning.

10. Parallellportkommunikasjon: T5L OS-kjerne har mange ledige IO-porter, og 16-bits parallellportkommunikasjon kan utformes.Kombinert med ST ARM FMC parallellportprotokoll, støtter den synkron lesing og skriving.

11. LCM RGB høyhastighets grensesnittdesign: T5L RGB-utgang er direkte koblet til LCM RGB, og buffermotstand legges til i midten for å redusere LCM-vannrippelinterferens.Ved kabling, reduser lengden på RGB-grensesnittforbindelsen, spesielt PCLK-signalet, og øk RGB-grensesnittet PCLK, HS, VS, DE testpunkt;SPI-porten på skjermen er koblet til P2.4~P2.7-portene på T5L, noe som er praktisk for å designe skjermdriveren.Før ut RST, nCS, SDA, SCI testpunkter for å lette utviklingen av den underliggende programvaren.

(2) DGUS-grensesnitt

bilde6 bilde7

1.6 Datavariabel visningskontroll

(3) OS
//———————————DGUS lese- og skriveformat
typedef struct
{
u16 adr;//UI 16bit variabel adresse
u8 datLen;//8bitdatalengde
u8 *pBuf;//8bit datapeker
} UI_packTypeDef;//DGUS lese og skrive pakker

//——————————-data variabel visningskontroll
typedef struct
{
u16 VP;
u16 X;
u16 Y;
u16 Farge;
u8 Lib_ID;
u8 FontSize;
u8 Algnment;
u8 IntNum;
u8 DecNum;
u8 Type;
u8 LenUint;
u8 StringUinit[11];
} Number_spTypeDef;//datavariabel beskrivelsesstruktur

typedef struct
{
Number_spTypeDef sp;//definer SP-beskrivelsespekeren
UI_packTypeDef spPack;//definer SP variabel DGUS lese og skrive pakke
UI_packTypeDef vpPack;//define vp variabel DGUS lese og skrive pakke
} Number_HandleTypeDef;//datavariabelstruktur

Med forrige datavariabel håndtaksdefinisjon.Definer deretter en variabel for spenningsprøvevisningen:
Number_HandleTypeDef Hsample;
u16 spenningsprøve;

Først, utfør initialiseringsfunksjonen
NumberSP_Init(&Hsample,spenningsprøve,0×8000);//0×8000 her er beskrivelsespekeren
//——Datavariabel som viser initialisering av SP-pekerstruktur——
void NumberSP_Init(Number_HandleTypeDef *number,u8 *value, u16 numberAddr)
{
number->spPack.addr = numberAddr;
tall->spPack.datLen = sizeof(nummer->sp);
nummer->spPack.pBuf = (u8 *)&number->sp;
        
Read_Dgus(&number->spPack);
nummer->vpPack.addr = nummer->sp.VP;
switch(number->sp.Type) //Datalengden til vp-variabelen velges automatisk i henhold til datavariabeltypen designet i DGUS-grensesnittet.

{
sak 0:
sak 5:
nummer->vpPack.datLen = 2;
gå i stykker;
sak 1:
sak 2:
sak 3:
sak 6:
nummer->vpPack.datLen = 4;
tilfelle 4:
nummer->vpPack.datLen = 8;
gå i stykker;
}
nummer->vpPack.pBuf = verdi;
}

Etter initialisering er Hsample.sp beskrivelsespekeren for spenningssamplingsdatavariabelen;Hsample.spPack er kommunikasjonspekeren mellom OS-kjernen og UI-spenningssamplingsdatavariabelen gjennom DGUS-grensesnittfunksjonen;Hsample.vpPack er egenskapen til å endre spenningssamplingsdatavariabelen, slik som skriftfarger osv. sendes også til UI-kjernen gjennom DGUS-grensesnittfunksjonen.Hsample.vpPack.addr er spenningssamplingsdatavariabeladressen, som automatisk er hentet fra initialiseringsfunksjonen.Når du endrer variabeladressen eller variabeldatatypen i DGUS-grensesnittet, er det ikke nødvendig å oppdatere variabeladressen i OS-kjernen synkront.Etter at OS-kjernen har beregnet voltage_sample-variabelen, trenger den bare å utføre Write_Dgus(&Hsample.vpPack)-funksjonen for å oppdatere den.Det er ikke nødvendig å pakke voltage_sample for DGUS-overføring.


Innleggstid: 15. juni 2022