- 博客(185)
- 收藏
- 关注
原创 51单片机学习之旅——在LCD1602上显示时钟
本次项目在LCD1602上显示时钟,要用到定时器中断,因此我们下来添加定时器中断模块代码。因为我们在LCD1602上显示时钟,因此我们需要添加LCD1602的模块代码。
2025-02-19 13:14:47
445
原创 51单片机学习之旅——定时器
之所以多1是因为65535是从0开始计数,如果从1开始计数,则是1到65536,而我们设置初始值,相当于从1开始计数而不是0,所以TL0=(65536-1000)%256,TH0=(65536-1000)/256。//0xF0=1111 0000进行与操作,高四位保持,低四位清零,高四位定时器1,低四位定时器0。//初始状态TF0置0,只有当溢出时,单片机硬件自动置TF0为1,响应中断时,硬件又自动置TF0为0。//配置定时器0时GATE已配置为0,TR0=1允许计时。1与其它等于其它,0与其它等于0。
2025-02-18 13:40:24
1314
原创 51单片机学习之旅——矩阵键盘密码锁
我想实现的是从左到右,依次输入,按第一个,在最左边,按第二个在左二,依次往右,按取消键,则屏幕只显示"Passwords:"按确定键,如果正确,屏幕显示ok停留1秒然后初始化,如果错误,屏幕显示no停留1秒然后初始化,我没板子,无法检验,调整,目前不确保完全正确,已经达到我预期,知道是个啥,咋弄,也知道咋改了。把本次项目要用到的延迟模块,矩阵键盘模块,LCD1602模块文件依次创建。项目内容:按矩形按键输入0305显示ok,其余四位显示no。
2025-02-05 20:20:07
190
原创 51单片机学习之旅——数码管
那8个数码管,如果我们要让第6个数码管显示6,则应该让74LS138选择第六个数码管,然后让74HC245弄个数字6。显示数字4:a,d,e不亮,其余亮,P0=0110 0110=0x66。显示数字7:a,b,c亮,其余灭,P0=0000 0111=0x07。显示数字5:b,e不亮,其余亮,P0=0110 1101=0x6D。显示数字9:d,e不亮,其余亮,P0=0110 0111=0x67。显示数字1:b,c亮,其余灭,P0=0000 0110=0x06。第一个瞬间,让最左边数码管显示1,其余黑。
2025-01-29 20:05:19
409
原创 51单片机学习之旅——独立按键控制LED
单片机我还没买,没办法上电检验,目前只是看江科大视频然后自己消化理解的,和江科大的代码有些地方不一样,是我按我想的来的,不确保正确,有错误欢迎大家批评斧正!为了使灯在任意位置可左右移动按键,我们可朝着只要key_number为1,则D2亮,使key_number与灯对应,左右移动按键只对key_number进行操作。key_number为1,0000 0001左移再取反,1111 1101,D2亮。key_number为4,0000 0001左移再取反,1110 1111,D5亮。
2025-01-27 22:06:16
970
原创 51单片机学习之旅——LED闪烁
这样可以看出,江科大视频中的表示对于多个灯的操作比我一开始想的分别表示要简洁,同时规律为把灯依次编号,编号顺序也就是二进制左高位右低位,然后用二进制01表示输出的高低电平。这个视频我学到了些关于延迟函数循环计算的知识,不过我感觉还不是很通透,还有用断点在keil中检验江科大的代码也不是准确的,所以目前先不写了,先跟着江科大视频往下走。这样是不行的,因为我们忽略了闪烁这一概念是相对于人眼睛来说的,如果亮灭交替的频率超过人眼所能识别的速度那人眼是分辨不出来灯闪烁的,于是我们需要加延时。如何用代码语言表示呢?
2025-01-25 21:00:36
417
空空如也
C语言数据结构与算法电梯调度
2023-12-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人