电子工程师技术服务社区
- 社区首页
- 下载
- PWM Output.rar
资料描述
m451有两路pwm发生器。每路pwm支持6通道pwm输出或输入捕捉。
numicro m451的pwm功能特性:(摘自数据手册)
支持时钟频率最高达pwm模块,每个模块提供pwm输出3组互补通道的互补模式
12位从4096的预分频
支持pwm计数器
向上,向下和上下计数操作类型
支持pwm管脚支持屏蔽功能和三态使能
支持刹车功能
刹车源来自管脚、模拟比较器和系统安全事件(时钟故障、cpu锁住)
刹车源管脚噪声滤波器
通过边缘检测刹车源来控制刹车状态直到刹车中断清除
刹车条件解除后电平检测刹车源自动恢复功能
支持下列事件中断:
0、周期值或比较值
发生刹车条件
支持下列事件触发pwm计数器值为pwm 计数器匹配自由触发比较器比较值eadc)
pwm控制器功能十分强大,本次实验主要实现1个pwm发生器输出6路占空比、频率不同的方波,通过逻辑分析仪观察,所以只简要介绍相关的内容。
pwm系统时钟源控制:
从上图可知:
通过pwm0cken
(clk_apbclk1,其中n表示通道数)来完成一个pwm周期。
pwm周期时间= (period+1) * pwm 时钟
向下计数
在向下计数方式中,16位pwm计数器是一个向下计数器并从period开始向下计数到0来完成一个pwm周期。
pwm周期时间= (period+1) * pwm 时钟
上下计数
在上下计数操作中,16位pwm计数器是一个上下计数器,并开始向上计数从0到period然后又向下计数到0完成一个pwm周期。
pwm周期时间=(2*period) * pwm 时钟
接着讲解使用库函数让pwm0输出6路占空比、频率不同的方波
首先是复用引脚的配置,将引脚配置为pwm时钟
// enable pwm module clock
clk_enab