s12单片机总结分析和总结.docx

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PWM模块

1、PWME寄存器:完成PWM输出通道的使能

PWME1~PWME7:当任意的PWMEx位置1,则相关的PWM输出通道就立刻可用。PWMEx=1使能,PWMEx=0关闭。

2、PWM极性选择寄存器PWMPOL:(Polarity)PWM极性选择(选择输出通道的波形是在高电平时翻转还是在低电平时翻转,即设置PWM输出的起始电平)

PWMPOL_PPOLx=1:通道x在周期开始时输出为高电平,当计数器等于占空比寄存器的值时,输出为低电平。对外输出波形先是高电平然后再变为低电平。3、PWMCLK(Clock)时钟选择寄存器

每一个PWM输出通道都有两个时钟可供选择(A、SA或B、SB)。0、1、4、5

通道可选用A、SA时钟,2、3、6、7通道可选用B、SB通道。PCLK1=1;1通道的时钟源设为SA。

PCLK1=0;1通道的时钟源设为A。

4、PWM预分频寄存器PWMPRCLK(Prescaler)

PCKB2—PCKB0是对B时钟源进行预分频。PCKA2—PCKA0是对A时钟源进行预分频。PWMPRCLK寄存器包括ClockA预分频和ClockB预分频的控制位。ClockA、ClockB的值为总线时钟的1/2n(0≤n≤7)

5

5、PWM波形对齐寄存器PWMCAE

如果CAEx置为1,则为居中对齐输出。如果置为0,则为左对齐输出。应当注意的是,只有输出通道被关闭后才能对其进行设置,即通道被激活后不能对其进行设置。

6、PWM控制寄存器PWMCTL(Control)(该控制寄存器设定通道的级联和两种工作模式:等待模式和冻结模式)

PWMCTL_CON67=1---通道6、7级联成一个16位的PWM通道。此时只有7通道的控制字有用。例如:7通道的PWME寄存器决定了他们的输出情况,7通道的PWMPOL寄存器决定了他们是高电平翻转还是低电平翻转,7通道的PWMCLK寄存器决定了他们两个的时钟源,7通道的PWMCAE寄存器决定了他们是左对齐输出还是居中对齐输出等。

PWMCTL_CON67=0---这时6,7通道分别作为独立输出通道对外输出。PSWAI=1---MCU一旦处于等待状态,就会停止时钟的输入。这样就不会

因时钟在空操作而费电;当它置为0,则MCU就是处于等待状态,也允许时钟的输入。

PFRZ=1---MCU一旦处于冻结状态,就会停止计数器工作。

7、PWM分频寄存器PWMSCLA、PWMSCLB

时钟SA是通过对PWMSCLA寄存器的设置来对A时钟进行分频而产生的。其计算公式为:

ClockSA=ClockA/(2*PWMSCLA) ClockSB=ClockB/(2*PWMSCLB)8、PWM通道计数寄存器PWMCNTx

任何值写入PWMCNT0寄存器都会导致计数器复位置0,且其计数方向会被设置为向上计数,并且会立刻从缓冲器载入任务和周期值,并会根据翻转极性的设置来改变输出。当计数器达到计数值后,会自动清零。只有当通道使能后,计数器才开始计数。此寄存器随时都可以对其进行读、写操作。

9、PWM通道周期寄存器PWMPERx

周期的计算方法:

当CAEx=0时,即进行左线性输出时:

PWMx周期=通道时钟周期*PWMPERx

当CAEx=1时,即进行居中对齐输出时:PWMx周期=通道时钟周期*(2*PWMPERx)10、PWM通道占空比寄存器PWMDTYx

文档评论(0)

tianya189 + 关注
官方认证
内容提供者

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

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档