⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 锁环函数发生器.c

📁 此为锁相环函数发生器 包括键盘扫描程序 频率显示程序 波形显示程序等等
💻 C
字号:
#include <reg51.h>
#include <stdio.h>
#include <absacc.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int

//unsigned char code A1[5];
unsigned char code DC[5];

unsigned char code tab1[]={'M','K','H','z','V',' '};
unsigned char code tab2[]={'E','R','R','E','R',' '};
unsigned char code tab3[]={'P','L','L',' '};
unsigned char code tab4[]={'A','B','C','D','E',' '};
unsigned char code tab5[]={0xdb,'A','S',0xdb};
unsigned char code numb[]={'0','1','2','3','4','5','6','7','8','9','.','-',' '};
unsigned char code tab6[]={'W','E','L','C','O','M','E',' '};

unsigned char num[5];        //此不能为code形

uchar wave;


/*与lcd有关的口*/
sbit   RS=P3^7;
sbit   RW=P3^6;
sbit    E=P3^5;
sbit RDat=P3^4;
sbit   TD=P3^3;

  sbit bbflag=P0^0;


/*锁相环函数发生器数据发送端口*/   
sbit RDat_PLL=P2^0;
sbit   TD_PLL=P2^1;
sbit    E_PLL=P2^2;

/*虚拟同步串行通信PLL*/
void corr_PLL(uchar dat)  //164使用共阴代码
{uchar ADS,i;
 ADS=dat;
 for(i=8;i>0;i--)
  {
   TD_PLL=0;
   RDat_PLL=ADS&0x80;
   TD_PLL=1;
   ADS=ADS<<1;  
  }
 }

/*虚拟同步串行通信LCD*/
void corr(uchar dat)  //164使用共阴代码
{uchar ADS,i;
 ADS=dat;
 for(i=8;i>0;i--)
  {
   TD=0;
   RDat=ADS&0x80;       //此处有误,已改
   TD=1;
   ADS=ADS<<1;  
  }
 }
/*****************************************************/

/*延时程序*/
void delay(uchar j)
{
  uchar n;
  for(j;j>0;j--)
  {for(n=248;n>0;n--){}     //delay500us
  }
}

/**************************************************************************/
/*查忙标志*/
/* void f_buzy(void)
   {  
      unsigned char j;
      RS=0;
      WR=1;
      j=P0;
      while((j&0x80)==0x80) ;
      WR=0;
   }*/

/*指令发送*/
 void lcd_com(unsigned char a)
 {  E=1;
    RS=0;
	WR=0;
	corr(a);
    /*f_buzy(); */
    delay(1);                //不能改!!已是最短时间
	E=0;
 }

/*数据发送*/
 void lcd_dat(unsigned char b)
  {  E=1;
     RS=1;
	 WR=0;
	 corr(b);
     /*f_buzy(); */
     delay(1);                //不能改!!已是最短时间
	 E=0;
  }

/*******************************************************************************/

/*********************************************/
void show_errer(void)
  {uchar i;
    lcd_com(0x0c);   //显示开关控制,开显示,开光标,闪烁

⌨️ 快捷键说明

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