输入捕获示波器输出的pwm没了

2019-07-14 16:01发布



我现在tim1输出互补的pwm,要检测其上升沿,我用其CH2进行输入捕获(互补的pwm输出是CH1)结果示波器看见连输出的pwm都没了,附上代码:
void TIM1_Init(void)
{
   TIM1_PSCRH=0X00;  
   TIM1_PSCRL=0X00;
   TIM1_ARRH=0XFF;
   TIM1_ARRL=0XFF;
   TIM1_CNTRH=0X00;
   TIM1_CNTRL=0X00;
   TIM1_CCER1&=0XEE;
   TIM1_CCMR2=0X02;
   TIM1_CCER1=0X15;  
   //TIM1_SMCR|=0X54;    //这个如果我单纯判断边沿极性还需要吗?
   TIM1_IER=0X02;
   TIM1_CR1=0X85;
}
#pragma vector=0x0E
__interrupt void TIM1_CAP_COM_IRQHandler(void)
{
   if(TIM1_SR1&0X04)  //代表上升沿到来?
{
TIM1_SR1=0X00;
}
有人帮忙看看嘛
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
ctwewer
1楼-- · 2019-07-14 21:08
 精彩回答 2  元偷偷看……
DAA000
2楼-- · 2019-07-14 22:19
想问下,普通IO不能用作输入捕获?
周小舟1
3楼-- · 2019-07-14 23:00
ctwewer 发表于 2018-11-15 09:34
本帖最后由 wenyangzeng 于 2016-12-19 17:55 编辑

TIM1_CCMR1、TIM1_CCR1H、TIM1_L没有初始化,TIM1-CC1如何会有输出呢?

有的,在另一个子程序里(输出pwm的),如果没有上面这个输入捕获的程序,互补pwm会从CH1正常输出,我觉得还是我这个输入捕获程序的原因。
周小舟1
4楼-- · 2019-07-15 01:17
DAA000 发表于 2018-11-15 09:52
想问下,普通IO不能用作输入捕获?

应该可以吧,我是置为上拉输入
60user189
5楼-- · 2019-07-15 06:41
只有带定时器输出的IO才有捕获功能。。。。。。。
周小舟1
6楼-- · 2019-07-15 11:37
 精彩回答 2  元偷偷看……

一周热门 更多>