📄 lcd.c
字号:
/****************************************Copyright (c)**************************************************
** 广州周立功单片机发展有限公司
** 研 究 所
** 产品一部
**
** http://www.zlgmcu.com
**
**--------------文件信息--------------------------------------------------------------------------------
**文 件 名: LCD.C
**创 建 人: 叶皓贲
**最后修改日期: 2003-3-4
**描 述: DP-1581演示程序
**
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 叶皓贲
** 版 本: 1.0
** 日 期: 2003-3-4
** 描 述: DP-1581演示程序
**
**------------------------------------------------------------------------------------------------------
** 修改人:
** 版 本:
** 日 期:
** 描 述:
**
**--------------当前版本修订------------------------------------------------------------------------------
** 修改人:
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#include "config.h"
/* 全局变量 */
uint8 disp_buf[8]={0,0,0,0,0,0,0,0}; //7289A的显示缓冲区
/*********************************************************************************************************
** 函数名称: DelayNS
** 功能描述: 长软件延时
** 输 入: no : 延时参数,值越大时延时越久
**
** 输 出: 0 : OK;
** 1 : FAIL;
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 叶皓贲
** 日 期: 2003-3-4
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 DelayNS(uint8 no)
{
uint8 i,j; //延时参数
for(; no>0; no--)
{
for(i=0; i<100; i++)
for(j=0; j<100; j++);
}
return 0;
}
/*********************************************************************************************************
** 函数名称: delay
** 功能描述: 短软件延时
** 输 入: j : 延时参数,值越大时延时越久
**
** 输 出: 0 : OK;
** 1 : FAIL;
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 叶皓贲
** 日 期: 2003-3-4
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 delay(uint8 j)
{
uint8 l;
for(l=0;l<=j;l++)
{
}
return 0;
}
/*********************************************************************************************************
** 函数名称: LcdRead
** 功能描述: Lcd读取内部数据
** 输 入: 无
**
** 输 出: i : 读取的值;
**
** 全局变量: 无
** 调用模块: delay;
** DelayNS;
**
** 作 者: 叶皓贲
** 日 期: 2003-3-4
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 LcdRead()
{
uint8 i;
LCD_E=0;
LCD_WR=1;
delay(20);
LCD_E=1;
delay(4);
i=P0;
LCD_E=0;
return i;
}
/*********************************************************************************************************
** 函数名称: LcdWrite
** 功能描述: 把数据或命令写入Lcd
** 输 入: i :要写入的数据或命令
**
** 输 出: 0 : OK;
** 1 : FAIL;
** 全局变量: 无
** 调用模块: delay;
** DelayNS;
**
** 作 者: 叶皓贲
** 日 期: 2003-3-4
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 LcdWrite(uint8 i)
{
LCD_E=0;
LCD_WR=0;
P0=i;
delay(20);
LCD_E=1;
delay(2);
LCD_E=0;
DelayNS(2);
return 0 ;
}
void main()
{
ZLG7289_Rest(); // 复位ZLG7289
DelayNS(10);
LCD_E=0;
LCD_RS=In;
LcdWrite(0x38);
LcdWrite(0x01);
LcdWrite(0x06);
LcdWrite(0x0c);
LcdWrite(0x85);
LCD_RS=Da;
LcdWrite(0x44);
LcdWrite(0x50);
LcdWrite(0x2d);
LcdWrite(0x31);
LcdWrite(0x35);
LcdWrite(0x38);
LcdWrite(0x31);
ZLG7289_SendBuf(disp_buf);
LCD_RS=In;
LcdWrite(0xc4);
LCD_RS=Da;
LcdWrite(0x5a);
LcdWrite(0x6c);
LcdWrite(0x67);
LcdWrite(0x2d);
LcdWrite(0x2d);
LcdWrite(0x4d);
LcdWrite(0x43);
LcdWrite(0x55);
while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -