ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

PWM编程基本操作步骤

2020-03-05 22:00:33  阅读:635  来源: 互联网

标签:输出 匹配 控制 编程 边沿 寄存器 PWM 操作步骤


1.两个匹配寄存器可用控制单边沿 PWM 输出。 PWMMR0 控制 PWM 周期率,另一个匹配寄存器( PWMMR1~PWMMR6)控制 PWM 边沿的位置。
 
2.3 个匹配寄存器共同控制一个双边沿 PWM 输出。 PWMMR0 控制 PWM 周期速率,其它匹配寄存器控制( PWMMR1~PWMMR6) 两个 PWM 边沿位置。
 
3.单边沿控制 PWM 输出在每个周期开始时总是为高电平,除非输出保持恒定低电平。

4.匹配寄存器更新与脉冲输出同步,防止产生错误的脉冲。软件必须在新的匹配值生效之前将它们释放。
 


 5. 基本上 PWM1 不能用作双边沿输出。

6.通常不建议使用 PWM 通道 3 和通道 5 作为双边沿 PWM 输出, 因为这样会减少可用的双边沿 PWM的个数。使用 PWM2, PWM4 和 PWM6 可得到最多个数的双边沿 PWM 输出。

7.单边沿控制的PWM输出:每个 PWM 输出在到达其匹配值时都会变为低电平。

 

 

8. 双边沿控制的 PWM 输出:
 

在对匹配寄存器载入数据之后必须锁存使能,需要变换数据必须进行重载操作
 

9.PWMMR:PWM 匹配寄存器:MR可通过 MCR 设定为在匹配时复位TC,停止 TC 和 PC 和/或产生中断。此外, MR和TC的匹配将置位所有单边沿模式的 PWM 输出, 并置位双边沿模式下的 PWM1 输出。

10.PWMPCR:PWM 控制寄存器:使能 PWM 输出并选择 PWM 通道类型为单边沿或双边沿控制。

11.PWMLER:PWM 锁存使能寄存器:使能使用新的 PWM 匹配值。

12.如果有中断产生, PWMIR中的对应位会置位,否则为 0。向对应的IR位写入 1 会复位中断,写入 0 无效。

13.决定 PWM 速率( PWM匹配 0)的匹配寄存器必须在使能 PWM 之前设定。否则不会发生使映像寄存器内容生效的匹配事件。

14.假定 PWMPR 寄存器的值为 PWMPR,则分频后的时钟计数频率计算如下:

 

 时钟计数频率=Fpclk/(PWMPR +1)

15.PWM基本寄存器功能框图: 
 




16.PWM的比较匹配寄存器功能框图:
 
 

17.

PWM 基本操作方法:

★连接 PWM 功能管脚输出,即设置 PINSEL0、 PINSEL1;

设置 PWM 定时器的时钟分频值 (PWMPR),得到所要的定时器时钟;

设置比较匹配控制(PWMMCR),并设置相应比较值(PWMMRx);

设置 PWM 输出方式并允许 PWM 输出(PWMPCR)及锁存使能控制(PWMLER);

设置 PWMTCR,启动定时器,使能 PWM;

运行过程中要更改比较值时,更改之后要设置锁存使能。

    使用双边沿 PWM 输出时,建议使用 PWM2、 PWM4、 PWM6;使用单边 PWM 输出时,在 PWM 周期开始时为高电平,匹配后为低电平,使用 PWMMR0 作为 PWM 周期控制,PWMMRx 作为占空比控制。

标签:输出,匹配,控制,编程,边沿,寄存器,PWM,操作步骤
来源: https://blog.csdn.net/xuxudeta/article/details/104631686

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有