PSoC® Creator™ 组件技术资料 防抖动 1.0 特性 消除数字信号输入线上的有害振动 概述 在建立稳定的状态之前,机械开关和延迟易于在有限的时间内建立和断开连接。在此建立时间 内,当开关触点在连接或断开条件之间反跳时,数字电路会出现多次切换。 防反跳器组件从反跳触点中获取输入信号,并生成数字电路的清晰输出。组件将不会把此信号传 送至输出,直至设定了开关反跳的预定时期。这样,电路将仅响应通过按下或释放开关实现的一 次脉冲生成,而不是由触点反跳导致的多次状态转换。 有关开关防抖动的更多详细信息,请参见应用笔记 AN60024。 何时使用防抖动 防抖动组件可用于防止大部分类型开关的输入数字信号抖动。由于此组件可实现大量可由固件实 现的工作,因此可在基于固件的开关防抖动解决方案不实用时使用此组件。 输入/输出连接 本节说明防抖动组件的输入和输出连接。I/O 列表中的星号 (*) 表示,在 I/O 说明中列出的情况 下,该 I/O 可能不可见。 d - 输入 被采样的输入。此输入通常连接至输入引脚组件。 Cypress Semiconductor Corporation • 198 Champion Court Document Number: 001- 84792 Rev. *B • San Jose, CA 95134-1709 • 408-943-2600 Revised November 30, 2015 防抖动 PSoC® Creator™ 组件数据手册 时钟 — 输入 用于对 ‘d’ 输入进行采样的时钟。其频率取决于预期的信号跃变时间。此频率必须足够高,以使系 统可快速响应,但在输入转换期间必须足够低,以在此期间仅采样一次。10 到 200 Hz 之间的时 钟可满足要求。 q — 输出 滤波输出值。每个时钟上升沿的“d”输入的采样值。 pos - 输出* 上升沿。此输出在检测到上升沿之后的一个时钟周期内为高电平,并保持高电平一个时钟周期的 时间。如果选择了 Edge type (边沿类型)参数下的 Positive edge (上升沿),则显示此 输出。 neg - 输出* 下降沿。此输出在检测到下降沿之后的一个时钟周期内为高电平,并保持高电平一个时钟周期的 时间。如果选择了 Edge type (边沿类型)参数下的 Negative edge (下降沿),则显示此输 出。 either - 输出* 任一边沿。此输出在检测到上升沿或下降沿后的一个时钟周期为高电平,并保持高电平一个时钟 周期的时间。如果选择了 Edge type (边沿类型)参数下的 Eigther edge (任一边沿),则显 示此输出。 Page 2 of 6 Document Number: 001- 84792 Rev. *B PSoC® Creator™ 组件数据手册 防抖动 组件参数 将防抖动组件拖到您的设计上,并双击它以打开 Configure(配置)对话框。 Signal Width(信号宽度) 此参数配置将被过滤的信号宽度。此值可以设置为 从1 到 32。默认设置为 1 bit(1 位)。 Edge Type(边沿类型) 确定是否对组件启用“pos”、“neg”和/或“either”边沿检测。默认情况下,将启用所有边沿 检测。 时钟选择 此组件中没有内部时钟。您必须附加时钟源。此组件根据连接到组件的单时钟进行操作。 固件源代码示例 PSoC Creator 在“查找示例项目”对话框中提供了很多包括原理图和代码示例的示例项目。要获 取组件特定的示例,请打开组件目录中的对话框或原理图中的组件实例。要获取通用的示例,请 打开 Start Page(开始页)或 File(文件)菜单中的对话框。根据需要,使用对话框中的 Filter Options(筛选选项)可缩小可选项目的列表。 有关更多信息,请参见 PSoC Creator 帮助中的“Find Example Project(查找示例项目)” 主题。 Document Number: 001- 84792 Rev. *B Page 3 of 6 PSoC® Creator™ 组件数据手册 防抖动 功能描述 防抖动组件提供一个硬件方法,用于消除因开关和继电器的触点接触或释放时产生的输入数字信 号跃变时发生的震荡。图 1 显示了典型的开关防反跳操作。 采样周期 (tCLOCK) 由预期的开关反跳时间 (tBOUNCE) 设置,此反跳时间是在打开或关闭开关时信号 在新状态稳定下来所花的时间。在跳变期间,信号的状态基本是未知的 - 在此周期内的任何时间 都可能是 0 或 1。在此周期内不可采样超过一次,否则您会检测到额外的切换。 注意,从输入跳变到输出信号(tPD_POS、tPD_NEG 和 tPD_EITHER)之一的边沿检测的延时介于 1 到 2 个采样周期之间。“q”输出是“d”输入的采样值。 图 1. 时序图 tCLOCK clock tBOUNCE d tPD_Q q tPD_POS pos tPD_NEG neg tPD_EITHER either 框图和配置 N 位防抖动等同于 N 个 1 位防抖动。此实现使用一个或多个 UDB 的 PLD。图 2 显示了 1 位 防抖动的电路。 输入时钟用于对开关输入“d”进行采样。如上文所述,每秒 10 到 200 个样本的时钟频率通常是 适合的。第一个 DFF 用于对开关输入进行采样。第二个 DFF 存储上一个样本,逻辑门用于实施 边沿检测。 Page 4 of 6 Document Number: 001- 84792 Rev. *B PSoC® Creator™ 组件数据手册 防抖动 图 2. 框图 q d D Q D Q D Q either D Q neg D Q pos clock 资源 防抖动组件位于一个或多个 UDB 的 PLD 中。此组件的最大配置是每个输入信号位使用五个宏 单元。 直流和交流电气特性 除非另有说明,否则这些规范的适用条件是 -40 °C ≤ TA ≤ 85 °C 且 TJ ≤ 100 °C。除非另有说 明,否则这些规范的适用范围为 1.71 V 到 5.5 V。 交流特性 参数 fCLOCK 说明 组件时钟频率 Document Number: 001- 84792 Rev. *B 最小值 典型值 最大值 单位 − 200 − Hz Page 5 of 6 PSoC® Creator™ 组件数据手册 防抖动 组件更改 本节介绍组件与以前版本相比的主要更改。 版本 更改说明 1.0.a 已在“功能说明”章节中添加时序图。已更新组件的 框图。 1.0 版本 1.0 是防抖动组件的首次发行版。 更改/影响原因 组件操作的说明。 © 赛普拉斯半导体公司,2012-2015。此处所包含的信息可能会随时更改,恕不另行通知。除赛普拉斯产品的内嵌电路之外,赛普拉斯半导体公司不对任何其他电路的使用承担任何责任。也不根据 专利或其他权利以明示或暗示的方式授予任何许可。除非与赛普拉斯签订明确的书面协议,否则赛普拉斯产品不保证能够用于或适用于医疗、生命支持、救生、关键控制或安全应用领域。此外, 对于可能发生运转异常和故障并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此类系统的关键组件。若将赛普拉斯产品用于生命支持系统中,则表示制造商将承担因此类使 用而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。 PSoC® 是赛普拉斯半导体公司的注册商标,PSoC Creator™ 和 Programmable System-on-Chip™ 是赛普拉斯半导体公司的商标。此处引用的所有其他商标或注册商标归其各自所有者所有。 所有源代码(软件和/或固件)均归赛普拉斯半导体公司(赛普拉斯)所有,并受全球专利法规(美国和美国以外的专利法规)、美国版权法以及国际条约规定的保护和约束。赛普拉斯据此向获许 可者授予适用于个人的、非独占性、不可转让的许可,用以复制、使用、修改、创建赛普拉斯源代码的派生作品、编译赛普拉斯源代码和派生作品,并且其目的只能是创建自定义软件和/或固件, 以支持获许可者仅将其获得的产品依照适用协议规定的方式与赛普拉斯集成电路配合使用。除上述指定的用途之外,未经赛普拉斯的明确书面许可,不得对此类源代码进行任何复制、修改、 转换、编译或演示。 免责声明:赛普拉斯不针对此材料提供任何类型的明示或暗示保证,包括(但不仅限于)针对特定用途的适销性和适用性的暗示保证。赛普拉斯保留在不做出通知的情况下对此处所述材料进行更 改的权利。赛普拉斯不对此处所述之任何产品或电路的应用或使用承担任何责任。对于可能发生运转异常和故障并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此类系统的 关键组件。若将赛普拉斯产品用于生命支持系统中,则表示制造商将承担因此类使用而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。 产品使用可能受适用的赛普拉斯软件许可协议限制。 Page 6 of 6 Document Number: 001- 84792 Rev. *B