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

📄 zlg7290.c

📁 周立功《ARM与嵌入式系统基础教程》第5章
💻 C
字号:
/****************************************Copyright (c)**************************************************
**                               广州周立功单片机发展有限公司
**                                     研    究    所
**                                        产品一部 
**
**                                 http://www.zlgmcu.com
**
**--------------文件信息--------------------------------------------------------------------------------
**文   件   名: ZLG7290.C
**创   建   人: 叶皓贲
**最后修改日期:  2003-3-4
**描        述: ZLG7290库函数程序
**
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 叶皓贲
** 版  本: 0.01
** 日 期: 2003-3-4
** 描 述: ZLG7290库函数程序
**
**------------------------------------------------------------------------------------------------------
** 修改人:
** 版  本:
** 日 期:
** 描 述:
**
**--------------当前版本修订------------------------------------------------------------------------------
** 修改人: 
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#include "config.h"

#define  ZLG7290 	0x70 		/* ZLG7290的IIC地址 */


#define  SubKey  	0x01 
#define  SubCmdBuf 	0x07
#define  SubDpRam 	0x10
/*********************************************************************************************************
** 函数名称: 	DelayMS
** 功能描述: 	长软件延时
** 输 入: i :	延时参数,值越大时延时越久
**         
** 输 出: 无
** 全局变量:	无
** 调用模块: 	无
**
** 作 者: 叶皓贲
** 日 期: 2003-3-4
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void DelayMS(uint32 dly)
{  uint8  i;

   for(; dly>0; dly--) 
      for(i=0; i<100; i++);
}

/*********************************************************************************************************
** 函数名称: 	ZLG7290_SendData
** 功能描述: 	发送数据
** 输 入:SubAdd :	输入数据
**       DATA 	:	输入值
**         
** 输 出: 0 : Fail
**        1 :  OK
** 全局变量:	无
** 调用模块: 	delayMS
**
** 作 者: 叶皓贲
** 日 期: 2003-3-4
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

unsigned char ZLG7290_SendData(unsigned char SubAdd,unsigned char Data)
{
	if(SubAdd>0x17) return 0;
	ISendStr(ZLG7290,SubAdd,&Data,1);
	DelayMS(10);
	return 1;
}
/*********************************************************************************************************
** 函数名称: 	ZLG7290_SendCmd
** 功能描述: 	发送命令(对子地址7、8)
** 输 入:DATA1  :	命令1
**       DATA2 	:	命令2
**         
** 输 出: 0 : Fail
**        1 :  OK
** 全局变量:	无
** 调用模块: 	ISendStr、delayMS
**
** 作 者: 叶皓贲
** 日 期: 2003-3-4
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

unsigned char ZLG7290_SendCmd(unsigned char Data1,unsigned char Data2)
{
    unsigned char Data[2];
    
	Data[0]=Data1;
	Data[1]=Data2;
	ISendStr(ZLG7290,0x07,Data,2);
	DelayMS(10);
	return 1;
}  
/*********************************************************************************************************
** 函数名称: 	ZLG7290_SendBuf
** 功能描述: 	向显示缓冲区发送数据
** 输 入: * disp_buf  	:	要发送数据的起始地址
**         num 		:	发送个数
**         
** 输 出: 无
** 全局变量:	无
** 调用模块: 	ZLG7290_SendCmd
**
** 作 者: 叶皓贲
** 日 期: 2003-3-4
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void ZLG7290_SendBuf(unsigned char * disp_buf,unsigned char num)
{
	unsigned char i;
	
	for(i=0;i<num;i++)
	{	
		ZLG7290_SendCmd(0x60+i,*disp_buf);
		disp_buf++;
	}
}
/*********************************************************************************************************
** 函数名称: 	ZLG7290_GetKey
** 功能描述: 	读取键值
** 输 入: 无
**         
** 输 出: >0  键值
**        =0  无键按下
** 全局变量:	无
** 调用模块: 	IRcvStr、delayMS
**
** 作 者: 叶皓贲
** 日 期: 2003-3-4
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

unsigned char	ZLG7290_GetKey(void)
{
    unsigned char rece;
    
	rece=0;
	IRcvStr(ZLG7290,1,&rece,1);
	DelayMS(10);
	return rece;
}

⌨️ 快捷键说明

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