在51单片机的前面的文章中,我们主要讲述了单片机IO口的输出功能的应用,如LED控制、数码管控制等。这篇文章我们来讲解如何用单片机的IO口读取按键的状态,并根据按键的状态来控制LED。关于51单片机按键输入功能的介绍可以参考文章《51单片机(二十四)—— 独立按键工作原理》

在本文中,实例的代码如下所示。

#define KEY  P2  //定义按键输入端口
#define LED  P0  //定义LED输出端口/********************************************************************/
/*                              主函数                              */
/********************************************************************/
void main (void)
{KEY=0xff; //按键输入端口电平置高for(;;)         //主循环{LED=KEY;}
}

代码很简单,主要代码只有for循环中的一行LED=KEY; 这一句代码的作用是将KEY的值赋值给LED。由程序的宏定义可知,KEY是P2,它是与独立按键连接的8个IO口的寄存器。LED是P0,它是与LED连接的8个IO口的寄存器。当某个独立按键按下时,则P2对应的IO口的电平状态被拉低,输入为0,当松开按键时,输入为1,在for循环中,将P2的值赋值给P0,当按键按下时,控制LED的IO口输出为0,则相应的LED点亮。松开按键时,控制LED的IO口输出为1,则相应的LED熄灭。由于赋值代码在for循环中,则LED的状态会实时更新。

51单片机(二十五)—— 独立按键控制LED相关推荐

  1. 51单片机(三)独立按键控制LED

    ❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分:建议先学习51单片机,其是STM32等高级单片机的基础:这样再学习STM32时才能融会贯通. ☀️ 专栏适 ...

  2. 51单片机入门教程_独立按键控制系列

    一.老规矩 先上代码 #include <REGX52.H>void main() {while(1){if(P3_1==0 || P3_0==0) //如果K1按键或K2按键按下{P2_ ...

  3. 51 单片机 (1) I/O口 按键控制LED之P0口排坑篇

    实验内容 此次实验为利用单片机读取开关的状态从而控制LED的亮灭. 实验环境 仿真软件 Protue 8.9 sp2 IDE Keil5 C51 单片机 AT89C51 Protues仿真图 所用器件 ...

  4. 单片机IO口应用-独立按键控制LED以及控制LED灯闪烁

    目录 P1=0xdf: sbit LED=P1^5; 输出控制 P1并行口第5位引脚IO置为1 P1并行口第5位引脚IO置为0 输入检测 延时函数 控制LED灯闪烁 方法一 方法二 方法三 P1=0x ...

  5. 51单片机-独立按键控制LED

    1.   51单片机独立按键的位置: 独立按键的定义:独立按键相当于一种电子开关,按下时开关接通,松开时开关断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通和断开: 在整个51开发板的左下 ...

  6. 51单片机 4个独立按键控制LED灯 (protues仿真)(C语言版)

    51单片机 4个独立按键控制LED灯 仿真操作及代码展示 _ (protues仿真)_(C语言版) 一.思路及相关问题 1.逻辑思路: 当按下key1时 led1亮起来 因为按下去具有瞬时性不用whi ...

  7. 51单片机入门学习------独立按键控制LED亮灭

    一.独立按键 1.特点:同侧导通,异侧断开 2.独立按键的I/O口  单片机上电后,所有I/O口默认都是高电平.没有按开关时都是高电平,按下后变成低电平. 寄存器通过检测高低电平检测按键是否被按下 1 ...

  8. 51单片机实现独立按键控制LED灯

    本节博客主要实现以下效果: 3-1独立按键控制LED亮灭 本段代码主要使用了if...else...语句实现按下按下灯亮,松开按键时灯灭 #include <REGX51.H>void m ...

  9. 51单片机:独立按键控制LED灯

    1. 独立按键控制LED灯状态 亮灭实验完成后,就可以控制LED状态,首先我们知道由于机械结构的弹性作用,按键开关在闭合时不会一瞬间稳定的接通,在断开时,也不会一下子断开.所以就得需要程序消抖,也就是 ...

  10. 单片机C51(STC89C52RC)独立按键控制LED亮灭、状态、显示二进制、位移

    目录 1.独立按键控制LED灯亮灭 2.独立按键控制LED灯状态 3.独立按键控制LED灯显示二进制 4.独立按键控制LED灯位移 5.附录 1.独立按键控制LED灯亮灭 独立按键控制LED灯状态,在 ...

最新文章

  1. CVPR 2020夜间行人检测挑战赛两冠一亚:DeepBlueAI团队获胜方案解读
  2. java泛型一定用包装类_你不知道的基本数据类型和包装类
  3. 在WPF TreeView中使用复选框
  4. 软工课后作业01 15100152
  5. 自建radius服务器,Radius服务器搭建
  6. 房友手机服务器安装文件,房友软件服务器地址
  7. Unity开发手游常用适配分辨率
  8. 安卓无线打印服务器,安卓 打印服务器
  9. DecisionTreeClassifier实例:Iris莺尾花分类
  10. kali linux查询自己的ip,Kali Linux常用服务配置教程获取IP地址
  11. ei拼音的四个声调对应的字_幼儿园学前班拼音教案:复习 ei 以及四声调
  12. 没有内涵段子可以刷了,利用Python爬取段友之家贴吧图片和小视频(含源码)
  13. JAVA基础学习入门
  14. 高性能 MySQL实战
  15. 导进去然后这边就报错了 看修改也看不懂
  16. 【VB与数据库】机房收费系统开发阶段之登陆
  17. PHP微信小程序消息推送写法
  18. 快速有效地封杀—巧利用Iris来查找蠕虫病毒(转)
  19. SpringCloud Netflix复习之Zuul
  20. 青年时代历练和职业发展

热门文章

  1. java查询blob字段出错_java获取oracle数据库blob图片字节流显示到jsp页面出错bogus marker length...
  2. 布易般的旅途(二)星星点灯,照亮我的前程
  3. [新闻]《迅雷英雄》新服[双线27区] 今日15:00火爆开放
  4. python提取句子_科学网—Python提取句子 - 吕波的博文
  5. 学生评语 计算机术语版,计算机专业学生评语.doc
  6. Win10系统如何安装配置maven
  7. 王权富贵:jupter添加python环境
  8. 华为p40不是鸿蒙,华为P40依然是安卓而非鸿蒙OS?华为高管做出明确回应
  9. 优百佳W784法国新晋设计师ORA-ITO
  10. 用户体验的时机来源:ChinaUI 作者:Lytous