初始化版本

This commit is contained in:
冯佳
2025-12-18 21:24:08 +08:00
parent 7e8a6d1ce3
commit 9773cb5a0a
15 changed files with 4355 additions and 0 deletions

50
port/menu_port.h Normal file
View File

@ -0,0 +1,50 @@
/**
* @file menu_port.h
* @brief 菜单组件硬件端口层接口定义(用户需要实现的硬件相关接口)
* @note 工业级嵌入式菜单组件 - 硬件端口层
*/
#ifndef MENU_PORT_H
#define MENU_PORT_H
#include <stdarg.h>
#include <stdint.h>
/************************** 硬件端口层接口声明 **************************/
/**
* @brief 硬件打印接口(可变参数版本)
* @param fmt 格式化字符串
* @param args 可变参数列表
* @note 用户需要实现此接口,用于调试信息输出
*/
void menu_port_printf(const char* fmt, va_list args);
/**
* @brief 获取系统滴答时间(毫秒级)
* @return 当前系统滴答时间ms
* @note 用户需要实现此接口,用于菜单的定时和超时处理
*/
uint32_t menu_port_get_tick(void);
/**
* @brief 硬件延迟函数(毫秒级)
* @param ms 延迟时间ms
* @note 用户需要实现此接口,用于必要的延迟操作
*/
void menu_port_delay_ms(uint32_t ms);
/**
* @brief 菜单显示接口
* @param menu_name 菜单名称字符串
* @param menu_id 菜单ID
* @note 用户需要实现此接口,用于在硬件上显示菜单内容
*/
void menu_port_display(const char* menu_name, uint16_t menu_id);
/**
* @brief 按键扫描接口(可选)
* @return 当前按键事件MenuEventType类型
* @note 用户可以实现此接口也可以在自己的主循环中调用menu_post_event发送按键事件
*/
// MenuEventType menu_port_key_scan(void);
#endif // MENU_PORT_H