OpenEdv-开源电子网

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

求助,stm32定时器1仿真出来不同的波形是相反的

[复制链接]

2

主题

16

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2019-5-1
在线时间
15 小时
发表于 2019-7-16 17:41:14 | 显示全部楼层 |阅读模式
5金钱
MDK5的仿真,在stm32上使用的定时器1,每个通道都是设置的都是一样的,仿真的波形通道1和通道2与通道3、4相反?这是怎么回事?能够弄成一样的吗?求大佬帮忙解答一下,谢谢了。代码,是根据别人的改写的
void Pwm_Init(void)
{
        TIM_OCInitTypeDef TIM_OCInitStructure;
        TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;
        GPIO_InitTypeDef GPIO_InitStructure;
       
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1,ENABLE);

       
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11 | GPIO_Pin_10 | GPIO_Pin_9 |GPIO_Pin_8;
        GPIO_InitStructure.GPIO_Speed =GPIO_Speed_50MHz;
        GPIO_Init(GPIOA,&GPIO_InitStructure);
               
        TIM_TimeBaseInitStructure.TIM_ClockDivision =TIM_CKD_DIV1;
        TIM_TimeBaseInitStructure.TIM_Prescaler = 71;
        TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up;
        TIM_TimeBaseInitStructure.TIM_Period = 999;
        TIM_TimeBaseInitStructure.TIM_RepetitionCounter = 0;
        TIM_TimeBaseInit(TIM1,&TIM_TimeBaseInitStructure);
       
        TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
        TIM_OCInitStructure.TIM_OCNPolarity = TIM_OCPolarity_High;
        TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
        TIM_OCInitStructure.TIM_Pulse = 500;
       

        TIM_OC4Init(TIM1,&TIM_OCInitStructure);
        TIM_OC3Init(TIM1,&TIM_OCInitStructure);
        TIM_OC2Init(TIM1,&TIM_OCInitStructure);
        TIM_OC1Init(TIM1,&TIM_OCInitStructure);
       
        TIM_OC4PreloadConfig(TIM1,TIM_OCPreload_Enable);
        TIM_OC3PreloadConfig(TIM1,TIM_OCPreload_Enable);
        TIM_OC2PreloadConfig(TIM1,TIM_OCPreload_Enable);
        TIM_OC1PreloadConfig(TIM1,TIM_OCPreload_Enable);
       
        TIM_CtrlPWMOutputs(TIM1, ENABLE);
        TIM_Cmd(TIM1,ENABLE);

}



QQ截图20190716173752.png

最佳答案

查看完整内容[请看2#楼]

修改下输出极性即可。
回复

使用道具 举报

550

主题

10万

帖子

32

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
144572
金钱
144572
注册时间
2010-12-1
在线时间
1570 小时
发表于 2019-7-16 17:41:15 | 显示全部楼层
修改下输出极性即可。
回复

使用道具 举报

104

主题

3800

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
6700
金钱
6700
注册时间
2017-2-18
在线时间
1189 小时
发表于 2019-7-16 19:28:33 | 显示全部楼层
实际接示波器测试效果怎样?
回复

使用道具 举报

2

主题

16

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2019-5-1
在线时间
15 小时
 楼主| 发表于 2019-7-16 20:27:01 | 显示全部楼层
peng1554 发表于 2019-7-16 19:28
实际接示波器测试效果怎样?

没有接示波器,改了下,接在了舵机上,前两个都正常,后两个舵机不工作
回复

使用道具 举报

2

主题

16

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2019-5-1
在线时间
15 小时
 楼主| 发表于 2019-7-17 09:47:53 | 显示全部楼层
正点原子 发表于 2019-7-17 01:47
修改下输出极性即可。

嗯嗯,修改了极性,谢谢原子哥
回复

使用道具 举报

2

主题

16

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2019-5-1
在线时间
15 小时
 楼主| 发表于 2019-7-17 09:49:21 | 显示全部楼层
正点原子 发表于 2019-7-17 01:47
修改下输出极性即可。

原子哥,之前设置的都是一样的,是1、2和3、4的通道输出本就是相反的吗?
回复

使用道具 举报

550

主题

10万

帖子

32

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
144572
金钱
144572
注册时间
2010-12-1
在线时间
1570 小时
发表于 2019-7-18 02:19:35 | 显示全部楼层
h505459004 发表于 2019-7-17 09:49
原子哥,之前设置的都是一样的,是1、2和3、4的通道输出本就是相反的吗?

不,是可以独立设置的
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

2

主题

16

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2019-5-1
在线时间
15 小时
 楼主| 发表于 2019-7-18 11:20:11 | 显示全部楼层
正点原子 发表于 2019-7-18 02:19
不,是可以独立设置的

谢谢原子哥了
回复

使用道具 举报

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

本版积分规则



关闭

正点原子酷炫Linux来了,猛击上一条 /1 下一条

正点原子公众号

QQ|手机版|官方淘宝店|微信公众平台|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2019-8-18 14:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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