- 新增keyboard_module.c实现完整的键盘HID功能,包括按键映射、 协议处理和报告生成 - 添加hid_protocol_event和hid_report_event事件系统支持 - 实现键盘和consumer类型的HID报告处理 - 支持Boot协议和Report协议两种模式 - 添加hid_keymap_def.h定义键盘映射表 refactor(ble_hid): 重构HIDS模块为BLE HID模块 - 将hids_module.c重命名为ble_hid_module.c - 集成新的hid_protocol_event和hid_report_event事件处理 - 改进协议切换逻辑,添加协议事件发布功能 - 优化BLE HID报告发送机制 refactor(CMakeLists): 更新构建配置 - 添加新的事件模块源文件到构建列表 - 添加keyboard_module.c替换原有的button_map_module.c - 添加ble_hid_module.c替换原有的hids_module.c - 配置HID密钥映射定义路径编译选项 refactor(events): 简化USB HID事件结构 - 移除USB HID事件中的冗余状态字段 - 更新事件日志和分析器字段定义 docs(hid): 添加HID报告描述符文档 - 定义REPORT_ID_KEYBOARD和REPORT_ID_CONSUMER枚举值 - 整理HID报告相关的常量定义
35 lines
1.0 KiB
CMake
35 lines
1.0 KiB
CMake
cmake_minimum_required(VERSION 3.20.0)
|
|
|
|
if(EXISTS "E:/extra/modules/ip5305")
|
|
list(APPEND ZEPHYR_EXTRA_MODULES "E:/extra/modules/ip5305")
|
|
endif()
|
|
|
|
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
|
|
|
|
project(new_kbd)
|
|
|
|
zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/inc)
|
|
zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/events)
|
|
zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/configuration/atguigu_mini_keyboard_nrf52840)
|
|
|
|
target_compile_definitions(app PRIVATE
|
|
APP_HID_KEYMAP_DEF_PATH=\"hid_keymap_def.h\"
|
|
)
|
|
|
|
target_sources(app PRIVATE
|
|
src/main.c
|
|
src/events/battery_status_event.c
|
|
src/events/config_event.c
|
|
src/events/hid_protocol_event.c
|
|
src/events/hid_report_event.c
|
|
src/events/mode_event.c
|
|
src/events/usb_hid_event.c
|
|
src/modules/battery_module.c
|
|
src/modules/ble_adv_ctrl_module.c
|
|
src/modules/ble_bond_module.c
|
|
src/modules/keyboard_module.c
|
|
src/modules/mode_switch_module.c
|
|
src/modules/usb_hid_module.c
|
|
src/modules/ble_hid_module.c
|
|
)
|