MCF52259 实现PWM波级联

本文介绍了在MCF52259嵌入式系统中如何实现PWM波的级联,以提高调节精度。通过分析冷火系列CPU的PWM寄存器特性,提出了一种直接操作级联后PWM周期寄存器的方法,简化了级联过程中的占空比设置步骤。
摘要由CSDN通过智能技术生成

网上能找到一些ColdFire的PWM的驱动,但是找到的都是通道没有级联的。一般为了提高调节精度,我们都会使用级联的PWM波,下面就实现PWM级联的方法。

在MCF52259_PWM.h 中有如下定义:

#define MCF_PWM_PWMPER0   (*(vuint8 *)(0x401B0014))
#define MCF_PWM_PWMPER1   (*(vuint8 *)(0x401B0015))
#define MCF_PWM_PWMPER2   (*(vuint8 *)(0x401B0016))
#define MCF_PWM_PWMPER3   (*(vuint8 *)(0x401B0017))
#define MCF_PWM_PWMPER4   (*(vuint8 *)(0x401B0018))
#define MCF_PWM_PWMPER5   (*(vuint8 *)(0x401B0019))
#define MCF_PWM_PWMPER6   (*(vuint8 *)(0x401B001A))
#define MCF_PWM_PWMPER7   (*(vuint8 *)(0x401B001B))

级联以前的两个通道的PWM的周期寄存器和占空比寄存器都是8位的寄存器,但是相邻通道的周期寄存器的和占空比寄存器在地址上是连续的,比如通道0的周期寄存器地址为0x401B0014,通道1的周期寄存器的地址为0x401B0015,所以我们对通道0的地址做如下定义:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值