(九)arduino入门:LCD1602

一、本节介绍

在本实验中,Arduino Uno板用于直接驱动LCD1602显示字符。

二、材料准备

  • 1 * Arduino Uno板
  • 1 *面包板
  • 1 * LCD1602
  • 1 *电位器(50kΩ)

-若干杜邦线

  • 1 * USB数据线

三、原理讲解

一般来说,LCD1602具有并行端口,即需要同时控制多个引脚。LCD1602可以分为八端口和四端口连接。如果使用八端口连接,则SunFounder Uno板的数字端口基本上完全占用。如果要连接更多传感器,则不会有端口可用。因此,使用四端口连接。

LCD1602的引脚及其功能:

VSS:连接到地的引脚

VDD:连接到+ 5V电源的引脚

VO:调整LCD1602对比度的引脚

RS:一个寄存器选择引脚,用于控制正在写入数据的LCD存储器中的哪个位置。您可以选择数据寄存器,其中包含屏幕上的内容,还是选择指令寄存器,这是LCD控制器查找下一步做什么的指令。

R / W:读/写引脚,用于选择读写模式

E:使能引脚,当提供低电平能量时,使LDC模块执行相关指令。

D0-D7 :读写数据的引脚

A和K:控制LED背光的引脚

在本实验中,使用50KΩ电位器调节LCD1602的对比度,以显示所需的字符或数字。对于编程,它通过调用函数库进行优化。

四、实验步骤

步骤1:构建电路(请确保引脚连接正确,否则字符不会正确显示):

image https://bbs.qutaojiao.com/assets/images/1-gZgXJ7DJoTJDm1Dc.png

原理图

image https://bbs.qutaojiao.com/assets/images/1-jzKKsvHN0kxhLLvs.png

步骤2:编写程序

步骤3:编译程序。

步骤4:将程序上传到Arduino Uno板

您现在应该看到您的LCD1602以滚动的方式显示”Arduino“和“hello,world”的字符。

image https://bbs.qutaojiao.com/assets/images/1-vRLcyVBY60ZUJzPo.jpeg

本节程序:

/***********************************************************/
//LCD1602
//你现在应该看到你的LCD1602显示流动的字符“Arduino”和“hello,world!”
//2017.10.16
/**********************************************************/

#include 
char array1[] = " Arduino                  "; //要在LCD上打印的字符串
char array2[] = "hello, world!             "; //要在LCD上打印的字符串

int tim = 500; ///延迟时间的值
// 使用接口引脚
LiquidCrystal lcd(4, 6, 10, 11, 12, 13);
/*********************************************************/
void setup()
{
  lcd.begin(16, 2); // 设置LCD的列和行数:
}
/*********************************************************/
void loop()
{
  lcd.setCursor(15, 0); //将光标设置为第15列,第0行
  for ( int positionCounter1 = 0; positionCounter1 26positionCounter1++)
  {
    lcd.scrollDisplayLeft(); //S向左滚动显示一个空格的内容
    lcd.print(array1[positionCounter1]); //打印一条消息给LCD.
    delay(tim); //等待 500 ms
  }
  lcd.clear(); //清除液晶显示屏,将光标定位在左上角。
  lcd.setCursor(151); // /将光标设置为第15列,第1行为
  for (int positionCounter2 = 0; positionCounter2 < 26positionCounter2++)
  {
    lcd.scrollDisplayLeft(); //向左滚动显示一个空格的内容。.
    lcd.print(array2[positionCounter2]); // 打印一条消息给LCD
    delay(tim); //wait for 500 ms
  }
  lcd.clear(); //清除液晶显示屏,将光标定位在左上角.
}
/************************************************************/
「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论