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

📄 zlg7290demo.c

📁 c8051最小系统板的个部分调试
💻 C
字号:
/*
	ZLG7290演示程序
*/

#include "I2C.h"
#include "ZLG7290.h"
sbit p00=P0^0;
void Port_IO_Init()
{
    

    SFRPAGE   = CONFIG_PAGE;
    XBR1      = 0x04;
    XBR2      = 0x40;
}

 void Oscillator_Init()
{
    SFRPAGE   = CONFIG_PAGE;
    OSCICN    = 0x83;
}

void Init_Device(void)
{
    Port_IO_Init();
	Oscillator_Init();
}

		
//定义键盘p00=0表示有键按下



/*
函数:Delay()
功能:延时10ms~655.36s
参数:
	t>0时,延时(t*0.01)s
	t=0时,延时655.36s
说明:
	晶振采用11.0592MHz
*/
void Delay(unsigned int t)
{
	
	 while (--t);
}

/*
函数:SystemInit()
功能:系统初始化
*/
void SystemInit()
{
	I2C_Init();

	Delay(30);		//等待ZLG7290复位完毕
}

/*
函数:ClearAll()
功能:清除所有显示
*/
void ClearAll()
{
	unsigned char x;
	for ( x=0; x<8; x++ )
	{
		ZLG7290_Download(x,0,0,31);
	}
}
 
void main()

{									  
	unsigned char KeyValue,keyValue,i=0,a=0,b=0,c,d,simbol=0,j;
	unsigned char valuedeal[28]={0x0d,17,0,15,0,0,0,0,0x0c,9,8,7,0,0,0,0,0x0b,6,5,4,0,0,0,0,0x0a,3,2,1};
	unsigned char store[8];
	WDTCN=0xde;
	WDTCN=0xad;
	Init_Device( );
	SystemInit();		//系统初始化
	ClearAll();
	ZLG7290_Download(0,1,1,0);
	
	
 
	for (;;)						 
	{
		if ( p00==0)		//如果有键按下
		{
		//清除中断标志
			p00= 1;
		//读取键值、连击计数器值、功能键值
			ZLG7290_ReadReg(ZLG7290_Key,&KeyValue);
			keyValue=valuedeal[KeyValue-1];			 /*读键值*/
			

			if(keyValue==0x0d)			 /*清除键*/
			 {ClearAll();
			 ZLG7290_Download(0,1,1,0);	 
			 break ;
			}

		   if(keyValue==17)					/*确定键的处理*/		  
			{ if(i==0) break;
			  if(d==0)
		      { for(j=0;j<=i-1;j++) 
			 	if(j!=c)
				 ZLG7290_Download(j,0,0,store[j]);
				 else if(simbol!=0)  ZLG7290_Download(j,1,0,store[j]) ;
				 
				   d=1 ;}
				 keyValue=31;
			    }	
				
					 
			
			if(i==0&&keyValue==0)
			   a=1;
			if(keyValue==15)
			{
		 	if(i==0) {a=1;}	     /*小数点显示在该位 */
			else  i--;
			keyValue=b;         /*原值不变*/
			if(simbol==0)
			{ c=i; 
			simbol=1;
			 a=1;
			}
			}	
			
		
		  if(d==1||i>=8) continue;		
		  if(simbol==1&&i==c) a=1;
		ZLG7290_Download(i++,a,0,keyValue);	
		a=0;
	     b=keyValue;
		store[i-1]=b;
	 
		}
		
	}
	
	
}


⌨️ 快捷键说明

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