# cckey **Repository Path**: FlechazoCLF/cckey ## Basic Information - **Project Name**: cckey - **Description**: 一个超级舒适的按键触发,以及调用按键回调的框架! - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-09-25 - **Last Updated**: 2025-06-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ```markdown # SmartSofa 控制系统 这是一个基于 STM32F103 系列微控制器的智能沙发控制系统,用于管理沙发的各种功能,包括按键控制、LED 指示灯、电机控制、定时器、Flash 存储、电源管理等。 ## 项目结构 - **Libraries/CMSIS** 包含 ARM Cortex-M3 内核支持文件和启动文件,用于底层硬件操作。 - **Libraries/FWlib** STM32F10x 标准外设驱动库,提供对 ADC、CAN、GPIO、I2C、SPI、TIM、USART 等外设的封装函数。 - **User/App** 应用层模块,包含: - **App_Init.c/h**:系统初始化模块。 - **App_ModeManagement**:模式管理模块。 - **App_Task**:任务调度模块。 - **App_Key**:按键事件处理模块。 - **App_Led**:LED 控制模块。 - **App_Motor**:电机控制模块。 - **User/Bsp** 板级支持包(BSP),包含: - **Bsp_Init**:硬件初始化。 - **Bsp_Gpio**:通用输入输出控制。 - **Bsp_Key**:按键检测与处理。 - **Bsp_Led**:LED 驱动。 - **Bsp_Motor**:电机控制接口。 - **Bsp_Timer**:定时器管理。 - **Bsp_Flash**:Flash 存储读写。 - **Bsp_Pvd**:电源电压检测。 - **User/Cfg** 系统配置文件,定义全局结构体和配置参数。 - **User/Components/Debug** 调试模块,用于日志输出和调试信息处理。 - **main.c** 程序入口,调用系统初始化并进入主循环。 ## 功能模块说明 ### 按键控制 (App_Key) - 支持单击、双击、长按三种触发方式。 - 可配置按键映射和回调函数。 - 支持多个物理按键(如 trunk、drawer、lamp 等)。 ### LED 控制 (App_Led) - 支持亮度调节、颜色切换、呼吸灯效果。 - 支持运行时状态控制和模式切换。 ### 电机控制 (App_Motor) - 支持电机启停控制。 - 支持传感器反馈状态检测。 - 支持按键触发电机动作。 ### 定时器 (Bsp_Timer) - 提供毫秒级和秒级定时功能。 - 支持超时检测。 ### Flash 存储 (Bsp_Flash) - 提供 Flash 读写接口。 - 支持数据校验和存储管理。 ### 电源管理 (Bsp_Pvd) - 支持低电压检测。 - 提供低功耗回调函数。 ## 编译与调试 本项目使用 Keil MDK 开发环境进行编译和调试。主要配置文件包括: - **smartsofa.uvprojx**:Keil 工程文件。 - **smartsofa.sct**:链接脚本。 - **startup_stm32f10x_*.s**:启动文件。 ## 开发环境 - **IDE**: Keil MDK-ARM - **MCU**: STM32F103RC - **编译器**: ARMCC 或 GCC(根据配置) ## 许可证 本项目采用 MIT License,请参阅 LICENSE 文件了解详细条款。 ```