网站大量收购独家精品文档,联系QQ:2885784924

第5章控制类外设模块及其应用开发.pptx

第5章控制类外设模块及其应用开发.pptx

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 控制类外设模块及其应用开发;5.1 增强脉宽调制(ePWM)模块;5.1.1 ePWM模块结构及工作原理;5.1.2 ePWM各子模块及其控制;2. 时基定时器的同步;3. TB子模块的寄存器;二、 CC子模块及其控制;三、 AQ子模块及其控制; 动作限定控制寄存器AQCTLA和AQCTLB: 规定各种事件发生时ePWMxA和ePWMxB的动作; CBD:减计数过程中CTR=CMPB时输出的动作; CBU:增计数过程中CTR=CMPB时输出的动作; CAD:减计数过程中CTR=CMPA时输出的动作; CAU:增计数过程中CTR=CMPA时输出的动作; PRD和ZRO:周期匹配和下溢??件发生时输出的动作。 00-无动作(复位默认值);01-置低;10-置高;11-翻转。 ;3.利用TB、CC和AQ模块输出PWM波;5.1.2 ePWM各子模块及其控制;2. 结构与功能 ;3. DB子模块的寄存器;3. DB子模块的寄存器;五、 ET子模块及其控制; ET选择寄存器ETSEL SOCBEN、SOCAEN和INTEN:允许相应信号 0-禁止;1-允许。 SOCBSEL、SOCASEL和INTSEL:选择触发事件 000和011保留;001-CTR=ZERO;010-CTR=PRD;100-CTR=CAU;101-CTR=CAD;110—CTR=CBU;111-CTR=CBD。; ET预定标寄存器ETPS SOCBPRD、SOCAPRD和INTPRD:选择周期: 00-禁用事件计数器;01-1个选定事件; 10-2个选定事件;11-3个选定事件。 SOCBCNT、SOCACNT和INTCNT:事件计数器,反映当前已经发生了多少个选定事件: 00-无;01-1个;10-2个;11-3个。;5.1.3 ePWM应用示例;// 死区最大、最小值 #define EPWM4_MAX_DB 0x03FF #define EPWM4_MIN_DB 0 // 死区时间变化方向 #define DB_UP 1 #define DB_DOWN 0 #include DSP2833x_Device.h #include DSP2833x_Examples.h // 函数声明. void InitEPwm4Example(void); interrupt void epwm4_isr(void); // 全局变量声明 Uint32 EPwm4TimerIntCount; Uint16 EPwm4_DB_Direction // 死区最大、最小值 #define EPWM4_MAX_DB 0x03FF #define EPWM4_MIN_DB 0;// 死区时间变化方向 #define DB_UP 1 #define DB_DOWN 0 void main(void) {// Step 1. 初始化系统控制 InitSysCtrl(); // Step 2. 初始化GPIOGPIO:// InitGpio(); // 此处跳过 InitEPwm4Gpio(); // Step 3. 清除所有中断;初始化PIE向量表 DINT; InitPieCtrl();// 初始化PIE控制 IER = 0x0000; //禁止CPU中断 IFR = 0x0000; //清除所有CPU中断标志 InitPieVectTable();// 初始化PIE 向量表 EALLOW; / /重新映射本例中使用的中断向量 PieVectTable.EPWM4_INT = epwm4_isr; ; EDIS; // Step 4. 初始化器件外设,本例不需要 EALLOW; SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 0; EDIS; InitEPwm4Example(); EALLOW; SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 1; EDIS; // Step 5. 用户特定代码,允许中断 EPwm4TimerIntCount = 0; // 初始化计数器: // 允许CPU的INT3 (与EPWM1~6 INT连接) IER |= M_INT3; // 允许PIE级中断INT3.4 PieCtrlRegs.PIEI

文档评论(0)

zong + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档