1602液晶显示屏什么意思?1602液晶屏的显示
1602液晶显示屏什么意思?1602液晶屏的显示 7~14脚:D0~D7为8位双向数据线; 6脚:E端为使能端,下降沿有效; 3脚:VO为对比度调整;VO是偏压信号,可接10K的3296精密电位器。或同样阻值的RM065/RM063蓝白可调电阻。 4脚:RS为数据/指令寄存器选择位,RS=1时选择数据寄存器、RS=0时选择指令寄存器; 5脚:R/W为读写信号线,R/W=1时进行读操作,R/W=0时进行写操作。当RS=0和RW=0时写入指令或者显示地址,当RS=0、rw=1时可以读忙信号,当RS=1、RW=0时可以写入数据;
1、1602字符型液晶又名1602液晶,是专门显示字母、数字、符号等的点阵型液晶模块。能够显示16x02即32个字符,即02行,16列。
2、1602液晶分为上下两行各16位显示,处于不同行时的字符显示地址如下
1脚:VSS接5V电源"-";
2脚:VDD接5V电源" ";
3脚:VO为对比度调整;VO是偏压信号,可接10K的3296精密电位器。或同样阻值的RM065/RM063蓝白可调电阻。
4脚:RS为数据/指令寄存器选择位,RS=1时选择数据寄存器、RS=0时选择指令寄存器;
5脚:R/W为读写信号线,R/W=1时进行读操作,R/W=0时进行写操作。当RS=0和RW=0时写入指令或者显示地址,当RS=0、rw=1时可以读忙信号,当RS=1、RW=0时可以写入数据;
6脚:E端为使能端,下降沿有效;
7~14脚:D0~D7为8位双向数据线;
15脚:背光电源正极;
16脚:背光电源负极。
4、1602带有字库,只能显示字库中的字符,字符库如下图
5、指令表
1、 电路图
2、 程序设计
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit rs=P3^0;
sbit rw=P3^1;
sbit e=P3^2;
uchar code a[]="Welcome to JiDian142 Class! _%$#@";
void delayu(uint u)
{
while(u--);
}
void delaym(uint m)
{
uchar i;
while(m--)
for(i=0;i<120;i );
}
void zhiling(uchar com)
{
delayu(60);
rs=0;
rw=0;
P2=com;
e=1;
delaym(1);
e=0;
}
void shuju(uchar dat)
{
delayu(60);
rs=1;
rw=0;
P2=dat;
e=1;
delaym(1);
e=0;
}
void init()
{
zhiling(0x38);delaym(1);
zhiling(0x06);delaym(1);
zhiling(0x01);delaym(1);
zhiling(0x0c);delaym(1);
}
void main()
{
uchar i;
init();
zhiling(0x80);
for(i=0;i<16;i )
{
shuju(a[i]);
}
zhiling(0x80 0x40);
for(i=16;i<32;i )
{
shuju(a[i]);
}
while(1);
}
3、 下载程序并调试
另外,如果1602不显示,可从以下找原因。
1)、首先检查电路图是否画对,如果你的数据口用的是P0口,别忘记加上排阻。
2、检查仿真软件中的引脚接法是否与程序中的引脚一一相对应,如果不对应结果肯定出不来的。
3、最有可能出错的地方便是程序了。而程序当中可能出错的地方我碰到过几处。void write_com(uchar com)和void write_dat(uchar date)子程序中的延时函数delayus(60),时间过长或者过短都有可能显示不出来;void init()中的几个必备的指令使用不当也会导致无法显示;其他的原因一般都是小问题了,基本都能解决了。