PWM再理解(1)

前言

昨天过于劳累,十点睡觉,本来想梳理一下PWM,今天补上。

PWM内涵

PWM全称:Pulse Width Modulation,也就是脉宽调制的意思,字面意思理解就是对脉冲的宽度进行改变。准确就是通过数字输出对模拟电路进行控制,将连续信号转化为脉冲信号,进一步通过调节脉冲的宽度表达原始信号的信息。
组成:固定频率的高电平脉冲和一个可变宽度的低电平脉冲
占空比:高电平时间占整个周期时间的比例。
这里有一个面积等效定理
对于使用脉冲信号来表达模拟电压这个过程,有一个面积等效原理,下面是一个简单的例子:
假设PWM信号高电平为5V,而低电平为0V,周期为1s,占空比为50%。那么在1s时间内输出的模拟电压等于:5V*0.5s/1s=2.5V,其实就是将5V下面的面积平均到整个周期1s内,就得到了2.5V的模拟电压。理论上调节这个占空比参数可以输出任意的0-5V之间的电压,这其实也就是PWM最核心的工作原理。
经常用到得到场合有电机调速,舵机控制,开关电源控制,灯光亮度调节等。
尤其在开关电源的应用场合,最后所用到的功率FET的导通时间与总开关时间的比值其实就是所用到的PWM波的占空比。

如何用FPGA生成PWM波实例:

手上正好有一个FPGA的板子,用FPGA来生成一个PWM波与使用一些常见的开发板还有点不太一样,例如arduino,STM32等。这里先介绍一下使用FPGA生成这种波形的核心原理:

  • 原理部分
    首先还是从PWM生成的过程出发,主要就是用一个可以改变的信号值同一个锯齿波进行比较,也就是经常听到的载波和调制波。当调制波大于载波时,输出高电平;反之输出低电平。但是在FPGA中要实现这种功能就需要用到其特有的计数器编程方式。也就是在一个周期内,以上面提到的锯齿波为例,设置一定的位宽,让这个计数器从0开始计数,同时比较值信号也设置一个相同位宽的计数器,且初始值为0,当锯齿波计数器计数到最大值时候,这个参考计数器同时开始计数为1,并且当第一个计数器大于第二个计数时候,第二个计数器开始累加。一大堆文字有些抽象,直接上图:
    在这里插入图片描述
    具体的程序实现,请见下回。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 01:56:01       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 01:56:01       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 01:56:01       58 阅读
  4. Python语言-面向对象

    2024-07-19 01:56:01       69 阅读

热门阅读

  1. 数据库(Database,简称DB)介绍

    2024-07-19 01:56:01       20 阅读
  2. x264、x265、libaom 编码对比实验

    2024-07-19 01:56:01       22 阅读
  3. Bootstrap apexLine后端数据与前端Asp.net MVC数据交互

    2024-07-19 01:56:01       21 阅读
  4. DW1000在STM32环境下实现定位功能

    2024-07-19 01:56:01       23 阅读
  5. Vue3快速入门1

    2024-07-19 01:56:01       22 阅读
  6. 微信小程序:3.页面开发

    2024-07-19 01:56:01       21 阅读
  7. MySQL简介

    2024-07-19 01:56:01       19 阅读
  8. Vue + litegraph.js 实现蓝图功能

    2024-07-19 01:56:01       25 阅读
  9. c语言(函数7.18)

    2024-07-19 01:56:01       24 阅读
  10. RK3568 linux-5.10 rk809 声卡实现spk hp自动切换

    2024-07-19 01:56:01       22 阅读
  11. 蜣螂算法(BSO)及Python和MATLAB实现

    2024-07-19 01:56:01       21 阅读
  12. A. Little Nikita

    2024-07-19 01:56:01       20 阅读
  13. Ubuntu22,ROS2 colcon/cmake 编译卡死问题解决

    2024-07-19 01:56:01       20 阅读
  14. Mongodb文本索引

    2024-07-19 01:56:01       18 阅读