EDA365电子论坛网
标题:
关于单片机的问题
[打印本页]
作者:
kajchild
时间:
2020-6-30 17:22
标题:
关于单片机的问题
小白求助,51单片机按下k1键,实现单片机状态改变,以上功能失效,改为以下功能。 如何实现?
) R! s; Q+ f/ p5 F% O/ [
作者:
ekhehnv
时间:
2020-6-30 17:39
可以使用定时中断,定时中断的时间做的小点20ms,在中断程序中检测按键:
# R, p+ P( G! p8 Y6 y) J
if(按钮 == 被按下)
! s7 l, `2 y4 s' P# s7 n
{
6 v" O) ]7 e9 c" F
工作输出 = 工作状态;
j/ _( T" u7 k4 |, y- h- Z
设置状态变量(供下次改变用);
( _9 n; j! N! J" M* n
}
^ C. i I: {. X. ]7 S
如果需要去抖就在中断中加个变量,每次中断都加一,检测变量值为2说明这期间都被按下
作者:
djidsebjdhsD
时间:
2020-6-30 18:27
使用外部中断引脚
5 `/ F: v" ]& t
按钮触发中断,中断程序来改变工作状态
作者:
ByElmer1
时间:
2020-6-30 18:28
定时器中断中有一个定时变量
$ w* y& ~0 y; o- C& [
主程序中检测定时变量,当时间到则执行检测按键的程序,检测到按下则改变工作状态
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2