Применение регулируемой мощности ЖК дисплея Power на базе DWIN T5L ASIC
			
			— По материалам форума DWIN
Используя чип DWIN T5L1 в качестве управляющего ядра всей машины, он получает и обрабатывает сенсорную информацию, данные АЦП, управляющую информацию PWM и управляет 3.5" ЖК-экраном для отображения текущего состояния в режиме реального времени. Поддержка дистанционной сенсорной регулировки яркости светодиодного источника света через модуль Wi-Fi и поддержка голосовой сигнализации.
- Используйте чип T5L для работы на высокой частоте, аналоговая выборка AD стабильна, а погрешность невелика.
 - Поддержка USB TYPE C, напрямую подключенного к ПК для отладки и записи программ.
 - Поддержка высокоскоростного интерфейса ядра ОС, 16-битный параллельный порт; ШИМ-порт ядра пользовательского интерфейса, вывод AD-порта, недорогая быстрая разработка приложения, нет необходимости добавлять дополнительный MCU (микроконтроллер управления).
 - Поддержка Wi-Fi, Bluetooth пульт дистанционного управления;
 - Поддержка широкого напряжения постоянного тока 5 ~ 12 В и широкого диапазона входного переменного напряжения.
 
 
1.1 Scheme diagram
1.2 PCB board
 
1.3 User interface
1. Hardware circuit design
 
1.4 T5L48320C035 circuit diagram
- Логический источник питания MCU 3,3 В: C18, C26, C27, C28, C29, C31, C32, C33;
 - Основной источник питания MCU 1.25В: C23, C24;
 - Аналоговый источник питания MCU 3,3 В: C35 - это аналоговый источник питания для MCU. При наборе текста заземление сердечника напряжением 1,25 В и логическое заземление могут быть объединены вместе, но аналоговое заземление должно быть разделено. Аналоговое заземление и цифровое заземление должны быть собраны на отрицательном полюсе выходного большого конденсатора LDO, а аналоговый положительный полюс также должен быть собран на положительном полюсе большого конденсатора LDO, чтобы свести к минимуму шум дискретизации AD.
 - Схема сбора аналогового сигнала AD: CP1 - это конденсатор фильтра аналогового входного сигнала AD. Чтобы уменьшить ошибку дискретизации, аналоговое заземление и цифровое заземление микроконтроллера разделены независимо. Отрицательный полюс CP1 должен быть подключен к аналоговому заземлению MCU с минимальным сопротивлением, а два параллельных конденсатора кварцевого генератора подключены к аналоговому заземлению MCU.
 - 
	
Схема зуммера: C25 - это конденсатор питания для зуммера. Зуммер представляет собой индуктивное устройство, и во время работы будет наблюдаться пиковый ток. Чтобы уменьшить пик, необходимо уменьшить ток возбуждения МОП-сигнала зуммера, чтобы заставить МОП-лампу работать в линейной области, и спроектировать схему так, чтобы она работала в режиме переключения. Обратите внимание, что R18 должен быть подключен параллельно на обоих концах зуммера, чтобы отрегулировать качество звука зуммера и сделать звук зуммера четким и приятным.
 - Схема Wi-Fi: чип Wi-Fi с выборкой ESP32-C, с WiFi + Bluetooth + BLE. В проводке заземление радиочастотного питания и заземление сигнала разделены.
 
 
