基于单片机的频率测试系统及使用上述系统的测试方法技术方案

技术编号:8270595 阅读:196 留言:0更新日期:2013-01-31 02:29
本发明专利技术涉及一种基于单片机的频率测试系统及上使用上述系统的测试方法,属于频率测量技术领域。本发明专利技术以单片机为核心,利用单片机对外部待测信号的上升沿进行计数,得到待测信号的频率,通过其SPI接口传递给串行LED显示芯片,进而驱动数码管显示频率值,另一方面单片机根据信号的频率范围,控制计数器的计数初值,实现测量范围的自动切换。本发明专利技术不仅可以测试1Hz以上的信号频率,也可以测试1Hz以下的信号频率,并且可以实现测量范围的自动切换。

【技术实现步骤摘要】
本专利技术涉及一种基于单片机的频率测试系统及使用上述系统的测试方法,属于频率测量

技术介绍
在工控系统中,经常需要测量各种信号的频率。然而,现有的复杂频率计尽管测试范围宽、精度高,但是价格昂贵;而各种简易频率计具有明显的不足,主要是其采取了以下的测试方法在Is时间内,使用计数器对测试信号进行计数,则计数器的计数结果就是信号的频率。这种测试方法尽管易于实现,但却难以测试IHz以下的信号频率。因而,现有的简易频率计只能测试IHz以上的信号频率。
技术实现思路
本专利技术的目的是提供基于单片机的频率测试系统及使用上述系统的测试方法,以解决现有的频率计无法测试IHz以下信号频率的不足。本专利技术为解决上述技术问题还提供了一种基于单片机频率测试系统,该频率测试系统包括波形产生芯片、计数器、单片机和显示装置,波形产生芯片的输出端与计数器的时钟信号端相连,计数器中存放计数初值的数据端口与单片机的计数初值控制输出端口相连,计数器的输出端口与单片机的第一外部中断接口相连,4次该外部中断为一个测试周期,用于对待测信号的计数、显示和清零,待测信号与单片机的第二外部中断接口相连,该外部中断用于对待测信号进行计数,单片机首先设置一计数初值,使计数器的输出信号的周期为O. 5S,一个测试周期就为2S,一个测试周期被对待测信号的计数时间为1S,第一外部中断第一次到来后,开启第二外部中断,第一外部中断第二次到来后,不进行任何处理;第一外部中断第三次到来后,关闭第二外部中断,保存对待测信号上升沿进行计数的全局计数变量,单片机的输出端通过其SPI接口与显示装置相连,用于控制显示装置对待测信号的频率计数进行显示;第一外部中断第四次到来后,判断在一个测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为I 9999Hz,则得到的计数变量的大小就是待测信号的频率,如果计数变量为0,单片机对计数器的计数初值进行修改,使计数器输出信号的周期为5S,则一个测试周期为20S,判断在该测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为O. I O. 9Hz,则得到的计数变量的大小除以10就是待测信号的频率,如果计数变量为0,单片机对计数器的计数初值进行修改,使计数器输出信号的周期为50S,则一个测试周期为200S,判断在该测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为O. 01 O. 09Hz,则得到的计数变量的大小除以100就是待测信号的频率。所述的显示装置包括串行LED显示芯片和四个8段数码管,串行LED显示芯片的输入端与单片机的SPI接口相连,串行LED显示芯片的输出端与所述4个8段数码管相连,8段数码管的控制端与串行LED显示芯片的片选信号端相连,四个8段数码管分别用于显示频率的个位、十位、百位和千位。系统的频率测量范围为I 9999Hz时,只驱动数码管的7位数据位,而不点亮小数点;如果系统的频率测量范围为O. I O. 9Hz,则显示数据时,同时将十位数码管的小数点点亮;如果系统的频率测量范围为O. Ol O. 09Hz,则显示数据时,同时将百位位数码管的小数点点亮。所述的单片机为AT89C51单片机。所述的所述的计数器为可编程定时/计数器8253。所述的波形产生芯片为555振荡器。本专利技术为解决上述技术问题而提供一种使用上述测试系统的的频率测试方法,该测试方法的步骤如下· O.将频率范围为O. 01 9999Hz的待测信号按着其频率划分为三个级别,分别为I 9999Hz,O. I O. 9Hz 和 O. 01 O. 099Hz ; 2).将计数器的输出端口与单片机的第一外部中断接口相连,4次该外部中断为一个测试周期,用于对频率范围为O. 01 9999Hz的待测信号的计数、显示和清零,待测信号与单片机的第二外部中断接口相连,该外部中断用于对频率范围为O. 01 9999Hz的待测信号进行计数,第一外部中断第一次到来后,开启第二外部中断,第一外部中断第二次到来后,不进行任何处理,第一外部中断第三次到来后,关闭第二外部中断,保存对待测信号上升沿进行计数的全局计数变量,第一外部中断第四次到来后,根据全局计数变量改变计数器的初值; 3).用单片机设置一计数初值,使计数器的输出信号的周期为O.5S,一个测试周期就为2S,一个测试周期被对待测信号的计数时间为1S,判断在一个测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为I 9999Hz,则得到的计数变量的大小就是待测信号的频率,如果计数变量为0,则进入步骤4); 4).单片机对计数器的计数初值进行修改,使计数器输出信号的周期为5S,则一个测试周期为20S,判断在该测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为O. I O. 9Hz,则得到的计数变量的大小除以10就是待测信号的频率,如果计数变量还是为0,则进入步骤5); 5).计数变量为0,则说明待测信号的频率为O.01 O. 09Hz,利用单片机对计数器的计数初值进行修改,使计数器输出信号的周期为50S,则一个测试周期为200S,该测试周期内对待侧信号的上升沿进行计数的计数变量的大小除以100就是待测信号的频率。所述的频率测试方法还将测试周期内对待侧信号的上升沿进行计数的计数变量通过显示装置显示出来,该显示装置包括串行LED显示芯片和四个8段数码管,串行LED显示芯片的输入端与单片机的SPI接口相连,串行LED显示芯片的输出端与所述4个8段数码管相连,8段数码管的控制端与串行LED显示芯片的片选信号端相连,四个8段数码管分别用于显示频率的个位、十位、百位和千位,系统的频率测量范围为I 9999Hz时,只驱动数码管的7位数据位,而不点亮小数点;如果系统的频率测量范围为O. I O. 9Hz,则显示数据时,同时将十位数码管的小数点点亮;如果系统的频率测量范围为O. 01 O. 09Hz,则显示数据时,同时将百位位数码管的小数点点亮。所述的频率测试方法中的单片机为AT89C51单片机。所述的频率测试方法中用的计数器为可编程定时/计数器8253。所述的频率测试方法中所用到的波形产生芯片为555振荡器。本专利技术的有益效果是本专利技术以单片机为核心,利用单片机对外部待测信号的上升沿进行计数,得到待测信号的频率,单片机根据信号的频率范围,控制计数器的计数初值,实现测量范围的自动切换,本专利技术不仅可以测试IHz以上的信号频率,也可以测试IHz以下的信号频率,并且可以实现测量范围的自动切换。附图说明图I是本专利技术基于单片机的频率测试系统实施例中的系统框 图2是本专利技术实施例中外部中断I的子程序流程图。 具体实施例方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实例仅仅用以解释本专利技术,并不用于限制本专利技术。本专利技术的一种基于单片机的频率测试系统的实施例 我们以待测信号的最高频率为9999Hz为例进行说明。如图I所示,本实施例中的基于单片机的频率测试系统包括包括单片机、555振荡器、可编程定时/计数本文档来自技高网...

