51单片机——点亮LED(闪烁、延时、按键控制、消抖、状态位)

1、为什么灯会亮       
        
给LED1对应标号的P3^7一个低电平(接地),构成一个串联电路,就能点亮灯 。
2、怎么做才会闪烁
        让灯亮一下(给引脚低电平0),灭一下(给引脚高电平1),在亮和灭之间间隔一些时间(
使用STC-ISP自带延时函数 ),就能闪烁。
3、按键控制灯
         原理:按键和灯不是我们传统理解的思维,传统按键和灯是在同一个电路中的。而我们单片机编程按键 和灯是分开的两个电路,通过单片机作为媒介来处理数据, 通过逻辑来实现按键控制灯。
4、查询法按键控制灯
        查询法,即字面意思,检查按键是否被按下

        
        怎么知道sw1 按键被按下
                 KEY1 位置和 GND 接通,表现为低电平,值为 0 ,即KEY1对应的IO口的值为0
         怎么知道 sw1 按键没有被按下
                 KEY1 位置通过上拉电阻到 5V ,表现为高电平,值为 1 ,即KEY1对应的IO口的值为1
        
        总结: KEY1接到STC89C52RC的P2.1口,我们只要不断检测P2.1口的值(0-按下,1-松开)就知道按键是 否被按下。
5、软件消抖
        

6、按键按下一次,灯状态改变(状态翻转,亮的变成灭的,灭的变成亮的)
                

7、状态位来控制LED (好处:在代码量较多时如果出错了会比较方便修改)
        

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值