智能车制作

标题: 输入捕捉求指教 [打印本页]

作者: GVC    时间: 2014-7-15 21:27
标题: 输入捕捉求指教
void FTM_Input_init( CHn ch, Input_cfg cfg)
{//注:CHn         通道号(CH0~CH7)
  // Input_cfg   输入捕捉配置(Rising、Falling、Rising_or_Falling)上升沿捕捉、下降沿捕捉、跳变沿捕捉
        SIM_SCGC6 |= SIM_SCGC6_FTM0_MASK;                           //使能FTM1时钟
        SIM_SCGC5 |= SIM_SCGC5_PORTC_MASK;//PC0
    /******************* 设置为输入捕捉功能 *******************/
    switch(cfg)
    {
    case Rising:    //上升沿触发
        FTM0_C0SC |=  ( FTM_CnSC_ELSA_MASK  | FTM_CnSC_CHIE_MASK );                   //置1
        FTM0_C0SC &= ~( FTM_CnSC_ELSB_MASK  | FTM_CnSC_MSB_MASK | FTM_CnSC_MSA_MASK); //清0
        break;

    case Falling:   //下降沿触发
        FTM0_C0SC |= (FTM_CnSC_ELSB_MASK  | FTM_CnSC_CHIE_MASK );                    //置1
        FTM0_C0SC &= ~( FTM_CnSC_ELSA_MASK | FTM_CnSC_MSB_MASK | FTM_CnSC_MSA_MASK); //清0
        break;

    case Rising_or_Falling: //上升沿、下降沿都触发
        FTM0_C0SC |=  ( FTM_CnSC_ELSB_MASK | FTM_CnSC_ELSA_MASK  | FTM_CnSC_CHIE_MASK ); //置1
        FTM0_C0SC &= ~( FTM_CnSC_MSB_MASK  | FTM_CnSC_MSA_MASK); //清0
        break;
    }

    FTM0_SC = FTM_SC_CLKS(0x1);       //系统时钟

    FTM0_MODE |= FTM_MODE_WPDIS_MASK;
    FTM0_COMBINE = 0;
    FTM0_MODE &= ~FTM_MODE_FTMEN_MASK;
    FTM0_CNTIN = 0;

    FTM0_STATUS = 0x00;               //清中断标志位
    //开启输入捕捉中断
    Enable_IRQ(FTM0_ISR_NUM);
}
void FTM0_IRQHandler()
{
    uint8 s = FTM0_STATUS;             //读取捕捉和比较状态  
    uint8 CHn;
    FTM0_STATUS = 0x00;             //清中断标志位
    CHn = 0;
    if( s & (1 << CHn) )
    {
        FTM0_IRQ_DIS(0);     //禁止输入捕捉中断
        pwmtest++;                             //计数+1
        FTM0_IRQ_EN(0); //开启输入捕捉中断
    }
}



作者: GVC    时间: 2014-7-15 21:30
上面是我的输入捕捉配置程序,脉冲输入正确,用PIT1s中断去读取1秒内FTM0捕捉到的脉冲值,但捕捉到的脉冲值一直为零,因此在疑惑输入捕捉程序配置是否有问题?请各位大神指教,谢谢
作者: GVC    时间: 2014-7-15 21:31
自己顶一个
作者: want_100    时间: 2014-7-16 21:54
:o:o:o:o:o
作者: GVC    时间: 2014-7-18 09:58
已解决,程序间干扰问题
作者: wyx225913    时间: 2015-1-11 20:56
  :)
作者: 听着听着、睡了    时间: 2015-4-5 15:17
GVC 发表于 2014-7-18 09:58
已解决,程序间干扰问题

具体是怎么样的干扰呢,,,,急求啊

作者: 蜡笔小新.    时间: 2016-9-4 14:40
那个捕捉到的pwm如何具体的转化成一个数值呢  请赐教
作者: 蜡笔小新.    时间: 2016-9-4 14:43
能加个qq吗  亲
作者: 林hua1234    时间: 2017-2-16 19:39
顶。。。。




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2