解决方案
联系方式
BOB游戏竞彩
售前电话:18011796225
售后电话:13302493752
电话:400 816 8382
电话:020-84869952
邮箱:sales@ck-auto.com
传真:020-85207379
地址:广州市番禺区创启路63号清华科技园创启3号楼601
【48812】低频数字相位(频率)丈量的CPLD完结
来源:BOB游戏竞彩 发布时间:2024-08-11 01:17:19
仪是电子范畴的常用仪器,当时测频测相主要是运用等精度测频、PLL锁相环测相的办法。研讨之后发现,等精度测频法具有在整个测频范围内坚持稳定的高精度的特色,可是该原理不能用于丈量相位。PLL锁相环测相能轻松完结等精度测相,但电路调试较杂乱。因而,挑选直接测相法作为低频测相仪的测验办法[1、2、3、4]。
规划的低频测相仪,满意以下的技术指标:a .频率20-20KHz;b .输入阻抗100K;c.相位丈量绝对误差1度; d.具有频率丈量和数字显现功用;e.显现相位读数为0度--359度。
体系作业原理如图1所示,体系运行时,首要由单片机经过clr操控线送清零信号,发动CPLD的计数模块,在规划的CPLD内部操控模块效果下,记载AB两相的相差距离时间内的标频个数(测相计数器),一起也记载下A相一个周期内的标频个数(测频计数器),尔后测频和测相计数器处于坚持状况,一起送出right信号标明完结测频测相的计数,单片机能够读数据。
单片机CPLD的数据选用独立接口方法,这样规划比较灵敏,能够不受单片机总线时序的影响。由ADD[0..2]来操控,别离读取测频测相计数器中的19位数据,并存于单片机中,进行后续的核算。单片机完结数据的运算后,将所得数据转化为10进制,送到显现板进行显现。显现板共有8个数码管,其间,前5位用于显现频率(最大为20000Hz),后三位显现相位(最大为359度)。
在CPLD规划中,依据核算,选取测频、测相计数器长度均为19位,在标频信号为10MHz时,相位丈量精度小于1度。若只用89C51,其自带的计数器只要16位,且不易一起完结测频测相的功用。故选用CPLD完结其测频测相的计数功用,并规划了独立的数据接口,以便与单片机交流数据[5、6]。
如图2所示,使用VHDL言语规划了完结测频测相计数功用的数字芯片。整个芯片由测频计数器、测相计数器、操控部分、数据挑选器和测验用分频器5个部分组成。
操控部分主要是使用状况机原理,规划了检测一个测频周期的操控电路。在clr信号为高时,发动测频测相计数器,此刻,状况机处于计数作业状况;当A相第一个上升沿到来时,测频测相计数器一起发动,开端计数;当B相第一个上升沿到来时,操控部分操控测相计数器中止计数;当A相第二个上升沿到来时,操控部分操控测频计数器中止计数,一起送出计数完结信号right;尔后测频测相计数器处于坚持状况。
单片机读数时,经过设置add[0..2]数据挑选器的地址选通端,顺次送出测频计数器中的19位数据,8位一组,从xcout[0..7]端口送出,单片机需分3次读完测频计数器中的19位数据,数据选通端设置为001,010,011;同理,单片机也需分3次读完测相计数器中的19位数据,数据选通端设置为100,101,110。
为了测验便利,规划了测验用分频器,该分频器系数能够在VHDL源程序中改动,如为1000,则将测验时用的标频信号10M进行1000分频,分频后频率为10KHz,正好处于20-20KHz范围内。
如图3所示,体系上电后,首要由单片机送出清零信号,发动CPLD中的测频测相计数器,CPLD进行测频测相的计数,单片机查询到right=1,则标明计数器完结计数作业,开端读取CPLD中的数据。不然,就等候。单片机经过操控CPLD中数据挑选器的地址选通端add[0..7],别离读取测频、测相计数器的19位数据,并进行必定的核算。核算中首要调用频率核算子程序,核算出相应的频率,然后再调用相位核算子程序,核算出相应的相位,再调用进制转化程序,将16进制的数转化成10进制,最终调用显现子程需,在8位数码管中显现出丈量的频率、相位值。因为篇幅联系,此处不再胪陈详细程序和显现部分的规划。