杭州清达光电技术有限公司

主营:液晶模块,OLED显示模块,LCM,超低温液晶,军工显示屏,OLED显示屏,串口显示屏,彩屏模组,耐高温高湿显示屏,带字库液晶,RS232显示屏,UART显示屏

  • 黄金会员
  • 8
您现在的位置:杭州清达光电技术有限公司首页 > 1602参考例程51单片机
VIP会员 8
  • 经营模式:生产型
  • 所在地区:浙江 - 杭州
  • 企业类别:私营有限责任公司
公司相册
站内搜索
1602参考例程51单片机

1602参考例程51单片机

下面是我司一款HC1624系列产品的参考例程,标准1602液晶。
#include<>
#include<>
#include<>
#define uchar unsigned char
#define uint unsigned int
sbit RS = P3^3;
sbit RW = P3^1;
sbit E = P3^0;
unsigned char X,Y;
/*-----------建立自定义演示用字符库-----------*/
code unsigned int CGTAB[9][8]={
/*
横向取模 ,先上后下
*/
0x08,0x0f,0x12,0x0f,0x0a,0x1f,0x02,0x02, /* '↓'代码=0 */
0x0f,0x09,0x0f,0x09,0x0f,0x09,0x11,0x00, /* '月'代码=1 */
0x1f,0x11,0x11,0x1f,0x11,0x11,0x1f,0x00, /* '日'代码=2 */
0x11,0x0a,0x04,0x1f,0x04,0x1f,0x04,0x00, /* '¥'代码=3 */
0x0e,0x00,0x1f,0x0a,0x0a,0x0a,0x13,0x00, /* '元'代码=4 */
0x18,0x18,0x07,0x08,0x08,0x08,0x07,0x00, /* '℃'代码=5 */
0x04,0x0a,0x15,0x04,0x04,0x04,0x04,0x00, /* '↑'代码=6 */
0x17,0x15,0x15,0x15,0x15,0x15,0x17,0x00, /* '10'代码=7 */
0x04,0x04,0x04,0x04,0x15,0x0a,0x04,0x00, /* '↓'代码=8 */
};
/*-----------自定义字符显示用字库-----------*/
void delay(unsigned int t)
{ unsigned int i,j;
for(i=0;i<t;i++)
for(j=0;j<10;j++)
;
}
void busy(void)
{ P1=0xff;
RS=0;
RW=1;
E=1;
while((P1&0x80)==0x80);
E=0;
}
void writecom(unsigned char com)
{ RS=0;
RW=0;
P1=com;
E=1;
_nop_();
E=0;
}
void lcdwc(unsigned char com)
{
busy();
writecom(com);
}
void lcdwd(unsigned char dat)
{
busy();
RS=1;
RW=0;
P1=dat;
E=1;
_nop_();
E=0;
}
/*****************************************************
定义地址ddram显示范围
****************************************************/
void lcdpos(void)
{
X&=0x0f; ///16列
Y&=0x03; ///2行
if(Y==0x00)
lcdwc(X|0x80);//行ddram
else if(Y==0x01)
lcdwc((X+0x40)|0x80); //第二行ddram
}
/*****************************************************
初始化函数
****************************************************/
void lcdreset()
{ delay(150); writecom(0x38);
delay(50); writecom(0x38);
delay(50); writecom(0x38);
lcdwc(0x38); //8位数据 显示2行 5*7字符
lcdwc(0x08); //关显示 光标关 闪烁关
lcdwc(0x01); //清除
lcdwc(0x06); //光标右移 画面不动
lcdwc(0x0c); //开显示 光标关 闪烁关
}
/***************************************
全部写入
***************************************/
void lcdfill(unsigned char n)
{
for(Y=0;Y<2;Y++)
for(X=0;X<16;X++)
{ lcdpos(); ///定义起始地址
lcdwd(n); }
}
/***************************************
全部写入隔点
***************************************/
void lcdgraphic(unsigned char m)
{
for(Y=0;Y<2;Y++)
for(X=0;X<16;X++)
{ lcdpos();
lcdwd(m);
lcdwd(~m); }
}
/*****************************************
字符串写入
*******************************************/
void lcdwda(unsigned char x,unsigned char y,unsigned char *s)
{
Y=y;
for(X=x;X<16;X++)
{
lcdpos();
lcdwd(*s);
s++;
delay(400);
}
}
/**************************/
/* 建立自定义函数 */
/**************************/
CGRAM()
{
uchar dat;
unsigned char i,j;
lcdwc(0x40); /* 设置CGRAM地址 */
/* 调写指令函数 */
for(i=0;i<9;i++)
{
for(j=0;j<8;j++)
{
dat=CGTAB[i][j]; /* 取字模 */
lcdwd(dat); /* 调写数据函数 */
}
}
}
/*****************************************
主函数
*******************************************/
main()
{
unsigned char i,j;
E=0;
lcdreset();
while(1)
{
// lcdreset();
lcdfill(0xff);
delay(2000);
lcdfill(0x55);
delay(2000);
lcdfill(0xaa);
delay(2000);
lcdgraphic(0xff);
delay(2000);
lcdgraphic(0x00);
delay(2000);
lcdgraphic(0x55);
delay(2000);
lcdgraphic(0xaa);
delay(2000);
for(i=0x30;i<=0x3a;i++)
{ lcdfill(i);
delay(3500);//显示0-9数字
}
lcdfill(' ');
delay(2000);
lcdwda(0,0,'ABCDEFGHIJKLMNOPQRSTUVWXYZ');
lcdwda(0,1,'ZYXWVUTSRQPONMLKJIHGFEDCBA');
delay(2000);
lcdfill(' ');
/*------------CGRAM显示段--------------*/
CGRAM(); /* 调自定义字符库函数 */
lcdwc(0x80); /* 设置DDRAM地址行显示 */
// lcdwc(0xc0); /* 设置DDRAM地址第二行显示 */
/* 调写指令函数 */
for(i=0;i<9;i++)
{
/* 取字符代码 */
lcdwd(i); /* 调写数据函数 */
}
delay(4000); lcdfill(' ');
}
}

免责声明:以上信息由会员自行提供,内容的真实性、准确性和合法性由发布会员负责。一步电子网(www.kuyibu.com)对此不承担任何责任。
友情提醒:为规避购买风险,建议您在购买相关产品时,优先选择一步电子网(www.kuyibu.com)VIP会员

杭州清达光电技术有限公司 电话:86-0571-89902095 传真:86-0571-89902095
地址:浙江 - 杭州 杭州市余杭区良渚街道博园路1号杭州电子市场西区2楼2A001(门市部)
技术支持:一步电子网  管理商铺入口

声明:以上所展示的信息由企业自行提供,内容的真实性、准确性和合法性由发布企业负责。一步电子网对此不承担任何保证责任。

金瓶儿 <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>