51单片机编程学习笔记
文章平均质量分 85
breaksoftware
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
51单片机编程学习笔记——无源蜂鸣器演奏《祝你生日快乐》
蜂鸣器分为有源和无源两种,有源蜂鸣器自带振荡电路,只需接入直流电源即可发声,声音单一且稳定,常用于设备状态提示。无源蜂鸣器需外部提供脉冲信号,通过改变信号频率可发出不同音调,适用于需要多样化声音的场景。无源蜂鸣器通过达林顿阵列驱动,输出方波信号使其发声。通过编程控制方波频率和时长,无源蜂鸣器可以模拟钢琴演奏,如《祝你生日快乐》。计算音符频率和时值后,通过循环输出相应频率的方波,实现音符的持续发声。原创 2025-05-20 22:56:55 · 1424 阅读 · 0 评论 -
51单片机编程学习笔记——动态数码管显示多个数字
在一文中,我们看到如何使用动态数码管显示数字。但是基于动态数码管设计的特点,每次只能显示1个数字。这就不能让我们一次性显示多个数字,比如666就无法显示。如果我们要让动态数码管“显示”多个数,就要结合我们人眼的视觉残留。人眼的视觉残留又称视觉暂留,是指物体在快速运动时,当人眼所看到的影像消失后,人眼仍能继续保留其影像 0.1 - 0.4 秒左右的图像。原创 2025-03-04 23:58:27 · 1644 阅读 · 2 评论 -
51单片机编程学习笔记——动态数码管
有了和的基础,我们就可以开始学习动态数码管的编程方法。我们首先要看下动态数码管的电路图。原创 2025-03-04 01:02:37 · 1225 阅读 · 0 评论 -
51单片机编程学习笔记——74HC245八路三态输出双向收发器
在单片机系统里,单片机的 I/O 口驱动能力往往有限。当需要连接较多外部设备或者负载较大时,就可能出现信号传输不稳定的问题。74HC245 收发器则能够很好地解决这一难题。通过将单片机的 I/O 口与 74HC245 的 A 端口相连,外部设备连接到 B 端口,利用 74HC245 的驱动能力。比如在一个智能环境监测系统中,单片机需要与多个传感器和显示设备进行通信。传感器采集到的环境数据(如温度、湿度等)需要准确无误地传输到单片机进行处理,而单片机处理后的结果又要传送到显示设备上显示。原创 2025-03-03 22:23:19 · 3808 阅读 · 0 评论 -
51单片机编程学习笔记——74HC138译码器
74HC138 是一款高速 CMOS 器件,属于二进制译码器,可将3位二进制输入代码转换为 8 个互斥的输出信号(2等于 8)。它的工作电压范围一般为 2.0V 至 6.0V,具有较宽的电压适应范围,能够满足多种不同电源电压的应用场景。它的原理图如下:下面我们会分开讲解各个模块。原创 2025-03-03 03:00:00 · 7246 阅读 · 0 评论 -
51单片机编程学习笔记——管脚输入
一文中,我们了解了管脚和寄存器之间的关系。我们可以给寄存器的一些位设置值,然后控制管脚的电平,以达到给器件传输信号的目的。即我们可以通过器件影响寄存器的值,从而给单片机获取输入信息的机会。需要说明的是,电路图中给的K1和K2对应的管脚是错的。实际上,我购买的开发板上,K1对应P30,K2对应P31。在学习之前,我们需要知道P0~P3管脚在复位情况下的电平状态。基于这样的认知,我们可以通过判断P30~P31的位变量值是否为0,来得知对应按键是否被按下。图中4个按键的电路连接的都是P3系列的管脚。原创 2025-02-28 05:00:00 · 1203 阅读 · 0 评论 -
51单片机编程学习笔记——管脚输出
是用于定义可位寻址对象的关键字,主要用于访问可位寻址的特殊功能寄存器中的某位或可位寻址的内部 RAM 单元,方便对这些特定位进行单独操作。这就意味着给它赋值(不是定义),实际修改的是该位空间中的值,而不是该位的地址。使用 sfr 关键字后,紧跟着是要定义的特殊功能寄存器的名称,然后是等号和该寄存器的地址值。这就意味着代码中P2表示的特殊功能寄存器,它的地址是0xA0。VCC作为正极在LED的P端,N端则连着单片机的P20管脚。我们再在原理图中查看单片机核心的原理图,可以找到P20管脚。原创 2025-02-28 02:45:00 · 1359 阅读 · 0 评论 -
51单片机编程学习笔记——VSCode上开发代码
之前我们的例子都是在Keil中编写51单片机的代码。但是Keil的编辑界面非常不友好,而且没有AI加持,已经不能适应现代化的开发了。我们可以使用VSCode作为编码工具。它不仅可以提供AI功能,还能做代码补齐以及集成其他扩展。需要说明的是,VSCode只能作为编码工具,而不能作为编译工具。这就意味着我们还是需要安装Keil。原创 2025-02-27 01:35:30 · 677 阅读 · 0 评论 -
51单片机编程学习笔记——Delay效果的实现
有毫秒和微秒两个单位。我们选择生成延时1毫秒。这样我们就会得到代码。_nop_();i = 2;j = 199;do。原创 2025-02-27 00:48:25 · 1469 阅读 · 0 评论 -
51单片机编程学习笔记——从0到1创建Keil工程
在熟悉了一文后,我们可以根据学到的知识编写一段程序,让LED每隔一段时间闪烁一次。不同于中直接借用了教程中的工程项目,本例我们将创建一个全新的工程来完成需求。原创 2025-02-26 22:19:01 · 593 阅读 · 0 评论 -
51单片机编程学习笔记——LED原理图
在一文中,我们通过下面这段代码点亮了D1和D2两个LED灯。那么我们是怎么知道P0^2对应第一个LED的呢?这就需要我们能看懂LED电路原理图。在学习 51 单片机的过程中,能看懂电路原理图具有举足轻重的意义。51 单片机作为一款经典的微控制器,广泛应用于各类电子设备开发。而。首先,看懂电路原理图是进行硬件设计的基础。当着手设计基于 51 单片机的系统时,只有清晰了解各个元器件在电路中的位置、连接方式以及它们与单片机的接口关系,才能合理地选择和布局元器件,搭建出稳定可靠的硬件平台。原创 2025-02-26 00:23:48 · 1829 阅读 · 0 评论 -
51单片机编程学习笔记——点亮LED
因为开发板已经帮我们把很多元器件和引脚连接好了,而我们当前关注的重点不是接引脚,而是编程,所以我们选择购买开发板。下面是我购买板子的商家提供的地址:pwd=1234 提取码:1234。原创 2025-02-24 23:18:20 · 1105 阅读 · 0 评论 -
51单片机编程学习笔记——编译代码点亮LED
一般情况下,开发板商家会提供开发相关的套件和资料。我们只要在这个资料中找到编译器和破解程序(在目录下:5–开发工具\1-KEILC51软件),按照步骤执行即可。非破解版可以编译代码量小于2K的工程,而对超过2K的代码则会报错。为了避免以后的麻烦,我们可以购买正版或者破解它。破解过程不表,可以在网上找到资料。需要注意的是,启动Keil时需要使用“管理员”权限。原创 2025-02-24 23:16:19 · 405 阅读 · 0 评论
分享