[Отворен извор] Систем за тестирање за препознавање на интервални гестови

——Од форумот за програмери на DWIN

Во ова издание, ќе го претставиме наградуваниот случај со отворен код на Форумот за програмери на DWIN – Систем за тестирање со препознавање на интервали. Инженерите користат паметен екран COF од 7 инчи за да комуницираат со сензорот за препознавање гестови PAJ7620U2 преку јадрото на T5L OS. Нема потреба да користите никакви копчиња. Потребно е само да ја ставите раката блиску до сензорот за да влезете во контролниот екран на системот на менито и да сфатите 9 гестови нагоре, надолу, лево, десно, блиску, далеку, ротација налево, десно ротирање и бранување.

1.УИМматеријалДе игра

asd (2)
asd (1)

2.C51 Инженерски дизајн

Јадрото на T5L OS е во интеракција со сензорот за препознавање гестови PAJ7620U2 за интеракција со податоци, го детектира тековниот гест, ја одредува моментално прикажаната слика и прикажаната слика со вртење на страницата и ја реализира функцијата на менување страници со помош на гестови. Референтниот код е како што следува:

void select_operate(uint16_t gesrure_value)

{

if(gesrure_value == GES_UP) //нагоре

{

if(select_value >= 2)

{

изберете_вредност -= 2;

}

dgus_show_variate_icon_location_set(SELECT_DESCRIBE_RECTANGLE, select_pos[select_value][0], select_pos[select_value][1]);

}

друго ако(gesrure_value == GES_DOWN) //долу

{

ако (избери_вредност

{

изберете_вредност += 2;

}

dgus_show_variate_icon_location_set(SELECT_DESCRIBE_RECTANGLE, select_pos[select_value][0], select_pos[select_value][1]);

}

друго ако(gesrure_value == GES_LEFT) //лево

{

ако (избери_вредност % 2 == 1)

{

изберете_вредност -= 1;

}

dgus_show_variate_icon_location_set(SELECT_DESCRIBE_RECTANGLE, select_pos[select_value][0], select_pos[select_value][1]);

}

друго ако(gesrure_value == GES_RIGHT) //десно

{

ако (избери_вредност % 2 == 0)

{

изберете_вредност += 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 режим на вртење = 0; //Режим на вртење страници, 0 нагоре, 1 надолу, 2 лево, 3 десно

uint16_t turning_count = 0; //Последен број на вртења на страници

if(gesrure_value == GES_UP || gesrure_value == GES_DOWN || gesrure_value == GES_LEFT || gesrure_value == GES_RIGHT)

{

if(gesrure_value == GES_UP) //нагоре

{

режим на вртење = 0;

вртење_број = 48;

}

друго ако(gesrure_value == GES_DOWN) //долу

{

режим на вртење = 1;

вртење_број = 48;

}

друго ако(gesrure_value == GES_LEFT) //лево

{

режим на вртење = 2;

вртење_број = 80;

}

друго ако(gesrure_value == GES_RIGHT) //десно

{

режим на вртење = 3;

вртење_број = 80;

}

ако (свртна_тековна_слика == 0 || свртена_тековна_слика == 2)

{

пресвртна_тековна_слика = 1;

}

друго

{

пресвртна_тековна_слика = 2;

}

for(i = 0;i

{

прекинувач (вртење_режим)

{

случај 0:

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

t5l0_sys_delay_ms(20);

ако (вртење_последна_слика != 0)

{

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

}

пауза;

случај 1:

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

t5l0_sys_delay_ms(20);

ако (вртење_последна_слика != 0)

{

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

}

пауза;

случај 2:

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

t5l0_sys_delay_ms(20);

ако (вртење_последна_слика != 0)

{

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

}

пауза;

случај 3:

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

t5l0_sys_delay_ms(20);

ако (вртење_последна_слика != 0)

{

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

}

пауза;

}

t5l0_sys_delay_ms(20);

}

вртење_последна_слика = свртена_тековна_слика;

}

}


Време на објавување: Мар-21-2024