接入温湿度风扇产品固件(仲裁/条件/定时/显示),并补齐规格书与外设驱动
新增 usr_app 产品逻辑:手动>定时>条件仲裁、条件控温湿、定时任务、数码管显示、 按键/LED、风扇档位、NVM 掉电恢复、配对与开关机,上电按规格恢复上次状态。 新增 usr_periph:AHT20、CT1642、板级引脚与硬件封装;见宝协议 cond_config 改为 7 字节编解码,并接入产品 DP。 补充《温湿度风扇_固件需求规格书》,工程加入对应源文件。 .gitignore 忽略 WorkBuddy/Cursor 本地会话
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
/******************************************************************************
|
||||
* @file bsp_ct1642.h
|
||||
* @brief CBR3 CT1642 类数码管驱动:18bit 移位、锁存、送出
|
||||
* @author cyWu <1917507415@qq.com>
|
||||
* @date 2026.08.29
|
||||
* @version V1.0.1
|
||||
* @history
|
||||
* - V1.0.0, 2026.08.29, cyWu, 首次发布
|
||||
* - V1.0.1, 2026.08.29, cyWu, IO 分离:CT1642 独立 PG0=CLK/PG1=DATA(飞线),
|
||||
* AHT20 独占 PC4/PC5,删除 bsp_bus 共线机制;删调试遗留
|
||||
* latch/show4/scan_seg/scan_com,新增 bsp_ct1642_init()
|
||||
*
|
||||
* @note PG0=CLK,PG1=DATA,独立引脚、无总线锁,可随时调用。
|
||||
* 协议:一帧 18bit(C1-C4 位选 + 6 位保留 + Q2-Q9 段码),CLK 上升沿采样
|
||||
* DATA(DATA 只在 CLK=低时改变);发完 CLK=高 时 DATA 上升沿=锁存,
|
||||
* CLK=低 时 DATA 上升沿=输出刷新。
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef __BSP_CT1642_H__
|
||||
#define __BSP_CT1642_H__
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/**
|
||||
* @brief 初始化 PG0/PG1 为推挽输出(CLK/DATA 初始 0)
|
||||
* @note app_disp_init() 内调用;被 BOARD_DISP_ENABLE 编译开关保护
|
||||
* @return 无
|
||||
*/
|
||||
void bsp_ct1642_init(void);
|
||||
|
||||
/**
|
||||
* @brief 7 段数码管数字转段码(共阴,A=bit0 ... G=bit6,DP=bit7)
|
||||
* @param digit 0~9;10='-'(G 段);11=全灭
|
||||
* @return 段码
|
||||
*/
|
||||
uint8_t bsp_ct1642_seg(uint8_t digit);
|
||||
|
||||
/**
|
||||
* @brief 发一帧刷新一位:18bit(C1-C4 位选 + 6 保留 + Q2-Q9 段码,LSB 先)
|
||||
* @param seg 段码(bit7=DP ... bit0=A,先发 bit0→Q2)
|
||||
* @param com COM 位选掩码(bit3=C4 ... bit0=C1,仅 1 位置位;硬件低有效内部取反)
|
||||
* @return 无
|
||||
*/
|
||||
void bsp_ct1642_send_frame(uint8_t seg, uint8_t com);
|
||||
|
||||
#endif /* __BSP_CT1642_H__ */
|
||||
Reference in New Issue
Block a user