打印
[技术问答]

关于实现PWM和Capture功能的配置问题

[复制链接]
2537|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
springvirus|  楼主 | 2013-11-27 10:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 springvirus 于 2013-11-27 11:01 编辑

近来想实现M058的PWM和Capture,看参考手册中的page204,CAPENR控制捕捉通道0~3在P2.0~P2.3上, POE控制PWM通道输出到引脚,有这样的提示,相关GPIO要切换到PWM功能,但看了GPIO所有寄存器,哪个是控制切换的?

而在page16上的LQFP64的引脚图上P2.0~P2.7上是PWM0~PWM7,在page171上的Capture Function Features: 4 capture input channels shared with 4 PWM output channels.

如此看来,总结为: 有4路PWM和4路Capture,都在P2.0~P2.3上,共享这4个pin,同一时刻只能使能一种功能,要么PWM,要么 capture,相关设置需要设置POE和CARENR,还有Px_PMD,PWM通道就把Px_PMD设置为输出,capture通道就把Px_PMD设置为输入,不知是这样吗?

引脚图上的标示有问题吧,8路PWM。。。
沙发
springvirus|  楼主 | 2013-11-27 11:20 | 只看该作者
本帖最后由 springvirus 于 2013-11-27 11:21 编辑

看到P2_MFP了,Multiple Function Port2 Control Register,这里控制P2端口复用功能的开启!

使用特权

评论回复
板凳
springvirus|  楼主 | 2013-11-27 11:45 | 只看该作者
本帖最后由 springvirus 于 2013-11-27 12:27 编辑

还有问题:
PWM例程中系统初始化中有
SYSCLK->APBCLK = SYSCLK_APBCLK_UART0_EN_Msk|SYSCLK_APBCLK_PWM45_EN_Msk|SYSCLK_APBCLK_PWM67_EN_Msk;
宏定义有01, 23, 45, 67,这4组,看手册中APBCLK第22和第23的位置是Reserved的啊
往下看,有  
/* Set P2 multi-function pins for PWMB Channel0~3  */
SYS->P2_MFP = SYS_MFP_P24_PWM4|SYS_MFP_P25_PWM5|SYS_MFP_P26_PWM6|SYS_MFP_P27_PWM7;

看来P2.0~P2.3,4路作为PWMA,P2.4~P2.7,4路作为PWMB,共8路PWM?

使用特权

评论回复
地板
zhangmangui| | 2013-11-27 13:07 | 只看该作者
具体没做过  帮忙顶

使用特权

评论回复
5
springvirus|  楼主 | 2013-11-27 13:22 | 只看该作者
本帖最后由 springvirus 于 2013-11-27 14:08 编辑

经多个文档和例程对照看,应该是M0516是8通道PWM,M058和M058S是4通道PWM。。。
前者有PWMA和PWMB,2组,每组4个,后者只有PWMA

使用特权

评论回复
6
mintspring| | 2015-2-28 16:16 | 只看该作者
刚好有这个板子,谢谢分享资源

使用特权

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

本版积分规则

127

主题

4460

帖子

14

粉丝