差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
verilog_debounce [2022/04/26 13:42] gongyusu [开关防抖项目] |
verilog_debounce [2022/04/26 13:47] (当前版本) gongyusu |
||
---|---|---|---|
行 1: | 行 1: | ||
##消抖 | ##消抖 | ||
- | [[https://www.fpga4fun.com/Debouncer.html|Debouncer]]\\ | + | 翻译自:[[https://www.fpga4fun.com/Debouncer.html|Debouncer]]\\ |
- | \\ | + | |
- | 假设您要将机械开关连接到FPGA。\\ | ||
- | 您可能会遇到麻烦。\\ | ||
- | \\ | ||
- | 我们在这里按了十次按钮... | ||
- | {{ ::count1.jpg |}} | ||
- | |||
- | |||
- | ###开关防抖项目 | ||
我们将一个开关连接到FPGA上,连接方式如下图: | 我们将一个开关连接到FPGA上,连接方式如下图: | ||
{{ ::debounce.gif |}} | {{ ::debounce.gif |}} | ||
行 71: | 行 62: | ||
</code> | </code> | ||
- | 我们使用了一个16位计数器。如果使用20MHz的系统时钟,则需要3ms才能达到最大值。从用户的角度来看,3ms是瞬时的。但毛刺已经消失了。根据你的按钮的毛刺程度和你的系统时钟速度,你可能需要调整计数器的宽度。 | + | 我们使用了一个16位计数器。如果使用20MHz的系统时钟,则需要3ms才能达到最大值。从用户的角度来看,3ms是很短暂的,但毛刺已经消失了。根据你的按钮的毛刺程度和你的系统时钟速度,你可能需要调整计数器的宽度。 |
- | ####链接 | ||
- | * [[http://www.ganssle.com/debouncing.pdf|防弹跳指南]] |