技术文档

单片机的应用实例 单片机实现直流电机控制的应用实例

小编 2024-10-10 技术文档 23 0

单片机实现直流电机控制的应用实例

直流电机的单向控制

直流电机的单向控制较为简单,可以通过开关的通断来接通和断开直流电源,实现电机的启动与停止控制,开关控制直流电机如图9-2所示。也可以通过三极管、场效应管、继电器等对直流电机的通断进行控制,采用三极管控制直流电机的电路如图9-3所示,图中的二极管为续流二极管,起到保护三极管的作用。

图9-2 开关控制直流电机电路图

图9-3 三极管控制直流电机电路图

提示

单片机控制直流电机的实际应用电路中,为了降低电机运行对单片机电源的影响,往往会采用光电耦合器件进行光电隔离。

【例9-1】 通过按键实现直流电机的停启控制

按键控制直流电机停启的电路如图9-4所示,通过P3.6口按键触发启动直流电机,P3.7口的按键触发停止直流电机的运行。由图9-4可知,当P1.0输出高电平“1”时,NPN型三极管导通,直流电机得电转动;当P1.0输出低电平“0”时,NPN型三极管截止,直流电机停止转动。

图9-4 按键控制直流电机停启电路图

C51程序如下:

直流电机的双向控制

直流电机的双向控制原理就是使加在直流电机两端的电源电压的极性可以实现切换。通常采用H桥电路进行控制。H桥控制的示意如图9-5所示,有1~4四个开关的不同状态实现电机的停止、正转、反转控制。

当四个开关均断开时,直流电机不得电,处于停止状态。

当开关1与4接通,开关2与3断开时,电流由左向右流过直流电机,电机处于正转状态。

当开关2与3接通,开关1与4断开时,电流由右向左流过直流电机,电机处于反转状态。

图9-5 H桥实现直流电机双向控制的示意图

【例9-2】 通过按键实现直流电机的正反转及停止控制

通过按键控制直流电机正反转及停止控制的电路如图9-6所示。由S1键的触发实现电机的正转运行,S2键的触发实现电机的反转运行,S3键的触发实现电机的停止控制。

通过对图9-6进行分析,可知通过对单片机的P1.0、P1.1口的控制即可实现电机的停止、正转和反转控制,P1.0、P1.1在不同状态下电路各部分的工作状态及电机状态如表9-1所示。

图9-6 按键控制直流电机正反转及停止控制的电路图

表9-1 P1.0、P1.1口控制过程及电路状态表

C51程序如下:

4个中断应用实例讲解

【例1】 利用单片机的外部中断0响应按键开关的按键信号,当有按键按下时,单片机响应中断,并使内部某变量加1,硬件电路如图4-4所示。

图4-4 单片机外部中断检测按键电路图

C51源程序如下:

提示

将按键电路改为其他传感器电路,如光电传感器检测电路,霍尔传感器检测电路,热释电传感器检测电路等即可实现不同的检测控制功能。

【例2】 2个按健中断控制流水等灯的速度,按健K0用以减慢速度控制,按健K1用以加快速度控制,硬件电路如图4-5所示。

图4-5 流水灯控制电路图

C51源程序如下:

【例3】 利用单片机外部中断即时实现不同方式的流水灯控制,L2开关实现2只灯循环亮,L1开关实现1只灯循环亮,两个控制开关具有不同的优先级别,L2比L1具有更高的优先级。硬件电路如图4-6所示。

C51源程序如下:

图4-6 不同优先级别控制流水灯电路图

【例4】 利用单片机外部中断实现遥控解码。具体功能:通过电视机遥控器向单片机系统板上的一体化红外线接收头发射红外遥控编码信号,由于一体化红外线接收头的输出端与单片机的外部中断0相连,从而触发单片机产生中断,单片机根据红外遥控信号的组成对功能码进行识别,并通过P1口的发光二极管显示该功能码。

单片机与一体化红外接收头HS0038的引脚连接如图4-7所示,单片机与发光二极管的连接可以参照本章之前案例中的硬件电路图,这里省略未画出。

图4-7 HS0038引脚连接图

系统分析如下:

