[ღია წყარო] ინტერვალის ჟესტების ამოცნობის ტესტის სისტემა

——DWIN დეველოპერთა ფორუმიდან

ამ ნომერში ჩვენ წარმოგიდგენთ DWIN დეველოპერის ფორუმის ღია კოდის ჯილდოს მქონე შემთხვევას – ინტერვალის ჟესტების ამოცნობის ტესტის სისტემას. ინჟინრები იყენებენ 7 დიუმიან COF სმარტ ეკრანს PAJ7620U2 ჟესტების ამოცნობის სენსორთან ურთიერთქმედებისთვის T5L OS ბირთვის მეშვეობით. არ არის საჭირო რაიმე ღილაკის გამოყენება. თქვენ მხოლოდ უნდა მიიტანოთ ხელი სენსორთან ახლოს, რათა შეხვიდეთ მენიუს სისტემის მართვის ეკრანზე და გააცნობიეროთ 9 ჟესტიკულაცია ზევით, ქვევით, მარცხნივ, მარჯვნივ, ახლოს, შორს, მარცხნივ ბრუნვა, მარჯვნივ ბრუნვა და ტალღა.

1.UIმასალაარის თამაში

ასდ (2)
ასდ (1)

2.C51 საინჟინრო დიზაინი

T5L OS ბირთვი ურთიერთქმედებს PAJ7620U2 ჟესტების ამოცნობის სენსორთან მონაცემთა ურთიერთქმედებისთვის, ამოიცნობს მიმდინარე ჟესტს, განსაზღვრავს ამჟამად გამოჩენილ სურათს და გამოსახულ სურათს გვერდის შემობრუნებით და აცნობიერებს ჟესტების გამოყენებით გვერდების გადართვის ფუნქციას. საცნობარო კოდი ასეთია:

void select_operate(uint16_t gesrure_value)

{

if(gesrure_value == GES_UP) //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]);

}

სხვა შემთხვევაში, if(gesrure_value == GES_DOWN) //down

{

if(select_value

{

აირჩიეთ_მნიშვნელობა += 2;

}

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

}

სხვა შემთხვევაში, თუ (gesrure_value == GES_LEFT) //მარცხნივ

{

if(select_value % 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) //მარჯვნივ

{

if(select_value % 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 ბრუნვის_თვლა = 0; //გვერდის შემობრუნების ბოლო რაოდენობა

if (gesrure_value == GES_UP || gesrure_value == GES_DOWN || gesrure_value == GES_LEFT || gesrure_მნიშვნელობა == GES_RIGHT)

{

if(gesrure_value == GES_UP) //up

{

შემობრუნების_რეჟიმი = 0;

ბრუნვის_თვლა = 48;

}

სხვა შემთხვევაში, if(gesrure_value == GES_DOWN) //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