display.c

来自「ADUC的周立功7290可以显示的程序」· C语言 代码 · 共 95 行

C
95
字号
#include<ZLG7290.h>
#include<aduc841.h>

/**********************************************************
I2C时序的延时程序
适用于aduc848,系统时钟为12.582912MHz时,for循环30次以上
***********************************************************/
static void Delay(char i)
{
	while(i --);
}

void flash_Init(void)
{
	ZLG7290_WriteReg(ZLG7290_FlashOnOff,0x11);//设置闪烁控制寄存器
	Delay(100);
	ZLG7290_cmd(0x70,0x00);	     //设置停止闪烁
	Delay(100);

}
/***********************************************************
函数:INT1_SVC()
功能:ZLG7290 键盘中断服务程序
说明:中断触发方式选择负边沿触发,因此不必等待中断请求信号恢复为高电平
***********************************************************/
unsigned char keyFlag = 0;			   //定义键盘中断标志,keyFlag = 1 表示有键按下
void interrupt0() interrupt 2
{
	keyFlag = 1;
}

/***********************************************************
函数:KeyScan()
功能:测试按键功能
***********************************************************/
unsigned char KeyScan(void)
{ 
	unsigned char key;

	if(!INT1)
	{
		key = I2C_gets(0x01);
		I2C_gets(0x02);
		return (key);              	//读键值
	}
	else
	{
		return 0;
	}
} 

/***********************************************************
函数:DispInit()
功能:显示初始化
***********************************************************/
void DispInit(void)
{
	ZLG7290_Init();	 	
}

/***********************************************************
函数:DispClrAll()
功能:清除所有显示
***********************************************************/
void DispClr(unsigned char B,unsigned char n)
{
 unsigned char i;
 for ( i = B;i <= B + n;i ++ )
 {
   ZLG7290_Download(i,0,0,31);   
   Delay(10); 
 }
}

/***********************************************************
函数:DispLong()
功能:
参数:
dat:要显示的数据
***********************************************************/
void DispLong( unsigned char dat,unsigned char flash)
{
	unsigned char i = 0;
	EA = 0;	   
	ZLG7290_Download(i ++,0,flash,dat / 10);
	ZLG7290_Download(i ++,0,flash,dat % 10);	

	ZLG7290_cmd(0x70,0x00);	     //设置停止闪烁	
	EA = 1;
}




⌨️ 快捷键说明

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