EPWM初学笔记

news2024/11/24 11:07:35

时钟

 PCLKCR0
 PCLKCR1

EPWM总体预览

三部分就可以简单的使用EPWM

时基模块,比较模块,动作限定模块

时基模块

TBCTL时基控制寄存器

TBCTR计数寄存器

 TBPHS相位寄存器

TBPRD周期寄存器

 

比较模块

CMPCTL比较控制寄存器

影子模式,加载模式

 CMPA比较寄存器A

 

 

动作限定模块

动作限定A和B控制寄存器都是一样

程序

/*
 * epwm.c
 *
 *  Created on: 2023年12月5日
 *      Author: Administrator
 */
#include"epwm.h"
void epwm_init(Uint16 zhouqi)
{
	EALLOW;
	SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 0;
	SysCtrlRegs.PCLKCR1.bit.EPWM6ENCLK = 1;
	EDIS;
	InitEPwm6Gpio();
	
	//时基控制寄存器配置
	EPwm6Regs.TBCTL.bit.SYNCOSEL = 0x03;//禁止EPWM_SYNCO
	EPwm6Regs.TBCTL.bit.PHSEN = 0;//禁止从相位寄存器 加载
	EPwm6Regs.TBCTL.bit.CTRMODE = 0;//向上计数模式
	EPwm6Regs.TBCTL.bit.CLKDIV = 0;//分频1
	EPwm6Regs.TBCTL.bit.HSPCLKDIV = 0;分频2

	//相位寄存器赋值
	EPwm6Regs.TBPHS.half.TBPHS = 0;


	EPwm6Regs.TBCTR = 0;//计数

	EPwm6Regs.TBPRD = zhouqi;//周期

	//配置比较控制寄存器
	EPwm6Regs.CMPCTL.bit.SHDWAMODE = 0;
	EPwm6Regs.CMPCTL.bit.SHDWBMODE = 0;
	EPwm6Regs.CMPCTL.bit.LOADAMODE = 0;
	EPwm6Regs.CMPCTL.bit.LOADBMODE = 0;


	EPwm6Regs.CMPA.half.CMPA = 0;//比较值
	EPwm6Regs.CMPB = 0;


	EPwm6Regs.AQCTLA.bit.CAU = 2;//输出高
	EPwm6Regs.AQCTLA.bit.ZRO = 1;//输出低

	EPwm6Regs.AQCTLB.bit.CAU = 2;//输出高
	EPwm6Regs.AQCTLB.bit.ZRO = 1;//输出低


	EPwm6Regs.ETSEL.bit.INTEN = 1;//中断使能
	EPwm6Regs.ETSEL.bit.INTSEL = 1;//计数器等于0时候产生

	EALLOW;
	SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 1;//同步
	EDIS;
}

