附件为LED位选电路,现在就是选中第一位的时候,第二位的对应段码也会有对应微微亮光,两位扫描显示的时候,第一位会有第二位对应段码的微微亮光,第二位会有第一位对应段码的微微亮光,请问有哪位老玩家知道是什么原因造成的吗,有什么办法来避免吗(我感觉应该是硬件电路的问题但不晓得是哪里,软件程序有消隐)


附件为LED位选电路,现在就是选中第一位的时候,第二位的对应段码也会有对应微微亮光,两位扫描显示的时候,第一位会有第二位对应段码的微微亮光,第二位会有第一位对应段码的微微亮光,请问有哪位老玩家知道是什么原因造成的吗,有什么办法来避免吗(我感觉应该是硬件电路的问题但不晓得是哪里,软件程序有消隐)


下午好🌅🌅🌅
本答案参考通义千问
你描述的问题是关于 LED位选显示 中出现的“残影”或“段码交叉点亮”的现象,这在 多路扫描显示(如数码管、LED点阵等) 中是比较常见的问题。根据你的描述,软件已经做了消隐处理(即在扫描时关闭非选中位的段码),但仍然存在“残影”,说明问题很可能出在 硬件电路设计 上。
// 假设位选控制为GPIOA
void disable_all_digits() {
GPIOA->ODR &= ~(BIT0 | BIT1 | BIT2 | BIT3); // 关闭所有位选
}
void scan_digit(uint8_t digit_index) {
// 先关闭所有段码
clear_segment();
// 延时一段时间(例如50ns)
delay_us(50);
// 打开当前位选
enable_digit(digit_index);
// 设置段码
set_segment(current_segment_data);
}
| 改进项 | 说明 | |--------|------| | 位选电路增加三极管或MOSFET驱动 | 防止信号源无法完全拉低位选信号 | | 段码和位选信号分开布线 | 减少信号干扰 | | 使用RC滤波或隔离电阻 | 防止信号串扰 | | 增加LED阴极接地 | 避免共阳极设计导致的残影 |
你遇到的残影问题主要可能是由于位选信号未完全断开或段码信号与位选信号之间存在干扰。
如果你能提供具体的电路图或代码片段,我可以进一步帮你分析具体问题所在。