登录  | 立即注册

游客您好!登录后享受更多精彩

扫一扫,访问微社区

QQ登录

只需一步,快速开始

开启左侧

[寒假笔记] 51单片机之LED流水灯与LED位移

[复制链接]
发表于 2023-1-14 17:26:50 | 显示全部楼层 |阅读模式
学习笔记
学习科目: 51单片机
学习安排: LED流水灯与LED位移
开始时间: 2022-11-03
结束时间: 2022-11-03
为了让寒假笔记更连贯,以下为对之前学过的内容的总结。
一、LED的流水灯
经过上一次的学习我们应该很快就能知道如何实现流水灯,就是不断给P0口赋值按顺序让这些灯中某一个灯亮,其他灯全灭,然后中间再加个延时。
附:上一次的学习笔记链接:LED点灯与闪烁(直接点击左边文字即可跳转)
其中给P0口整体赋值(即P00-P07)用到了16进制和2进制的知识,附图便于理解:
2.jpg
最后代码的效果就是这样的:每次改变P0口的赋值时,延时一会,这样就能呈现流水的效果
1 - 副本.png

二、LED的二进制(借助按键,按一下相当于二进制中的加一)
按键 - 副本.png

其实这部分属于按键扫描的部分,但是既然用到了我就简单的总结一下,原理大概就是(我用的K5这个开关),先让P20得0,如果你按了K5,那么根据电路可以看出KOUT3就会得0,这个就是你需要判断的条件,KOUT3对应的是P26,所以我们就可以写出以下代码
二进制.png
其中P0--以上的三句话是防抖用的,这种是比较低级的防抖,会卡死程序一段时间,但程序不复杂的时候也是能用的,分别对应着按下--持续按下时--松开,三个阶段。防抖的延时可以自行调整,可以不用200ms。P0--需要自己运用二进制的知识去推演,每次按下去令P0--就可以达到二级制的效果(P0初始默认为0xFF)。
:防抖讲解(by:江科大自化协
防抖.png


至此,LED的基本内容总结完毕


按键.png
好懒~~不想说~~~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表