沁恒青稞系列芯片,CH582芯片pwm相关设置

沁恒青稞系列芯片是一款国产支持蓝牙的芯片,支持pwm输出和管脚映射,但是不支持单个管脚映射。这篇文章记录了采用ch582系列芯片pwm开发过程。

pwm基础知识

pwm简要理解参考硬件攻城狮,其中需要明确的是周期、占空比、频率概念,这对配置pwm波形特别重要。小伙伴们也可以参考
在这里插入图片描述

CH582芯片寄存器

配置pwm之前,一定要配置相应的GPIO,将GPIO配置为推挽模式,注意:带单个小标的pwm引脚为重映射引脚。如在这里插入图片描述
此处的PB2为pwm8的重映射引脚,实际上真正的pwm8管脚为PB6在这里插入图片描述
当采用的为从映射模式时,需要开启函数GPIOPinRemap(ENABLE, RB_PIN_PWMX);注意,一旦引用此函数,所有的引脚都被重映射,该芯片不支持配置单个通道。
确定好管脚后,我们便开始配置寄存器,配置寄存器主要用到三个函数,PWMX_CLKCfg(25); PWMX_CycleCfg(PWMX_Cycle_63);,这两个函数第一个是用来配置pwm的时钟分频,他是由主频分来的,可以在函数SetSysClock(CLK_SOURCE_PLL_60MHz);查出,分频后的频率是pwm生成的时钟频率。另外一个函数是配置pwm周期的,也就是pwm1个完整周期需要多少个时钟频率,所以有了公式 :
cycle = 25/Fsys 其中cycle为pwm时钟频率,Fsys 为系统时钟频率
周期 = 63*cycle
那么想要得出自己想要的频率,该怎么算呢?
上面得出的周期就是pwm一个周期所需要的时间,只需要用1s除以周期,就能得出频率值了。想要得出想要的频率值,只需要调整这两个参数的值便可。
配置完频率后,再调用PWMX_ACTOUT(CH_PWM8, 32, Low_Level, DISABLE); 这个函数启动即可,其中,这个函数第一个参数为通道,第二个参数为占空比,根据官方例程代码PWMX_ACTOUT(CH_PWM7, 64 / 4, Low_Level, ENABLE); // 25% 占空比,64/4的占空比为25%,我们可以采用计算得知,1%占空比为0.64,第二个参数只需要乘以0.64的倍数,既可以配置占空比的大小。第三个为pwm的极性,也就是高电平在前还是在后,这点不再赘述。最后是使能通道,选择ENABLE为使能,DISABLE为失能。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值