Примена на прилагодлива моќност на LCD екранот заснована на DWIN T5L ASIC

——Споделено од DWIN Froum

Користејќи DWIN T5L1 чип како контролно јадро на целата машина, прима и обработува информации за допир, ADC, контрола на PWM и го придвижува 3,5-инчниот LCD екран за прикажување на моменталната состојба во реално време.Поддржете далечинско прилагодување на допир на светлината на LED изворот на светлина преку модулот WiFi и поддршка за гласовниот аларм.

Карактеристики на програмата:

1. Прифатете го чипот T5L да работи на висока фреквенција, аналогното земање примероци од АД е стабилно, а грешката е мала;

2. Поддршка TYPE C директно поврзан со компјутер за дебагирање и снимање на програми;

3. Поддршка на јадрото на интерфејсот на ОС со голема брзина, 16битна паралелна порта;PWM порта на јадрото на интерфејсот, излезната порта AD, дизајн на апликација со ниска цена, нема потреба да се додава дополнителна MCU;

4. Поддршка за WiFi, далечински управувач со Bluetooth;

5. Поддршка од 5~12V DC широк напон и влез со широк опсег

слика 1

1.1 Шема дијаграм

слика 2

1.2 ПХБ плоча

слика 3

1.3 Кориснички интерфејс

Срам вовед:

(1) Дизајн на хардверско коло

слика4

1.4 дијаграм на колото T5L48320C035

1. MCU логичко напојување 3.3V: C18, C26, C27, C28, C29, C31, C32, C33;

2. Напојување со јадро на MCU 1,25V: C23, C24;

3. Аналогно напојување на MCU 3.3V: C35 е аналогно напојување за MCU.При наборување, заземјувањето на јадрото 1,25V и логичкото заземјување може да се комбинираат заедно, но аналогната заземјување мора да се одвои.Аналогното заземјување и дигиталното заземјување треба да се соберат на негативниот пол на излезниот LDO голем кондензатор, а аналогниот позитивен пол исто така треба да се соберат на позитивниот пол на големиот кондензатор LDO, така што бучавата за земање примероци од АД е минимизирана.

4. Коло за стекнување на аналогни сигнали на АД: CP1 е кондензатор на аналогниот влезен филтер за АД.Со цел да се намали грешката при земање примероци, аналогното заземјување и дигиталното заземјување на MCU се одделуваат независно.Негативниот пол на CP1 мора да биде поврзан со аналогното заземјување на MCU со минимална импеданса, а двата паралелни кондензатори на кристалниот осцилатор се поврзани со аналогната заземјување на MCU.

5. Коло на звучникот: C25 е кондензатор за напојување за звучникот.Звучникот е индуктивен уред и ќе има врвна струја за време на работата.За да се намали врвот, неопходно е да се намали струјата на погонскиот MOS на звучникот за да се направи MOS цевката да работи во линеарниот регион и да се дизајнира колото да работи во режим на прекинувач.Забележете дека R18 треба да се поврзе паралелно на двата краја на звучникот за да се приспособи квалитетот на звукот на звучникот и да звучи звучно и пријатно.

6. Коло за WiFi: земање примероци од WiFi чип ESP32-C, со WiFi+Bluetooth+BLE.На жици, заземјувањето за напојување со RF и заземјувањето на сигналот се одвоени.

слика 5

1.5 Дизајн на WiFi коло

На горната слика, горниот дел од бакарната обвивка е јамката за заземјување на моќност.Заземјувачката јамка за рефлексија на антената на WiFi мора да има голема површина до заземјувањето за напојување, а местото на собирање на заземјувањето за напојување е негативниот пол на C6.Треба да се обезбеди рефлектирана струја помеѓу заземјувањето за напојување и антената WiFi, така што мора да има бакарна обвивка под WiFi антената.Должината на бакарната обвивка ја надминува должината на продолжетокот на WiFi антената, а проширувањето ќе ја зголеми чувствителноста на WiFi;точка на негативниот пол на C2.Голема површина на бакар може да ја заштити бучавата предизвикана од зрачењето на антената WiFi.Двете бакарни основи се одвоени на долниот слој и се собираат до средната подлога на ESP32-C преку виси.Заземјувањето за напојување со RF има потреба од помала импеданса од јамката за заземјување на сигналот, така што има 6 премини од заземјувањето за напојување до подлогата за чипови за да се обезбеди доволно ниска импеданса.Заземјувачката јамка на кристалниот осцилатор не може да има RF моќ што тече низ неа, инаку кристалниот осцилатор ќе генерира нервоза на фреквенцијата, а поместувањето на фреквенцијата на WiFi нема да може да испраќа и прима податоци.

7. Коло за напојување со ЛЕД со позадинско осветлување: земање примероци на чип на возачот SOT23-6LED.DC/DC напојувањето на LED диодата независно формира јамка, а DC/DC заземјувањето е поврзано со заземјувањето LOD од 3,3V.Бидејќи јадрото на пристаништето PWM2 е специјализирано, излегува 600K PWM сигнал и се додава RC за да се користи излезот PWM како контрола за вклучување/исклучување.

