数字频率计multisim 数字频率计

admin 0 2023-04-29 13:15:04

大家好,乐天来为大家解答以下的问题,关于数字频率计multisim,数字频率计这个很多人还不知道,现在让我们一起来看看吧!

1、频率测量的方法常用的有测频法和测周法两种。

2、测频法的基本思想是让计数器在闸门信号的控制下计数1秒时间,计数结果是1秒内被测信号的周期数,即被测信号的频率。

3、若被测信号不是矩形脉冲,则应先变换成同频率的矩形脉冲。

4、测频法的原理框图如图所示。

5、图中,秒脉冲作为闸门信号,当其为高电平时,计数器计数;低电平时,计数器停止计数。

6、显然,在同样的闸门信号作用下,被测信号的频率越高,测量误差越小。

7、当被测频率一定时,闸门信号高电平的时间越长,测量误差越小。

8、但是闸门信号周期越长,测量的响应时间也越长。

9、2、当被测信号频率较低时,为保证测量精度,常采用测周法。

10、即先测出被测信号的周期,再换算成频率。

11、测周法的实质是把被测信号作为闸门信号。

12、在它的高电平的时间内,用一个标准频率的信号源作为计数器的时钟脉冲。

13、若计数结果为N,标准信号频率为f1,则被测信号的周期为:T = T1·N。

14、被测信号的频率为:f = 1/T1·N = f1/N。

15、利用测周法所产生的最大绝对误差,显然也等于±1个标准信号周期。

16、如果被测信号周期的真值为T真= T1·N,则T测= T1·(N±1)σmax= (f测-f真)/ f真= T真/T测 – 1=±1/(N±1)由上式可知,对于一定的被测信号,标准信号的频率越高,则N的值越大,因而相对误差越小。

17、3、低频段的测量,鉴于上述困难,对于低频信号,为了达到规定的精度,要采取一些比较特殊的方法。

18、例如,可考虑将被测信号倍频后再用测频法测量。

19、或将闸门信号展宽。

20、由于倍频电路比较复杂,所以一般采用后一种方法,实际上闸门信号展宽与被测信号倍频在效果上是相同的。

21、闸门信号展宽比较容易做到,例如采用分频电路就可以实现。

22、若闸门信号高电平时间从1秒展宽到10秒,则相对误差可以按比例下降,但响应时间也增大相同的比例。

23、4、显示方式:共用右边四个数码管,左三个显示数据,最右端一个显示单位,为0时单位为Hz,为1时单位为Khz5、代码://#include#include#include#define uint unsigned intuint a,b,c,d;unsigned long  x;unsigned long  count;unsigned char flag=0;void Timer0_Init()interrupt 1{TH0=(65535-10000)/256;TL0=(65535-10000)%256;if(++count==40){count=0;  TR1=0;x=TH1*256+TL1;         TH1=0;TL1=0;TR1=1;flag=1;}}void show(void){if(x>=10&&x<100){a=0;b=x*10%100;c=x/10;d=x%10;ZLG7289_Download(1,7,0,a);ZLG7289_Download(1,6,0,b);ZLG7289_Download(1,5,1,d);ZLG7289_Download(1,4,0,c);}else if(x>=100&&x<1000){a=0;b=x/100;c=x%100/10;d=x%10;ZLG7289_Download(1,7,0,a);ZLG7289_Download(1,6,1,d);ZLG7289_Download(1,5,0,c);ZLG7289_Download(1,4,0,b);}else if(x>=1000&&x<10000){a=x/1000;b=x%1000/100;c=x%100/10;d=1;ZLG7289_Download(1,7,0,d);ZLG7289_Download(1,6,0,c);ZLG7289_Download(1,5,0,b);ZLG7289_Download(1,4,1,a);}}main(void){system_init();systemclk_init();port_init();ZLG7289_Init(40);ZLG7289_Reset();timer_init();while(1){if(flag==1){show();flag = 0;}}}#include #include void system_init(){PCA0MD&=~0x40;}void systemclk_init(){OSCICL=OSCICL+42; //设置内部振荡器为24MHZOSCICN|=0x01;   //内部振荡器4分频}void port_init(){ P0SKIP=0x00;       //跳过P0.0做INT0.P0.1做INT1(P0.6,P0.7模拟输出不跳)P1SKIP=0x00;       //跳过P1.2,P1.3,P1.4XBR0=0x00;         //交叉开关使能UART0XBR1=0x60;         //打开交叉开关//IT01CF=0x10;     //INT0配置在P0.0,INT1配置在P0.1P0MDIN=0xFF;     //数字输入P1MDIN=0xFF;P0MDOUT=0xFF; //推挽P1MDOUT=0xFF;}void timer_init(){TMOD=0X51;TH0=(65535-2500)/256;TL0=(65535-2500)%256;EA=1;ET0=1;TR1=1;TR0=1;}#ifndef __port_H_#define __port_H_void system_init(void);void systemclk_init(void);void port_init(void);void timer_init(void);#endif。

本文分享完毕,希望对大家有所帮助。

  • 版权声明:免责声明:本文来源网友投稿及网络整合仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。投诉邮箱:1765130767@qq.com。
  • 本文地址:http://www.wuliudaohang.com/shbk/44916.html
  • 上一篇:瓿是什么意思 瓿
  • 下一篇:早恋教育活动方案 早恋教育
  • 相关文章
    返回顶部小火箭