——З форуму распрацоўшчыкаў DWIN
У гэтым выпуску мы прадставім адзначаны ўзнагародамі выпадак форуму распрацоўшчыкаў DWIN з адкрытым зыходным кодам – тэставая сістэма інтэрвальнага распазнання жэстаў. Інжынеры выкарыстоўваюць 7-цалевы разумны экран COF для ўзаемадзеяння з датчыкам распазнавання жэстаў PAJ7620U2 праз ядро АС T5L. Няма неабходнасці выкарыстоўваць якія-небудзь кнопкі. Вам трэба толькі прыкласці руку да датчыка, каб увайсці ў экран кіравання сістэмай меню і рэалізаваць 9 эфектаў жэстаў: уверх, уніз, налева, направа, блізка, далёка, паварот налева, паварот направа і хваля.
1.ІнтэрфейсМматэрыялДisplay
![asd (2)](https://ecdn6.globalso.com/upload/p/1355/source/2024-06/665f07846d9de96799.png)
![асд (1)](https://ecdn6.globalso.com/upload/p/1355/source/2024-06/665f07860ad7d49985.png)
2.C51 Інжынернае праектаванне
Ядро АС T5L ўзаемадзейнічае з датчыкам распазнання жэстаў PAJ7620U2 для ўзаемадзеяння з дадзенымі, вызначае бягучы жэст, вызначае малюнак, якое адлюстроўваецца ў дадзены момант, і малюнак, якое адлюстроўваецца пры перагортванні старонкі, і рэалізуе функцыю пераключэння старонак з дапамогай жэстаў. Спасылачны код выглядае наступным чынам:
несапраўдны select_operate(uint16_t gesrure_value)
{
if(gesrure_value == GES_UP) //уверх
{
калі (выбраць значэнне >= 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) //уніз
{
калі (выбраць значэнне
{
выбраць_значэнне += 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]);
}
}
несапраўдны turning_operate(uint16_t gesrure_value)
{
uint16_t i = 0;
uint8_t turning_mode = 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) //уверх
{
turning_mode = 0;
колькасць_паваротаў = 48;
}
інакш if(gesrure_value == GES_DOWN) //уніз
{
паваротны_рэжым = 1;
колькасць_паваротаў = 48;
}
інакш, калі (gesrure_value == GES_LEFT) //злева
{
рэжым_павароту = 2;
колькасць_паваротаў = 80;
}
інакш, калі (gesrure_value == GES_RIGHT) // правільна
{
рэжым_павароту = 3;
колькасць_паваротаў = 80;
}
if(паваротны_цякучы_малюнак == 0 || паваротны_цякучы_малюнак == 2)
{
паваротны_цякучы_малюнак = 1;
}
яшчэ
{
паваротны_цякучы_малюнак = 2;
}
for(i = 0;i
{
пераключальнік (рэжым_павароту)
{
выпадак 0:
dgus_show_variate_icon_location_set(паварот_бягучага_малюнка * 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);
}
turning_last_image = паварот_бягучага_выява;
}
}
Час публікацыі: 21 сакавіка 2024 г