——Z fóra vývojárov DWIN
V tomto čísle si predstavíme ocenený open source prípad fóra vývojárov DWIN – Interval Gesture Recognition Test System. Inžinieri používajú 7-palcovú inteligentnú obrazovku COF na interakciu so snímačom rozpoznávania gest PAJ7620U2 prostredníctvom jadra OS T5L. Nie je potrebné používať žiadne tlačidlá. Stačí priložiť ruku k senzoru, aby ste vstúpili na obrazovku ovládania systému ponúk, a realizovať 9 efektov gest: hore, dole, doľava, doprava, blízko, ďaleko, rotácia doľava, rotácia doprava a mávanie.
1.UIMmateriálDisplay
![asd (2)](https://ecdn6.globalso.com/upload/p/1355/source/2024-06/665f07846d9de96799.png)
![asd (1)](https://ecdn6.globalso.com/upload/p/1355/source/2024-06/665f07860ad7d49985.png)
2.C51 Inžiniersky dizajn
Jadro OS T5L spolupracuje so senzorom rozpoznávania gest PAJ7620U2 pre interakciu s dátami, deteguje aktuálne gesto, otáčaním stránky určuje aktuálne zobrazený obrázok a zobrazený obrázok a realizuje funkciu prepínania stránok pomocou gest. Referenčný kód je nasledujúci:
void select_operate(uint16_t gesrure_value)
{
if(gesrure_value == GES_UP) //up
{
if(select_value >= 2)
{
select_value -= 2;
}
dgus_show_variate_icon_location_set(SELECT_DESCRIBE_RECTANGLE, select_pos[select_value][0], select_pos[select_value][1]);
}
else if(gesrure_value == GES_DOWN) //dole
{
if(select_value
{
select_value += 2;
}
dgus_show_variate_icon_location_set(SELECT_DESCRIBE_RECTANGLE, select_pos[select_value][0], select_pos[select_value][1]);
}
else if(gesrure_value == GES_LEFT) //vľavo
{
if(select_value % 2 == 1)
{
select_value -= 1;
}
dgus_show_variate_icon_location_set(SELECT_DESCRIBE_RECTANGLE, select_pos[select_value][0], select_pos[select_value][1]);
}
else if(gesrure_value == GES_RIGHT) //vpravo
{
if(select_value % 2 == 0)
{
select_value += 1;
}
dgus_show_variate_icon_location_set(SELECT_DESCRIBE_RECTANGLE, select_pos[select_value][0], select_pos[select_value][1]);
}
}
void Turning_operate(uint16_t gesrure_value)
{
uint16_t i = 0;
uint8_t sústruženie_režim = 0; //Režim otáčania strán, 0 hore, 1 dole, 2 doľava, 3 doprava
uint16_t turn_count = 0; //Posledný počet otočení stránky
if(gesrure_value == GES_UP || gesrure_value == GES_DOWN || gesrure_value == GES_LEFT || gesrure_value == GES_RIGHT)
{
if(gesrure_value == GES_UP) //up
{
režim_ otáčania = 0;
počet otočení = 48;
}
else if(gesrure_value == GES_DOWN) //dole
{
režim_ otáčania = 1;
počet otočení = 48;
}
else if(gesrure_value == GES_LEFT) //vľavo
{
režim_ otáčania = 2;
počet otočení = 80;
}
else if(gesrure_value == GES_RIGHT) //vpravo
{
režim otáčania = 3;
počet otočení = 80;
}
if(turning_current_image == 0 || turning_current_image == 2)
{
otočný_aktuálny_obraz = 1;
}
inak
{
otočný_aktuálny_obraz = 2;
}
for(i = 0;i
{
prepínač (režim otáčania)
{
prípad 0:
dgus_show_variate_icon_location_set(turning_current_image * 0x100 + 0x2000, 0, 480 - i * 10);
t5l0_sys_delay_ms(20);
if(turning_last_image != 0)
{
dgus_show_variate_icon_location_set(turning_last_image * 0x100 + 0x2000, 0, 0 - i * 10);
}
prestávka;
prípad 1:
dgus_show_variate_icon_location_set(turning_current_image * 0x100 + 0x2000, 0, -480 + i * 10);
t5l0_sys_delay_ms(20);
if(turning_last_image != 0)
{
dgus_show_variate_icon_location_set(turning_last_image * 0x100 + 0x2000, 0, 0 + i * 10);
}
prestávka;
prípad 2:
dgus_show_variate_icon_location_set(turning_current_image * 0x100 + 0x2000, 800 - i * 10, 0);
t5l0_sys_delay_ms(20);
if(turning_last_image != 0)
{
dgus_show_variate_icon_location_set(turning_last_image * 0x100 + 0x2000, 0 - i * 10, 0);
}
prestávka;
prípad 3:
dgus_show_variate_icon_location_set(turning_current_image * 0x100 + 0x2000, -800 + i * 10, 0);
t5l0_sys_delay_ms(20);
if(turning_last_image != 0)
{
dgus_show_variate_icon_location_set(turning_last_image * 0x100 + 0x2000, 0 + i * 10, 0);
}
prestávka;
}
t5l0_sys_delay_ms(20);
}
otočný_posledný_obraz = otočný_aktuálny_obrázok;
}
}
Čas odoslania: 21. marca 2024