📄 measure_f.c
字号:
#include<reg52.h>
#include<lcd1602.h>
#include<counter.h>
#include<measure_F.h>
#include<write164.h>
#include <delay.h>
void measure_F()
{
uchar dotwei;
uchar Mflag;
unsigned long freq;
gotoxy(2,1);
write_LCD_data('=');
dotwei=0;
while(1)
{
Mflag=1;
write164(Fen200_MF); /*选通200分频,测200k--10M的信号*/
while(Mflag)
{
freq=counter(1);
if(freq>50000)
{
gotoxy(2,3);
write_LCD_data('E');
}
else if((freq<=50000)&&(freq>1000))
{ freq=freq*200;
gotoxy(2,3);
display_LCD_number(freq,dotwei);
}
else Mflag=0;
if(freq==0) {goto reti;}
}
Mflag=1;
write164(Fen100_MF);/*选通100分频,测10k--200k的信号*/
while(Mflag)
{
freq=counter(1);
if((freq>1000)&&(freq<=2000))
{ freq=freq*100;
gotoxy(2,3);
display_LCD_number(freq,dotwei);
}
else
{if((freq<=1000)&&(freq>100))
{
freq=counter(5);
freq=freq*20;
gotoxy(2,3);
display_LCD_number(freq,dotwei);
}
else Mflag=0;
}
if(freq==0) {goto reti;}
}
Mflag=1;
write164(Direct_MF);/*选通直通分频,测500--10k的信号*/
while(Mflag)
{
freq=counter(2);
if(freq>1000)
{ freq=freq*5;
dotwei=1;
gotoxy(2,3);
display_LCD_number(freq,dotwei);
}
else Mflag=0;
if(freq==0) {goto reti;}
}
Mflag=1;
write164(Direct_MF); /*选通直通分频,测1--500的信号*/
while(Mflag)
{
freq=counter(10);
if(freq>=10)
{
dotwei=1;
gotoxy(2,3);
display_LCD_number(freq,dotwei);
}
else
{
freq=counter(100);
if(freq>100)
{ dotwei=2;
gotoxy(2,3);
display_LCD_number(freq,dotwei); ///freq=freq/10;/*想办法显示小数部分*/
}
else Mflag=0;
}
if(freq==0) {goto reti;}
}
/* Mflag=1;
// write164(Direct_MF);
while(Mflag)
{P1=0x00;
delay(1);
P1=0xff;
freq=counter(1);
if(freq>0)
{dotwei=3;
gotoxy(2,3);
display_LCD_number(freq,dotwei);
}
else Mflag=0;
if(freq==0) {goto reti;}
}*/
}
reti:;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -