刚学1602液晶,C51单片机写程序时,写入LCD命令,请问帮忙解释下下面程序中EN=0开始后面的几条语句,谢谢

刚学1602液晶,C51单片机写程序时,写入LCD命令,请问帮忙解释下下面程序中EN=0开始后面的几条语句,谢谢,第1张

因为数据输入需EN引脚的一个高脉冲,其实就是EN 引脚

的一个上升沿

EN=0; //先;拉低

P0=cmd; //准备写入的数据

EN=1;//拉高,产生一个上升沿,写数据到1602

买12864液晶屏时,厂家都会给测试程序的,就是C语言的。根据测试程序,改一下引脚定义就行了,编译一下测试程序,看能不能显示。如果能显示了,就可以自己根据测试程序一点点修改。

如果找不到厂家,就只好在网上找了,但不容易与你的晶屏相符。

实在不会,读一下测试程序,显示汉字的方法都是,用汉字取模软件,先取汉字点阵数据,用这些数据代替测试程序的点阵数据,看是不是能显示自己的取模的汉字了。

因液晶屏显示汉字,取模方式有多种,如果显示乱码,说明取模方式不对,再换一种,直到显示出汉字为止。这样就可以,对测试程序进行修改成自己看得懂,又实用的程序了。

2MOV LCD,#0FFH是将P2口置为输入模式。

3E端口是高电平有效。

其他的“清屏并光标复位”这段命令不是很清楚,请参考程序:>

; 1、LCD第一行显示: >

#include <reg51h> //51寄存器文件

#include <intrinsh>

typedef unsigned char BYTE; //用BYTE代替unsigned char

typedef unsigned int WORD;//WORD代替unsigned int

typedef bit BOOL ;//用BOOL代替bit

sbit rs = P2^6; //复位端

sbit rw = P2^5; //写数据端

sbit ep = P2^7; //使能端

BYTE code dis1[] = {"welcome!,I'm Tom"};

//LCD侧忙函数

BOOL lcd_bz()

{

BOOL result;

rs = 0;

rw = 1;

ep = 1;

_nop_();

_nop_();

_nop_();

_nop_();

result = (BOOL)(P0 & 0x80); //检测P0最高位是否为1

ep = 0;

return result;//返回侧忙结果

}

// 写入指令数据到LCD

lcd_wcmd(BYTE cmd)

{

while(lcd_bz());

rs = 0;

rw = 0;

ep = 0;

_nop_();

_nop_();

P0 = cmd; //将8位指令通过P0口传给1602

_nop_();

_nop_();//用于产生一个脉冲宽度

_nop_();

_nop_();

ep = 1;

_nop_();

_nop_();

_nop_();

_nop_();

ep = 0;

}

//设定显示位置

lcd_pos(BYTE pos)

{

lcd_wcmd(pos | 0x80);

}

//写入字符显示数据到LCD

lcd_wdat(BYTE dat)

{

while(lcd_bz());

rs = 1;

rw = 0;

ep = 0;

P0 = dat;//将8位数据通过P0口传给1602

_nop_();

_nop_();

_nop_(); //用于产生一个脉冲宽度

_nop_();

ep = 1;

_nop_();

_nop_();

_nop_();

_nop_();

ep = 0;

}

//LCD初始化设定

lcd_init()

{

lcd_wcmd(0x38); ////162显示,57点阵,8位数据

lcd_wcmd(0x0c); //显示开,关光标

lcd_wcmd(0x06); //移动光标

lcd_wcmd(0x01); //清除LCD的显示内容

}

main()

{

BYTE i;

lcd_init(); //初始化LCD

lcd_pos(4); //设置显示位置为第一行的第5个字符

i = 0;

while(dis1[i] != '\0')

{ //显示字符"welcome!"

lcd_wdat(dis1[i]);

i++;

}

while(1);

}

是的,lcd写字板可以调节亮度。通常,lcd写字板有一个亮度调节按钮,用户可以调节亮度到任何所需的程度。一般来说,用户可以根据自己的需要,通过调节亮度来改变显示屏的显示效果。另外,通过调节亮度,还可以节省电量,从而达到节能的效果。此外,lcd写字板还可以通过调节亮度来改变显示器的色彩,以便用户更好地查看屏幕上的内容。总之,lcd写字板可以通过调节亮度来改变显示屏的显示效果,从而达到节能和更好的视觉效果。

先别说无线传输的事。

用LCD1602显示汉字“姓名:张山”,就办不到。

----------------

自编几个58的点阵,显示各种图形,来冒充汉字,这不在正常显示汉字之列。

呵呵,把这种方式当做显示汉字,只能蒙骗小孩。

----------------

12864可以显示的是1616的点阵汉字,这可以认为是标准的汉字。

但是1602是达不到这个水平的,只能显示几个简单的自编符号,这不能算显示汉字。

呵呵,你用1602做个能显示“姓名:张山”之类汉字的产品,去忽悠忽悠成年的顾客,看他们能买否。

以上就是关于刚学1602液晶,C51单片机写程序时,写入LCD命令,请问帮忙解释下下面程序中EN=0开始后面的几条语句,谢谢全部的内容,包括:刚学1602液晶,C51单片机写程序时,写入LCD命令,请问帮忙解释下下面程序中EN=0开始后面的几条语句,谢谢、不带中文字库的12864液晶怎么用C写程序然后通过51单片机控制、请教高手解释一下这段LCD显示程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9764839.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存