美文网首页
12 独立按键

12 独立按键

作者: aaa小菜鸡 | 来源:发表于2018-03-25 21:54 被阅读0次

单片机STC89C52学习——12 独立按键

汇总:00 单片机STC89C52学习
参考教程:普中科技

1 工作原理

1.1 按键介绍

轻触开关是一种电子开关,按下则开关导通,松开则开关断开。距离长的初始导通,距离短的初始不导通,按下后相反。

例如,1接P20,2接GND,按下后拉低单片机管脚。

1.2 独立按键原理

单片机管脚与GND是距离长的,初始不导通,按下导通。(图中,TXD是P30,RXD是P31)

原理图 单片机管脚内部结构:单片机内部输出1,管脚输出1;单片机内部输出0,管脚输出0。P0要接外部上拉电阻因为本身为开漏电路,P1、P2、P3也接外部上拉电阻为了提高驱动能力 准双向IO口结构图 按键在闭合和断开时,触点会存在抖动现象:软件进行消抖处理(按下时延时10ms),或硬件设计消抖电路(利用RC充放电延时时间控制,一个按键就要加电阻、电容,数量多则成本高) 抖动现象 硬件消抖电路

2 程序:独立按键——K1控制LED指示灯翻转

#include "reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;

sbit led = P2^0;// D1
sbit k1 = P3^1;// K1

void delay (u16 i)
{
    while (i --);
}

void key()
{
    if (k1 == 0)// 判断是否按下
    {
        delay(1000);// 约10ms,简单的消抖方法
        if (k1 == 0)// 再判断一次
        {
            led = ~led;
        }
        while (!k1);// 直到松开按键才继续,不过一直要判断,很占CPU  
    }
}

void main()
{
    while (1)
    {
        key();
    }
}

效果:按下K1,LED1状态翻转。但若以较短时间间隔连续按下两次,有时第二下没反应。

相关文章

  • 12 独立按键

    单片机STC89C52学习——12 独立按键 汇总:00 单片机STC89C52学习参考教程:普中科技 1 工作原...

  • 51单片机按键的使用

    一,按键的分类 1.1 我们常用的按键电路有独立按键和矩阵按键俩种形式,独立按键比较简单,他们各自与独立...

  • 按键

    独立按键 复杂的按键程序 按键复用 矩阵键盘 应用编码器74ls148

  • 按键扫描-独立按键与矩阵按键

    按键介绍 我们通常提到按键,一般是指按键开关,也称为轻触开关。轻触开关是最常用的几种电子元器件之一,被各种电子产品...

  • 2018-05-14 独立按键移植小板实验

    独立按键移植小板实验 教育学部电教本1601柳珏玺 201612030101 一、单片机的使用: 使用小板独立按键...

  • 实验二-沈正浩-2014

    独立按键实验 一、实验目的 把大板上的独立按键移植到小板上。 二、实验器材 keil软件,普中科技烧录软件,实验板...

  • 实验二 独立按键

    一、实验目的 把大板上的独立按键移植到小板上。 二、实验器材 keil软件,普中科技烧录软件,实验板(小板) 三、...

  • 实验二 孙金云 0220 将按键加一4位显序移植到小板上

    一、实验目的 了解大板单片机与小板单片机的区别; 掌握独立按键的设计原理; 通过改写大板上独立按键实验的代码,在小...

  • 实验二 ---张欣 ---0212(独立按键大板移植到小板)

    实验目的: 1.明确大板和小板的区别 2.修改大板独立按键代码,移植到小板上,实现在小板上独立按键加一 实验步骤:...

  • 51单片机之独立键盘,准双向IO口

    独立键盘工作原理 编程思路:将独立按键连接的IO口设为高电平,持续检查该IO口电平。若按键按下,IO口电平会被拉低...

网友评论

      本文标题:12 独立按键

      本文链接:https://www.haomeiwen.com/subject/clpkcftx.html