智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2223|回复: 9
打印 上一主题 下一主题

[软件类] 输入捕捉求指教

[复制链接]

3

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
363
威望
183
贡献
116
兑换币
116
注册时间
2013-12-24
在线时间
32 小时
毕业学校
遂昌中学
跳转到指定楼层
1#
发表于 2014-7-15 21:27: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); //开启输入捕捉中断
    }
}


回复

使用道具 举报

3

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
363
威望
183
贡献
116
兑换币
116
注册时间
2013-12-24
在线时间
32 小时
毕业学校
遂昌中学
2#
 楼主| 发表于 2014-7-15 21:30:21 | 只看该作者
上面是我的输入捕捉配置程序,脉冲输入正确,用PIT1s中断去读取1秒内FTM0捕捉到的脉冲值,但捕捉到的脉冲值一直为零,因此在疑惑输入捕捉程序配置是否有问题?请各位大神指教,谢谢
回复 支持 反对

使用道具 举报

3

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
363
威望
183
贡献
116
兑换币
116
注册时间
2013-12-24
在线时间
32 小时
毕业学校
遂昌中学
3#
 楼主| 发表于 2014-7-15 21:31:28 | 只看该作者
自己顶一个
回复 支持 反对

使用道具 举报

7

主题

103

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1959

活跃会员奖章优秀会员奖章

威望
938
贡献
625
兑换币
609
注册时间
2012-11-28
在线时间
198 小时
毕业学校
未毕业
4#
发表于 2014-7-16 21:54:37 | 只看该作者
:o:o:o:o:o
回复 支持 反对

使用道具 举报

3

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
363
威望
183
贡献
116
兑换币
116
注册时间
2013-12-24
在线时间
32 小时
毕业学校
遂昌中学
5#
 楼主| 发表于 2014-7-18 09:58:08 | 只看该作者
已解决,程序间干扰问题
回复 支持 反对

使用道具 举报

2

主题

106

帖子

0

精华

高级会员

Rank: 4

积分
813
QQ
威望
417
贡献
236
兑换币
255
注册时间
2014-9-3
在线时间
80 小时
毕业学校
合浦廉中
6#
发表于 2015-1-11 20:56:00 | 只看该作者
  :)
回复 支持 反对

使用道具 举报

1

主题

12

帖子

0

精华

注册会员

Rank: 2

积分
181
威望
110
贡献
45
兑换币
53
注册时间
2014-10-23
在线时间
13 小时
毕业学校
河北省献县第一中学
7#
发表于 2015-4-5 15:17:09 | 只看该作者
GVC 发表于 2014-7-18 09:58
已解决,程序间干扰问题

具体是怎么样的干扰呢,,,,急求啊
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
190
威望
108
贡献
54
兑换币
58
注册时间
2016-7-14
在线时间
14 小时
毕业学校
山科大
8#
发表于 2016-9-4 14:40:38 | 只看该作者
那个捕捉到的pwm如何具体的转化成一个数值呢  请赐教
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
190
威望
108
贡献
54
兑换币
58
注册时间
2016-7-14
在线时间
14 小时
毕业学校
山科大
9#
发表于 2016-9-4 14:43:52 | 只看该作者
能加个qq吗  亲
回复 支持 反对

使用道具 举报

25

主题

250

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3089
威望
1478
贡献
875
兑换币
859
注册时间
2016-9-5
在线时间
368 小时
毕业学校
工大学
10#
发表于 2017-2-16 19:39:12 | 只看该作者
顶。。。。
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-26 03:36 , Processed in 0.047679 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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