[技术问答] 请教下关于定时器捕获功能,对波形的要求

[复制链接]
 楼主| 重庆酱油仔 发表于 2014-2-24 14:25 | 显示全部楼层 |阅读模式
本帖最后由 重庆酱油仔 于 2014-2-24 14:28 编辑

如题,我用的是MINI54LDE芯片,使用中我利用T1EX--P3.6来捕获外部波形的下降沿,用此引脚直接去测量该芯片的PWM,和SYStick驱动的IO口都正常,用来测外部的波形,数据变化非常的不准,
void FairyTMR1ForCapInit()
{
TIMER_Open(TIMER1,TIMER_PERIODIC_MODE,1);
TIMER_EnableCapture(TIMER1,TIMER_CAPTURE_TRIGGER_COUNTING_MODE,TIMER_CAPTURE_FALLING_EDGE);
// TIMER_EnableCapture(TIMER1,TIMER_CAPTURE_TRIGGER_COUNTING_MODE,TIMER_CAPTURE_RISING_THEN_FALLING_EDGE);
TIMER_EnableCaptureDebounce(TIMER1); //ʹÄÜÏû¶¶
TMR1ForCapIOInit();
NVIC_EnableIRQ(TMR1_IRQn);
TIMER_EnableCaptureInt(TIMER1);
// TIMER_EnableInt(TIMER1);
TIMER_Start(TIMER1);
}

外部信号波形

外部信号波形
niuyaliang 发表于 2014-2-25 12:49 | 显示全部楼层
1.先看官方的例程看看
2.这个东东我下午看看,正好也用到
从小木丁丁 发表于 2014-2-25 20:18 来自手机 | 显示全部楼层
官方的例程是一回事,变成自己的又是一回事
 楼主| 重庆酱油仔 发表于 2014-2-26 09:31 | 显示全部楼层
个人觉得是对波形要求很高,我用滞回比较器,将上升沿和下降沿都调陡了后,就能测得比较准了。
niuyaliang 发表于 2014-2-26 09:53 | 显示全部楼层
再要求严格,也应该能检测到边沿的吧,不过我也是先通过比较器再检测的,哈哈
a_ziliu 发表于 2014-2-26 10:14 | 显示全部楼层
抓的頻率是多少呢?
要考量到發生检测到边沿進中斷時間。
及timer裡面計數的頻率,也會影響到精度。
从小木丁丁 发表于 2014-2-26 10:48 来自手机 | 显示全部楼层
抓的頻率是多少呢?
要考量到發生检测到边沿進中斷時間。
及timer裡面計數的頻率,也會影響到精度。
 楼主| 重庆酱油仔 发表于 2014-2-26 10:53 | 显示全部楼层
100HZ,用内部22MHZ晶振
niuyaliang 发表于 2014-2-28 23:36 | 显示全部楼层
重庆酱油仔 发表于 2014-2-26 10:53
100HZ,用内部22MHZ晶振

我试了试计数功能,一个下降沿捕获一个,是正常的,你试试用中断,有下降沿就产生中断
xzy7767 发表于 2017-11-21 11:00 | 显示全部楼层
我最近也在用定时器测量脉宽,但测量的数据不对。楼主,可以将你的工程发我借鉴下吗?
zhuomuniao110 发表于 2017-11-21 16:49 | 显示全部楼层
是不是可以先设置上升沿触发,然后进去清零定时器,然后设置成下降沿触发,读取定时器,就是高电平脉宽
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

55

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部