中科蓝讯532X系列PWM的使用

实例:
PB3实现呼吸灯

初始化

在pwm_port_init函数下

GPIOBDIR &= ~BIT(3); //DIR OUT
	GPIOBDE |= BIT(3); //数字 IO 口要设置上.
	GPIOBFEN |= BIT(3); //function io enable
	FUNCMCON2 = (2 << 8); // TIMER3的G2   pwm map to G1 (PE1/2/3)timer5->16Bit timer4->12Bit timer3->8Bit
	TMR3CON = 0x00; //时钟源默认为系统时钟 24M
	TMR3CNT = 0;
	TMR3PR = 1000; //例如为 24M 时, 频率为 24M/(12000*4) = 500HZ, 即周期为0.002S. //U32
//	TMR3DUTY0 = 12000 - 1; //u16 //25% 负占空比 PE1 //注意 PR >= DUTY //DUTY ==PR, 全高. -1 (也就是 0xFFFF)时, 全低, 其他值表示"负占空比"
	TMR3DUTY1 = 1000-1; //u16 //50% 负占空比 PB2
//	TMR3DUTY2 = 12000*3- 1; //u16 //75% 负占空比 PE3
	TMR3CON |= BIT(10); //timer5 pwm0, pwm1, pwm2 enable
	TMR3CON |= BIT(0); //Timer enable (defualt work in counter mode)

注意:
如果是在port_pwm.c下写的初始化函数。
打开这个宏,不然程序不会执行

#define TIMER_PWM_EN              
  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值