[Kode irekia] Interval Gesture Recognition Testy System

——DWIN Garatzaileen Forotik

Ale honetan, DWIN Developer Forum - Interval Gesture Recognition Test System-en kode irekiko kasu saritua aurkeztuko dugu. Ingeniariek 7 hazbeteko COF pantaila adimenduna erabiltzen dute PAJ7620U2 keinuak ezagutzeko sentsorearekin elkarreragiteko T5L OS nukleoaren bidez. Ez dago botoirik erabili beharrik. Eskua sentsoretik hurbil jarri behar duzu menu-sistemaren kontrol-pantailan sartzeko, eta gora, behera, ezkerrera, eskuinera, hurbil, urrun, ezkerreko biraketa, eskuineko biraketa eta uhinen 9 keinu-efektu konturatu.

1.UIMmaterialaDisplay

asd (2)
asd (1)

2.C51 Ingeniaritza Diseinua

T5L OS nukleoak PAJ7620U2 keinuak ezagutzeko sentsorearekin elkarreragin egiten du datuen elkarrekintzarako, uneko keinua detektatzen du, unean bistaratzen den irudia eta orria bueltatuz bistaratzen den argazkia zehazten ditu eta keinuak erabiliz orrialdeak aldatzeko funtzioaz jabetzen da. Erreferentzia kodea honako hau da:

void select_operate (uint16_t gesture_value)

{

if(gesrure_value == GES_UP) //gora

{

if(hautatu_balioa >= 2)

{

hautatu_balioa -= 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) //behera

{

if(hautatu_balioa

{

hautatu_balioa += 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) //ezker

{

if(hautatu_balioa % 2 == 1)

{

hautatu_balioa -= 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) //eskuin

{

if(hautatu_balioa % 2 == 0)

{

hautatu_balioa += 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 gesture_value)

{

uint16_t i = 0;

uint8_t biraketa_modua = 0; //Orria biratzeko modua, 0 gora, 1 behera, 2 ezkerrera, 3 eskuinera

uint16_t biraketa_zenbaketa = 0; //Azken orrialde bira kopurua

if(gezur_balioa == GES_GORA || keinuaren_balioa == GES_BEHERA || keinuaren_balioa == GES_EZKER || keinuaren_balioa == GES_ESKUINA)

{

if(gesrure_value == GES_UP) //gora

{

biraketa_modua = 0;

biraketa_zenbaketa = 48;

}

else if(gesrure_value == GES_DOWN) //behera

{

biraketa_modua = 1;

biraketa_zenbaketa = 48;

}

else if(gesrure_value == GES_LEFT) //ezker

{

biraketa_modua = 2;

biraketa_zenbaketa = 80;

}

else if(gesrure_value == GES_RIGHT) //eskuin

{

biraketa_modua = 3;

biraketa_zenbaketa = 80;

}

if(uneko_irudia_biratzen == 0 || uneko_irudia_biratzen == 2)

{

biraketa_uneko_irudia = 1;

}

bestela

{

biraketa_uneko_irudia = 2;

}

for(i = 0;i

{

aldatu (biratzeko_modua)

{

0 kasua:

dgus_show_variate_icon_location_set (turning_current_image * 0x100 + 0x2000, 0, 480 - i * 10);

t5l0_sys_delay_ms(20);

if(azken_irudia_biratu!= 0)

{

dgus_show_variate_icon_location_set (azken_irudia_biratu * 0x100 + 0x2000, 0, 0 - i * 10);

}

hautsi;

1. kasua:

dgus_show_variate_icon_location_set (turning_current_image * 0x100 + 0x2000, 0, -480 + i * 10);

t5l0_sys_delay_ms(20);

if(azken_irudia_biratu!= 0)

{

dgus_show_variate_icon_location_set (azken_irudia_biratu * 0x100 + 0x2000, 0, 0 + i * 10);

}

hautsi;

2. kasua:

dgus_show_variate_icon_location_set (turning_current_image * 0x100 + 0x2000, 800 - i * 10, 0);

t5l0_sys_delay_ms(20);

if(azken_irudia_biratu!= 0)

{

dgus_show_variate_icon_location_set (azken_irudia_biratu * 0x100 + 0x2000, 0 - i * 10, 0);

}

hautsi;

3. kasua:

dgus_show_variate_icon_location_set (turning_current_image * 0x100 + 0x2000, -800 + i * 10, 0);

t5l0_sys_delay_ms(20);

if(azken_irudia_biratu!= 0)

{

dgus_show_variate_icon_location_set (azken_irudia_biratu * 0x100 + 0x2000, 0 + i * 10, 0);

}

hautsi;

}

t5l0_sys_delay_ms(20);

}

azken_irudia_biratu = uneko_irudia_biratu;

}

}


Argitalpenaren ordua: 2024-mar-21