打印
[STM8]

stm8 tim1 cc3 配置为俘获输入 cc4比较输出

[复制链接]
4854|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qqpqqp|  楼主 | 2010-8-10 16:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
TI, STM8, ce, ps, PWM
各位求助:

  我用stm8的time1,其中CC3配置为俘获输入(遥控码接受),CC4配置为PWM输出,结果只要写入ARRH,ARRL时,就只能输出PWM,遥控码不能接收, 好像时基改变了,俘获值不对,无法识别遥控码:
程序如下:

//TIM1_CC1用做REMOTE input capture
TIM1_CCER2&=0xfe;    //捕获关
TIM1_CCMR3=0x01;     //输入捕获
    TIM1_PSCRH=0x00;     //分频,决定计数单位 fCK_PSC/( PSCR[15:0]+1)=8M/16=2us
    TIM1_PSCRL=0x0f;
    //TIM1_CNTRH = 0;   
   // TIM1_CNTRL = 0;
    TIM1_CCER2|=0x02;      ///下降沿
    TIM1_CCER2|=0x01;  ///使能捕获
    TIM1_IER|=0x08;      //允许中断
    //TIM1_CR1_CEN=1;         //使能time1
   
TIM1_CCMR4=0x60;  //PWM MODE1 输出
  TIM1_ARRH=0x00;   
TIM1_ARRL=0x28;         //12.5k=80us=2usx40
TIM1_CCR4H=0x00;
TIM1_CCR4L=0x14;        //duty cycle=CCR/ARRx100
TIM1_CCER2|=0x10;        //输出使能
TIM1_BKR|=0x80;
  TIM1_CR1_CEN=1;
请帮忙
沙发
香水城| | 2010-8-10 21:19 | 只看该作者
是的,不能这么用;除非你知道输入捕获和PWM模式的原理。

使用特权

评论回复
板凳
pkat| | 2010-8-11 08:48 | 只看该作者
不提倡这么用,很容易出问题的

使用特权

评论回复
地板
qqpqqp|  楼主 | 2010-8-11 08:55 | 只看该作者
规格书明确说明time1 的四个通道可以单独配置为输入,PWM输出等功能,理论上是可以的啊

使用特权

评论回复
5
秋天落叶| | 2010-8-11 09:07 | 只看该作者
这么用可以,但是你得先弄清输入捕获和PWM模式的原理

使用特权

评论回复
6
qqpqqp|  楼主 | 2010-8-11 09:21 | 只看该作者
非常感谢楼上两位的回复, 理论上这应该是可以,否则tim1有四个通道没有意义,硬件已定,只能用tim3作定时器,专门为cc4口服务输出IR遥控码了,郁闷。。。。。。。。

使用特权

评论回复
7
香水城| | 2010-8-11 09:55 | 只看该作者
非常感谢楼上两位的回复, 理论上这应该是可以,否则tim1有四个通道没有意义,硬件已定,只能用tim3作定时器,专门为cc4口服务输出IR遥控码了,郁闷。。。。。。。。 ...
qqpqqp 发表于 2010-8-11 09:21


没错,理论上确实是可以,所以我说你要知道输入捕获和PWM模式的原理。

简单地说,当你只做捕获输入时,计数器是从0x0000计数到0xFFFF,所以你的捕获值的范围是0x0000~0xFFFF。

但当你使用PWM输出时,配置了ARRH和ARRL,此时计数器的计数是从0x0000计数到ARRH和ARRL对应的数值,然后再从0x0000开始,如果捕获值超出了0x0000~ARRH:ARRL的范围,当然会出错。

解决的办法是,在每次计数器溢出并重复计数时,有一个溢出中断,你要在溢出中断中做计数,然后在捕获成功时把溢出次数补偿到捕获结果中。

使用特权

评论回复
8
香水城| | 2010-8-11 11:55 | 只看该作者
嘿嘿,理论上确实是可以,但你要把理论搞懂才可以实现,一知半解当然就不可以,:lol

使用特权

评论回复
9
侠行江湖| | 2016-2-15 21:08 | 只看该作者
香水城 发表于 2010-8-11 09:55
没错,理论上确实是可以,所以我说你要知道输入捕获和PWM模式的原理。

简单地说,当你只做捕获输入时, ...

香主,可以类似溢出计数类似例子?我也遇到相关类似问题,TIM1 CH1做输入捕捉,TIM2做PWM输出,高频PWM可以准确捕捉频率,低频不可以

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

5

帖子

1

粉丝