# open_oled_menu_control **Repository Path**: angelyhch/stm32_oled_menu_control ## Basic Information - **Project Name**: open_oled_menu_control - **Description**: 基于stm32c8t6,通过0.96寸oled屏幕显示的菜单命令,控制各种动作交互。 项目已经把菜单配置和对应的控制函数架构写好,只要配置好对应的菜单名称,写好对应菜单需要控制的函数,就可以实现菜单交互控制的功能。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: develop_01 - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-07-02 - **Last Updated**: 2025-08-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #### STM32 OLED 菜单控制程序框架 - 基于stm32c8t6,通过0.96寸oled屏幕显示的菜单命令,控制各种动作交互。项目已经把菜单配置和对应的控制函数架构写好,只要配置好对应的菜单名称,写好对应菜单需要控制的函数,就可以实现菜单交互控制的功能。 #### 项目基本使用 - 项目交流可联系up微信:`angelyhch` - ##### 项目面向人群 - 该项目面向的是有一定的嵌入式开发基础的人群,备一定嵌入式C语言基础,**能够完成点亮LED灯,按键控制,传感器输入等简单小demo**; - 想自己做一些小项目,但是项目的用户交互欠缺,还需要专门为用户准备使用手册,用户学习成本高,项目实用价值不高; - 项目的用户交互功能复杂,个人尝试实现困难大,自己实现很困难; - ##### 项目简介 - 本项目提供oled菜单框架,菜单与命令功能通过配置自动绑定以快速实现用户交互; - 菜单自动配置,只要写好菜单id号,自动生成菜单父子关系; - 菜单操作功能有:向上,向下,退出,进入 - 每个菜单对应的指令可以自行配置 - ##### 前置技能 - 会使用keil5进行开发 - 会使用GIT进行项目代码管理(clone,branch,checkout,pull,或者会用git可视化工具完成相应功能) - 会使用STM32CubeMX进行项目配置(如果简单扩展可以不用) - freertos基本使用(如果简单扩展可以不用,后面会专题讲解如何在当前freertos框架下扩展自己的功能) - ##### 准备工具 - 安装keil5 - 安装GIT - 安装STM32CubeMX(自定义配置时需) - vscode(up用来编写代码用,看个人喜好) - stm32c8t6最小系统板套装 - stm32c8t6核心板 - 面包板 - 杜邦线 - stlinkv2 - 0.96寸oled - led - 按键 - USB串口转接口 - ##### 项目下载及运行 - 下载项目 - 项目仓库地址 - https://gitee.com/angelyhch/stm32_oled_menu_control - https://github.com/angelyhch/stm32_oled_menu_control - 从GIT上clone项目(不要直接下载zip包) - checkout 示例分支`chapter02_20250706视频录制时分支,后续可以根据实际情况checkout对应的分支` - git checkout chapter02_20250706 - 用keil5打开项目中MDK下的工程文件 - 编译项目 - ##### 项目运行 - 硬件接线 - 下载程序 - 查看运行效果 - ##### 项目快速修改 - 注释原先的oled菜单配置函数以及对应的回调函数 - 根据菜单需求,写好菜单的id号以及对应菜单名称 - 需要执行命令的菜单,提前写好命令函数 - 把命令函数配置到对应的菜单结构体中# 项目基本使用