电机控制PWM(MCPWM)

2023-11-13

引脚

类型 

描述 

MC0A0-2 

通道0-2,输出A 

MC0B0-2 

通道0-2,输出B 

MCABORT 

低电平有效的快速中止

MCI0-2 

输入0-2 


MCPWM含有3个独立的通道,每个通道包括:
1个32位定时器/计数器(TC); 

1个32位界限寄存器(LIM); 

1个32匹配寄存器(MAT); 

1个10位死区时间寄存器(DT)和相应的10位死区时间计数器; 

1个32位捕获寄存器; 

2个极性可调整的输出(MCOA和MCOB); 

 1个周期中断、1个脉宽中断和1个捕获中断。

输入引脚MCI0-2可触发TC捕获或使通道的计数值加1。全局异常中断输入可强制所有通道进入“有效”状态并产生一个中断。




占空比:在一串理想的脉冲周期序列中(如方波),正脉冲的持续时间与脉冲总周期的比值。

脉冲宽度:从学术角度讲就是电流或者电压随时间有规律变化的时间宽度。


输出模式:直接输出PWM波形。

计数模式:若通道MODE位在MCCNTCON中置位,那么通道的TC将在MC0-2输入的上升沿和/或下降沿(同时被检测的)上加1。

捕获模式:当输入信号发生跳变时,每个PWM通道可捕获TC的瞬时值。在MCCAPCON寄存器的控制下,任意通道都可在任意或所有MCPWM输入0-2的上升沿和/或下降沿上产生捕获事件。


MCPWM包括3个通道,每个通道均控制一对输出,接着这些输出可控制某些片外操作,例如控制电机中的一组线圈。每个通道都包括一个通过处理器时钟(定时器模式)或输入引脚(计数器模式)使之递增的定时器(TC)寄存器。

每个通道都有一个与TC值比较的界限寄存器。当出现匹配时,TC通过两种方式之一进行“复位”。在“边沿对齐模式”中,TC复位为0,而在“中心对齐模式”中,如果匹配出现,TC将切换到一种状态,该状态下每经过一个处理器时钟TC减1,直至为0,此时它再次开始递增计数。

每个通道还包括一个其值比界限寄存器小的匹配寄存器。在边沿对齐模式,通道的输出在TC与匹配寄存器或界限寄存器的值相匹配时进行切换,而在中心对齐模式,只在TC与匹配寄存器的值相匹配时才切换。

因此界限寄存器控制输出的周期,而匹配寄存器控制每个输出周期内每种状态所占用的时间。如果输出叠加到电压,在界限寄存器中保存一个小的值会最大限度地减少“纹波”,并允许MCPWM控制高速器件。

分辨率和周期/频率之间的平衡是脉宽调制器设计始终存在的问题。


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

