手把手教你写S12XS128程序(6)--PWM寄存器说明5
2010-10-11 22:32
239 查看
1、PWM通道计数寄存器 PWMCNTx
PWMCNTx 寄存器共有 8个,每一个通道都有一个8位PWM加/减双向计数器,通道级联后可变成16位PWM加/减双向计数器。下面以PWMCNT0为例对 PWMCNTx 寄存器进行介绍。
PWMCNT0 寄存器如图 12 所示:
图 12 PWMCNT0 寄存器
计数器以所选时钟源的频率运行。计数器在任何时候都可以被读,而不影响计数,也不影响对 PWM 通道的操作。
任何值写入 PWMCNT0 寄存器都会导致计数器复位置 0,且其计数方向会 被设置为向上计数,并且会立刻从缓冲器载入任务和周期值,并会根据翻转极性的设置来改变输出。当计数器达到计数值后,会自动清零。只有当通道使能后,计数器才开始计数。
2、PWM通道周期寄存器PWMPERx
PWMPERx 寄存器共有 8 个,每一个通道都有一个这样的周期寄存器。这个 寄存器的值就决定了相关 PWM 通道的周期。每一个通道的周期寄存器都是双缓 冲的,因此如果当通道使能后,改变他们的值,将不会发生任何作用,除非当下列情况之一发生:
*有效的周期结束。
*对计数器进行写操作(计数器复位)
*通道不可用(PWMEx = 0)
这样就会使 PWM 输出波形要么是新波形要么是旧波形,并不会在两者之间 进行交替变换。如果通道不可用,那么对周期寄存器进行写操作,将会直接导致 周期寄存器同缓冲器一起闭锁。图 13 所示的是 PWMPER0 寄存器:
图 13 PWMPER0 寄存器
3、PWM通道占空比寄存器PWMDTYx
PWMDTYx 寄存器也有 8 个,每一个通道都有一个这样的占空比常数寄存 器。这个寄存器的值就决定了相关 PWM 通道输出波形的占空比。每一个通道的 占空比寄存器都是双缓冲的,因此如果当通道被激活后,改变他们的值将不会发生任何作用,除非当下列情况之一发生:
*有效的周期结束。
*对计数器进行写操作(计数器复位)
*通道不可用(PWMEx = 0)
这样就会使 PWM 输出波形要么是新波形要么是旧波形,并不会在两者之间 进行交替变换。如果通道没有被激活,那么对占空比常数寄存器进行写操作,将会直接导致周期寄存器同缓冲器一起闭锁。
当计数值与占空比常数 PWMDTY 相等时,则比较输出器有效,这时就会将触发器置位,然后 PWMCNT 继续计数,当计数值与周期常数 PWMPER 相等时,比较器输出有效,将触发器复位,同时也使 PWMCNT 复位,结束一个输出周期。
PWMCNTx 寄存器共有 8个,每一个通道都有一个8位PWM加/减双向计数器,通道级联后可变成16位PWM加/减双向计数器。下面以PWMCNT0为例对 PWMCNTx 寄存器进行介绍。
PWMCNT0 寄存器如图 12 所示:
图 12 PWMCNT0 寄存器
计数器以所选时钟源的频率运行。计数器在任何时候都可以被读,而不影响计数,也不影响对 PWM 通道的操作。
任何值写入 PWMCNT0 寄存器都会导致计数器复位置 0,且其计数方向会 被设置为向上计数,并且会立刻从缓冲器载入任务和周期值,并会根据翻转极性的设置来改变输出。当计数器达到计数值后,会自动清零。只有当通道使能后,计数器才开始计数。
2、PWM通道周期寄存器PWMPERx
PWMPERx 寄存器共有 8 个,每一个通道都有一个这样的周期寄存器。这个 寄存器的值就决定了相关 PWM 通道的周期。每一个通道的周期寄存器都是双缓 冲的,因此如果当通道使能后,改变他们的值,将不会发生任何作用,除非当下列情况之一发生:
*有效的周期结束。
*对计数器进行写操作(计数器复位)
*通道不可用(PWMEx = 0)
这样就会使 PWM 输出波形要么是新波形要么是旧波形,并不会在两者之间 进行交替变换。如果通道不可用,那么对周期寄存器进行写操作,将会直接导致 周期寄存器同缓冲器一起闭锁。图 13 所示的是 PWMPER0 寄存器:
图 13 PWMPER0 寄存器
3、PWM通道占空比寄存器PWMDTYx
PWMDTYx 寄存器也有 8 个,每一个通道都有一个这样的占空比常数寄存 器。这个寄存器的值就决定了相关 PWM 通道输出波形的占空比。每一个通道的 占空比寄存器都是双缓冲的,因此如果当通道被激活后,改变他们的值将不会发生任何作用,除非当下列情况之一发生:
*有效的周期结束。
*对计数器进行写操作(计数器复位)
*通道不可用(PWMEx = 0)
这样就会使 PWM 输出波形要么是新波形要么是旧波形,并不会在两者之间 进行交替变换。如果通道没有被激活,那么对占空比常数寄存器进行写操作,将会直接导致周期寄存器同缓冲器一起闭锁。
当计数值与占空比常数 PWMDTY 相等时,则比较输出器有效,这时就会将触发器置位,然后 PWMCNT 继续计数,当计数值与周期常数 PWMPER 相等时,比较器输出有效,将触发器复位,同时也使 PWMCNT 复位,结束一个输出周期。
相关文章推荐
- 手把手教你写S12XS128程序(2)--PWM寄存器说明1
- 手把手教你写S12XS128程序(3)--PWM寄存器说明2
- 手把手教你写S12XS128程序(12)--A/D寄存器说明2
- 手把手教你写S12XS128程序(22)--Timer寄存器说明4
- 手把手教你写S12XS128程序(13)--A/D寄存器说明3
- 手把手教你写S12XS128程序(4)--PWM寄存器说明3
- 手把手教你写S12XS128程序(5)--PWM寄存器说明4
- 手把手教你写S12XS128程序(26)--SCI寄存器说明1
- 手把手教你写S12XS128程序(28)--SCI寄存器说明3
- 手把手教你写S12XS128程序(14)--A/D寄存器说明4
- 手把手教你写S12XS128程序(21)--Timer寄存器说明3
- 手把手教你写S12XS128程序(23)--Timer寄存器说明5
- 手把手教你写S12XS128程序(27)--SCI寄存器说明2
- 手把手教你写S12XS128程序(15)--A/D寄存器说明5
- 手把手教你写S12XS128程序(1)--PWM模块介绍
- 手把手教你写S12XS128程序(19)--Timer寄存器说明1
- 手把手教你写S12XS128程序(11)--A/D寄存器说明1
- 手把手教你写S12XS128程序(20)--Timer寄存器说明2
- 手把手教你写S12XS128程序(8)--PWM 应用实例
- 手把手教你写S12XS128程序(7)--PWM工作原理