51单片机入门(三)

目录:

1.独立按键控制LED灯亮灭

2.独立按键控制LED状态

3.独立按键控制LED显示二进制

4.独立按键控制LED移位

1.独立按键控制LED灯亮灭

器件:

可以单独控制一位,不用写八位的方式了

写寄存器,会把这个状态送到lo口 ,如果lo口产生的电平,也会把电平的数据送回给寄存器,直接读寄存器

第一个程序的功能,通过按独立按键的第一个键实现led灯的亮灭:按下灯点亮,松手熄灭

k1和k2同时按才会亮

按位左移

按位右移

按位与、按位或:

按位异或:一样就是0,不一样就是1

按位取反:

2.独立按键控制LED状态

实现按键取反:按下的一瞬间会有抖动,会产生干扰

消斗:两种解决办法

1.硬件的消斗,加一个电路,里面经过触发器等等,把抖动进行过滤

2.通过软件,当按下按键的时候,延迟20毫秒,松开按键的时候,也延迟20毫秒

验证一下是否延迟闪烁:

就实现,按下没反应,松手亮了,再按下没反应,松手灭了

3.独立按键控制LED显示二进制

定义一个变量:

unsigned char 无符号的字符型,是8位的二进制数据,正好跟p2口和其他的寄存器都是一样的,用它来表示一个寄存器

就实现了案例,按一下加一位的效果,按一下逐渐+1

4.独立按键控制LED移位

函数要先定义,放到main的上面

如果放到下面,需要再main上面声明

定义在main函数外面的变量是全局变量,初始值是0,在里面是局部变量,初始值不为0

开始第一个灯不亮,按一下直接第二个灯亮,逐渐后面的亮

给第一个灯一个初始化:

复位后就会亮,逐渐按一下,递增的亮

实现按第二个按键向右移动

按第二个按键,向右移动

相关推荐
Rocktech_ruixun5 小时前
机器人本地跑LLM大模型对主板硬件有什么要求?瑞迅科技RK3588/3568方案选型解析
人工智能·科技·嵌入式硬件·机器人·边缘计算
小雪崩5 小时前
嵌入式学习 day45:51单片机基础
学习·51单片机
天空'之城7 小时前
单片机基础核心知识点汇总(三十四)
单片机·嵌入式硬件
Horn Still Sounds8 小时前
51单片机入门:硬件基础、位运算、数码管动态显示完整梳理
嵌入式硬件·mongodb·51单片机
三佛科技-187366133979 小时前
24W-48W隔离双绕组非标自供电芯片LP3718CD(电路原理图)
单片机·嵌入式硬件
糖糖单片机设计11 小时前
基于 STM32 的小型鸟类宠物繁殖系统
stm32·嵌入式硬件·宠物
电子元器件选型哥12 小时前
一文讲清LLC谐振电路工作原理
单片机·嵌入式硬件·硬件工程师·电子元器件·器件选型
HUI-47413 小时前
EG1162|SOP‑16 高压同步整流降压控制器,最高 600V 输入,大电流 5V 输出优选
嵌入式硬件·硬件工程
POMAGTOR13 小时前
【5G 通讯 POGOPIN 弹簧顶针连接器解决方案】
网络·嵌入式硬件·5g
ZLG_zhiyuan13 小时前
测试方案 | 从“000”到“111”,高效完成100BASE-TX以太网眼图测试
单片机·嵌入式硬件