按键控制LED亮灭(按一次常亮和按一次亮一下)

这篇具有很好参考价值的文章主要介绍了按键控制LED亮灭(按一次常亮和按一次亮一下)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

一、51单片机按键控制LED亮灭
51单片机的LED灯是共阴极,阴极默认是高电平,不亮。如果给低电平,亮
按键控制LED亮灭(按一次常亮和按一次亮一下)

按键是不按为高电平,按下后为低电平
按键控制LED亮灭(按一次常亮和按一次亮一下)

操作中,给你想要的接口输入不同的高低电平信号,即可实现对不同元器件的控制


一、按键按一次LED一直亮

代码如下
#include <REGX51.H>

void main()
{
while(1)
{
if(P3_1==0)//如果P3-1按键按下
{
P2_0=0;//接口为P2-0的LED灯亮
}
}
}

二、按一下按键LED亮一下

代码如下
#include <REGX51.H>

void main()
{
while(1)
{
if(P3_1==0)
{
P2_0=0;
}
else
{
P2_0=1;
}
}
}

总结

一和二最大的差异在于else内的内容。一中else中没有内容,因此即使松开按键,也依然执行if当中的语句,让LED保持常亮。而二中else中规定了松开按键(P3-1=1)状态下LED的接口电压状态(规定松开后P2-0=1),因此一松手,LED就灭了。当然二中可以加入延时函数,实现松手后过段时间才熄灭。另外,其实要做按键消抖,我这里没做~~~~文章来源地址https://www.toymoban.com/news/detail-446810.html

到了这里,关于按键控制LED亮灭(按一次常亮和按一次亮一下)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【STM32】按键控制LED亮灭实验——GPIO、LED、KEY、SYS

    无锁存时:当按下独立按钮时LED亮,松开LED灭。 锁存时:当按下独立按钮时LED亮,松开LED仍亮,再按下独立按钮时LED熄灭。 硬件部分 软件部分 1、引入头文件 2、主函数 首先时钟、led、按键初始化 锁存时:当按下独立按钮时LED亮,松开LED仍亮,再按下独立按钮时LED熄灭。常

    2024年02月08日
    浏览(95)
  • 设计分享|单片机独立按键控制4个LED灯亮灭

    目录 具体实现功能 设计介绍 51单片机简介 设计思路 设计内容 仿真图(protues8.7) 程序(Keil5) 具体实现功能 单片机四个按键分别控制四个LED的亮灭! 设计介绍 51单片机简介 51单片是一种低功耗、高性能CMOS-8位微控制器,具有8K可编程Flash存储器,使得其为众多嵌入式控制应

    2024年02月06日
    浏览(47)
  • FPGA通过一个按键控制三个LED灯亮灭(状态机法)

    FPGA型号:Cyclone IV EPFCE10F17C8    开发工具:Quartus13.0专业版  Modelsim 10.1d 文章目录 状态机 一、设计思路 二、代码设计 1.顶层代码 2.测试代码 三、仿真 状态机由状态寄存器和组合逻辑电路构成,能够根据控制信号按照预先设定的状态进行状态转移,是协调相关信号动作、完成

    2024年02月02日
    浏览(90)
  • STM32G030C8T6:使用按键控制LED亮灭(外部中断)

    本专栏记录STM32开发各个功能的详细过程,方便自己后续查看,当然也供正在入门STM32单片机的兄弟们参考; 本小节的目标是,系统主频64 MHZ,采用高速外部晶振,通过KEY1 按键的PA0 引脚配置成中断输入引脚,PB9引脚配置成输出,每次按键,PA0 引脚就会进入一次外部中断,每进

    2024年02月05日
    浏览(40)
  • 定时器控制LED灯的亮灭(每隔1s翻转一次灯的状态)

    写一个1s的定时器,来控制LED灯的亮灭。这里LED1的端口是GPIOF,引脚是PIN10。定时器是通用定时器TIM3。 初始化LED; 初始化定时器; 编写时钟中断函数; 编写LED.h函数; 编写main.c函数; 2.1 初始化LED 2.2 初始化定时器 这里定时器的计算公式是: Tout= ((arr+1)*(psc+1))/Tclk; arr:自

    2024年02月02日
    浏览(54)
  • 单片机C51(STC89C52RC)独立按键控制LED亮灭、状态、显示二进制、位移

    目录 1.独立按键控制LED灯亮灭 2.独立按键控制LED灯状态 3.独立按键控制LED灯显示二进制 4.独立按键控制LED灯位移 5.附录 独立按键控制LED灯状态,在独立按键按下时,LED灯点亮,松手后LED灯熄灭。独立按键按下为0,松开为1,在STC89C52RC芯片上,P2为LED灯IO口,P2_0表示第一个LED灯

    2024年02月01日
    浏览(99)
  • 驱动开发 day8 (设备树驱动,按键中断实现led亮灭)

    //编译驱动  (注意Makefile的编译到移植到开发板的内核)         make arch=arm //清除编译生成文件         make clean ****************************************** //安装驱动         insmod mycdev.ko //卸载驱动         rmmod mycdev   需要在内核路径/arch/arm/boot/dts/  修改 stm32mp157a-fsmp1a-dts 文件 *

    2024年02月14日
    浏览(41)
  • arm学习之stm32设备树学习-中断控制led灯亮灭+字符设备指令控制led灯亮灭

    中断控制led灯亮灭 驱动文件源码 led-key.c 字符设备指令控制led灯亮灭 驱动文件 led-cmd.c 应用文件 led.c

    2024年02月14日
    浏览(46)
  • 嵌入式开发控制LED灯的亮灭

    用stm32F103核心板的GPIOA端一管脚接一个LED,GPIOB端口一引脚接一个开关(用杜邦线模拟代替)。采用中断模式编程,当开关接高电平时,LED亮灯;接低电平时,LED灭灯。 A4输出控制灯的亮灭,设置为GPIO_Output A1持续输出高电平,设置同上 A7持续输出低电平,设置同上 C13个人习惯开启

    2024年02月09日
    浏览(39)
  • C51---串口发送指令,控制LED灯亮灭

    1.Code: #include \\\"reg52.h\\\" #include \\\"intrins.h\\\" sfr   AUXR = 0x8E; sbit  D5 = P3^7; void UartInit(void)        //9600bps@11.0592MHz {     //PCON = 0x7F;        //波特率不倍速     AUXR  = 0x01;         SCON  = 0x50;        //8位数据,可变波特率     //AUXR = 0xBF;        //定时器1时钟为Fosc/12,即12T

    2024年02月12日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包