电机控制PWM(MCPWM) 的相关文章

  • StrongSORT:Make DeepSORT Great Again

    1北京邮电大学2中国网络系统与网络文化北京市重点实验室 摘要 现有的多目标跟踪 Multi Object Tracking MOT 方法大致可以分为基于检测的跟踪和联合检测关联两种范式 虽然后者引起了更多的关注 并显示出与前者相当的性能 但
  • 在Android studio中Intent的几种基本使用方法

    在Android开发中 Intent是最基本也是最常用的操作 在Activity Service BroadcastReceiver这些核心组件中也需要Intent进行操作 下面我们具体介绍Intent在开发中的一些基本用法 假定目前有Fi
  • 第三方支付 -----支付宝支付流程

    大家都知道 第三方支付 已经普遍都在使用 所以我今天就说一下支付宝的支付流程 首先进入支付宝平台 点击开发中心 研发服务 获得沙盒的appid以及商户公钥和支付宝公钥 然后利用秘钥生成软件生成私钥和公钥 建立keys文件夹 将私钥和公钥文件
  • 将日期字符串转成LocalDateTime

    如果直接用LocalDateTime parse将日期字符串 yyyy MM dd 转成LocalDateTime会导致报错 所以我这里提供了将日期字符串转成LocalDateTime的方法 仅供参考 如有更好方式 欢迎大家分享 impor
  • WSL2报错:nvidia-smi Command ‘nvidia-smi‘ not found, but can be installed with:

    这里写自定义目录标题 找了很多方法 解决 分割线 WSL2部署 找了很多方法 在社区找了很多方法 结果在b站评论区找到了一个方法给解决了 原本一开始有人说是驱动版本问题 我nvcc V是ok的 但是nvidia smi一直报错 Comman
  • LaTeX排版(一):字体、页眉页脚、页边距、行距的设置

    目录 字体设置 布局设置 页眉页脚设置 行距的设置 其他 字体设置 字体设置需要用到宏包fontspec 需要在导言区添加如下指令 usepackage fontspec 中英文字体都可以分为如下3种 正文字体族 无衬线字体族 打字机字体族
  • 十进制转十六进制 C++

    目录 题目描述 思路分析 AC代码 题目描述 编写一个函数 传入一个十进制的正整数 将十进制整数转换为十六进制的字符串并返回 十六进制字符串中的字母全部大写 输入描述 键盘输入一个十进制的正整数 输出描述 输出该十进制整数转换后的十六进制字
  • 硬盘柱面损坏怎么办_最靠谱的机械硬盘坏道修复工具一:DiskGenius

    DiskGenius是一款硬盘分区 数据修复软件 DiskGenius的功能非常丰富 然而很多时候 我们都只是用DiskGenius来分区硬盘 对硬盘进行一些常规性能的操作 常常忽略了DiskGenius最重要的一个功能 那就是机械硬盘的坏
  • vue 按钮权限

    项目中按钮的操作权限我们可以直接使用 v if 判断就行 但是每个页面都要写一堆判断不太雅观 所以 可以写一个全局函数或者自定义指令 两种方式优雅的实现 一 全局函数 一般在登陆接口中后台就把权限列表信息提供了 可以把他存到缓存或者vuex
  • 从零开始完成YOLOv5目标识别(三)用PyQt5展示YOLOv5的识别结果

    往期内容 从零开始完成Yolov5目标识别 二 制作并训练自己的训练集 从零开始完成Yolov5目标识别 一 准备工作 目录 往期内容 一 项目框架 二 核心内容 1 QtDesign设计 2 检测部分 2 1 导包 2 2 main py
  • js-image-compressor 图片压缩插件

    1 安装插件 npm i js image compressor 2 引入 import ImageCompressor from js image compressor 3 使用 compressionImage file return
  • 加入ehcache后,系统出现内存泄漏,解决办法

    最近在系统中 加入缓存ehcache 但发现 每隔一天 服务器就会报出内存溢出 问题严重 后来在网上查资料发现 一篇解释的网文 spring中的提供了一个名为org springframework web util Introspector
  • Android从源码分析RecyclerView四级缓存复用机制一(缓存ViewHolder)

    RecyclerView相比较ListView先说多了多布局和缓存 目前已经在Android列表中大量普及使用 面试中也经常问到 所以对于RecyclerView的四级缓存机制也叫复用回收机制的分析很有必要 这部分很重要请 全村人来听 先说
  • Understanding Dataset Design Choices for Multi-hop Reasoning

    Understanding Dataset Design Choices for Multi hop Reasoning NAACL 2019 阅读笔记 记录论文中几个有趣的实验 1 单句包含答案实验 首先做了一个简单的实验 给模型输入一个
  • 游戏盾原理和优势

    什么是游戏盾呢 游戏盾是DDoS高防IP产品系列中针对游戏行业的安全解决方案 游戏盾专为游戏行业定制 针对性解决游戏行业中复杂的DDoS攻击 游戏CC攻击等问题 目前以对抗的形式存在的高防产品形态 也就是防御带宽要大于攻击者的流量 游戏盾有
  • 最大熵算法及简单例子

    最近在学模式识别 正在看Introduction to Pattern Recognition这本书 挺不错的一本书 好 下面和大家一起来学习最大熵算法 首先 最大熵算法是干什么的呢 一般是用来估计一个分布 至于把分布估计出来之后用来干什么
  • 程序员必备的画图工具

    作者 CUGGZ 来源 前端充电宝 XMind 是一个跨平台的思维导图软件 具有多种结构样式 除了普通的思维导图 还包括树形图 逻辑图 鱼骨图 时间轴 树状表格等等 不同的结构样式可以自由组合混用 同时支持一键更换结构样式 最近经常有小伙伴
  • 编译安装 Nginx 提示:/configure: error: C compiler cc is not found

    问题产生背景 反向代理服务器需要增加探活功能 需要对前置nginx 进行重新编译安装第三方模块 发现在编译安装配置时候一直过不去 百度查询过很多解决办法 基本都是没有安装好编译环境之类的说法 但是在确定编译环境所涉及的包全部都安装以后 还是
  • idea必备开发插件.

    1 lombok 支持lombok的各种注解 从此不用写getter setter这些 可以把注解还原为原本的java代码 非常方便 https plugins jetbrains com plugin 6317 lombok plugin