1.5 WiFi circuit design
На приведенном выше рисунке верхняя часть медного покрытия представляет собой контур заземления питания. Контур заземления антенны Wi-Fi должен иметь большую площадь по отношению к заземлению питания, а точкой сбора заземления питания является отрицательный полюс C6. Между заземлением питания и антенной Wi-Fi должен быть обеспечен отраженный ток, поэтому под антенной Wi-Fi должно быть медное покрытие. Длина медного покрытия превышает длину удлинителя антенны Wi-Fi, и удлинитель увеличит чувствительность Wi-Fi; направьте на отрицательный полюс C2. Большая площадь меди может экранировать шум, вызываемый излучением антенны Wi-Fi. 2 медных заземления отделяются на нижнем слое и собираются на среднюю площадку ESP32-C через переходные отверстия. Заземление радиочастотного источника питания требует более низкого импеданса, чем контур заземления сигнала, поэтому имеется 6 переходов от заземления питания к микросхеме, чтобы обеспечить достаточно низкий импеданс. Контур заземления кварцевого генератора не может пропускать через себя радиочастотную мощность, в противном случае кварцевый генератор будет генерировать дрожание частоты, и смещение частоты WiFi не сможет отправлять и получать данные.
7. Схема питания светодиода подсветки: выборка микросхемы драйвера SOT23-6LED. Источник питания постоянного тока для светодиода независимо образует контур, а заземление постоянного тока подключается к заземлению LOD напряжением 3,3 В. Поскольку ядро порта PWM2 было специализированным, оно выдает ШИМ-сигнал 600K, и добавлен RC для использования ШИМ-выхода в качестве элемента управления включением / выключением.
8. Диапазон входного напряжения: предусмотрены два понижающих устройства постоянного тока. Обратите внимание, что резисторы R13 и R17 в цепи постоянного тока не могут быть опущены. Две микросхемы DC / DC поддерживают вход до 18 В, что удобно для внешнего источника питания.
9. Порт отладки USB TYPE C: ТИП C можно подключать и отключать вперед и назад. Прямая вставка взаимодействует с чипом WI-Fi ESP32-C для программирования чипа WI-Fi; обратная вставка взаимодействует с XR21V1410IL16 для программирования T5L. ТИП C поддерживает источник питания 5 В.
10. Связь с параллельным портом: Ядро ОС T5L имеет много свободных портов ввода-вывода, и можно спроектировать 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 interface
1.6 Data variable display control
3. OS
 
	 //———————————DGUS read and write format
	 typedef struct
	 {
	  u16        addr; //UI 16bit variable address
	  u8        datLen; //8bitdata length
	  u8        *pBuf; //8bit data pointer
	 } UI_packTypeDef; //DGUS read and write packets
	 //——————————-data variable display control
	 typedef struct
	 {
	  u16   VP;
	  u16   X;
	  u16   Y;
	  u16   Color;
	  u8    Lib_ID;
	  u8    FontSize;
	  u8    Algnment;
	  u8    IntNum;
	  u8    DecNum;
	  u8    Type;
	  u8    LenUint;
	  u8    StringUinit[11];
	 } Number_spTypeDef; //data variable description structure
	 typedef struct
	 {
	  Number_spTypeDef     sp;  //define SP description pointer
	  UI_packTypeDef      spPack; //define SP variable DGUS read and write package
	  UI_packTypeDef      vpPack; //define vp variable DGUS read and write package
	 } Number_HandleTypeDef; //data variable structure
	 With the previous data variable handle definition. Next, define a variable for the voltage sampling display:
	 Number_HandleTypeDef  Hsample;
	 u16  voltage_sample;
	 First, execute the initialization function
	 NumberSP_Init(&Hsample,voltage_sample,0×8000); //0×8000 here is the description pointer
	 //——Data variable showing SP pointer structure initialization——
	 void NumberSP_Init(Number_HandleTypeDef *number,u8 *value, u16 numberAddr)
	 {
	  number->spPack.addr = numberAddr;
	  number->spPack.datLen = sizeof(number->sp);
	  number->spPack.pBuf = (u8 *)&number->sp;
	         
	  Read_Dgus(&number->spPack);
	  number->vpPack.addr = number->sp.VP;
	    switch(number->sp.Type) //The data length of the vp variable is automatically selected according to the data variable type designed in the DGUS interface.
	    {
	        case 0:
	        case 5:
	            number->vpPack.datLen = 2;        
	            break;
	        case 1:
	        case 2:
	        case 3:
	        case 6:
	            number->vpPack.datLen = 4;        
	        case 4:
	            number->vpPack.datLen = 8;        
	            break;
	    }                
	 number->vpPack.pBuf = value;
	 }
После инициализации Hsample.sp является указателем описания переменной данных выборки напряжения; Hsample.spPack - указатель связи между ядром ОС и переменной данных выборки напряжения пользовательского интерфейса через функцию интерфейса DGUS; Hsample.vpPack - атрибут изменения переменной данных выборки напряжения, такой как цвета шрифта, и т.д.
Также передаются в ядро пользовательского интерфейса через функцию интерфейса DGUS. Sample.vpPack.addr - это переменный адрес данных выборки напряжения, который был автоматически получен из функции инициализации. При изменении адреса переменной или типа переменных данных в интерфейсе DGUS нет необходимости синхронно обновлять адрес переменной в ядре ОС. После того, как ядро ОС вычислит переменную voltage_sample, ему нужно только выполнить функцию Write_Dgus(&Sample.pack), чтобы обновить ее. Нет необходимости упаковывать voltage_sample для передачи DGUS.
Время публикации: 15 июня-2022


