STM32入门(四)PWM与电机驱动

一、PWM
所谓PWM,就是脉冲宽度调制技术,其具有两个很重要的参数:频率和占空比。频率,就是周期的倒数;占空比,就是高电平在一个周期内所占的比例。PWM方波的示意图如下图所示。

在上图中,频率F的值为1/(T1+T2),占空比D的值为T1/(T1+T2)。通过改变单位时间内脉冲的个数可以实现调频;通过改变占空比可以实现调压。占空比越大,所得到的平均电压也就越大,幅值也就越大;占空比越小,所得到的平均电压也就越小,幅值也就越小,动图演示如图所示。

当占空比D=0时,电机端电压为0,电机停转。当D=0.5时,电机端电压有效值等效为电池电压的一半,电机以中等速度旋转。当D=1时,电机端电压等于电池电压,电机全速旋转。

L298N电机驱动:
通过单片机输出PWM控制使能端进而控制直流电机的转速,实现前进、后退、转弯

引脚的接法如下。

1.电源部分
12v power : 接 7~12 v 直流电源。
Power GND : 接地口。
5v power: 这个需要接GPIO 口 的 5v 输出接口。

2.输入部分
A Enable : 接 GPIO 口。电机 A 使能和 PWM 调速。

Logic Input : 接 4 个 GPIO 口。上面两个脚 Input1 、Input2 (靠近 A Enable )控制电机 A;下面两个脚 Input3、Input4 (靠近 B Enable)控制电机 B。

B Enable : 接 GPIO口。电机 B 使能和 PWM 调速。

3.输出部分:
Output A : 接电机 A 。
Output B : 接电机 B 。

总结一下就是 A Enable 、Input1、Input2 控制电机 A 的运行,B Enable、Input3、Input4 控制电机 B 的运行。
A 电机是指左边的电机,B 电机是指右边的电机。这里我们一边同时接两个电机。

如何控制的呢? 下面是对电机 A 进行控制的真值表。

按照真值表的指示,给各个接口施加相应的高低电平,电机就可以工作了。

STM32入门(四)PWM与电机驱动相关推荐

  1. STM32入门笔记——PWM

    PWM概述 1.什么是PWM PWM是一种对模拟信号电平进行数字编码的方法.通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码.PWM信号仍然是数字的,因为在给定的任何时 ...

  2. STM32入门笔记(02):定时器之定时器中断、输入捕获和PWM输出(SPL库函数版)

    目录 定时器 8个定时器 定时器功能 定时器中断 常用通用定时器的寄存器 定时器中断实验目的: 定时器库函数及步骤 实验程序讲解 PWM 简介 STM32 PWM工作过程 PWM模式1 与 PWM模式 ...

  3. 嵌入式STM32入门之定时器控制LED闪烁与产生PWM脉冲宽度调制信号

    定时器控制LED闪烁与产生PWM脉冲宽度调制信号 一.前言 二.定时器基本介绍 (一)STM32定时器 (二)通用定时器主要功能 (三)计数器模式 (四)定时器工作原理 三.实验(1)初识定时器 (一 ...

  4. STM32入门开发: 制作红外线遥控器(智能居家-万能遥控器)

    一.环境介绍 MCU: STM32F103ZET6 编程软件环境: keil5 红外线传输协议:  NEC协议---38KHZ载波:.NEC协议是红外遥控协议中常见的一种. 编码发送思路:  延时函数 ...

  5. stm32入门——定时器中断和中断优先级简介

    stm32入门--定时器中断 产生定时中断是定时器的用法之一,与定时器用来进行PWM输出和输入捕获相比,定时器中断更容易理解.掌握. 原理简介 使用通用定时器进行中断的原理,其实和开发板Systick ...

  6. STM32的四种开发方式

    STM32的四种开发方式 首先看下ST官方给出的四种开发方式的比较 寄存器开发 寄存器编程对于从51等等芯片过渡过来的小伙伴并不陌生,不管你是什么库,最终操作的还是寄存器,所以对于标准库.HAL库.L ...

  7. STM32实战六 PWM加移相正交

    这一章编写PWM程序,使用TIM3以两个通道,完全映射到PC6和PC7,除普通PWM输出外,增加移相正交PWM功能,为后面的编码器计数模式提供信号源. PWM.h #ifndef __PWM__ #d ...

  8. 【转载】如何学习STM32?STM32入门学习经验总结

    一.入门总结 1.1为什么要把时间花在"犹豫"上? 每当我们在入门之前(ARM是这样,DSP也一样),总会有很多疑问,会有很多顾虑.我们渴望知道学习STM32前景如何?需要啥基础? ...

  9. STM32入门篇2之外部中断

    外部中断 STM32入门统一版完整链接(更新中): 中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置 ...

最新文章

  1. 2021年Facebook博士生奖研金名单公布!一半获奖者是华人博士生
  2. CentOS6安装devtoolset(使用高版本gcc)GCC 4.8 GCC 4.9 GCC 5.2
  3. 七桥问题属于计算机科学方法论中的,计算机科学与技术方法论-计算学科中的科学问题ppt...
  4. 吕梁离石学校计算机专业在哪里,山西吕梁计算机大专学校有哪些太重技校告诉您...
  5. Python3.6学习笔记(四)
  6. C++ 中 new 操作符内幕:new operator、operator new、placement new
  7. laravel5.1 基于redis实现任务队列
  8. centos oracle 修改监听服务名_Oracle-Oracle DB、监听和oem开机启动
  9. 工作找了很多,兜兜转转,就是没遇到合适的,怎么办
  10. 【vim环境配置】详细实录
  11. 详解Unity中的粒子系统Particle System (九)
  12. 【创新²】SERO超零协议项目进展双月报
  13. 了解JavaScript语言--如何在HTML中使用JavaScript
  14. Word表格中的孤行控制?
  15. 无线授时服务器接LED屏,实现ipad远程无线控制led大屏幕分以下几个步骤!
  16. 中国石油大学《大学英语(三)统考》第一套模拟题
  17. 心灵的震撼-读《一个少年的梦--京瓷的奇迹》
  18. Vue进阶(幺肆伍):Vue-elementUI实现操作栏位更多效果
  19. 【Rstudio安装后启动失败】
  20. 2022-2-1 leetcode.718.最长重复子数组

热门文章

  1. model的存储与读取
  2. 筛选了几百份简历,明白了为什么大厂要设学历门槛了
  3. 深入浅出TF-IDF模型
  4. 5G来临,互联网如何再次重构电影产业?
  5. Java笔记之abstract类和abstract方法
  6. 三拼域名”持续走热 “三拼”是否具有收藏价值
  7. python相关操作(一)鼠标操作
  8. Threejs 绘制世界地图
  9. 在线给头像加圣诞帽子网站源码
  10. Android语音直播SDK