行业资讯

1602液晶模块不显示数字是什么原因(1602液晶显示器显示乱码问题)

1.硬件原理

液晶屏的使用还是挺多的电子设备上用到的,最常见的就是电脑,手机,电视,还有小家电上。本次实验讲解用arduino来驱动1602液晶屏。1602液晶屏是一种字符型液晶,它的主控芯片是HD44780或者其它兼容芯片,可以显示数字,字母和符号,但是不能显示汉字,因为上面的点阵是5×7排列的,显示一个汉字至少需要8×6的点阵才可以显示出来。

602液晶模块不显示数字是什么原因(1602液晶显示器显示乱码问题)"

1602液晶

下面介绍一下1602的管脚,VCC和GND分别连接arduino的5V和GND脚,VL脚为液晶对比度调整端,接正电源时对比度最弱,接地时对比度最高,一般串联10K的电位器调整对比度。RS为寄存器选择,高电平1时选择数据寄存器低电平0时选择指令寄存器。

RW为读写信号线,高电平(1)时进行读操作,EN脚为使能(enable)端,高电平(1)时读取信息,负跳变时执行指令。D0-D7是数据管脚,传输数据用。

本次1602的接法是高4位数据线的接法,这样可以节省IO,具体硬件连接请看原理图;

602液晶模块不显示数字是什么原因(1602液晶显示器显示乱码问题)"

硬件原理图

2.程序解读

算法描述:

驱动LCD1602用的是库函数的方法,arduino的好处就是集成了众多外设的库函数,可以包含进去直接调用。如需要在LCD上显示字符,直接调用lcd.print()函数即可。用arduino驱动LCD1602相对于51或STM32来说,是明显方便了许多。51或者STM32是需要写驱动的代码的,驱动代码没有封装在他们的IDE里,不能直接调用。所以想显示哪些信息,只需要看官方公布的函数库调用即可。详细用到哪些函数,请看下面代码。

代码解读:

其实用库函数的最大好处,就是看起来代码量很上,简洁易懂。

#include <LiquidCrystal.h>//函数定义LiquidCrystal(rs, enable, d4, d5, d6, d7) LiquidCrystal lcd(12, 11, 10, 9, 8, 7);//设置接口void setup(){//显示器的宽度16,高度2 lcd.begin(16,2);lcd.clear(); //清屏 delay(1000); //延时1000ms}void loop (){ //设置光标位置为第0行第1个位置 lcd.setCursor(0, 0) ;//使屏幕显示文字 lcd.print(“Arduino-LCD1602”); //设置光标位置为第1行第1个位置 lcd.setCursor(0, 1) ;//使屏幕显示文字 lcd.print(“Arduino-LCD1602”); //延时0.1秒,也就是1602的刷新速度是0.1s delay(100); }

3.实物效果

按照原理图连接好了之后,烧写程序可以看到成功驱动了LCD1602,若看不到显示的信息,则需要调节一下电位器,使显示调到合适的对比度。以后做开发需要显示信息都可以1602来显示了,相比串口监视器显示,更方便直观。

602液晶模块不显示数字是什么原因(1602液晶显示器显示乱码问题)"

实物连接图

怎么样,朋友们学会了吗?你们想看用arduino做哪些实验呢,欢迎留言?

相关推荐

手机

邹总:15818552076

微信
微信
分享本页
返回顶部