Files
2026-09-10 11:36:33 +08:00

41 lines
2.0 KiB
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*
* 模块名称:UI PWD Def (密码与权限配置)
* 模块功能:查看/修改两个密码的编译期取值(3 位 0..999)+ 权限枚举定义——
* 密码值唯一配置点;改值后重新编译生效,不占 RAM、不落 Flash;
* 菜单表(ui_menu_tree.txt)叶子行尾 #P 注记标"需密码",
* 进叶子时按所输密码授权(查看密码→只读 / 修改密码→可修改)
* 适用平台:STM32F407ZGTx / PC 模拟器(两端共用)
* 作者:王建锋
* 创建日期:2026-09-09
* 修改记录:
* 2026-09-09 王建锋 创建:密码值编译期配置(用户定案:密码仅编译期
* 写入,不做运行期设置页与 Flash 持久化)
* 2026-09-09 王建锋 改权限模型:密码不绑定特定叶子,同一叶子输不同密码
* 获不同权限(查看密码→只读 / 修改密码→可修改);
* 新增 ui_perm_t 权限枚举;树注记改 #P(需密码)
*/
#ifndef UI_PWD_DEF_H
#define UI_PWD_DEF_H
#include <stdint.h>
/*
* 权限:进入受保护叶子时获得的权限级别(由所输密码决定):
* 同一叶子输查看密码 → 只读;输修改密码 → 可修改(含查看);
* 无密码叶子直接进,默认只读
*/
typedef enum {
UI_PERM_VIEW = 0u, /* 只读权限:查看密码授予(无密码叶子的默认权限) */
UI_PERM_MODIFY, /* 修改权限:修改密码授予(含查看) */
UI_PERM_COUNT /* 哨兵:非法权限(自检) */
} ui_perm_t;
#define UI_PWD_VALUE_VIEW 0u /* 查看密码:输入授予只读权限 */
#define UI_PWD_VALUE_MODIFY 123u /* 修改密码:输入授予修改权限 */
/* 护栏:密码值域 0..999(3 位),越界编译失败(C99 写法,兼容 ARMCC v5) */
typedef char ui_pwd_value_view_check[(UI_PWD_VALUE_VIEW <= 999u) ? 1 : -1];
typedef char ui_pwd_value_modify_check[(UI_PWD_VALUE_MODIFY <= 999u) ? 1 : -1];
#endif /* UI_PWD_DEF_H */