以控制,每个按键的制作工艺不同,抖动程度难以准确判断。Р逻辑方式去除毛刺。通过D触发器的级联传递原理设计,触发器数目越多,延时效果越好。Р定时方式去除毛刺。对高电平和低电平脉宽计数,达到设定数目值,才判断为高/低电平。Р 本设计采用5/2的倍频输入,经过延时程序,提高精度,延时效果明显,使用成熟。Р3.2.2 引脚分配Р 表3.2.1 消抖输入输出信号分配列表Р输入信号Р输出信号Р代码Р名称Р引脚Р代码Р名称Р引脚РclkР时钟输入РPIN22Рtemp1Р1元投币有效指示信号РPIN10Рtemp2Р0.5元投币有效指示信号РPIN11Рtemp3Р复位有效指示信号РPIN7Р3.2.3顶层封装图Р Р 图3.2.1 5/2倍频的分频器Р Р 图3.2.2 延时消抖顶层封装Р3.3 输出及显示模块Р3.3.1蜂鸣器Р 执行整个程序的时间很短,远远小于时钟周期,所以,程序运行原理:每有个上升沿到来,程序就从上到下执行一次。Р蜂鸣器的发生可用过软件实现,也可以用分频器的方式直接实现,不需要程序编写。纯软件实现发生,人能听到的频率300HZ--20KHZ,取2KHZ,10000=20*1000000/2000。Р Р Р 图3.3.1蜂鸣器发声驱动程序顶层封装Р 表3.3.1 蜂鸣器输入输出信号分配列表Р输入信号Р输出信号Р代码Р名称Р引脚Р代码Р名称Р引脚РclkР时钟输入РPIN22РpР蜂鸣器激励信号РPIN143РresetР系统复位信号РPIN64Р3.3.2数码管Р应用CycloneⅢ开发板自带数码管显示。币值显示使用(LCDA,LCDB),这两个数码管是直接通过4位二进制BCD码控制,在程序编写时直接给其赋值即可,每个数码管只需绑定4个引脚即可。找零显示使用(LCDC),这个数码管是七段式普通控制,需要分别对a,b,c,d,e,f,g,h进行绑定。高电平有效发光。