OpenEdv-开源电子网

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

TIM1 PWM通道12不能输出。但是34通道可以

[复制链接]

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
67
金钱
67
注册时间
2014-4-8
在线时间
0 小时
发表于 2014-6-12 09:44:16 | 显示全部楼层 |阅读模式
5金钱
TIM1的PWM输出时,通道3、4管用,1、2不管用。
用的是官方库的例子,新建的工程,没有配置复用的问题。请教各位遇到过这种情况吗?是什么原因呢?
[mw_shl_code=c,true]void main(void) { TIM1_DeInit(); TIM1_TimeBaseInit(0,TIM1_COUNTERMODE_UP,499,0); /* Channel 1, 2,3 and 4 Configuration in PWM mode */ /* TIM1_OCMode = TIM1_OCMODE_PWM2 TIM1_OutputState = TIM1_OUTPUTSTATE_ENABLE TIM1_OutputNState = TIM1_OUTPUTNSTATE_ENABLE TIM1_Pulse = CCR1_Val TIM1_OCPolarity = TIM1_OCPOLARITY_LOW TIM1_OCNPolarity = TIM1_OCNPOLARITY_HIGH TIM1_OCIdleState = TIM1_OCIDLESTATE_SET TIM1_OCNIdleState = TIM1_OCIDLESTATE_RESET */ TIM1_OC1Init(TIM1_OCMODE_PWM2,TIM1_OUTPUTSTATE_ENABLE,TIM1_OUTPUTNSTATE_ENABLE,2000,TIM1_OCPOLARITY_LOW,TIM1_OCNPOLARITY_HIGH,TIM1_OCIDLESTATE_SET,TIM1_OCNIDLESTATE_RESET); /*TIM1_Pulse = CCR2_Val*/ TIM1_OC2Init(TIM1_OCMODE_PWM2, TIM1_OUTPUTSTATE_ENABLE, TIM1_OUTPUTNSTATE_ENABLE, 1500, TIM1_OCPOLARITY_LOW, TIM1_OCNPOLARITY_HIGH, TIM1_OCIDLESTATE_SET, TIM1_OCNIDLESTATE_RESET); /*TIM1_Pulse = CCR3_Val*/ TIM1_OC3Init(TIM1_OCMODE_PWM2, TIM1_OUTPUTSTATE_ENABLE, TIM1_OUTPUTNSTATE_ENABLE, 2000, TIM1_OCPOLARITY_LOW, TIM1_OCNPOLARITY_HIGH, TIM1_OCIDLESTATE_SET, TIM1_OCNIDLESTATE_RESET); /*TIM1_Pulse = CCR4_Val*/ TIM1_OC4Init(TIM1_OCMODE_PWM2, TIM1_OUTPUTSTATE_ENABLE,2000, TIM1_OCPOLARITY_LOW, TIM1_OCIDLESTATE_SET); /* TIM1 counter enable */ TIM1_Cmd(ENABLE); /* TIM1 Main Output Enable */ TIM1_CtrlPWMOutputs(ENABLE); while (1); }[/mw_shl_code]

然后我又在网上搜的别人配置通道1输出的,也是不行
[mw_shl_code=c,true]void Tim1_Init() { /* Set the Autoreload value */ TIM1->ARRH = (uint8_t)(1000 >> 8); //2M/1000=2K TIM1->ARRL = (uint8_t)(1000); /* Set the Prescaler value */ TIM1->SCRH = 0x00; //8分频 16M/8=2M TIM1->SCRL = 0x08; TIM1->CCR1H = (uint8_t)(200 >> 8); // 输出脉宽 TIM1->CCR1L = (uint8_t)(200); // 输出脉宽 TIM1->CCMR1 |= 0x60; // PC1脚PWM输出,PWM模式1 TIM1->CCER1 |= 0x01; // CH1/CH2/ 关闭互补输出;高电平有效输出高; TIM1->IER = 0x00; // 不允许产生更新事件中断 TIM1->CR1 = 0x01; //启动计数器 TIM1->BKR |= 0x80; //使能PWM输出 } void main() { CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1); asm("sim"); // 关全局中断 Tim1_Init(); //定时器时钟配置 asm("rim"); // 开全局中断 TIM1_CCR1L = 20; while(1) {} } [/mw_shl_code]

最佳答案

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

已解决,要用stm8的IO的第二功能,需要配置选项字。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
67
金钱
67
注册时间
2014-4-8
在线时间
0 小时
 楼主| 发表于 2014-6-12 09:44:17 | 显示全部楼层
已解决,要用stm8的IO的第二功能,需要配置选项字。
回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
67
金钱
67
注册时间
2014-4-8
在线时间
0 小时
 楼主| 发表于 2014-6-12 11:25:32 | 显示全部楼层
唉。,据说那个通道2是默认关闭的,我怎么找了选项字配置的文档,上面没有开启的选项字节呢?
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
23
金钱
23
注册时间
2014-7-4
在线时间
0 小时
发表于 2014-7-4 17:01:47 | 显示全部楼层
回复【3楼】qrffrq:
---------------------------------
您好,我给你发了短信,希望你能回复我!因为最近我也在做STM8S003多通道ADC转换的!希望能跟你学习,能指导一下!谢谢!QQ:370854109
回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
67
金钱
67
注册时间
2014-4-8
在线时间
0 小时
 楼主| 发表于 2014-7-7 08:33:53 | 显示全部楼层
回复【4楼】liaohui:
---------------------------------
不好意思刚刚看到
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
23
金钱
23
注册时间
2014-7-4
在线时间
0 小时
发表于 2014-7-7 08:38:29 | 显示全部楼层
回复【5楼】qrffrq:
---------------------------------
您能加我么. 想向您请教!370854109. 请备注开源
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
24
金钱
24
注册时间
2015-2-10
在线时间
0 小时
发表于 2015-2-10 11:06:01 | 显示全部楼层
回复【3楼】qrffrq:
---------------------------
想问下怎么解决的,,,
IOT物联网智能软硬件技术服务群:386294792 欢迎关注微信公众号:IOT-STUDIO,定期推出智能硬件资讯!
回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
67
金钱
67
注册时间
2014-4-8
在线时间
0 小时
 楼主| 发表于 2015-2-11 13:45:51 | 显示全部楼层
回复【7楼】gejiangwendi:
---------------------------------
就是选项字啊+_+
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
24
金钱
24
注册时间
2015-2-10
在线时间
0 小时
发表于 2015-2-13 14:40:27 | 显示全部楼层
回复【8楼】qrffrq:
------------------------------
已解决 ,原来得在STVP中配置
IOT物联网智能软硬件技术服务群:386294792 欢迎关注微信公众号:IOT-STUDIO,定期推出智能硬件资讯!
回复

使用道具 举报

25

主题

122

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
399
金钱
399
注册时间
2015-5-2
在线时间
59 小时
发表于 2015-7-9 21:30:05 | 显示全部楼层
楼主,可否分享一份STM8同时产生四路PWM的DEMO呢?现在用STM8做一个智能小车的工程,多谢啦。。QQ邮箱:1251513584@qq.com
回复

使用道具 举报

26

主题

108

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1826
金钱
1826
注册时间
2015-12-18
在线时间
209 小时
发表于 2017-3-2 12:44:48 | 显示全部楼层
我也遇到这种问题,1,2怎么也没输出,3.4有输出。请问怎么解决
想学STM32,我想宝刀未老吧
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-6-28 22:32

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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