随机推荐

  • 2022 RoboCom 世界机器人开发者大赛-本科组(省赛)-RC-u5 树与二分图

    2022 RoboCom 世界机器人开发者大赛 本科组 省赛 RC u5 树与二分图 文章目录 2022 RoboCom 世界机器人开发者大赛 本科组 省赛 RC u5 树与二分图 题目描述 输入格式 输出格式 输入样例 输出样例 思路 A
  • 感知机分类学习

    感知机 perceptron 是一种二类分类的线性分类模型 也就是说 使用于将数据分成两类的 并且数据要线性可分的情况 线性可分是指存在一个超平面能够将空间分成两部分 每一部分为一类 感知机的目的就在于找这样的一个超平面 假设输入数据形式为
  • pandas入门

    pandas is a fast powerful flexible and easy to use open source data analysis and manipulation tool 一 读取文本文件中的数据 导入pandas
  • Python之创建多级菜单

    方法一 usr bin env python coding utf 8 Time 2021 11 25 19 09 Author Argonaut FileName 创建多级菜单 py 功能 可进可退的功能菜单 while True pri
  • 将C盘和桌面所在的E盘合并分区后,出现的路径问题解决方案

    问题一 开机时出现警告 由于启动计算机时出现页面配置问题 Windows在您的计算机上创建了一个临时页面文件 所有的磁盘驱动器的总页面大小可能稍大于您所指定的大小 解决方案 照着做就行 问题二 Windows 10系统开机显示 位置不可用C
  • shell脚本整段注释

    摘自 http zhidao baidu com link url XmCCZmfluRe6n8TjPRKJTx4GGOUPSGX1VNBm euqGdpKGpveTESxC0HL90UBNT5nZCvmvfq2oIJdP3JO5EoPSq
  • STM32关于PVD低电压能检测的知识

    在实际工程运用中需要对突发情况作出及时的相应 通常都需要考虑当系统电压下降或断电时 需要对控制系统加以保护 这时候就需要在程序中加入系统电压监测 PVD 供电电压降低到某一个电压值时 需要系统进入保护状态 执行紧急关闭任务 对系统数据进行保
  • DDR基础知识点汇总

    文章目录 文档推荐 DDR颗粒的电路图来源 DDR3 SDRAM电路结构高清图 DDR4 SDRAM电路结构高清图 DDR3 1866控制器 PHY 颗粒之间的带宽关系 channel gt DIMM gt rank gt chip gt
  • docker镜像中配置文件的修改

    docker镜像中配置文件的修改 需要修改docker里面的配置文件时 因为docker镜像里面没有vim 下载也比较麻烦 可以使用 docker cp docker镜像名 想要修改的文件的路径 想要复制到的路径 将镜像中的文件复制到镜像外
  • ARM芯片开发(S5PV210芯片)——定时器、看门狗、RTC

    1 计数器 计数器就是每隔一段固定的时间计数值就加一 于是我们可以根据计数值来计算时间 经过的时间 计数值x计数时间间隔 2 定时器 2 1 定时器介绍 定时器具有计时的功能 类似于我们手机自带的倒计时功能 比如我们先给定时器设置计时一小时
  • 从瀑布到敏捷——漫画解读软件开发模式变迁史

    网址 https www tapd cn forum view 36971 从文章中可知 1 瀑布模型 将客户隔绝在外并按顺序逐一完成的模式 从时间上来说 只有等上一交付件完成了 下一阶段才能开始是一种浪费 特点 文档驱动 单道生产 2 敏
  • JVM--基础--21--对象的内存布局

    JVM 基础 21 对象的内存布局 1 普通对象实例与数组对象实例的数据结构图 2 在HotSpot虚拟机中 对象在内存中存储的布局如下 2 1 对象头 Header 2 1 1 markword 用于存储对象自身的运行时数据 如哈希码 H
  • 递增二叉树-网易游戏

    递增二叉树 网易游戏 题目描述 给定一个二叉树 每个节点有一个正整数权值 若一棵二叉树 每一层的节点权值和都严格小于下一层的结点权值和 责成这棵二叉树为递增二叉树 现在给你一棵二叉树 你需要判断其是不是一棵递增二叉树 输入描述 输入的第一行
  • Redis的数据结构之bitmap

    背景 项目开发过程中 我们经常会使用boolean类型来存储数据 例如记录用户每天签到 签到了是1 没签则为0 如果我们需要统计一年内的签到数 如果采用String来存储 需要每个用户都要记录 365次 当用户数量非常大时 需要的存储空间非
  • Docker基础入门:镜像、容器导入导出与私有仓库搭建

    Docker基础入门 镜像导入导出与私有仓库搭建 一 Docker镜像 容器的导入和导出 1 1 Docker镜像的导出 1 2 Docker镜像的载入 1 3 Docker容器的导出 1 4 Docker容器的导入 二 镜像和容器导出和导
  • MPEG-1中I、B、P帧的基本编码原理

    在上篇文章中 我们对MPEG 1有了一个轮廓性的介绍 知道视像序列中的图像类型有三种 分别为I帧 P帧 和B帧 但是我们并没有更深入的去了解 编码这三种类型的图像数据时所采用的不同方式 只知道它们都是把图像分为以16x16像素的宏块 8x8
  • Java虚拟机14:Java对象大小、对象内存布局及锁状态变化

    一个对象占多少字节 关于对象的大小 对于C C 来说 都是有sizeof函数可以直接获取的 但是Java似乎没有这样的方法 不过还好 在JDK1 5之后引入了Instrumentation类 这个类提供了计算对象内存占用量的方法 至于具体I
  • windows下安装jupyter,出现问题SyntaxError: invalid syntax

    windows下安装jupyter SyntaxError invalid syntax 问题 解决方法 进入jupyter 问题 解决方法 推出python 直接在cmd 下执行安装命令 虽然问题解决了 但是觉得很奇怪 不应该是在pyth
  • stm32 can协议实战

    参考的为野火的教程 开发板是指南者 只能做回环测试 但是没关系 主要是记录can协议的用法和can外设 canopen协议写完了can协议再说 一 理论部分 1 can协议的介绍 首先介绍一下can 如图 只是介绍一下背景 2 can物理层
  • 电机控制PWM(MCPWM)

    引脚 类型 描述 MC0A0 2 O 通道0 2 输出A MC0B0 2 O 通道0 2 输出B MCABORT I 低电平有效的快速中止 MCI0 2 I 输入0 2 MCPWM含有3个独立的通道 每个通道包括 1个32位定时器 计数器