OpenEdv-开源电子网

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

我用TIM1做的四路PWM输出,怎么PA8、PA10、PA11能正常输出波形,就是PA9波形出不来,整了几天了,大家看看是怎么回事?谢谢了

[复制链接]

7

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2012-9-18
在线时间
0 小时
发表于 2012-11-14 11:39:16 | 显示全部楼层 |阅读模式

 #include "pwm.h"
#include "sys.h"
#include "usart.h"
#include "stdio.h"
#include "delay.h"
int main(void)

    Stm32_Clock_Init(9); //系统时钟设置
 delay_init(72);      //延时初始化
 uart_init(72,9600);  //串口初始化  
 
 
 WM_Init(10000,143,5000,8000,7500,500);
  
}


#include "pwm.h"
//tim1-pwm输出初始化
//2012.11.11
void PWM_Init(u16 arr,u16 psc,u16 ccr1,u16 ccr2,u16 ccr3,u16 ccr4)
  {         
   RCC->APB2ENR|=1<<2;        //端口A时钟使能
  RCC->APB2ENR|=1<<11;       //TIM1时钟使能   

 GPIOA->CRH&=0XFFFF0000;//PA8|PA9|PA10|PA11输出
 GPIOA->CRH|=0X0000BBBB;//服用功能输出
 GPIOA->ODR=1<<8;
 GPIOA->ODR=1<<9;
 GPIOA->ODR=1<<10;
 GPIOA->ODR=1<<11;//PA8\9\10\11上拉   
 TIM1->ARR=arr-1;//设定计数器自动重装值
 TIM1->SC=psc;//预分频器不分频
 
 TIM1->CCMR1|=7<<4;  //CH1 PWM2模式
 TIM1->CCMR1|=7<<12; //CH2 PWM2模式
 TIM1->CCMR2|=7<<4; // CH3 PWM2模式
    TIM1->CCMR2|=7<<12; // CH4 PWM2模式
 TIM1->CCMR1|=1<<3; //CH1预装载使能   
 TIM1->CCMR1|=1<<11; //CH2预装载使能
 TIM1->CCMR2|=1<<3; //CH3预装载使能
 TIM1->CCMR2|=1<<11; //CH4预装载使能
 TIM1->CR1|=1<<7;    //自动重装载预装载使能
                     //ARPE使能
 
 TIM1->CR1&=0<<4;    //计数器向上计数
 TIM1->CCER|=3<<0;   //OC1 输出使能
 TIM1->CCER|=3<<4;   //OC2 输出使能
 TIM1->CCER|=3<<8;   //OC3 输出使能
 TIM1->CCER|=3<<12;  //OC4 输出使能
  TIM1->BDTR|=1<<15;  //开启OC和OCN输
 TIM1->CCR1=ccr1; //设定占空比
 TIM1->CCR2=ccr2;
 TIM1->CCR3=ccr3;
 TIM1->CCR4=ccr4;
 TIM1->EGR|=1<<0;    //重新初始化计数器
 TIM1->CR1|=0x01;    //使能定时器1
  }

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

使用道具 举报

96

主题

762

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1228
金钱
1228
注册时间
2012-10-19
在线时间
15 小时
发表于 2012-11-14 13:13:17 | 显示全部楼层
感觉没问题,烧了吧?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165353
金钱
165353
注册时间
2010-12-1
在线时间
2108 小时
发表于 2012-11-14 14:25:00 | 显示全部楼层
对,检查芯片是不是正常。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

7

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2012-9-18
在线时间
0 小时
 楼主| 发表于 2012-11-14 15:06:00 | 显示全部楼层
回复【3楼】正点原子:
---------------------------------
原子哥,我拿我同学的开发板也试了,还是同样的问题,PA9口就是出不来波形。还有就是,PA9和PA8管脚连得串口,我程序是用串口下进去的,然后把开发板上的PA8\9上的跳线帽拔了再用示波器看的波形。
回复 支持 反对

使用道具 举报

7

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2012-9-18
在线时间
0 小时
 楼主| 发表于 2012-11-14 15:11:05 | 显示全部楼层
回复【2楼】tian123chi:
---------------------------------
我拿同学的开发板也试了,PA9管脚出来的一直是高电平。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165353
金钱
165353
注册时间
2010-12-1
在线时间
2108 小时
发表于 2012-11-14 15:21:30 | 显示全部楼层
把串口初始化去掉试试。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

7

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2012-9-18
在线时间
0 小时
 楼主| 发表于 2012-11-14 15:29:17 | 显示全部楼层
