TMS320F28335 ePWM模块寄存器详解

5星 · 超过95%的资源 需积分: 35 31 下载量 56 浏览量 更新于2024-07-22 2 收藏 161KB PDF 举报
"tms320f28335_ePWM详解" TMS320F28335是一款高性能的数字信号处理器,广泛应用于实时控制领域,如电机控制、电力转换和自动化系统等。该芯片内含增强型PWM(ePWM)模块,能够实现灵活且精确的脉宽调制。ePWM模块包含多个独立的PWM通道,每个通道都有其自身的配置寄存器,以实现不同的定时和比较功能。 1. Time-Base子模块 Time-Base子模块是ePWM模块的基础,负责定时和计数功能。它由三个主要寄存器组成:Time-Base周期寄存器TBPRD、Time-Base相位寄存器TBPHS和Time-Base计数寄存器TBCTR。 1.1 Time-Base周期寄存器TBPRD TBPRD寄存器决定了时基计数器的周期,从而影响输出PWM的频率。其值范围为0000-ffffh,用户可以通过读写操作设置该值。默认情况下,TBPRD使用影子寄存器,这意味着只有在时基计数器为0时,新设置的值才会生效。如果TBCTL[PRDLD]置为1,则会禁用影子寄存器,此时读写操作会立即更新本体寄存器。 1.2 Time-Base相位寄存器TBPHS TBPHS寄存器用于设定时基计数器的相位,这会影响输出PWM的初始占空比。同样,TBPHS的值范围也是0000-ffffh。当TBCTL[PHSEN]为0时,相位设置被忽略;当TBCTL[PHSEN]为1时,时基计数器会在同步事件(如EPWMxSYNCI输入或软件同步)触发时加载相位。 1.3 Time-Base计数寄存器TBCTR TBCTR寄存器表示当前时基计数器的值,可以读写但通常不建议写入,因为这可能干扰计数过程。在读取时,它可以反映出PWM周期中的当前位置。 除了上述寄存器,ePWM模块还包括其他配置寄存器,如TBCTL(Time-Base Control Register)用于控制模块的运行模式和同步事件,TBCTRLOAD用于设置计数器加载值,以及TBPHSHB和TBPHSLB用于扩展相位寄存器的精度。这些寄存器共同协作,提供了丰富的PWM生成和同步能力。 在实际应用中,通过精细地配置这些寄存器,开发者可以实现各种复杂的PWM波形,如死区时间控制、边沿对齐或中心对齐PWM、多相PWM等。此外,ePWM模块还支持同步功能,允许多个PWM通道之间保持精确的时间关系,这对于电机控制和其他需要高同步性的应用至关重要。 总结来说,TMS320F28335的ePWM模块提供了强大的定时和PWM生成能力,通过深入理解并正确配置Time-Base子模块的寄存器,开发者可以实现高效、灵活的数字控制算法,满足各种实时控制需求。