分享

数字式频率计的制作(翻译)

 BGTWOQBHA 2013-03-16
前一段时间,看到一个数字式频率计的资料,便将其保存下来,我在网上查了一下,国内很多电子制作的网站都转载了这篇文章,但都是原文转载的,没有一个中文版本。所以就抽了点时间把它弄成中文。在此帖出,以供有这方面需要的朋友参考。
声明一点,本人一点也不会那个什么“韩语”,全凭“电子在线词典”一类的软件帮忙,连蒙带猜,总算把它弄出来了,也不知道对不对。发现有错的朋友,欢迎指正。
闲话少说,言归正传。
原文出处:http://www./sefcntr/index.htm


SE-FCNTR
100兆赫频率计数器/脉冲计数器
本机为使用8051的8位100MHz的频率计数器。
使用Crossware 公司8051 ANSI C语言编译器(演示版)。
无数字逻辑电路计数误差,也无软件计算误差。
8051的时钟振荡器XTAL1频率为24MHZ
用作自校输入时,显示数字为24000000。
避免了1个数字的计数误差或16进制转换为十进制时的12~48个时钟周期的误差。
脉冲计数部分的数据被送往8位LED显示器
image001.jpg
8051内部16比特计数器及外部12比特(其中74F161 4比特, 74HC393 8比特)共 28 比特计数器,8位数字显示100MHz频率计数器。
image002.jpg
门控时间为1秒,显示至8位数99999999。
image003.jpg
模拟100MHz前置放大器,2.4GHz高频64分频的预分频器
image004.jpg
已制作的最少零件方案的计数器。
image005.jpg
所采用的TI公司的SN74F161为4比特计数器,最大工作频率达120MHz。(资料:http://www./sefcntr/sn74f161a.pdf
image007.jpg
保持模式选择,MHz/GHz选择开关
image008.jpg
LED显示器直角引线
image009.jpg
高频性能良好的双面环氧树脂印刷电路板
image010.jpg
整套计数器的元件均采用常用易购元件。
image011.png
硬件组成:
SE-FCNTR是采用8051微处理器的仪器级别的频率计。
整套仪器分为三个部分:
100MHz数字式计数器,100MHz模拟前置放大器,2.4GHz前置64级预分频器
数字式计数器中的微处理器采用ATMEL公司的AT89C51。
ATMEL公司的AT89C51与市面上Intel公司的标准8051系列相同,带有4k闪存。是市面上最经济实惠的微处理器。
8051处理器有两个内部16位计数器,
定时器Timer0及外部计数器用作频率计数,定时器Timer1是用来产生1秒闸门时间。
为了简化电路,数字LED显示部分,采用动态驱动电路。
每位数字2毫秒依次顺序点亮。
为了尽量减少频率计的组成元件数量,8051内部的16位计数器/定时器寄存器被用作频率计的计数器的一部分。
8051定时器的最大输入频率为Xtal1频率的1/4。
例如,如果XTAL1的时钟频率为24MHz,则最高计数频率可达6MHz。
频率计数器,通常情况下5~6位显示已经足够了,但作为脉冲计数器,采用了8位数字显示的设计。
为了保证8位计数的准确,必需要有一个27比特的高速计数器。
Timer0的16位计数器及其外部74HC393的8位计数器和74161的4位计数器共同构成了一个28位计数器。
因为2的28次幂为268435456,故足以显示数字99999999( 8位)。
100MHz数字脉冲计数集成电路,74系列的产品为74F161。
各个不同的制造商所生产74F161其最高计数频率也略有不同。
全都可以用于100MHz计数,而TI公司的SN74F161N最高计数频率可达120MHz。
SN74F161是一个4位计数器,可用作16分频,100MHz进行16分频后为6.25MHz。
同样,这个频率必须依靠其它计数器进行计数。
大多数集成电路是可以工作在这样低的频率的。
74HC393有8位计数器,故适用于这个多位计数器。
通过74HC393的8位计数器后的频率为25KHz,这个频率非常低,所以AT89C51单片机的Timer0的工作不会有什么问题的。
如果只使用8051频率计数器作显示,为了门控ontime时基1秒的准确,8051必须要注意指令的执行时间。
8051自1980年开始生产,是一种生产时间很长的处理器。
因此,指令的执行时间及运算时间都有着或大或小的差异。
时钟频率决定sjmp$指令的执行时间,必须确定是1微秒的1/2还是1/4。
8051的12个XTAL1脉冲周期是指令执行的基本时间单位。
单字节指令NOP和INC R0需耗时12个时钟周期,SJMP$指令耗时24个时钟周期。
如果使用的时钟频率为24MHz,其24个时钟周期则为1毫秒。
8051要产生1秒信号,则计数器的比特数不够。
因此,采用了每秒产生500次中断的方法,用以生成1秒的门控间期。
在任何情况下,中断发生的时间都必须以1微秒为标准时间单位。
8051时钟振荡使用24MHz,采用其24个时钟周期。
8051是采用12个机器时钟周期(指令执行的基本时间单位)。
指令执行时间最少需要12个时钟周期,即500纳秒。

软件构成:
开发软件采用C语言编译器。
英国Crossware公司的 8051 ANSI C语言编译器,具有丰富的数据类型,并且提供IEEE695格式32位微处理器调试。
支持从0开始的4K字节编译器的Free版本,已经在韩国免费发布。
(其它公司的8051编译器演示版,支持顶部区域编译,因而需要外部ROM)
采用微处理器的计数器,产生精确的1秒间期的刷新时间是很重要的。
频率计数器产生1秒脉冲等一些参数,如果1秒间期的geotyimeu门限时间不准确,将不能看到准确的计数。
1秒的门控时间供8051的内部定时器Timer1使用。
基自Xtal 1的标准时钟频率信号,定时器每秒产生500次中断。
与CISC(复杂指令集合)处理器相比,8051在指令语义及执行时间等方面都有所不同。
因而,如果在计算过程中,发生中断,则会出现的误差,这并不完全1秒时间门控时间。
10的28位二进制数据应该输出术的本质改变,所以通常只中断处理程序必须是分布式处理。
中断循环时间2毫秒,因此这一变化的十进制数16至10十进制diseupeureyi处理程序,必须加以计算。
但是,使用8051输出功能毫秒内是不可能转换为8位数字符号。
因此,每个中断周期又分为若干jarissik 8变换符号已被配置为运行。
HOLD键的功能是停止LED数字显示。

软件调试:
8051的 XTAL1提供一个频率为24MHz的振荡信号。
同时该XTAL1亦为74F161提供24MHz输入时钟信号。
(硬件连接)此时,通过软件校正,使LED显示器上的数字为24000000。
如果看见显示为2400000,则说明软件计算没有发生误差
(1秒门控基准时间,与测量基准时钟是相同的)

100MHz/100兆欧前置放大器:
这是整个计数器制作中最困难的一部分。
前置放大器将微弱的交流电压放大并转换为TTL电平。

测量高达100MHz的频率范围,须配置超级宽带放大器。
并且,还必须对正弦波进行整形。
用于此目的是施密特触发器。
74系列中是74LS14。
然而,要获得可以通过100MHz及更高频率的施密特触发器是很困难的。
被称作高速的74F14及74AS14,其实验的结果的上限频率也仅为65MHz左右。
(在该实验中)TI公司的SN74AHCT14输入频率可达120MHz以上,其施密特触发器性能得到验证。
输入频率的最低电压有所不同。
总体来说,50MHz~100MHz输入电压需1.5V以上,50MHz以下则需0.5V左右方可进行计数。

2.4GHz,50欧姆,64分频 预分频器(prescaler):
预分频器的作用是提高频率计数器的测量频率上限。
比如,在30MHz计数器基础上右上一个高速10分频器,即可构成为一个300MHz的计数器。
固然可以通过TTL集成电路计数器来组成的10分频预分频器。然而,现在可以通过微型处理器进行十进制转换,因而采用64/128/256预分频。
本机的预分频器采用富士通公司的MB506。
从10MHz至2.4GHz的可采用64分频的预分频器。
输入信号的放大采用两片Mini Circuits(微型电路)公司的MAR-6。
能够对小至0.1V的信号进行计数。
输入阻抗为50欧姆。

在SE-FCNTR装置的开发,大量的高频资料收集,前置放大器/预分频器电路的设计,元器件选择及性能评价等方面,金社长均予以了大量的帮助,在此深表感谢!
image013.png

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多