【技术保护点】
基于单片机的频率测试系统,其特征在于:该频率测试系统包括波形产生芯片、计数器、单片机和显示装置,波形产生芯片的输出端与计数器的时钟信号端相连,计数器中存放计数初值的数据端口与单片机的计数初值控制输出端口相连,计数器的输出端口与单片机的第一外部中断接口相连,4次该外部中断为一个测试周期,用于对频率范围为0.01~9999Hz的待测信号的计数、显示和清零,待测信号与单片机的第二外部中断接口相连,该外部中断用于对频率范围为0.01~9999Hz的待测信号进行计数,单片机首先设置一计数初值,使计数器的输出信号的周期为0.5S,一个测试周期就为2S,一个测试周期被对待测信号的计数时间为1S,第一外部中断第一次到来后,开启第二外部中断,第一外部中断第二次到来后,不进行任何处理;第一外部中断第三次到来后,关闭第二外部中断,保存对待测信号上升沿进行计数的全局计数变量,单片机的输出端通过其SPI接口与显示装置相连,用于控制显示装置对待测信号的频率计数进行显示;第一外部中断第四次到来后,判断在一个测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为1~9999Hz,则得到的计数变量的大小就是待测信号的频率,如果计数变量为0,单片机对计数器的计数初值进行修改,使计数器输出信号的周期为5S,则一个测试周期为20S,判断在该测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为0.1~0.9Hz,则得到的计数变量的大小除以10就是待测信号的频率,如果计数变量为0,单片机对计数器的计数初值进行修改,使计数器输出信号的周期为50S,则一个测试周期为200S,判断在该测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为0.01~0.09Hz,则得到的计数变量的大小除以100就是待测信号的频率。...

