目录
1.硬件设计
2.软件设计
2.1.独立按键控制LED闪烁
2.2.独立按键控制LED状态
2.3.独立按键控制LED显示二进制
2.4.独立按键控制LED移位
3.知识点
3.1.if语句的运用
3.2.常用运算符
1.硬件设计
轻触按键:相当于是一种电子开关,按下时开关接通,松开时开关断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通和断开;原理图如下:
2.软件设计
2.1.独立按键控制LED闪烁
功能需求:按下按键,LED点亮;松开按键,LED熄灭;可单个按键控制,也可多个按键控制
程序设计:分析原理图,确定要通过控制哪个按键去决定LED亮灭;单个按键K1,控制LED亮灭的程序如下:
逻辑与的应用:多个按键同时按下,LED灯才能点亮(逻辑与“&&”);如K1,k2同时按下,LED点亮
逻辑或的应用:多个按键,只要有一个按下,LED点亮(逻辑或“||”);如K1,k2,k3,k4四个按键,只要有一个按下,LED点亮
2.2.独立按键控制LED状态
功能需求:按位取反~,按一下LED点亮,再按一下LED熄灭
硬件分析:对于机械开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开,所以在开关闭合及断开的瞬间会伴随一连串的抖动
程序设计:分析原理图,选择按键,考虑消抖,检测松手;如单个按键K1,控制LED的程序如下:
2.3.独立按键控制LED显示二进制
功能需求:独立按键控制LED显示二进制,从0000 0000–>1111 1111;按一次,进一位
程序设计:在2.2基础上优化,保留按键消抖的延时代码,增加无符 字符LEDNum的定义,因要考虑按一次,进一位,所以需增加算数运算符“+”的使用
注意:在后面定义的函数,如果要调用,必须在main函数前面进行申明,如下程序中的Delay函数
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!