制作商品网站,重庆装修价格,龙岩天宫山,wordpress用户注册密码LVGL系列
一、LVGL移植
LVGL系列1–AT32移植LVGL_V8具体步骤 LVGL系列2–linux lvglv8 vscode 移植 LVGL系列3–纯物理(外部)按键#xff0c;数字键盘控制控件 文章目录 LVGL系列一、LVGL移植 一、背景方式一#xff1a;自定义事件发送与处理函数方式二#xff1a;利用l…LVGL系列
一、LVGL移植
LVGL系列1–AT32移植LVGL_V8具体步骤 LVGL系列2–linux lvglv8 vscode 移植 LVGL系列3–纯物理(外部)按键数字键盘控制控件 文章目录 LVGL系列一、LVGL移植 一、背景方式一自定义事件发送与处理函数方式二利用lv_event_send发送按键数据 一、背景
LVGL以其轻量级和高度可配置性著称尤其在触摸屏应用中表现出色。然而在多样化的嵌入式系统场景中如需要处理物理按键如关机键、方向键、数字键盘等的设备LVGL的标准交互模型可能需要一定的扩展或调整来适应这些非触摸屏输入方式。
方式一自定义事件发送与处理函数
static void Event(void* param, int event)
{if(event ButtonEvent::EVENT_ButtonLongPressed){if(param btOK){page.PagePop();}}
}
void PageManager::PageEventTransmit(void* obj, int event)
{/*将事件传递到当前页面*/if(PageList[NowPage].EventCallback ! NULL)PageList[NowPage].EventCallback(obj, event);
}
方式二利用lv_event_send发送按键数据
映射按键到LVGL控件根据硬件按键布局在LVGL中创建相应的控件或逻辑来代表这些按键。 发送事件在按键ISR或扫描函数中通过lv_event_send函数向对应的LVGL控件发送按键事件可以自定义事件类型或利用LVGL内置的事件类型如点击、长按等。 处理事件在LVGL控件的事件处理函数中根据接收到的事件类型执行相应的操作如播放关机动画、改变控件状态等。