8. Влезен опсег на напон: дизајнирани се две спуштања на DC/DC.Забележете дека отпорниците R13 и R17 во колото DC/DC не може да се изостават.Двата DC/DC чипови поддржуваат влез до 18V, што е погодно за надворешно напојување.

9. Приклучок за отстранување грешки на USB TYPE C: TYPE C може да се приклучува и исклучува нанапред и наназад.Вметнувањето напред комуницира со чипот WIFI ESP32-C за програмирање на WIFI чипот;обратното вметнување комуницира со XR21V1410IL16 за програмирање на T5L.TYPE C поддржува напојување од 5V.

10. Комуникација со паралелна порта: Јадрото на T5L OS има многу бесплатни IO порти и може да се дизајнира комуникација со паралелна порта од 16 бити.Во комбинација со протоколот за паралелна порта ST ARM FMC, тој поддржува синхроно читање и пишување.

11. Дизајн на интерфејс со голема брзина на LCM RGB: излезот T5L RGB е директно поврзан со LCM RGB, а отпорот на тампон се додава во средината за да се намали пречки во LCM бранување на вода.Кога поврзувате жици, намалете ја должината на поврзувањето на интерфејсот RGB, особено на сигналот PCLK и зголемете ги точките за тестирање на интерфејсот RGB PCLK, HS, VS, DE;приклучокот SPI на екранот е поврзан со портите P2.4~P2.7 на T5L, што е погодно за дизајнирање на двигателот на екранот.Водете ги тест точките RST, nCS, SDA, SCI за да го олесните развојот на основниот софтвер.

(2) DGUS интерфејс

слика 6 слика7

1.6 Контрола на приказ на променливи податоци

(3) ОС
//———————————Формат за читање и пишување на DGUS
typedef структура
{
u16 адреса;//Адреса на променлива UI 16 битна
u8 datLen;//8 битна должина на податоци
u8 *pBuf;//8 битен податочен покажувач
} UI_packTypeDef;//DGUS читање и пишување пакети

//——————————-Контрола на приказ на променливата на податоци
typedef структура
{
u16 VP;
u16 X;
u16 Y;
u16 Боја;
u8 Lib_ID;
u8 FontSize;
u8 Порамнување;
u8 IntNum;
u8 ДекНум;
u8 Тип;
u8 LenUint;
u8 StringUinit[11];
} Number_spTypeDef;//Структура на опис на променливата на податоци

typedef структура
{
Number_spTypeDef sp;//дефинирај го покажувачот за опис на SP
UI_packTypeDef spPack;//дефинирај SP променлива DGUS пакет за читање и пишување
UI_packTypeDef vpPack;//define vp променлива DGUS пакет за читање и пишување
} Number_HandleTypeDef;//Структура на променлива на податоци

Со претходната дефиниција за рачка на променливата за податоци.Следно, дефинирајте променлива за екранот за земање примероци на напон:
Number_HandleTypeDef Hsample;
u16 напон_примерок;

Прво, извршете ја функцијата за иницијализација
NumberSP_Init(&Hsample,напон_примерок,0×8000);//0×8000 тука е покажувачот за опис
//——Променлива на податоци што ја покажува иницијализацијата на структурата на покажувачот на SP——
void NumberSP_Init(Number_HandleTypeDef *number,u8 *вредност, u16 numberAddr)
{
број->spPack.addr = numberAddr;
број->spPack.datLen = sizeof(број->sp);
број->spPack.pBuf = (u8 *)&number->sp;
        
Read_Dgus (&number->spPack);
број->vpPack.addr = број->сп.ВП;
switch(number->sp.Type) //Должината на податоците на променливата vp автоматски се избира според типот на променливата на податоци дизајниран во интерфејсот DGUS.

{
случај 0:
случај 5:
број->vpPack.datLen = 2;
пауза;
случај 1:
случај 2:
случај 3:
случај 6:
број->vpPack.datLen = 4;
случај 4:
број->vpPack.datLen = 8;
пауза;
}
број->vpPack.pBuf = вредност;
}

По иницијализацијата, Hsample.sp е покажувачот за опис на променливата за податоци за земање примероци на напон;Hsample.spPack е покажувач за комуникација помеѓу јадрото на оперативниот систем и променливата на податоци за земање примероци на напон на интерфејсот преку функцијата за интерфејс DGUS;Hsample.vpPack е атрибут за промена на променливата за земање примероци на напон, како што се боите на фонтот итн., исто така, се пренесуваат до јадрото на UI преку функцијата за интерфејс DGUS.Hsample.vpPack.addr е адреса на променливата на податоците за земање примероци на напон, која е автоматски добиена од функцијата за иницијализација.Кога ја менувате адресата на променливата или типот на податоци на променливата во интерфејсот DGUS, нема потреба синхроно да се ажурира адресата на променливата во јадрото на ОС.Откако јадрото на ОС ќе ја пресмета променливата voltage_sample, треба само да ја изврши функцијата Write_Dgus(&Hsample.vpPack) за да ја ажурира.Нема потреба да се спакува voltage_sample за DGUS пренос.


Време на објавување: 15-ти јуни 2022 година