10.4.2. 功能描述
每个PWM信号发生器包含4个子模块,分别是时基(Time-Base)子模块、计数比较(Counter-Compare)子模块、动作限定(Action-Qualifier)子模块、事件触发(Event-Trigger)子模块, 每个子模块可以通过软件配置实现特定功能。
10.4.2.1. 时基子模块
每个PWM信号发生器都有一个自己的时基子模块,用以确定PWM信号发生器所有事件的时序。
PWM信号频率由时基周期寄存器TBPRD和时基计数器模式决定,下图给出了时基计数器在递增模式、递减模式、增减模式下PWM周期和频率的关系。 周期设置为4(TBPRD=4),每一步增加时间由时基时钟TBCLK决定,时基时钟由系统时钟SYSCLKOUT分频得到。
10.4.2.2. 计数比较子模块
计数比较子模块将时基计数器的值作为输入,该值不断与计数比较器A(CMPA)和计数比较器B(CMPB)寄存器的值作比较, 当时基计数器的值等于任意一个比较寄存器的值时,计数比较单元将产生一个相应的事件。
10.4.2.3. 动作限定子模块
动作限定子模块用于决定哪个事件被用来转换为哪种动作类型,从而在PWMxA和PWNxB输出要求的波形。
10.4.2.4. 事件触发子模块
事件触发子模块管理由时基子模块和计数比较子模块产生的事件,产生一个中断到CPU。