打印

Timer GPIO channel output compare mode

[复制链接]
937|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
EDAStarer|  楼主 | 2020-7-15 09:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
哪位能帮忙解释一下channel output compare mode的各个设置的含义?
想把PWM偏移如何实现?

#define TIMER_OC_MODE_TIMING                ((uint16_t)0x0000U)                     /*!< timing mode */
#define TIMER_OC_MODE_ACTIVE                ((uint16_t)0x0010U)                     /*!< active mode */
#define TIMER_OC_MODE_INACTIVE              ((uint16_t)0x0020U)                     /*!< inactive mode */
#define TIMER_OC_MODE_TOGGLE                ((uint16_t)0x0030U)                     /*!< toggle mode */
#define TIMER_OC_MODE_LOW                   ((uint16_t)0x0040U)                     /*!< force low mode */
#define TIMER_OC_MODE_HIGH                  ((uint16_t)0x0050U)                     /*!< force high mode */
#define TIMER_OC_MODE_PWM0                  ((uint16_t)0x0060U)                     /*!< PWM0 mode */
#define TIMER_OC_MODE_PWM1                  ((uint16_t)0x0070U)                     /*!< PWM1 mode*/

/* channel output compare shadow enable */
#define TIMER_OC_SHADOW_ENABLE              ((uint16_t)0x0008U)                     /*!< channel output shadow state enable */
#define TIMER_OC_SHADOW_DISABLE             ((uint16_t)0x0000U)                     /*!< channel output shadow state disable */

使用特权

评论回复
沙发
sonicll| | 2020-7-15 09:22 | 只看该作者
看用户手册TIMER模块的TIMERx_CHCTL0寄存器描述,bit6~bit4,CH0COMCTL[2:0],有详细说明。
你说的PWM偏移是指什么,改变占空比吗?固件库里就有一个pwm out的例子,可以参考

使用特权

评论回复
板凳
EDAStarer|  楼主 | 2020-7-15 11:23 | 只看该作者
sonicll 发表于 2020-7-15 09:22
看用户手册TIMER模块的TIMERx_CHCTL0寄存器描述,bit6~bit4,CH0COMCTL[2:0],有详细说明。
你说的PWM偏移 ...

PWM偏移不是指改变占空比,指的是一定延时后再输出PWM。
有时候两个信号的沿要满足一定的时序关系。但是不希望在程序中添加delay来实现这种时序。

使用特权

评论回复
地板
sxjgo| | 2020-7-15 13:08 | 只看该作者
学习了,谢谢分享!

使用特权

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

本版积分规则

12

主题

52

帖子

0

粉丝