MiaoUI/README.md

29 lines
1.4 KiB
Markdown
Raw Normal View History

2023-11-29 10:04:40 +00:00
# MultMenu
2024-04-06 18:31:40 +00:00
这是一个用于单色OLED屏幕的单片机多级菜单采用双向链表结构移植方便、在容量足够的情况下可无限扩展。
2024-04-11 15:58:00 +00:00
- 菜单支持类型有:
2024-06-21 14:24:29 +00:00
1. PARENTS内含子菜单项
2. LOOP_FUNCTION循环运行某项功能
3. ONCE_FUNCTION 单次运行某项功能
4. SWITCH开关型
5. DATA可调参数型
6. RETURN: 用于上级返回
2024-06-21 05:52:28 +00:00
- 全局使用非线性动画类PID控制器
2024-04-11 16:00:11 +00:00
在菜单数据结构上参考开源项目https://github.com/morepray/MorepUI
2024-04-06 18:31:40 +00:00
# 移植准备
2024-06-21 14:24:29 +00:00
- 在menuConfig.h中配置你的屏幕分辨率与菜单字体。
2024-06-21 05:52:28 +00:00
- 往dispDirver.c中替换你的屏幕驱动亦可使用example中的移植的u8g2库。
2024-04-11 15:58:45 +00:00
- 需在Menu_State BtnScan(void)函数中放入按键扫描程序。
2024-06-21 05:52:28 +00:00
- 在新增菜单项时应在menu.c中定义菜单所在页面(page)和菜单项(item)然后在Craete_MenuTree中通过AddPage、AddItem加入。
- 建立一个xMenu类型的全局结构体
- 最后将Menu_Init和Menu_Loop放入你的程序中。
2024-04-06 18:31:40 +00:00
# Example
基于STM32F103C8T6使用硬件I2C2驱动0.96寸OLED(SSD1306),按键为串口虚拟按键
其中:
2024-04-21 08:09:27 +00:00
- 0x01为上移按键
- 0x02为下移按键
- 0x03为确认按键
2024-04-06 18:31:40 +00:00
# 效果如下
2024-03-31 15:39:32 +00:00
![image](https://github.com/JFeng-Z/MultMenu/blob/master/Image/img1.png)
![image](https://github.com/JFeng-Z/MultMenu/blob/master/Image/img2.png)
2024-06-21 06:44:09 +00:00
- 视频演示地址https://b23.tv/TOwmuKL