具体移步:http://bbs.21ic.com/icview-767440-1-1.html


一.ePWM模块

void ePWM2_config()
{EALLOW;SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC=0;EDIS;/*-------------------------------------------------STEP1:设置TB,为输出PWM产生始终基准TBCLK,配置PWM的时钟基准计数器TBCTR,设置计数器的计数模式,配置硬件或软件同步时钟基准计数器,确定ePWM同步信号输出源;-------------------------------------------------*/EPwm2Regs.TBPRD=6000;EPwm2Regs.TBCTR=0;EPwm2Regs.TBCTL.bit.CTRMODE=TB_COUNT_UPDOWN;EPwm2Regs.TBPHS.half.TBPHS=0;EPwm2Regs.TBCTL.bit.PHSEN=TB_DISABLE;/*----------------------------------------------注1:相位寄存器TBPHS和TBCTL.bit.PHSEN+PHSDIR连用,表示在同步输入信号SWFSYNC有效时,在下一个时钟沿,TBCTR自动装入TBPHS的内容,并按照PHSDIR计数方式继续。-----------------------------------------------*/EPwm2Regs.TBCTL.bit.HSPCLKDIV=TB_DIV4;EPwm2Regs.TBCTL.bit.CLKDIV=TB_DIV4;//以上两个共同决定TBCLK频率/*-------------------------------------------------STEP2:设置CC和AQ,确定PWM占空比,以及ePWM输出高低电平切换时间;确定计数器和比较寄存器匹配时产生动作,即ePWM 高低电平的切换;-------------------------------------------------*/EPwm2Regs.CMPA.half.CMPA=3000;EPwm2Regs.AQCTLA.bit.CAU=AQ_SET;EPwm2Regs.AQCTLA.bit.CAD=AQ_CLEAR;EPwm2Regs.AQCTLB.bit.CAU=AQ_CLEAR;EPwm2Regs.AQCTLB.bit.CAD=AQ_SET;/*------------------------------------------------注2:CAU和CAD用于规定增计数和减计数过程中TBCTR=CMPA时输出的动作.CBU和CBD用于规定增计数和减计数过程中TBCTR=CMPB时输出的动作.AQCTLA和AQCTLB用于规定事件发生时ePWMxA和ePWMxB的动作.这里面两路都和CMPA相比较,因而可输出两路互补的波形.当然,在非互补时,CMPA和CMPB不同,因而有一定的时间延迟(可转换成角度).-------------------------------------------------*//*-------------------------------------------------STEP3:设置DB,为了使互补信号电平转换(边沿)时刻,上下两个器件不能同时导通,必须保证二者的开启时间不能重叠,因此要插入波形上升沿或下降沿延时时间-------------------------------------------------*/EPwm2Regs.DBCTL.bit.OUT_MODE=DB_FULL_ENABLE;    //死区使能EPwm2Regs.DBCTL.bit.POLSEL=DB_ACTV_HIC;         //极性选择,两路延时后输出均不反向EPwm2Regs.DBRED=20;EPwm2Regs.DBFED=20;                             //死区时间/*-------------------------------------------------STEP4:设置 EZ,使能ePWM中断,使能ePWM触发ADC采样,以及确定事件产生触发的速度和清除相关事件标志位。-------------------------------------------------*/EPwm2Regs.ETSEL.bit.INTSEL=ET_CTR_ZERO;EPwm2Regs.ETSEL.bit.INTEN=1;                    //INTEN+INTSEL(ePWM_INT)类型,本次为下溢中断EPwm2Regs.ETPS.bit.INTPRD=ET_3RD;               //ETPS选择触发或中断周期,本次为每3个事件触发一次中断// 注3:进入中断后别忘了 EPwm2Regs.ETCLR.bit.INT=1清除中断EALLOW;SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC=1;EDIS;
}

二.eCAP模块
可用于检测脉冲周期和占空比,本次为检测捕获输入引脚上发生的电平跳变。
注:引脚设置和中断设置,略

