📄 锁环函数发生器.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 + -