|
热门文章
推荐文章
最新文章
|
填充计数式相位测量的分析与实现(2)
原作者:[标签:作者] 添加时间:2007-06-29 原文发表时间:2007-06-30 人气:1
本文章共3150字,分2页,当前第2页,快速翻页:
|
四.高频计数的实现
从以上分析得知,若仅利用单片机的资源来实现相差的测量,是无法以高精度测得较高频率信号的相位差的。其关键所在是计数频率已无法再提高。鉴于这点笔者考虑到不用单片机内部的CTC计数,而是采用廉价的74系列芯片搭成高速计数,锁存电路。当计数值锁定这后,再读入单片机进行计算和显示。
具体实现的电路图如图2所示。高速计数器由4片74LS191串联组成16位计数器。计数脉冲的输入由一个触发器控制,触发器设计成自锁式,即由被测的周期信号A'锁定一个完整的信号周期后,封锁计数脉冲的输入 ,不再响应后一个周期,待单片机处理完该周期内的数据后,由单片机先对计数器清零,然后解除触发器的封锁,系统才继续采集下一个信号周期的数据。周期计数锁存器(记N值)由74LS373(U8),(U7)组成,相差计数锁存器(记n值)由74LS373(U6),(U5)组成,其中(U5),(U7)锁存低8位数据,(U6) ,(U8)锁存高8位数据,当A'信号的上沿来临时,由触发器打开U10门,开始计数。当B' 信号的上沿来临时,锁存U6,U5(获得n值)。当A'信号的上沿再次来临时,锁存U8,U7(获得N值)。并封锁触发器。通知单片机依次读入U5,U6,U7,U8的锁存值进行计算。高频振荡源采用高精度晶体振荡器,以提供高精度的计数脉冲。 考虑到硬件资源的充分利用,硬件设计时将某些部件设计成公用,如相差计数和周期计数共用一个计数器。由于0≤n≤ N,故相差信号(B'信号的上沿)必定会在一个信号周期内的某个时刻出现,可利用这一信号将相差计数值n从计数器上浮获而锁入相差计数锁存器。当一个完整的周期结束时(A'信号的上沿再次出现),锁存周期计数值N(见图3)。 五.计数脉冲频率的设置与实现
如前面所述16位计数器的计数范围是0--65535。根据(1)式要获得足够的细度,在某一信号频率下计数范围应在[3600,65535]区间内。由于计数器的计数值与被测信号的频率成反比,与计数脉冲的频率成正比。即在某一固定的计数脉冲频率下,被测信号的频率越低(周期越长)则一个周期内所获得的计数脉冲的个数越多。反之越少。或在某一个固定的被测信号的频率下,计数脉冲的频率越多,则在一个信号周期内所获得的计数脉冲的个数就越多,反之就越少。若计数值为C,被测信号频率为fx,计数脉冲频率为fa,则有下式:
C= fa/fx (3)
由于是16位的计数器,C值应满足3600 < C < 65525在某一个fa下,被测信号频率fx就会被限制在一定的范围内。即
fa/65536 < fx < fa/3600
也就是fx的下限为 fa÷65535 Hz,上限是fa÷3600 Hz,从(4)式中可以看出某个fa,所对应fx其范围是有限的。要做到fx有一个较宽的频范围,单靠16位的计数器,用一个fa是不行的。故笔者在设计时,将计数脉冲源设计成有多档振荡频率的信号源,兼顾被测信号的低频区和高频区。由单片机根据读取的N值和计数器的溢出信号,通过电子开关U11,自动切换。当读取的N值太小时,切换到较高的计数频率,当计数器有溢出时,就切换到较低的计数频率。为了简单说明笔者将fa设为2M和10M两档。根据(4)式分析入下:
当fa=2M时: fx的下限为 2×106÷65535=30.5Hz fx的上限为 2×106÷3600=555.6Hz
当fa=10M时:fx的下限为 10×106÷65535=152.6Hz fx的上限为 10×106÷3600=2777.8Hz
从以上分析来看,从152.6Hz到 555.6Hz,两档计数频率应对这一频率区的被测信号是重叠的,即在该频率区内,这两档计数频率都满足(4)式,这个重叠区的存在是必要的,它保证了自动切换计数脉冲频率的操作不发生振荡。但重叠区不必这么大,在实际应用中,为了保证测量精度可通过程序将重叠区限制在200Hz至250Hz 这个范围内。
参考文献 1.张友德,赵志英,涂时亮编,单片微型机原理、应用与实验,复旦大学出版社。1993 ( |
|
|
 本文章所属分类: 首页
→ 仪器仪表维修技术
|
文章搜索
|