void EPWM6_set_compara(Uint16 zhouqi,Uint16 zhanbi)
{

	EPwm6Regs.TBPRD = zhouqi;//周期
	EPwm6Regs.CMPA.half.CMPA = zhanbi;
	EPwm6Regs.CMPB = zhanbi;
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1288101.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言进阶之路-指针、数组等混合小boss篇

目录 一、学习目标: 二、指针、数组的组合技能 引言 指针数组 语法 数组指针 三、勇士闯关秘籍 四、大杂脍 总结 一、学习目标: 知识点: 明确指针数组的用法和特点掌握数组指针的用法和特点回顾循环等小怪用法和特点 二、指针、数…

avamar DD组合的备份故障

证书过期导致的失败 先是显示DD页面崩了 Avamar DD 集成 — DD 在 Avamar AUI/GUI 中显示红色解决方案路径 | Dell 中国 排查了一番 尝试了重启DD 然而并没用 然后尝试更新证书 页面确实起来了 但是证书还是更新失败 确定原因还是因为版本太低而宣告失败 证书更新失败 …

自助POS收银机-亿发互联网收银解决方案助力零售业迎接数字经济挑战

零售业作为中国经济的主动脉,扮演着至关重要的角色。最新发布的《中国线下零售小店数字化转型报告》揭示了当前线下零售小店所面临的多重痛点,经营方式传统、滞后的内部管理和营销模式,以及缺乏消费数据等问题,这些痛点都指明&…

C语言 - 字符函数和字符串函数

系列文章目录 文章目录 系列文章目录前言1. 字符分类函数islower 是能够判断参数部分的 c 是否是⼩写字⺟的。 通过返回值来说明是否是⼩写字⺟,如果是⼩写字⺟就返回⾮0的整数,如果不是⼩写字⺟,则返回0。 2. 字符转换函数3. strlen的使⽤和…

一文读懂中间件

前言:在程序猿的日常工作中, 经常会提到中间件,然而大家对中间件的理解并不一致,导致了一些不必要的分歧和误解。“中间件”一词被用来描述各种各样的软件产品,在不同文献中有着许多不同的中间件定义,包括操…

住宅IP代理如何选择?如何识别高质量的住宅IP代理服务商

选择海外住宅IP代理时,了解其评估标准、优势和实际应用至关重要。住宅IP代理不同于其他类型的代理,它提供更高的匿名性和较低的封禁风险,适用于多种网络场景。本指南将深入分析如何根据服务质量、速度、安全性和客户支持等关键因素&#xff0…

数学建模之相关系数模型及其代码

发现新天地,欢迎访问小铬的主页(www.xiaocr.fun) 引言 本讲我们将介绍两种最为常用的相关系数:皮尔逊pearson相关系数和斯皮尔曼spearman等级相关系数。它们可用来衡量两个变量之间的相关性的大小,根据数据满足的不同条件,我们要…

uniapp 微信小程序连接蓝牙卡死 uni.onNeedPrivacyAuthorization

解决方法,需要同意隐私保护协议,否则不能开启蓝牙权限和定位权限,会导致连接蓝牙失败

【Vue】使用cmd命令创建vue项目

上一篇: node的安装与配置 https://blog.csdn.net/m0_67930426/article/details/134562278?spm1001.2014.3001.5502 目录 一.创建空文件夹专门存放vue项目 二. 查看node , npm 和vue脚手架的版本 三.安装vue脚手架 四.创建vue项目 五.运行项目 一.创建空文件…

在Windows11(WSL)中如何迁移Docker

前言: 在Windows 10中Docker是默认安装到WSL中的,而安装到WSL中的任意分发版都是默认放在C盘中的。这样会让我们的C盘资源极度紧张,而且也限制了Docker的镜像数量。 迁移步骤 假设我有一个临时目录“D:\docker”用来存放临时文件,…

基于ssm vue的社区互助平台源码和论文

摘 要 随着社区互助规模的不断扩大,社区互助数量的急剧增加,有关社区互助的各种信息量也在不断成倍增长。面对庞大的信息量,就需要有社区互助管理来提高社区互助管理工作的效率。通过这样的系统,我们可以做到信息的规范管理和快速…

【从零开始学习JVM | 第一篇】快速了解JVM

前言: 在探索现代软件开发的丰富生态系统时,我们不可避免地会遇到一个强大而神秘的存在——Java虚拟机(JVM)。作为Java语言最核心的组成之一,JVM已经超越了其最初的设计目标,成为一个多语言的运行平台&…

nacos启动报错 java.lang.RuntimeException: [db-load-error]load jdbc.properties error

以standalone mode sh startup.sh -m standalone 为例子 启动nacos 报错: Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcatat org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(To…

【九】linux下部署frp客户端服务端实践(内网穿透)

linux下部署frp客户端服务端实践 简介: 今天有一个这样的需求,部署在公司内部局域网虚拟机上的服务需要在外网能够访问到,这不就是内网穿透的需求吗,之前通过路由器实现过,现在公司这块路由器不具备这个功能了&#x…

『亚马逊云科技产品测评』活动征文|基于亚马逊EC2云服务器配置Nginx静态网页

授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道 亚马逊EC2云服务器(Elastic Compute Cloud)是亚马…

网络安全威胁——中间人攻击

中间人攻击 1. 定义2. 中间人攻击如何工作3. 常见中间人攻击类型4. 如何防止中间人攻击 1. 定义 中间人攻击(Man-in-the-Middle Attack,简称MITM),是一种会话劫持攻击。攻击者作为中间人,劫持通信双方会话并操纵通信过…

生产环境_从数据到层级结构JSON:使用Spark构建多层次树形数据_父子关系生成

代码补充了!兄弟萌 造的样例数据 val data Seq(("USA", "Male", "Asian", "Chinese"),("USA", "Female", "Asian", "Chinese"),("USA", "Male", "Bl…

flask web学习之flask与http(一)

文章目录 一、请求响应循环二、HTTP请求1. 请求报文2. request对象3. 在flask中处理请求3.1 路由匹配3.2 设置监听的http方法3.3 URL处理 三、请求钩子 一、请求响应循环 每一个web应用都包含这种处理方式,请求-响应循环:客户端发出请求,服务…

Linux【缓冲区】

欢迎来到Cefler的博客😁 🕌博客主页:那个传说中的man的主页 🏠个人专栏:题目解析 🌎推荐文章:题目大解析(3) 目录 👉🏻缓冲区是什么?为…

23、pytest通过skip跳过测试用例

官方实例 # content of test_skip.py import pytest import syspytest.mark.skip(reason"no way of currently testing this") def test_the_unknown():passdef valid_config():return Falsedef test_function():if not valid_config():pytest.skip("unsupport…