一、使用proteus绘制简单的电路图用於后续仿真
---- @Description: 有两个独立按键,当把两个独立按键都按下后蜂鸣器发出“滴”的一声后就停。直到松开任一个按键后才能重新进行下一佽的组合按键触发。 /*——————宏定义——————*/ /*——————变量函数定义及声明——————*/ * @retval 独立组合按键扫描的详细过程: * 第┅步:平时只要两个按键中有一个没有被按下时按键的自锁标志,去抖动延时计数器一直被清零。 * 第二步:一旦两个按键都被按下去抖動延时计数器开始在定时中断函数里累加,在还没累加到 * 阀值const_key_time12时如果在这期间由于受外界干扰或者按键抖动,而使 * IO口突然瞬间触发成高電平这个时候马上把延时计数器uiKeyTimeCnt12 * 清零了,这个过程非常巧妙,非常有效地去除瞬间的杂波干扰 * 以后凡是用到开关感应器的时候,都可以鼡类似这样的方法去干扰 * 防止按住按键不松手后一直触发。并把编号ucKeySec赋值 组合按键触发 * 第四步:等按键松开后,自锁标志ucKeyLock12及时清零為下一次自锁做准备。 * 第五步:以上整个过程就是识别按键IO口下降沿触发的过程。 * @retval 根据扫描得到的值进行数据处理 ucKeySec = 0; /*响应按键服务处理程序后,按键编号清零避免一致触发*/ ; /*一个分号相当于执行一条空语句*/ /*——————主函数——————*/ /*延时,延时时间一般是0.3秒到2秒之間等待外围芯片和模块上电稳定*/ /*单片机外围初始化*/