
C51单片机
文章平均质量分 87
Xiao |
May the Force be with you
|| 一定存在只有你才能做到的事情
展开
-
单片机语音模块JQ8900-16P的几种触发方式与源码配置
我先来讲一下这个模块方便在什么地方:(我没有做广告哈,有一说一)1,有SPI-flash,USB的接口直接连电脑显示U盘,替换音频很方便2,默认情况下有IO口按键触发,很方便播放指定的曲目,说白了你把那个接口用手捏着就可以播放,方便吧;3,IO口的触发的功能还可以自定义4,支持单线串口,与双线串口通讯(UART)还有一个原因就是引脚是焊接好的,对于新手而言,焊接排针还是有点点难度的端口定义与参数和单片机或者说是串口助手连线的时候,TX,RX交替连接。VPP是一线串口的引脚接的喇叭功放要原创 2022-05-02 12:45:20 · 18889 阅读 · 9 评论 -
单片机L298N电机驱动板的几种不同电压使用场景
L298N电机驱动版主要由两个核心组件构成L298N 驱动芯片78M05 稳压器模块参数:模块端口示意图:其中这个板载5V使能的这个跳线帽比较的复杂,其与稳压模块有关稳压模块能否生效完全取决于5V使能跳帽是否启用(拔掉禁用、插入启用,默认是板载连通的),这里分两种情况,接通和未接通:板载跳帽:当电源小于或等于12V时,内部电路由稳压器供电,并且5V引脚作为微控制器供电的输出引脚,即:VCC作为7805的输入,5V是7805的输出,从而可以为板载提供5v电压,为外部电路供电使用原创 2022-05-02 12:17:36 · 12545 阅读 · 8 评论 -
51单片机的定时器2的配置
学过一段时间单片机的你发现,中断服务函数可以在主函数进行的同时,进行一些对时间要求高的模块的配置时,则要用到定时器中断。而如果你要实现多个功能的操作,会使用多个定时器是必要的STC89C51单片机所有的资源中最不好搞清楚的就是定时器2,尤其是对于那些以前从来没有玩过单片机的新手。定时器2是新增资源,也是51单片机定时器里面功能最强大的一个定时器。 定时器2有三个模式,在这里我们只是介绍系统的简单配置与将定时器2当成一般递增/递减计数器的使用代码,剩下的模式可以自己查阅手册: 下面我带着大家简单配置一原创 2022-04-27 14:39:45 · 10697 阅读 · 4 评论 -
51或stm32单片机OLED显示屏驱动及代码演示
OLED显示基本参数:•OLED(Organic Light Emitting Diode):有机发光二极管•OLED显示屏:性能优异的新型显示屏,具有功耗低、相应速度快、宽视角、轻薄柔韧等特点•0.96寸OLED模块:小巧玲珑、占用接口少、简单易用,是电子设计中非常常见的显示屏模块•供电:3~5.5V,通信协议:I2C/SPI,分辨率:128*64常见的硬件连接方式:电亮方式:将分辨率为128*64的屏幕分为多个8x8像素块来显示:那么以8x8像素块为基本单位而言,行就有8个像素块,原创 2022-04-12 21:29:46 · 8356 阅读 · 0 评论 -
单片机超声波测距模块原理与源码解析
一、实验原理 1、根据超声波测距模块提供的数据手册,都会有时序图,模拟出对应时序,在指定时间内读出相应数据,其实计算公式就是s=(1/2)*(340/t),340是超声波在空气中传递的速度,当然可能会有些误差,一般情况下,返回的数据都需要加工(按一定数学关系转化),才能变成真正需要的数据,所以看懂时序图很重要。 2、转化后的数据就可以通过串口发送给对应的显示外设,例如LCD,OLED之类的,这里就先用串口助手显示了。 3、根据返回的数据,可以设定一个阈值,当距离小于一个值或者大于一个值时原创 2022-04-09 21:11:41 · 3014 阅读 · 0 评论 -
单片机蓝牙模块的使用,以及配置控制舵机的源码
一、实验原理(如下图) 1、该模块与单片机采用串口通信,手机连接蓝牙模块,通过无线信号发送数据给蓝牙模块,蓝牙模块收到数据后会把数据通过串口(USART)发送给单片机,单片机收到数据(SUBF)以后,就可以对数据进行处理,解析,从而完成单片机对外设的控制。这里注意手机端发送的一般是16进制数据(HEX),或者也可以设置为发送ASCLL格式的数据。 2、此实验需要把蓝牙模块配置为从机模式,若模块出厂默认就是从机模式,就不需要配置了,(如果不知道默认是什么模式,可以查芯片手册或询问客服),如原创 2022-04-06 13:09:53 · 14209 阅读 · 3 评论 -
51单片机SG-90系列舵机的配置原理以及源码
一、实验原理1、舵机转动的原理(如下图所示)1,根据上图我们可以得知,要想控制舵机转动指定的角度,必须要让它在一定的周期(20ms)中,获得一定时间(分别是0.5ms、1ms、1.5ms、2ms、2.5sm)的高电平,具体对应关系,上图中已给出。1,现在我们要做的就是生成一个周期为20ms的PWM波,通过设定一个比较值(最大为20ms),用来控制我们的高电平时间,进而控制舵机转动指定角度。2、生成PWM波的原理(1)用定时来实现,设定一个初始值,使其溢出时间为500us,再设定一个计数值,控制P原创 2022-04-06 13:03:53 · 4674 阅读 · 0 评论 -
51单片机控制28BYJ48步进电机原理及代码
命名方式(以28BYJ48步进电机为例)28BYJ48步进电机的编号28-----步进电机的有效最大外径是28毫米B-----表示步进电机Y-----表示永磁式J-----表示减速型48-----表示四相八拍工作原理1、五线四相步进电机,不同相位得电会让步进电机的转子转动一个角度,按一定规律给不同的相位通电,就可以让步进电机连续转动,下表就是通电的顺序。表里面的顺,逆时针的方向只是代表相位给电时序,注:总共五条线,一个是VCC,剩下四条分别接上ABCD相.原创 2022-04-01 19:52:04 · 7838 阅读 · 4 评论 -
STC89C52单片机蜂鸣器介绍以及《孤勇者》歌曲代码示例
目录蜂鸣器介绍驱动电路三极管驱动集成电路驱动音乐的相关知识音符与计时器重装载值对应表将乐谱转换为宏定义的音调谱实际代码演示:蜂鸣器介绍蜂鸣器是一种将电信号转换为声音信号的器件,常用来产生设备的按键音、报警音等提示信号蜂鸣器按驱动方式可分为有源蜂鸣器和无源蜂鸣器有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定无源蜂鸣器:内部不带振荡源,需要控制器提供振荡脉冲才可发声,调整提供振荡脉冲的频率,可发出不同频率的声音这里显然我们单片机原创 2022-03-26 21:35:36 · 33388 阅读 · 43 评论 -
stm32单片机GPIO
在我们应用的库函数中也确实可以看到有一个结构体定义了这些模式的寄存器该如何配置(这里库函数的版本为v3.50)下面是GPIO的不同模式对应的电路图:代码演示:主函数()(这里出现乱码在keil5中的修改中将editor更改为ANSI即可)在GPIO的输入中主要掌握这4个库函数的运用(具体的方法要在库函数stm32xxx_gpio_c的文件中查看)GPIO_Init()GPIO_ResetBits()GPIO_SetBits()GPIO_Writ...原创 2022-02-26 20:05:15 · 1051 阅读 · 0 评论 -
STC89C52单片机中指针的运用与实际案例演示
目录小端分配的方式C语言中*的功能数据宽度传递参数传递返回值直接访问物理地址下的数据访问硬件指定内存下的数据,如设备ID号等将复杂格式的数据转换为字节,方便通信与存储指针(Pointer)是C语言的一个重要知识点,其使用灵活、功能强大,是C语言的灵魂指针与底层硬件联系紧密,使用指针可操作数据的地址,实现数据的间接访问小端分配的方式:将由小到大的数字依次存储在由小到大的地址中,这种存储方式叫小端分配数组内部不同变量之间也是按地址由小到大的顺序来储存,中间原创 2022-02-15 14:24:24 · 1341 阅读 · 0 评论 -
STC89C52单片机独立按键与矩阵键盘的消抖与扫描
目录有消除按键的机械抖动的原因:消除抖动的方法有硬件和软件两种方法: 硬件方法 软件方法键盘的分类:按键消抖的相关优化: 用while来判断:用if来判断:代码示例有消除按键的机械抖动的原因:通常的按键所用开关为机械弹性开关。由于机械触电的弹性作用,按键在闭合及断开的瞬间均伴随有一连串的抖动。键抖动会引起一次按键被误读多次。为了确保CPU对键的一次闭合仅作一次处理,必须去除抖动。消...原创 2022-02-07 18:28:28 · 4741 阅读 · 0 评论 -
STC89C52单片机AD/DA介绍与代码演示
D/A转换一般由电阻解码网络、模拟电子开关、基准电压、运算放大器等组成。按电阻解码网络的组成形式,将D/A转换器分成有权电阻解码网络D/A转换器、T型电阻解码网络D/A转换器、倒T型电阻解码网络D/A转换器和开关树型电阻解码网络D/A转换器等。 ...原创 2022-02-07 14:35:58 · 10601 阅读 · 1 评论 -
STC89C52单片机红外遥控中断以及代码显示
红外遥控简介红外遥控是利用红外光进行通信的设备,由红外LED将调制后的信号发出,由专用的红外接收头进行解调输出通信方式:单工,异步红外LED波长:940nm通信协议标准:NEC标准基本发送与接收空闲状态:红外LED不亮,接收头输出高电平发送低电平:红外LED以38KHz频率闪烁发光,接收头输出低电平发送高电平:红外LED不亮,接收头输出高电平51单片机的外部中断STC89C52有4个外部中断STC89C52的外部中断有两种触发方式:..原创 2022-02-06 19:34:50 · 7501 阅读 · 0 评论 -
STC89C52单片机可调速电机及呼吸灯(PWM)代码演示
目录直流电机介绍电机的驱动电路PWM介绍PWM重要参数 PWM的产生方法代码演示1,调速电机2,呼吸灯直流电机介绍直流电机是一种将电能转换为机械能的装置。一般的直流电机有两个电极,当电极正接时,电机正转,当电极反接时,电机反转直流电机主要由永磁体(定子)、线圈(转子)和换向器组成除直流电机外,常见的电机还有步进电机、舵机、无刷电机、空心杯电机等步进电机:构造上角度上有磁铁,可以精确到角度舵机:控制方向的电机无刷电机与空心杯电机:都是...原创 2022-02-05 10:04:29 · 5268 阅读 · 1 评论 -
STC89C52单片机LCD1602显示屏介绍与代码演示
目录LCD1602显示屏介绍引脚介绍内部结构框图存储器DDRAM储存器地址CGRAM与CGROM的地址时序介绍LCD1602快捷指令LCD1602指令操作流程:字符、字符串的显示各种进制的数字显示在LCD1602上显示十进制数字在LCD1602上显示十六进制数字在LCD1602上显示二进制数字LCD1602显示屏介绍LCD1602(Liquid Crystal Display)液晶显示屏是一种字符型液晶显示模块,可以显示ASCII码的...原创 2022-02-04 16:44:09 · 17598 阅读 · 5 评论 -
STC89C52单片机单线通信(DS18B20温度)
目录DS18B20介绍DS18B20温度传感器结构图:DS18B20温度传感器操作配置:单总线介绍单总线规范单总线时序结构初始化:发送一位:(主机到从机)接收一位:(从机到主机)发送一个字节:接收一个字节:代码示例:单线通信函数:DS18B20介绍DS18B20是一种常见的数字温度传感器,其控制命令和数据都是以数字信号的方式输入输出,相比较于模拟温度传感器,具有功能强大、硬件简单、易扩展、抗干扰性强等特点测温范围:-55°C 到 +125°.原创 2022-02-04 15:25:56 · 5116 阅读 · 1 评论 -
STC89C52单片机I2C通信以及AT24C02介绍使用代码演示
AT24C02引脚介绍与使用首先AT24C02是一种可以实现掉电不丢失的存储器,可用于保存单片机运行时想要永久保存的数据信息在早起时候,我们的储存器的是出场的时候就储存好内容的,这种储存介质也叫Mask ROM,看下面的图片也可以知道,二极管(具有单向导通性)的方向是确定的。后来,就发明了一种叫做PROM的储存器,看下面的图片可以知道,他一条线上有2个二极管,在制造出来后,我们进行写入程序,利用高电压击穿,使其烧毁,使得其一条线上只具有一个二极管,但是这种写入程序的方式是不可逆的,所以写入的原创 2022-02-03 21:05:48 · 8953 阅读 · 6 评论 -
STC89C52单片机蜂鸣器介绍以及《卡农》歌曲代码示例
目录蜂鸣器介绍驱动电路三极管驱动集成电路驱动音乐的相关知识音符与计时器重装载值对应表将乐谱转换为宏定义的音调谱实际代码演示:蜂鸣器介绍蜂鸣器是一种将电信号转换为声音信号的器件,常用来产生设备的按键音、报警音等提示信号蜂鸣器按驱动方式可分为有源蜂鸣器和无源蜂鸣器有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定无源蜂鸣器:内部不带振荡源,需要控制器提供振荡脉冲才可发声,调整提供振荡脉冲的频率,可发出不同频率的声音这里显然我们单片机原创 2022-01-29 17:24:14 · 17285 阅读 · 24 评论 -
STC89C52单片机DS1302介绍以及代码示例
DS1302介绍DS1302是由美国DALLAS公司推出的具有涓细电流充电能力的低功耗实时时钟芯片。它可以对年、月、日、周、时、分、秒进行计时,且具有闰年补偿等多种功能RTC(Real Time Clock):实时时钟,是一种集成电路,通常称为时钟芯片引脚定义与应用电路在配置的时候我们主要是搞明白CE,IO,SCLK的配置时序相关知识DS1302时钟模块原理图:(注意这里备用电源VCC1是没有接电池的,所以断电以后芯片就停止工作了)内部结构框架图寄存器定义时序定.原创 2022-01-29 10:54:05 · 4036 阅读 · 2 评论 -
STC89C52单片机串口通信以及代码演示
串口介绍串口是一种应用十分广泛的通讯接口,串口成本低、容易使用、通信线路简单,可实现两个设备的互相通信。单片机的串口可以使单片机与单片机、单片机与电脑、单片机与各式各样的模块互相通信,极大的扩展了单片机的应用范围,增强了单片机系统的硬件实力。51单片机内部自带UART(Universal Asynchronous Receiver Transmitter,通用异步收发器),可实现单片机的串口通信。硬件电路简单双向串口通信有两根通信线(发送端TXD和接收端RXD)TXD与RXD要交原创 2022-01-28 21:30:41 · 16939 阅读 · 1 评论 -
STC89C52单片机矩阵LED灯介绍以及代码示例
矩阵LED原创 2022-01-27 16:25:22 · 5096 阅读 · 1 评论 -
STC89C52单片机数码管介绍以及代码示例
LED数码管:数码管是一种简单、廉价的显示器,是由多个发光二极管封装在一起组成“8”字型的器件数码管分为共阳极连接和共阴极连接两种:1,共阴极连接就是说3,8这一头连得是负极,所以在下面的那头给上高电平(即置1)就可以使二极管发光2,共阳极连接就是说3,8这一头连得是正极,所以在下面的那头给上低电平(即置0)就可以使二极管发光注意:在实际编写代码的时候这一点一定要搞清楚,或者进行实验后发现亮光的二极管的位置和预想的不对,那么对赋值的I/O口使用取反符号~也行。...原创 2022-01-27 14:49:16 · 11812 阅读 · 1 评论 -
STC89C52单片机定时器及中断系统的介绍以及代码示例
目录一,定时器介绍二,STC89C52定时器资源三,定时器框图四,定时器工作模式五,中断系统及其流程六,STC89C52中断资源七,定时器与中断系统八,相关寄存器的认识与配置首先是定时器模式的配置(TMOD)其次是中断系统的配置:九,定时器时钟代码演示一,定时器介绍定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成定时器作用:(1)用于计时系统,可实现软件计时,或者使程序每隔一固定时间完成一项操作为什么原创 2022-01-26 13:20:17 · 15239 阅读 · 1 评论 -
keil5报错:* RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT; USED: 08B5H BYTE (108%) *保姆级教程
项目场景:keil uVsion5的编译的时代码的字节过大出现问题描述:* RESTRICTEDVERSIONWITH 0800H BYTE CODE SIZE LIMIT原因分析:原因就是你的keil为2048字节代码限制的版本,而你如果写入的字节超过了2048个字节,那么就会有报错,为什么有限制呢,你的keil没有破解,若不破解Keil,那么我们程序容量会被限制在2k内。若破解,代码的容量将不被限制。解决方案: 第一步:打开Keil编译器 第二步:单击左上角的【Fi..原创 2022-01-19 13:27:12 · 15305 阅读 · 20 评论