流水灯
#include <intrins.h> // 后面要用到它里面的_crol_(k ,l) 函数:把一个字符变量k循环左移l位,详见安装 KEIL目录下的\Keil\C51\HLP文件夹里面的c51lib(有各种用C语言封装好的函数库)
单键识别
按键识别去抖动的原理:由于机械抖动或其它一些非人为的因素很有可能造成误识别,一般手动按下一次键然后接着释放,按键两片金属膜接触的时间大约为50ms左右,在按下瞬间到稳定的时间为5-10ms,在松开的瞬间到稳定的时间也为5-10ms,如果我们在首次检测到键被按下后延时10ms左右再去检测,这时如果是干扰信号将不会被检测到,如果确实是有键被按下,则可确认
矩阵键盘检测
一般的数码管每一段亮至少需要 10 个毫安的电流,而单片机的 IO 口送不出如此大的电流,所以需要加数码管的驱动电路,可以用上拉电阻的方法,也可以使用专门的驱动芯片。
共阴极: