返回

LCD 20x4 显示屏与 Arduino:在 Velxio 中实现 Hello World

简介

欢迎来到另一篇 Velxio 教程!今天我们将使用 20x4 LCD 显示屏Arduino Uno 构建一个经典的 Hello World 项目。这是一个非常适合初学者的项目,旨在学习如何将字符 LCD 与微控制器连接。我们将使用流行的 LiquidCrystal 库,它让控制显示屏变得轻而易举。

通过本文,您将学会如何连接 20x4 LCD、编写代码在多行上显示文本,甚至显示动态数据(如运行时间)。让我们开始吧!

电路讲解

Velxio 模拟器画布上 lcd-hello 的电路图

我们的电路由两个主要组件组成:一个 Arduino Uno 和一个 20x4 LCD(型号 wokwi-lcd2004)。LCD 有 16 个引脚,但我们只需要其中 6 个用于数据和控制。接线如下:

我们使用的是 4 位模式,只需要四条数据线(D4–D7),而不是八条。这节省了宝贵的 I/O 引脚。LCD 还需要电源(5V)和接地,但在 Velxio 中,放置组件时会自动连接这些。

要在 Velxio 中构建此电路:

  1. 打开 LCD Hello World 示例 或新建一个项目。
  2. 使用 组件选择器 添加一个 Arduino Uno 和一个 20x4 LCD。 Velxio 组件选择器模态框,按类别浏览零件
  3. 点击引脚并拖动导线以匹配上述连接。您可以通过点击颜色样本更改导线颜色。
  4. 您的画布应如上方的电路图所示。

代码讲解

Velxio Monaco 编辑器中 lcd-hello 的源代码

现在让我们看看代码。在 Velxio 中打开代码编辑器(您会看到带有语法高亮的 Monaco 编辑器)。以下是完整的代码:

// LiquidCrystal Library - Hello World
// Demonstrates the use a 20x4 LCD display

#include <LiquidCrystal.h>

// initialize the library by associating any needed LCD interface pin
// with the arduino pin number it is connected to
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(20, 4);
  // Print a message to the LCD.
  lcd.print("Hello, Arduino!");
  lcd.setCursor(0, 1);
  lcd.print("Velxio Emulator");
  lcd.setCursor(0, 2);
  lcd.print("LCD 2004 Test");
}

void loop() {
  // set the cursor to column 0, line 3
  lcd.setCursor(0, 3);
  // print the number of seconds since reset:
  lcd.print("Uptime: ");
  lcd.print(millis() / 1000);
}

工作原理

  1. 包含库#include <LiquidCrystal.h> 让我们能够使用所有 LCD 函数。
  2. 定义引脚:我们为引脚号创建常量:rs = 12en = 11d4 = 5d5 = 4d6 = 3d7 = 2。这些与我们的接线匹配。
  3. 创建 LCD 对象LiquidCrystal lcd(rs, en, d4, d5, d6, d7); 告诉库哪些引脚已连接。
  4. setup()
    • lcd.begin(20, 4); 初始化显示屏,设置为 20 列和 4 行。
    • lcd.print() 在当前光标位置写入文本。
    • lcd.setCursor(col, row) 将光标移动到特定位置(从 0 开始)。
  5. loop()
    • 我们将光标移动到第 3 行、第 0 列。
    • 打印 “Uptime: ” 后跟 millis() / 1000(自复位以来的秒数)。

要运行代码,请点击工具栏中的 编译 按钮,然后点击 运行Velxio 编辑器工具栏,包含编译和运行控件 Velxio 画布工具栏,位于仿真视口上方

关键概念

常见问题与调试技巧

建议的扩展功能

在基本 Hello World 运行成功后,尝试以下增强功能:

  1. 滚动文本:使用 lcd.scrollDisplayLeft()lcd.scrollDisplayRight() 创建滚动消息。
  2. 显示传感器数据:读取模拟传感器(例如电位器)并在 LCD 上显示其值。
  3. 自定义字符:使用 lcd.createChar() 创建自己的符号。
  4. 按钮输入:添加一个按钮来更改显示的消息。
  5. 多屏显示:使用状态机循环显示不同的信息页面。

亲自尝试!

准备好构建自己的 LCD 项目了吗?在 Velxio 中打开 LCD Hello World 示例 并开始实验。您可以修改代码、更改接线或添加新组件——全部在浏览器中完成,无需硬件。

祝创作愉快!


分享到:
David Montero

作者

David Montero

Creator of Velxio, the open-source circuit and Arduino simulator.

GitHub velxio.dev

相关文章


上一篇
Arduino串口回显:学习USART通信
下一篇
TFT ILI9341 显示屏演示:Arduino 上的图形与弹球动画