OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4732|回复: 4

stm32实现4路PWM的的一个问题:只能实现三路PWM

[复制链接]

3

主题

7

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2013-5-27
在线时间
0 小时
发表于 2013-12-28 16:33:17 | 显示全部楼层 |阅读模式
如题,我在实现四路PWM的时候,第一路和第二路PWM两者只能有一个能正常工作,第三第四路工作正常。我调试的时候发现,当四路开启时,第一路PWM的TIM3->CCR1的值永远为0。。。程序是参照原子哥的修改的。
void PWM3_Init(u16 arr,u16 psc,u8 resetap)
{
//设置port时钟、端口
RCC->APB1ENR|=1<<1;
RCC->APB2ENR|=1<<2;//GPIOA--TIM123,GPIOB--TIM34
RCC->APB2ENR|=1<<3;//GPIOB--TIM3A6-7,PB0-1

GPIOA->CRL&=0X00FFFFFF;
GPIOA->CRL|=0XBB000000;
GPIOB->CRL&=0XFFFFFF00;
GPIOB->CRL|=0X000000BB;
//设置arr、psc-->count
if(resetap==1)
{
TIM3->ARR=arr;
TIM3->SC=psc;
}
//设置ccmr1-2
TIM3->CCMR1|=7<<4;//设置CH1-2 OC1M
TIM3->CCMR1|=1<<3;//0C1PE
TIM3->CCMR1|=7<<12; //pwm模式  //第一个图没注释通道二的配置,第二个图注释了通道二的配置
TIM3->CCMR1|=1<11;  

TIM3->CCMR2|=7<<4;
TIM3->CCMR2|=1<<3;
TIM3->CCMR2|=7<<12;
TIM3->CCMR2|=1<<11;
//cc使能--ccer
TIM3->CCER|=0X1111;//0-4-8-12  CCxE
//使能定时器cr1 APER使能,
TIM3->CR1=0X80;
TIM3->CR1|=0X01;
{ u16 tmp;
tmp=TIM3->ARR;
TIM3->CCR1=tmp/1;
TIM3->CCR2=tmp/2;
TIM3->CCR3=tmp/4;
TIM3->CCR4=tmp/8;
 }
}


通道1的CCR1总是0


注释了通道二的配置CCR1就可以了...
程序其他位置都没有改变。



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-12-28 18:47:34 | 显示全部楼层
PWM输出,是CNT与CCRx对比实现的,CCRx一般是个定值。
你要输出PWM,CCRx就不应该等于ARR。
所以你CCR1=arr/1
是不对的。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

3

主题

7

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2013-5-27
在线时间
0 小时
 楼主| 发表于 2013-12-28 18:56:24 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
我也尝试过修改CCR1的值,但是无论改成什么值都是一样的现象,而去我试过烧写进板子上运行,结果是一样,第一路PWM不行....
回复 支持 反对

使用道具 举报

3

主题

7

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2013-5-27
在线时间
0 小时
 楼主| 发表于 2013-12-28 19:57:59 | 显示全部楼层
终于查出了.....原来是TIM3->CCR1|=1<<11;这一句写错了......查了一天啊.....都是泪...
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-12-28 21:39:53 | 显示全部楼层
回复【4楼】听众:
---------------------------------
这没错吧?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-7 11:22

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表