1、按键驱动重构:dzbj_button改为iot_button组件,支持BOOT/KEY2单击/双击/长按,回调通过xTaskCreate派发避免阻塞esp_timer; 2、新增按键导航管理器(key_nav):9种上下文状态机,统一分发按键事件到对应界面; 3、BLE改造:广播默认关闭由按键触发启停,新增设备间GATT Client图片传输(扫描→连接→MTU协商→分包发送),WRITE_EVT区分APP/设备传图跳转不同界面; 4、新增模式切换按键抑制:NVS标志+2秒时间窗,防止AI↔吧唧切换时幽灵按键触发配网或白屏; 5、AI模式BOOT单击回调添加抑制检查,吧唧模式key_nav_boot_click同步添加; 6、新增6个UI界面:配对(Peiwang)、更新(Update)、发送等待/接收等待/发送中/接收中; 7、新增电池指示器组件(battery_ui):多界面真实电量显示+3秒渐隐; 8、Home/Img界面重构:移除触摸手势事件,改为airhub背景+按键导航; 9、禁用触摸(DZBJ_ENABLE_TOUCH=0),保留代码可恢复; 10、sleep_mgr简化:按键唤醒由key_nav统一处理; Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
72 lines
2.4 KiB
C
72 lines
2.4 KiB
C
// This file was generated by SquareLine Studio
|
|
// SquareLine Studio version: SquareLine Studio 1.6.0
|
|
// LVGL version: 8.3.11
|
|
// Project name: Lcd_Pro
|
|
|
|
#ifndef _LCD_PRO_UI_H
|
|
#define _LCD_PRO_UI_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include "lvgl.h"
|
|
|
|
#include "ui_helpers.h"
|
|
#include "ui_events.h"
|
|
|
|
///////////////////// SCREENS ////////////////////
|
|
#include "screens/ui_ScreenHome.h"
|
|
// #include "screens/ui_ScreenSet.h" // 按键版禁用ScreenSet
|
|
#include "screens/ui_ScreenImg.h"
|
|
#include "screens/ui_ScreenPeiwang.h"
|
|
#include "screens/ui_ScreenUpdate.h"
|
|
#include "screens/ui_ScreenImageShar.h"
|
|
#include "screens/ui_ScreenImageReception.h"
|
|
#include "screens/ui_ScreenSharing.h"
|
|
#include "screens/ui_ScreenReceiving.h"
|
|
|
|
///////////////////// VARIABLES ////////////////////
|
|
|
|
// EVENTS
|
|
extern lv_obj_t *ui____initial_actions0;
|
|
|
|
// IMAGES AND IMAGE SETS
|
|
LV_IMG_DECLARE( ui_img_s8_png); // assets/s8.png
|
|
LV_IMG_DECLARE( ui_img_s11_png); // assets/s11.png
|
|
LV_IMG_DECLARE( ui_img_s12_png); // assets/s12.png
|
|
LV_IMG_DECLARE( ui_img_s9_png); // assets/s9.png
|
|
LV_IMG_DECLARE( ui_img_s6_png); // assets/s6.png
|
|
LV_IMG_DECLARE( ui_img_s10_png); // assets/s10.png
|
|
LV_IMG_DECLARE( ui_img_s1_png); // assets/s1.png
|
|
LV_IMG_DECLARE( ui_img_s13_png); // assets/s13.png
|
|
LV_IMG_DECLARE( ui_img_s14_png); // assets/s14.png
|
|
LV_IMG_DECLARE( ui_img_neutral_png); // emoji: 中性
|
|
LV_IMG_DECLARE( ui_img_happy_png); // emoji: 开心
|
|
LV_IMG_DECLARE( ui_img_sad_png); // emoji: 伤心
|
|
LV_IMG_DECLARE( ui_img_angry_png); // emoji: 生气
|
|
LV_IMG_DECLARE( ui_img_crying_png); // emoji: 哭泣
|
|
LV_IMG_DECLARE( ui_img_funny_png); // emoji: 滑稽
|
|
LV_IMG_DECLARE( ui_img_laughing_png); // emoji: 大笑
|
|
|
|
// 电子吧唧按键版新增图片
|
|
LV_IMG_DECLARE( ui_img_airhub_png); // Home背景图
|
|
LV_IMG_DECLARE( ui_img_peiwang_new2_png); // 配对界面图片
|
|
LV_IMG_DECLARE( ui_img_image_shar_png); // 发送方等待配对
|
|
LV_IMG_DECLARE( ui_img_image_reception_png); // 接收方等待配对
|
|
LV_IMG_DECLARE( ui_img_sharing_png); // 发送方传输中
|
|
LV_IMG_DECLARE( ui_img_receiving_png); // 接收方接收中
|
|
// GIF 动画资源
|
|
LV_IMG_DECLARE( Gengxin); // 更新界面背景
|
|
LV_IMG_DECLARE( Update_GIF); // 更新动画
|
|
|
|
// UI INIT
|
|
void ui_init(void);
|
|
void ui_destroy(void);
|
|
|
|
#ifdef __cplusplus
|
|
} /*extern "C"*/
|
|
#endif
|
|
|
|
#endif
|