遥控编码脉冲信号通常由引导码、系统码、系统反码、功能码和功能反码组成。引导码由宽度为9ms的高电平和宽度为4.5ms的低电平组成。8位的系统码又称为识别码,主要是为了区分不同的控制系统,防止误动作。8位功能码也称为数据码,其代表相应的控制功能。8位的系统反码和功能反码的加入是为了校对传输过程中产生的差错提高抗干扰性能,遥控编码脉冲信号组成如图4-8所示。

图4-8 遥控编码脉冲信号的组成图

当遥控器上任意一个按键按下超过36ms时,LC7461芯片的振荡器使芯片激活,将发射一个特定的同步码头,对于接收端而言就是一个9ms的低电平,和一个4.5ms的高电平,这个同步码头可以使程序知道从这个同步码头以后可以开始接收数据。

解码的关键是如何识别“0”和“1”,采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”。其串行码波形如图4-9所示。

图4-9 0和1的构成串行码波形图

从上图中可以发现,位“0”、“1”均以0.565ms的高电平开始,不同的是低电平的宽度不同,“0”为0.56ms,“1”为1.685ms,所以可以根据低电平的宽度区别“0”和“1”。如果从0.565ms高电平过后,开始延时,0.56ms以后,若读到的电平为高,说明该位为“0”,反之则为“1”,为了可靠起见,延时必须比0.56ms长些,但又不能超过1.125ms,否则如果该位为“0”,读到的已是下一位的低电平,因此一般取(1.125ms+0.56ms)/2≈0.84ms。

C51源程序如下:

相关问答

如何快速学习和掌握 单片机 知识及 应用 ?

单片机的学习只要掌握相应的方法,而且你又一点点相应的基础是完全能够快速掌握的,你需要从下面几个方面进行切入。1.学会读单片机的数据手册,了解他的外设功...

单片机 能否点亮家庭电路中的灯?怎么实现?

单片机控制电灯是极为简单的事情单片机其实就是一个微型“电脑”,它集成了CPU、RAM、ROM、I/O、定时器、中断等等功能。单片机工作需要直流电供电,一般是5V或...

单片机的 按键怎么外接-ZOL问答

1、每个I/O端口接一个按键:按键接另一端通常是接地,I/O口通常还应该接一个上拉电阻,有些单片机的I/O口可以配置成内部上拉,就不需要外接上拉电阻了。这种接法的...

51 单片机 ,用外部中断0和外部中断1实现:1个七段LED数码管显示值加1和减1。程序怎么编?

另类计数器,仿真实例,可以参考一下,仿真试试。功能,1个主机---3个从机,主机按键1#、2#、3#、分别控制从机1、2、3、按钮按一下加1,从机x1#控制主机...

sgp30怎么发送数据到 单片机 ?

SGP30是一种用于检测室内空气质量的传感器模块。要将SGP30传感器模块的数据发送到单片机,您可以按照以下步骤进行操作:1.连接硬件:将SGP30模块连接到单片机...

有哪些非常好的嵌入式书籍推介?

大概可以总结为C语言-->数据结构-->shell-->Linux应用-->内核-->51单片机-->STM32当然这个也是嵌入式的一个学习路线,从基础开始......

现在 单片机 发展到什么程度了?

51、AVR、STM8、STM32这些主流单片机笔者都用过,要说到单片机的发展程度还得看STM32,因为在当代STM32已然成为高性能单片机的标志了。这时候可能会有人要说我们...

CPU历史上著名的破解事件有哪些?

历史上比较著名的破解有AMD“赛扬”钻龙铅笔画金桥、E2140短接针脚超频、AMD开核、华擎H110上八代i3-8100等几个经典案列,比如再早的赛扬300A因为实在太过久远...

数字电子技术里的哪些知识会 应用 到嵌入式中?

问这类“数字电子技术里的哪些知识,会应用到嵌入式中”问题的,应该是刚刚入门不久的新手。芯片哥就按照自己多年的相关工作经验,来回答你的问题。主要从两个...

请教 单片机 在开关电源中都有哪些 应用

[最佳回答]PWM控制,AD采集反馈信号,做稳压处理

猜你喜欢