【05】按键切换小灯状态
本课资源下载
共 3 个资源课程笔记
本节目标概括
创建工程 > 消抖的实现 > 消抖后反转小灯 >现象展示
通过学习板上的按键控制LED的亮灭,编译并下载程序到学习板,即可看到程序效果:
- 按一下 KEY41,L0亮/灭翻转一次
1.创建工程
创建新工程 "P05按键切换小灯状态",并添加 main.c文件。
2. 编写代码按键控制小灯代码
按键按下和松开的瞬间都会产生一些电平抖动,单片机可能误解为多次按下与松开,因而我们可以通过短暂延时的方式,避开抖动。
避过抖动后再判断按键电平状态,如果是按下状态,则认为是一次正常的按下,如果是松开状态,则认为是由于松开时的抖动引起的触发,不予理睬。
main.c
C语言1#include <STC89C5xRC.H>23int main(){4 while(1){5 if(P24 == 0){6 Delay20ms(); // 消抖 等待抖动消失7 if(P24 == 0){8 P00 = !P00;9 while(P24 == 0);10 }11 }12 }13}