OpenEdv-开源电子网

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

STM8S003F TIM2 输出PWM 怎么才能 精度高 而且PWM频率也高

[复制链接]

3

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2016-7-1
在线时间
11 小时
发表于 2017-3-2 18:35:33 | 显示全部楼层 |阅读模式
3金钱
下边例程测试过是PD4口输出PWM波形   我想做100KHZ的PWM   然后在频率不改变的基础上,占空比从0-100可调      可是在调试时发现  ARR调大了以后  输出PWM频率会低到几KHZ 甚至几十HZ

请问各位大侠 我怎么设置 才能做成100Khz  占空比可调呢




void TIM2_INIT()
   {
      CLK_PCKENR1 |= 0x20;   //TIM2外设时钟使能  STM8外设时钟默认全部使能的,如果没有禁止外设时钟,此段可省略

      TIM2_CR1 = 0x00;       //禁止计数器,计数器一般先禁止,配置参数完成后再使能

      TIM2_CCMR1 = 0x70;    //输出模式PWM2  
                             //CC1配置为输出模式
                             //PWM2模式

      TIM2_CCER1 = 0x03;    //OC1低电平有效  OC1信号输出到对应的引脚

      TIM2_ARRH = 0x00;      //

      TIM2_ARRL = 0xff;      //

      TIM2_CCR1H =0x0f;

      TIM2_CCR1L =0xff;

      TIM2_PSCR =0x00;      //分频系数为0

      TIM2_IER =0x02;      //禁止更新中断,通道1中断允许,产生中断后需进入中断清楚标志位,否则程序会死在中断内

      TIM2_CR1 =0x01;      //使能计数器




   }

最佳答案

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

PWM精度由时钟决定,八位机输出100k比较勉强,精度很难做到高
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2017-3-7
在线时间
13 小时
发表于 2017-3-2 18:35:34 | 显示全部楼层
PWM精度由时钟决定,八位机输出100k比较勉强,精度很难做到高
回复

使用道具 举报

32

主题

881

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3928
金钱
3928
注册时间
2015-11-14
在线时间
535 小时
发表于 2017-3-2 23:23:19 | 显示全部楼层
单片机频率只有16M,你需要输出100K的频率,那么ARR的只只能设置为160-1,分辨率也就大大的降低了
回复

使用道具 举报

3

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2016-7-1
在线时间
11 小时
 楼主| 发表于 2017-3-3 09:47:02 | 显示全部楼层
Electronic 发表于 2017-3-2 23:23
单片机频率只有16M,你需要输出100K的频率,那么ARR的只只能设置为160-1,分辨率也就大大的降低了

现在用的内部晶振   fmaster 只有2M  现在PWM  设置的18KHZ   100-1   分辨率低啊
回复

使用道具 举报

32

主题

881

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3928
金钱
3928
注册时间
2015-11-14
在线时间
535 小时
发表于 2017-3-3 09:50:39 | 显示全部楼层
可以用16M啊
回复

使用道具 举报

3

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2016-7-1
在线时间
11 小时
 楼主| 发表于 2017-3-3 15:56:25 | 显示全部楼层

上电后 默认的是2M   我没配置    话说   默认2M是不是有原因的啊   内部高速RC   做主频  是不是  高了 会有隐患?
回复

使用道具 举报

32

主题

881

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3928
金钱
3928
注册时间
2015-11-14
在线时间
535 小时
发表于 2017-3-3 17:39:06 | 显示全部楼层
没有啊,我一直用16M
回复

使用道具 举报

1

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2017-3-7
在线时间
13 小时
发表于 2017-3-7 17:16:53 | 显示全部楼层
你可以用外挂晶振,我也遇到这个问题,我要输出400k,只能改用STM32来做
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

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

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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