void eCap1——config(void)
{ECap1Regs.ECCTL1.bit.CAP1POL = EC_RISING;ECap1Regs.ECCTL1.bit.CAP2POL = EC_RISING;ECap1Regs.ECCTL1.bit.CAP3POL = EC_RISING;ECap1Regs.ECCTL1.bit.CAP4POL = EC_RISING;ECap1Regs.ECCTL1.bit.CTRRST1 = EC_ABS_MODE;ECap1Regs.ECCTL1.bit.CTRRST2 = EC_ABS_MODE;ECap1Regs.ECCTL1.bit.CTRRST3 = EC_ABS_MODE;ECap1Regs.ECCTL1.bit.CTRRST4 = EC_ABS_MODE;ECap1Regs.ECCTL1.bit.CAPLDEN = EC_ENABLE;ECap1Regs.ECCTL1.bit.PRESCALE = EC_DIV1;ECap1Regs.ECCTL2.bit.CAP_APWM = EC_CAP_MODE;ECap1Regs.ECCTL2.bit.CONT_ONESHT = EC_CONTINUOUS;ECap1Regs.ECCTL2.bit.SYNCO_SEL = EC_SYNCO_DIS;ECap1Regs.ECCTL2.bit.SYNCI_EN = EC_DISABLE;ECap1Regs.ECEINT.all=0x0000;//stop all interruptECap1Regs.ECCLR.all=0xFFFF;//clare all flagECap1Regs.ECCTL2.bit.TSCTRSTOP = EC_RUN;// 启动ECap1Regs.ECEINT.bit.CEVT4=1;// Enable cevt4 interrupt
}void eCap2——config(void)
{ECap2Regs.ECCTL1.bit.CAP1POL = EC_FALLING;ECap2Regs.ECCTL1.bit.CAP2POL = EC_FALLING;ECap2Regs.ECCTL1.bit.CAP3POL = EC_FALLING;ECap2Regs.ECCTL1.bit.CAP4POL = EC_FALLING;ECap2Regs.ECCTL1.bit.CTRRST1 = EC_ABS_MODE;ECap2Regs.ECCTL1.bit.CTRRST2 = EC_ABS_MODE;ECap2Regs.ECCTL1.bit.CTRRST3 = EC_ABS_MODE;ECap2Regs.ECCTL1.bit.CTRRST4 = EC_ABS_MODE;ECap2Regs.ECCTL1.bit.CAPLDEN = EC_ENABLE;ECap2Regs.ECCTL1.bit.PRESCALE = EC_DIV1;ECap2Regs.ECCTL2.bit.CAP_APWM = EC_CAP_MODE;ECap2Regs.ECCTL2.bit.CONT_ONESHT = EC_CONTINUOUS;ECap2Regs.ECCTL2.bit.SYNCO_SEL = EC_SYNCO_DIS;ECap2Regs.ECCTL2.bit.SYNCI_EN = EC_DISABLE;ECap2Regs.ECEINT.all=0x0000;//stop all interruptECap2Regs.ECCLR.all=0xFFFF;//clare all flagECap2Regs.ECCTL2.bit.TSCTRSTOP = EC_RUN;// 启动ECap2Regs.ECEINT.bit.CEVT4=1;// Enable cevt4 interrupt
}interrupt void ISRCap1(void)
{// Acknowledge this interrupt to receive more interrupts from group 1PieCtrlRegs.PIEACK.all = PIEACK_GROUP4;ECap1Regs.ECCLR.all=0xFFFF;//clare all flagt1= ECap1Regs.CAP1;t2= ECap1Regs.CAP2;t3= ECap1Regs.CAP3;t4= ECap1Regs.CAP4;  T1=t2-t1;T2=t4-t3;}
interrupt void ISRCap2(void)
{// Acknowledge this interrupt to receive more interrupts from group 1PieCtrlRegs.PIEACK.all = PIEACK_GROUP4;ECap2Regs.ECCLR.all=0xFFFF;//clare all flagt5= ECap2Regs.CAP1;t6= ECap2Regs.CAP2;t7= ECap2Regs.CAP3;t8= ECap2Regs.CAP4;  T3=t6-t5;T4=t8-t7;}

EV:ePWM+eCAP相关推荐

  1. 【DSP】EPWM寄存器

    一. EPWM寄存器介绍 增强型脉宽调制器(ePWM)外设是控制商业和工业设备中许多电力电子系统的关键元件.这些系统包括数字电机控制.开关模式电源控制.不间断电源(UPS)和其他形式的电源转换.ePW ...

  2. 【F28003x】 Enhanced Pulse Width Modulator (ePWM)

    文章目录 简介 子模块参数说明 Time-Base Submodule Trip-Zone(TZ) Submodule TZ子模块作用 Digital Compare(DC) Submodule Pu ...

  3. 【F28335】ePWM模块的简单介绍

     一.F28335的ePWM简介 PWM(Pulse Width Modulation)脉冲宽度调制方式在电力电子的控制场合应用十分广泛,因此数字处理器一般都具有PWM模块,便于PWM控制.F2833 ...

  4. EV代码签名证书,支持Windows 10预览版和正式版驱动签名

    DigiCert EV代码签名证书具有普通内核代码签名证书的所有功能,但不同的是采用更加严格国际标准扩展验证(EV验证),并且有严格的证书私钥保护机制--必须采用 USB Key来保护签名证书的私钥, ...

  5. iphone录屏怎么录声音_ev录屏怎么录制声音 ev录屏声音设置教程

    ev录屏怎么录制声音,小伙伴们也是刚刚使用这款软件,对于软件中很多的功能也还是不太的了解,发现自己录屏出来以后没有声音,对此也不知道该怎么办,想要知道这个ev录屏怎么录制声音,下面就一起来看看吧. P ...

  6. 为什么是红旗EV?一文拆解中国第一款Robotaxi量产车型

    雷刚 发自 凹非寺  量子位 报道 | 公众号 QbitAI 问题只有一个:为什么是一汽红旗EV? 近期自动驾驶大新闻,莫过于马上到来的9月26日,长沙荣誉市民会作为百度自动驾驶出租车项目" ...

  7. DV型、OV型、EV型三种SSL证书 区别

    DV和OV型证书差别 DV型证书不包含企业名称信息:而OV型证书包含企业名称信息,以下是两者差别对比表: 证书类型 DV OV 包含企业名称信息 否 是 验证公司名称合法性 否 是 通过第三方查询电话 ...

  8. 信息系统项目管理师-挣值管理(PV、 AC、 EV、 ETC、 CV、 SV、 CPI、 SP)

    挣值管理(PV. AC. EV. ETC. CV. SV. CPI. SP) 计划工作量的预算费用PV或BCWS=计划工作量 * 预算定额 已完成工作量的实际费用AC或ACWP 已完成工作量的预算成本 ...

  9. 宏光MINI EV收割的年轻人,又被苏宁、小米、欧拉盯上了

    (图片来源于网络,侵删) 文 | 螳螂财经(ID:TanglangFin) 作者|易不二 "人民需要什么,五菱就造什么." 五菱这句话很真诚,但毫无疑问有吹牛的成份在.毕竟,人类的 ...

  10. 用pv操作描述如下前驱图_跟我学PMP | PV、AC、EV…挣值管理的基本概念都是啥?...

    和挣值管理相关的有三个比较重要的基本概念. 首先是项目的计划价值,简称为PV(Plan Value). 这是为计划工作分配的经批准的预算.它是为了完成某个活动或WBS的组成部分而准备的一份经过批准的预 ...

最新文章

  1. 最新研究 | 人类大脑皮质对有声调和非有声调语言的音高编码
  2. python3菜鸟-菜鸟笔记Python3——数据可视化(一)
  3. Linux安装phpMyAdmin详细步骤
  4. 解决卸载时残留目标文件夹的问题
  5. 代理对象我所理解的设计模式(C++实现)——代理模式(Proxy Pattern)
  6. 中止是怎么用的_多士炉怎么用 使用多士炉注意事项
  7. maven 打包指定依赖包_[Maven]-Maven基础-01-基础概念
  8. 从零开始构建自己的爬虫代理IP数据库并定期检验IP有效性...
  9. 【MFC学习笔记-作业7-小型画图软件】【】
  10. 计算机二级c语言题型及考点,全国计算机二级C语言考试题型及考试重点.doc
  11. php点击打开新窗口打开网页,php实现弹出新页面的方法
  12. 可以把JPG图片转成PDF的格式转换器
  13. 抖音话题怎么选热门?为什么要做抖音话题
  14. sklearn 中的Ridge函数
  15. Apache POI 设置Excel单元格的宽度和高度
  16. java默认字体_设置 Java 系统的默认字体
  17. matlab函数merge_MATLAB数据合并方法
  18. STL系列之四 heap 堆
  19. java JDK各版本的变化及区别
  20. 从刘福泉炮轰“社科院的调查太雷人”谈:一辈子租房又何妨

热门文章

  1. AR涂涂乐⭐三、 C#实现识别图进入扫描框显示绿色,未进入为红色功能
  2. 量表:现代医学体系的“工具箱”
  3. python编写库存管理_python编写商品管理
  4. ​电脑公司 GhostXP SP3装机版v2011.02(FAT32)
  5. WEB渗透测试-安全白帽子修炼
  6. N多计算机精品免费视频下载,不要别后悔啊
  7. Bootstrap3引入相关知识点
  8. 回头看一看我的2019年
  9. jQWidgets Crack 用于响应式 Web 开发
  10. 荣耀笔记本锐龙版和linux,在家办公的最佳利器:荣耀笔记本14锐龙版体验