当前位置:首页 > 单片机 > 单片机
[导读] //128*64带字库液晶并口模式下显示C程序//*********************************************************************//变量定义区//*****************************************************************

//128*64字库液晶并口模式下显示C程序
//*********************************************************************
//变量定义区
//*********************************************************************

#include
#include

#defineucharunsignedchar
#defineuintunsignedint


sbitLCD_RS=P2^6;//数据/命令选择
sbitLCD_RW=P2^7;//读写控制
sbitLCD_EN=P2^0;//片选信号
#defineLCD_DATAP0//8bit数据线

#defineLOW0
#defineHIGH1


//初始化指令
#defineCLEAR_SCREEN0x01//清屏指令:清屏且AC值为00H
#defineAC_INIT0x02//将AC设置为00H。且游标移到原点位置
#defineCURSE_ADD0x06//设定游标移到方向及图像整体移动方向(默认游标右移,图像整体不动)
#defineFUN_MODE0x30//工作模式:8位基本指令集
#defineDISPLAY_ON0x0c//显示开,显示游标,且游标位置反白
#defineDISPLAY_OFF0x08//显示关
#defineCURSE_DIR0x14//游标向右移动:AC=AC+1
#defineSET_CG_AC0x40//设置AC,范围为:00H~3FH
#defineSET_DD_AC0x80


//*****************************************************************
//函数名称:delay(uintt)延时函数。对于12M晶振大约延时1ms
//入口参数:t
//出口参数:无
//*****************************************************************
voiddelay(uintt)
{
uinti;
while(t--)
{
for(i=0;i<125;i++)
;
}
}

//*****************************************************************
//函数名称:write_cmd(uintlcd_cmd)写指令
//入口参数:lcd_cmd
//返回参数:无
//*****************************************************************
voidWriteCmd12864(ucharlcd_cmd)
{
LCD_RS=LOW;
LCD_RW=LOW;
LCD_EN=HIGH;
LCD_DATA=lcd_cmd;
LCD_EN=LOW;
}


//****************************************************************
//函数名称:write_data(uintlcd_data)写数据
//入口参数:current_data
//返回参数:无
//****************************************************************
voidWritEDAta12864(ucharlcd_data)
{
LCD_RS=HIGH;
LCD_RW=LOW;
LCD_EN=HIGH;
LCD_DATA=lcd_data;
LCD_EN=LOW;
}

/****************************************************************
函数名称:Write12864(uint)写数据
入口参数:cmd,data
返回参数:无
****************************************************************/
voidWrite12864(ucharlcd_cmd,ucharlcd_data)
{
WriteCmd12864(lcd_cmd);
WriteData12864(lcd_data);
}


//****************************************************************
//函数名称:ReadBusy()判忙
//入口参数:无
//返回参数:"1"忙;"0"不忙
//****************************************************************
voidReadBusy(void)
{
uchari=5;
while(i--);
}

/****************************************************************
函数名称:LcdInit()初始化
入口参数:无
返回参数:无
****************************************************************/
voidLcdInit()
{
delay(50);
WriteCmd12864(FUN_MODE);
delay(1);
WriteCmd12864(FUN_MODE);
delay(1);
WriteCmd12864(DISPLAY_ON);
delay(1);
WriteCmd12864(CLEAR_SCREEN);
delay(20);
//WriteCmd12864(CURSE_ADD);
}

/****************************************************************
函数名称:LcdClear()清屏
入口参数:无
返回参数:无
****************************************************************/
voidLcdClear(void)
{
ReadBusy();
WriteCmd12864(CLEAR_SCREEN);
delay(3);
}


/****************************************************************
函数名称:DisplayCgrom(ucharHz)显示CGROM里的汉字
入口参数:无
返回参数:无
****************************************************************/
voidDisplayCgrom(ucharaddr,uchar*hz)
{
ReadBusy();
WriteCmd12864(addr);
ReadBusy();
while(*hz!=’’)
{
WriteData12864(*hz);
hz++;
ReadBusy();
}

}

/****************************************************************
函数名称:Display()显示测试结果
入口参数:无
返回参数:无
****************************************************************/
voidDisplay(void)
{
DisplayCgrom(0x80,"东哥单片机学习网");
DisplayCgrom(0x88,"www.pICavr.com");
DisplayCgrom(0x90,"www.stc89.com");
DisplayCgrom(0x98,"电话:13512767404");

}
/****************************************************************
主程序
****************************************************************/
voidmain(void)
{

LcdInit();
LcdClear();
while(1)
{
Display();
}
}


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在未来的5-10年里,液晶材料仍然会是显示面板行业的主流发展方向。 上海2023年8月31日 /美通社/ -- 为了深入了解液晶材料的技术及应用,近日,网易科技以新一代智能液晶调光技术为主题,对飞凯材料全资子...

关键字: 液晶 PD 液晶材料 HC

触摸屏(Touch Panel)又称为“触控屏”、“触控面板”,是一种可接收触头等输入讯号的感应式液晶显示装置,当接触了屏幕上的图形按钮时。

关键字: 触摸屏 触控面板 液晶

从色域角度来说,普通液晶电视的NTSC色域只有70%左右(显示器追求sRGB,电视为NTSC),而一些广色域电视能达到80%以上。OLED电视先天能达到95%甚至更高,所以在色域上OLED完爆普通液晶电视

关键字: OLED 电视 液晶

OLED(Organic Light-Emitting Diode),全称“有机发光二极管”,是一种显示屏幕技术。采用OLED技术制造的OLED电视,已经不再需要液晶,RGB色彩信号直接由OLED二极管显示,几乎已经不存...

关键字: OLED 电视 液晶

显示技术是人机交互中最重要的一个分支,从材料、面板再到显示应用,都有众多优秀企业在这个领域长期耕耘。显示技术升级换代速度非常快,短短几十年来,CRT显示器已经退隐江湖,液晶曾经一统天下,现在OLED方兴未艾,而MiniL...

关键字: 液晶 OLED 材料

时下普遍使用的P0、P2结构比较简单,并且有助于控制成本,整体效果也非常出色,尤其P2是混动汽车运用最广泛的一种模式。据了解,TI此次发布的这个方案适用于48V P0和P2电机,其高度集成的特性有助于设计工程师构建小型化...

关键字: 汽车电气化 模式 P2

反垄断顾名思义即反对垄断。当一个公司的经营表现出垄断迹象或有垄断趋势的时候,国家政府或国际组织依据相关垄断法对其进行的一种干预手段。据了解,全球目前已有80多个国家制定了反垄断法。其中以“美国”为代表的模式以及以“欧盟”...

关键字: 半导体 反垄断法 模式

你们家的电视有多久没有换了?5年,还是10年?最新数据显示,去年我国彩电销量创14年来最大降幅。

关键字: 电视 彩电 液晶

超级计算机(Super computer),是指能够执行一般个人电脑无法处理的大量资料与高速运算的电脑。就超级计算机和普通计算机的组成而言,构成组件基本相同,但在性能和规模方面却有差异。

关键字: 科学家 液晶 计算机

液晶面板是决定液晶显示器亮度、对比度、色彩、可视角度的材料,液晶面板价格走势直接影响到液晶显示器的价格,液晶面板质量、技术的好坏关系到液晶显示器整体性能的高低。

关键字: 液晶 电视 面板
关闭
关闭