打印
[LPC]

NXP LPC1768宝马开发板第9章PWM输出

[复制链接]
1959|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
第九章    宝马1768——PWM输出
开发环境:集成开发环境μVision4 IDE版本4.60.0.0
主机系统:Microsoft Windows XP
开发平台:旺宝NXP LPC1768开发板


9.1 PWM
9.2 硬件描述
9.3 程序说明
9.4 实验现象
1PWM
这章主要介绍LPC1768脉宽调制器PWM,通过本章的学习,可以了解到LPC1768PWM使用。
LPC1768PWMSTM32PWM 是不一样的,STM32PWM是和定时器是集成在一起的,而LPC1768PWM是单独的一个模块。他可以产生单边沿或者双边沿的PWM输出,最多产生六路单边沿PWM,以及最多三路双边沿输出,也可以混合进行输出。发生匹配时,可产生对应的中断。有两路32位捕获通道可取得定时器的瞬时值,输入捕获通道,捕获事件可选择产生中断。
2、硬件描述:
该例程用到的硬件主要是LED,使用PWM模块产生六路PWM波形,对应于LED4~LED9,六个LED灯,使其产生不同的亮度。记得要插上跳线帽JP8
3、程序说明:
首先看主程序,主程序中首先是对P0.21拉高,屏蔽锁存器对LED灯的影响。然后是初始化PWM,然后设置周期以及匹配值等,启动PWM。则在对应的引脚产生PWM波形。
下面看对PWM的初始化,首先是对引脚设置为PWM输出,然后是对计数器进行复位,设置匹配控制寄存器,设置匹配寄存器值,使能PWM锁存。
设置PINSEL4寄存器,使能P2.0P2.5PWM输出引脚功能。
PRPWM的预分频寄存器,TC经过PR+1PCLK周期,则TC计数器的值才会加1,实现分频的功能。
MCR寄存器是用来控制发生匹配的时候,是否产生中断,是否复位TC等功能。MR0-MR6则是匹配寄存器,其中MR0是用来控制PWM的周期,MR1-MR6是用来存储电平翻转值,所以一般MR1-MR6<MR0,当TC值与MR0值相匹配时,则复位TC,这里没有开启中断。需要注意的是PWM的输出是高电平,当发生匹配的时候输出的是低电平。
PWM锁存器使能,置位之后,使能写入匹配寄存器的值,在下次定时器复位时生效。
初始化之后,是对寄存器进行赋值,同样是对匹配寄存器的配置。
最后启动PWM
这里面涉及到PCR寄存器和TCR寄存器,使能PWM的输出和TC定时器。
则对应的端口引脚输出PWM波形。
4、实验现象:
本实验要注意跳线帽JP8要插上,以驱动LED灯。实验现象就是LD4LD96LED灯亮度依次变暗。

图片1.png (64.41 KB )

图片1.png

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:专业生产销售STM32开发板,仿真器,http://openmcu.taobao.com/

71

主题

283

帖子

11

粉丝