【技术特征摘要】
1.基于单片机的频率测试系统,其特征在于该频率测试系统包括波形产生芯片、计数器、单片机和显示装置,波形产生芯片的输出端与计数器的时钟信号端相连,计数器中存放计数初值的数据端口与单片机的计数初值控制输出端口相连,计数器的输出端口与单片机的第一外部中断接口相连,4次该外部中断为一个测试周期,用于对频率范围为O. Ol 9999Hz的待测信号的计数、显示和清零,待测信号与单片机的第二外部中断接口相连,该外部中断用于对频率范围为O. 01 9999Hz的待测信号进行计数,单片机首先设置一计数初值,使计数器的输出信号的周期为O. 5S,一个测试周期就为2S,一个测试周期被对待测信号的计数时间为1S,第一外部中断第一次到来后,开启第二外部中断,第一外部中断第二次到来后,不进行任何处理;第一外部中断第三次到来后,关闭第二外部中断,保存对待测信号上升沿进行计数的全局计数变量,单片机的输出端通过其SPI接口与显示装置相连,用于控制显示装置对待测信号的频率计数进行显示;第一外部中断第四次到来后,判断在一个测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为I 9999Hz,则得到的计数变量的大小就是待测信号的频率,如果计数变量为O,单片机对计数器的计数初值进行修改,使计数器输出信号的周期为5S,则一个测试周期为20S,判断在该测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为O. I O. 9Hz,则得到的计数变量的大小除以10就是待测信号的频率,如果计数变量为0,单片机对计数器的计数初值进行修改,使计数器输出信号的周期为50S,则一个测试周期为200S,判断在该测试周期内对待侧信号的上升沿进行计数的计数变量是否为0,如果不为0,判定待测信号的频率为O. 01 O. 09Hz,则得到的计数变量的大小除以100就是待测信号的频率。2.根据权利要求I所述的基于单片机的频率测试系统,其特征在于所述的显示装置包括串行LED显示芯片和四个8段数码管,串行LED显示芯片的输入端与单片机的SPI接口相连,串行LED显示芯片的输出端与所述4个8段数码管相连,8段数码管的控制端与串行LED显示芯片的片选信号端相连,四个8段数码管分别用于显示频率的个位、十位、百位和千位,系统的频率测量范围为I 9999Hz时,只驱动数码管的7位数据位,而不点亮小数点;如果系统的频率测量范围为O. I O. 9Hz,则显示数据时,同时将十位数码管的小数点点亮;如果系统的频率测量范围为O. 01 O. 09Hz,则显示数据时,同时将百位位数码管的小数点点亮。3.根据权利要求I所述的基于单片机的频率测试系统,其特征在于所述的单片机为AT89C51单片机。4.根据权利要求I所述的基于单片机的频率测试系统,其特征在于所述的计数器为可编程定时/计数器8253。5.根据权利要求I所述的基于单片机的频率测试系统,其特征在于所述的波形产生芯片为555振荡器。6.如权利要求I所述频率测试系统的频率测试方法,其特征在于该...

【专利技术属性】
技术研发人员:张海涛张世伟白舸刘翠苹
申请(专利权)人:河南科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1