自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 基于PRECHIN普中51-实验板学习—直流电机相关学习(11)

在未学习 PWM 之前,我们先简 单使用 GPIO 来控制电机的旋转和停止。不能直接使用 GPIO 来驱动电机,而需要 相应的驱动芯片来驱动电机,开发板板载了一个 ULN2003 驱动芯片,该芯片是一 个单片高电压、高电流的达林顿晶体管阵列集成电路。不仅可以用来驱动我们的 直流电机,还可用来驱动五线四相步进电机,比如 28BYJ-48 步进电机。直流电机没有正负之分,在两端加上直流电就能工作。因为 ULN2003 的输出是集电极开路,ULN2003 要输出高电平,必须在输出口外接上拉电阻。

2024-01-24 11:36:46 753

原创 基于PRECHIN普中51-实验板学习—温度传感器相关学习(10)

主程序中先初始化ds18b20温度传感器,初始化完成后,不断地进行温度检测,如果想让温度传感器实现温度监测,就要根据ds18b20使用流程进行配置。最后根据读取到的数据判断正负温度。这里读取到的数据是带有小数点的,要实时显示到动态数码管中的话,就考虑将温度变为整数,存放到动态数码管,再根据小数点的位置,位选设置点亮。

2024-01-23 15:26:14 928 1

原创 基于PRECHIN普中51-实验板学习—串口中断相关学习(9)

简单理解:A代表CPU,移位寄存器中存放接收到的数据,最高八位。当移位寄存器存了8位数据后,就由SBUF接收到该八位数据,CPU再从SBUF中读取。当SBUF读取到一个字节的数据后,把允许串口中断ES关掉,就接收不到数据,等将数据读走后,再打开串口中断,这样就保证数据不会丢失)在串口中断发生时,如果接收到了数据,RI会被自动置1,这时候我们读取数据的同时要自己手动置0;同理在发送数据的时候,TI会被自动置1,我们发送数据的同时也要手动置0;通过串口助手向单片机发送1,2,3,4字符,来实现不同灯光的亮灭。

2024-01-22 21:36:40 550

原创 基于PRECHIN普中51-实验板学习—定时器中断相关学习(8)

实现思路:因为需要一个1s的时间间隔,所以使用定时器0的工作方式1,也就是TMOD = 0x01;有了初值初始化定时器0,开启中断,在中断函数中实现led的翻转。在该图中C/~T这里C代表计数器,高电平有效(1),~T代表定时器,低电平有效(0),所以在使用定时器,给TMOD赋初值的时候,需要设置C/~T这个位置为0。)时间为1us,最大的计数次数是65536次,因此,根据晶振频率的不同,定时器一次计时的总时间也不同。它们的区别在于,定时器0的方式3的高八位的中断标志位占用了定时器1的中断标志位。

2024-01-21 11:59:50 965 1

原创 基于PRECHIN普中51-实验板学习—矩阵按键模块相关学习(6)

初始定义#define key_port P2为矩阵按键组,再设置初始值为key_port = 0xef;给第五位设置为0,表示扫描第一列。假如当S1被按下时候,key_port = 0xee;先设置高四位接收数据不全为1,根据高四位的不同位置为0,去选择扫描某列元素,当低四位某位为0时,表示某按键被按下。封装一个扫描矩阵函数,可以通过调用该函数获得每个矩阵按键对应的键值。使用该函数可以结合其他操作使用。相较于独立按键,矩阵按键是两端均接到单片机(独立按键是一端接地,一端接单片机)

2024-01-16 21:45:12 402 1

原创 基于PRECHIN普中51-实验板学习—独立按键模块相关学习(5)

实现原理:设置K1的串口,通过串口的高低电平变化,设置对应灯光的效果(检测按键后注意软件消抖)当按键按下时,串口接地线,表现为低电平,表示按键被按下。设置按键的对应的窗口,检测按键是否被按下,例如: key = P2^0;该封装函数可以直接调用获得对应的key值,并且做出其他的操作。学习普中51单片机的独立按键模块。

2024-01-16 20:17:09 653 1

原创 基于PRECHIN普中51-实验板学习—动态数码管相关学习(4)

ABC由地位到高位,根据三位的高低电平的不同,设置不同显示的位置。显示的位置就是动态数码管第七个位置。代码思路:先通过位选选择要显示的位置,在将该位置写入对应的数字数据。动态数码管和静态数码管数字显示原理可以理解成一致,只是触发led亮灭的高低电平不同,也就是共阴极数码管和共阳极数码管的区别。动态数码管是共阴极数码管,高电平点亮,静态数码管是共阳极数码管,低电平点亮。代码思路:先选择要显示的位置,在选择要显示的数字。动态数码管由于有八个位置,所以相较于静态数码管显示需要先进行位选,再进行段选。

2024-01-14 11:25:10 552 1

原创 基于PRECHIN普中51-实验板学习—静态数码管相关学习(3)

a到dp 可以通过设置16进制的八位数值来使对应字母点亮从而形成各种参数,例如:显示数字零 ~0x3f(静态数码管显示,低电平位点亮)学习静态数码管的显示原理,以及如何让数码管选择数字。使用静态数码管,显示数字‘0-9’循环,间隔1s。a~dp 由低位到高位。实现在静态数码管显示一个数字‘0’

2024-01-13 21:48:10 443

原创 基于PRECHIN普中51-实验板学习—蜂鸣器相关学习(2)

根据震荡周期我们知道如果是一个12M频率的晶振,它的震荡周期是t = 1/12000kHZ=1/12000000HZ。又因为机器周期 = 12*震荡周期,所以T = 12T = 12 * 1 / 12000000 = 0.000001(10的-6次),也就是1us,所以一个12M频率的晶振,它执行一次的时间大约是1us。这个机器周期在复习后面定时器时候也有用,定时器一共可以计数2^16 = 65536,大约是65536us ≈ 65ms。51单片机蜂鸣器学习。

2024-01-13 14:35:44 481 1

原创 基于PRECHIN普中51-实验板学习—LED灯相关学习(1)

具体原理与思路点亮灯光的几种方式基础练习进阶练习。

2024-01-13 12:08:14 1007 1

原创 学习Spring Boot 第一天,通过maven方式创建一个简易的SpringBoot项目

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加第一章 SpringBoot开发入门提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、准备的环境二、开发过程①引入Spring Boot相关依赖②编写主程序启动类③创建一个用于Web访问的Controller④运行项目注意:这里由于个人原因,通过8080端口访问页面时,无法访问,这里我端口号修改了一下,修改方法如下:①resource目录下创建一个application.prop

2022-04-14 10:55:35 1206 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除