1 / 17

6.1.1 采用事件管理器模块中的通用定时器产生 PWM 波形

6.1.1 采用事件管理器模块中的通用定时器产生 PWM 波形. 硬件连接图. 2. 工作原理. 6.1.2 采用事件管理器模块中的比较单元产生 PWM 波形. 硬件连接图. 2. 工作原理. 6.2.1 PWM 控制技术. 6.2.2 SPWM 算法. 6.3.1 TMS320LF2407 事件管理器模块的组成 6.3.2 TMS320LF2407 事件管理器模块的通用定时器 通用定时器的工作原理 通用定时器寄存器 单个通用定时器控制寄存器 TxCON ( x=1,2 或 3,4 ) 通用定时器控制寄存器( GPTCONA/B ) 通用定时器的计数操作

erma
Download Presentation

6.1.1 采用事件管理器模块中的通用定时器产生 PWM 波形

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 6.1.1 采用事件管理器模块中的通用定时器产生PWM波形 • 硬件连接图

  2. 2.工作原理

  3. 6.1.2 采用事件管理器模块中的比较单元产生PWM波形 • 硬件连接图

  4. 2.工作原理

  5. 6.2.1 PWM控制技术

  6. 6.2.2 SPWM算法

  7. 6.3.1 TMS320LF2407事件管理器模块的组成 • 6.3.2 TMS320LF2407事件管理器模块的通用定时器 • 通用定时器的工作原理 • 通用定时器寄存器 • 单个通用定时器控制寄存器TxCON(x=1,2或3,4) • 通用定时器控制寄存器(GPTCONA/B) • 通用定时器的计数操作 • 停止/保持模式 • 连续增计数模式 • 定向增/减计数模式 • 连续增/减计数模式 • 通用定时器的中断实现

  8. 6.3.3 TMS320LF2407事件管理器模块的比较单元 • 比较单元的寄存器 • 比较控制寄存器A(COMCONA) • 比较控制寄存器B(COMCONB) • 比较方式控制寄存器A(ACTRA) • 比较方式控制寄存器B(ACTRB) • 死区控制寄存器A(DBTCONA) • 死区控制寄存器DBTCONB • 用比较单元实现PWM

  9. 6.4.1 TMS320LF240x 中断系统概述 6.4.2 TMS320LF240x 中断响应过程 1.中断的管理 2.中断向量 3.假(phantorn)中断向量 4.不可屏蔽中断(NMI) 5.可屏蔽中断的产生 6.可屏蔽中断响应的流程

  10. 6.4.3 TMS320LF240x 中断寄存器 • CPU中断寄存器 • 中断标志寄存器IFR • CPU中断屏蔽寄存器(IMR) • 外设中断寄存器 • 外设中断向量寄存器(PIVR) • 外设中断请求寄存器0(PIRQR0) • 外设中断请求寄存器1(PIRQR1) • 外设中断请求寄存器2(PIRQR2) • 外设中断应答寄存器0(PIACKR0) • 外设中断应答寄存器1(PIACKR1) • 外设中断应答寄存器2(PIACKR2) • 外部中断控制寄存器 • 外部中断1控制寄存器(XINT1CR) • 外部中断2控制寄存器(XINT2CR)

  11. 6.5.1 通过软件识别中断标志的方法实现可屏蔽的中断 • void interrupt CAP4INT() • { • int flag; • flag=*EVBIFRC&0x01; //判断是否是CAP4INT • if(flag!=0x01) • { • asm(“clrc INTM”); • return; • } • //如果是CAP4INT,则执行相应的中断服务程序 • *EVBIFRC=*EVBIFRC*0xfe; //写“0”以清除CAP4INT中断标志 • asm(“clrc INTM”); • return; • }

  12. 6.5.2 通过外围中断向量寄存器PIVR的值实现可屏蔽的中断 void interrupt GISR4( ) { switch(*PIVR) { case 0x0036: break;//如果是中断CAP4INT,则执行相应的中断服务程序 default:break; //如果不是中断CAP4INT,则直接返回 } *EVBIFRC=*EVBIFRC*0xfe; //写“0”以清除CAP4INT中断标志 asm(“clrc INTM”); //中断返回前开中断 return; //中断返回 }

  13. 6.6.1基于通用定时器的PWM波形发生器C语言主程序6.6.1基于通用定时器的PWM波形发生器C语言主程序 1.所需的复位和中断向量定义文件“vectors.asm” 2.主程序Pwm1.c 6.6.2基于通用定时器的PWM波形发生器程序分析 6.6.3基于比较单元的PWM波形发生器C语言主程序 1.所需的复位和中断向量定义文件“vectors.asm” 2.主程序Pwm2.c 6.6.4基于比较单元的PWM波形发生器程序分析

More Related