在一个小项目里面,用PIC16F913来主控,用来记录N个脉冲的时间,时间精确到10us,看了下资料,晶振可以最高20M 20M/4分频可以到5M。但是看了下第定时器的中断,软件模拟了下,进中断和出中断就要3.XX个US,如果加上脉冲捕获进中断的时间,一起的误差会不会超出10US的范畴???(思路是:一边捕获脉冲。一边开个5US的定时器片,一直累加。当脉冲捕获到N值时,关定时器。看定时了多少个5US) 刚接错PIC,不知道这样可行不?高手路过,喵喵。。。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
可以将脉冲作为计数器外部事件。第一个脉冲进入时,设定计数器,并启动另一个时钟(不开中断,每5us递增1)。
n个脉冲进入时,计数器中断,读取时钟数值。此法适用于总计时不超过时钟的最大值。
-----------------------------------------------------------------------
这方法是很好,但是她的应用与总共N个脉冲的时间值不超过时钟的最大值,我这个是50HZ左右的脉冲,而且有时会出现10HZ的。假如1000个脉冲的话,时间早超出了超过时钟的最大值。
一周热门 更多>