回复【6楼】正点原子:
---------------------------------
原子哥,好了,出来波形了,谢谢原子哥的指导
回复 支持 反对

使用道具 举报

96

主题

762

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1228
金钱
1228
注册时间
2012-10-19
在线时间
15 小时
发表于 2012-11-14 15:45:37 | 显示全部楼层
回复【6楼】正点原子:
---------------------------------
请教原子哥 怎么会想到串口初始化的?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165353
金钱
165353
注册时间
2010-12-1
在线时间
2108 小时
发表于 2012-11-14 18:11:04 | 显示全部楼层
回复【8楼】tian123chi:
---------------------------------
你不是说串口刚好用到PA9了么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

20

主题

78

帖子

0

精华

初级会员

Rank: 2

积分
178
金钱
178
注册时间
2013-4-18
在线时间
0 小时
发表于 2013-4-18 19:16:37 | 显示全部楼层
大哥,弱弱的问问程序的头文件怎么写?求救,我需要PWM波
回复 支持 反对

使用道具 举报

18

主题

102

帖子

0

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2012-12-2
在线时间
0 小时
发表于 2013-4-18 20:47:48 | 显示全部楼层
估计有这问题  我做过 映射到PE9 就不能输出 得去问ST公司
回复 支持 反对

使用道具 举报

18

主题

102

帖子

0

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2012-12-2
在线时间
0 小时
发表于 2013-4-18 20:48:45 | 显示全部楼层
尼玛的  还是串口问题啊
回复 支持 反对

使用道具 举报

20

主题

78

帖子

0

精华

初级会员

Rank: 2

积分
178
金钱
178
注册时间
2013-4-18
在线时间
0 小时
发表于 2013-4-19 08:32:40 | 显示全部楼层
回复【楼主位】sunky@feeling:
---------------------------------
#include"stdio.c"怎么写?急,谢谢lz
回复 支持 反对

使用道具 举报

7

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2012-9-18
在线时间
0 小时
 楼主| 发表于 2013-4-23 10:20:45 | 显示全部楼层
回复【13楼】大书事:
---------------------------------
这个貌似不用自己写吧,这是标准的输入输出函数时才会用到这个头文件,你百度一下
回复 支持 反对

使用道具 举报

7

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
68
金钱
68
注册时间
2013-5-5
在线时间
0 小时
发表于 2013-5-12 16:44:05 | 显示全部楼层
程序借鉴一下,感谢楼主
回复 支持 反对

使用道具 举报

9

主题

51

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2013-3-16
在线时间
0 小时
发表于 2013-7-30 10:37:19 | 显示全部楼层
mark
回复 支持 反对

使用道具 举报

10

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
88
金钱
88
注册时间
2013-6-11
在线时间
0 小时
发表于 2013-8-29 02:56:56 | 显示全部楼层
回复【6楼】正点原子:
---------------------------------
原子哥,非常感谢您能抽出这么多时间来回答我们的问题,真的非常感谢!!!
回复 支持 反对

使用道具 举报

45

主题

248

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
448
金钱
448
注册时间
2013-5-18
在线时间
0 小时
发表于 2013-9-2 08:07:35 | 显示全部楼层
我也遇到过,串口问题
回复 支持 反对

使用道具 举报

6

主题

47

帖子

0

精华

初级会员

Rank: 2

积分
91
金钱
91
注册时间
2013-4-4
在线时间
0 小时
发表于 2013-9-2 13:07:15 | 显示全部楼层
打算做四轴吗?
回复 支持 反对

使用道具 举报

1

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
171
金钱
171
注册时间
2015-5-14
在线时间
36 小时
发表于 2015-8-1 12:52:15 | 显示全部楼层
MARK
...................................
回复 支持 反对

使用道具 举报

1

主题

17

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2015-7-31
在线时间
1 小时
发表于 2015-8-1 20:54:25 | 显示全部楼层
串口初始化中PA9和PWMPA9冲突了,去掉串口初始化试试
回复 支持 反对

使用道具 举报

9

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2015-10-28
在线时间
13 小时
发表于 2023-11-7 12:49:10 | 显示全部楼层
我斗胆总结一下:
①如果压根不想用串口1的功能,直接不用初始化串口1。这个时候PA9是能输出PWM的。
②如果还想用串口1的功能,或者串口1已经被初始化了,那么必须将串口1的功能重映射到其他引脚(即下面的两句代码),这会PA9引脚才能输出PWM。
以上两种,我都试验过了,没问题的。
  //RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
  //GPIO_PinRemapConfig(GPIO_Remap_USART1, ENABLE);       
编程领域的半吊子http://blog.csdn.net/qq_26039331
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-27 11:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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