测频gate.c

来自「通过计算不了1S内下降沿个数,达到测频目的.」· C语言 代码 · 共 58 行

C
58
字号
	#include"at89x52.h"
	#define uchar unsigned char
	#define uint  unsigned int
	#define lint long int
	uchar code  tv[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
	uchar code  a[]={0x3f,0x06,0x5b,0x4f,
                     0x66,0x6d,0x7d,0x07,0x7f,
                     0x6f,0x77,0x7c};
	uchar data  led[6],x=0;
    lint data f;


    void delay(void)
     {
	uint i;
	for(i=0;i<50;i++);
     }


      ledxianshi()
        {
          uchar k,i;
     	  led[0]=f/100000;
		  led[1]=f%100000/10000;
		  led[2]=f/1000%10;
          led[3]=f/100%10;
	      led[4]=f/10%10;
	      led[5]=f%10;
	  		
		for(k=0;k<6;k++)
		 { i=led[k];
		   P0=a[i];
		   P2=tv[k];
	       delay();
		 }
	 } 

	void count() interrupt 3
	{
	 x++;
	 }
	 
	 void main()
         {TMOD=0xd0;
	     TH1=0; 
         TL1=0;
	     while(1)
	     {while(P3_3==1);
	      TR1=1;
          while(P3_3==0);
	      while(P3_3==1);
	      TR1=0;
	      f=(x*65536)+(TH1<<8)+TL1;
	      while(1)
	      {ledxianshi();}
	     }
	 }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?