USB + Serial RGB Backlight Character LCD Backpack:便捷的字符显示解决方案

电子说

1.4w人已加入

描述

USB + Serial RGB Backlight Character LCD Backpack:便捷的字符显示解决方案

在电子项目中,为项目或计算机添加字符显示功能是常见需求。而 Adafruit 推出的 USB 或 TTL 串行背包(USB + Serial RGB Backlight Character LCD Backpack)为这一需求提供了极为便捷的解决方案。

文件下载:782.pdf

一、产品概述

这款定制的 PCB 板可以安装在任何“标准”字符 LCD(16x2 或 20x4 尺寸)的背面,能实现打印文本、自动滚动、设置背光、调整对比度、制作自定义字符、开启和关闭光标等功能。它甚至能处理 RGB 背光 LCD,对背光进行全 8 位 PWM 控制,可将背景颜色随意更改,如红色、绿色、蓝色等,也可关闭背光以获得中性背景。

背包内部采用了支持 USB 的 AT90USB162 芯片,它能通过迷你 B 型 USB 端口和 TTL 串行输入线接收命令。USB 接口在 Windows、Mac 和 Linux 系统中会显示为 COM/串行端口,背包会自动选择正在使用的输入数据。对于 USB 连接,可在任何波特率下工作;对于 TTL 连接,默认波特率为 9600,也可通过命令将波特率设置为 2400、4800、9600、19200、28800 或 57600 波特,且波特率会在开机时显示在 LCD 上。任何自定义设置,如波特率、背光颜色、亮度、启动画面等,都会永久存储在 EEPROM 中。其命令接口与流行的“Matrix Orbital”规格兼容,还增加了一些用于 RGB 背光和设置 LCD 尺寸的额外命令。若不想使用命令,直接向 LCD 发送 ASCII 字符,文本就会神奇地显示出来。

二、数据传输接口

(一)USB 接口

USB 接口是最便捷的方式。只需用迷你 B 型电缆将背包连接到计算机,即可实现供电和数据传输。在 Windows、Mac 和 Linux 计算机上,背包会显示为“USB 串行端口”。Windows 需要 INF 文件,而 Mac 和 Linux 无需驱动。Windows 会创建 COM 端口,Mac/Linux 会在 /dev/cu.usbserialXX 或类似路径下创建设备,插入设备后运行 dmesg 命令可查看设备名称。使用 USB 时,可使用任何终端程序以任意波特率连接到端口并发送文本和命令数据,波特率对 USB 连接无影响,选择 9600 或其他方便的波特率即可。

(二)TTL 串行接口

可通过红/黑/白线进行连接。将黑线接地,红线接 +5V 提供电源,白线为 5V TTL 串行输入。默认情况下,背包配置为 9600 波特、8 位、无校验、1 个停止位,也可根据需要配置波特率。通电时,背包会在显示屏上闪烁 100 毫秒波特率,若有疑问,可在观察显示屏的同时连接。也可通过 USB 连接(USB 不使用波特率)并在那里重置波特率。对于 USB 连接的硬接线,有标准的“5x1”引脚排列的 USB 分线;对于 TTL 连接的硬接线,PCB 边缘有 RX 和 TX 引脚的分线。

三、组装步骤

(一)焊接 LCD 显示屏

首先,将字符 LCD 显示屏焊接到背包上。需注意,仅支持字符类型的显示屏,尺寸最大为 20x4。所有 Adafruit 字符显示屏都适用,但不能保证其他显示屏能正常工作。若购买的套件中有额外的蓝色 10K 电位器,该部件并非此套件必需,可用于其他项目。背包配有一段排针,可用于安装显示屏,使用无焊面包板能更方便地将排针安装整齐。

(二)准备排针

将排针折断,使其与 LCD 的引脚数量匹配。将排针长端朝下放入面包板,然后将 LCD 放在上面。若使用有两行引脚的 LCD,要确保使用与示例图像匹配的那一行。

(三)焊接排针和背包

用烙铁焊接所有排针,然后将背包与 LCD 的角落对齐,使背包上的孔与 LCD 位置一致,最后完全焊接背包。

四、文本发送与测试

(一)发送文本

要显示文本,只需发送 ASCII 字符。需注意一些特殊字符:换行符(0x0A 或 'n')会用空格填充当前行的剩余部分并移动到下一行;回车符(0x0D 或 'r')不会被处理;退格符(0x08)会将字符后退一个空格并用空格替换最后一个字符以擦除它。唯一特殊的字符是 0xFE,它是“命令开始”字符。

(二)USB 测试

测试 LCD 和背包的最简单方法是将其连接到计算机,使用终端程序发送数据。用任何迷你 B 型 USB 电缆连接到背包,Windows 需要指向 INF 驱动文件(可在下载部分找到),Mac 和 Linux 无需驱动。插入背包后,会创建一个串行端口,Windows 中称为 COM 端口,可在设备管理器的“端口”中查看;Mac/Linux 可运行 dmesg 命令查看端口名称,也可在终端窗口中输入 ls /dev/cu.* 查看连接和断开电缆时出现或消失的项目。知道端口名称后,可使用喜欢的终端程序进行连接,例如使用 Arduino 内置的基本终端。若使用功能更强大的监视器,如 CoolTerm(Mac)或 RealTerm(Windows),可观察每个字符的输入情况。选择与背包对应的 COM 串行端口,打开串行端口监视器,在文本框中输入“Hello World!”,点击发送后,文本将传输到背包并显示出来。若要测试更多命令,可查看 GitHub 存储库中的 Python 脚本。

(三)TTL 串行测试

可以使用 Arduino 微控制器发送文本和命令,当然也可使用任何能配置为 9600 波特串行输出的微控制器。将 JST 电缆连接到背包,红线接 +5V,黑线接地,白线接数字引脚 #2(可根据需要更改)。可从 GitHub 存储库下载示例代码。在代码中,可设置显示尺寸、RGB 背光并创建自定义字符。设置显示尺寸、对比度、亮度、关闭光标、创建自定义字符、清屏、归位等操作都有相应的命令,每个命令后建议添加延迟,以确保数据发送和 LCD 更新。在循环中,可调整背光颜色,让背景颜色不断变化。

五、命令参考

(一)基本命令

  • 显示开启:0xFE 0x42,打开显示屏背光,参数表示开启的分钟数,但该超时功能未处理,此参数会被忽略。
  • 显示关闭:0xFE 0x46,关闭显示屏背光。
  • 设置亮度:0xFE 0x99,设置背光的整体亮度(颜色分量单独设置,亮度设置在颜色设置后生效),设置会保存到 EEPROM。
  • 设置并保存亮度:0xFE 0x98,与上述功能相同。
  • 设置对比度:0xFE 0x50,设置显示屏对比度,一般 180 - 220 的值效果较好,设置会保存到 EEPROM。
  • 设置并保存对比度:0xFE 0x91,与上述功能相同。
  • 自动滚动开启:0xFE 0x51,当文本接收且显示屏无空间时,文本会自动滚动,使第二行变为第一行,新文本始终显示在显示屏底部。
  • 自动滚动关闭:0xFE 0x52,当文本接收且显示屏无空间时,文本会换行到显示屏顶部开始显示。
  • 清屏:0xFE 0x58,清除显示屏上的所有文本。
  • 更改启动画面:0xFE 0x40,发送此命令后,最多可写入 32 个字符(16x2 显示屏)或 80 个字符(20x4 显示屏),这些字符将在启动时作为启动画面显示。若不需要启动画面,可写入多个空格。
  • 移动和更改光标
    • 设置光标位置:0xFE 0x47,设置文本输入光标的位置,列和行编号从 1 开始,左上角第一个位置为 (1, 1)。
    • 归位:0xFE 0x48,将光标置于位置 (1, 1)。
    • 光标后退:0xFE 0x4C,将光标后退一个空格,若在位置 (1, 1),会“环绕”到最后一个位置。
    • 光标前进:0xFE 0x4D,将光标前进一个空格,若在最后一个位置,会“环绕”到 (1, 1) 位置。
    • 下划线光标开启:0xFE 0x4A,开启下划线光标。
    • 下划线光标关闭:0xFE 0x4B,关闭下划线光标。
    • 块状光标开启:0xFE 0x53,开启闪烁的块状光标。
    • 块状光标关闭:0xFE 0x54,关闭闪烁的块状光标。

(二)RGB 背光和 LCD 尺寸

  • 设置 RGB 背光颜色:0xFE 0xD0,将背光设置为红、绿、蓝分量颜色,值范围为 0 到 255(一个字节),设置会保存到 EEPROM。例如,将背光设置为红色的命令是 0xFE 0xD0 0xFF 0x0 0x0,蓝色是 0xFE 0xD0 0x0 0x0 0xFF,白色是 0xFE 0xD0 0xFF 0xFF 0xFF。
  • 设置 LCD 尺寸:0xFE 0xD1,可配置背包所连接显示屏的尺寸,设置会保存到 EEPROM,只需设置一次,可能需要重启电源以使更改从 EEPROM 重新加载并生效。

(三)自定义字符

  • 创建自定义字符:0xFE 0x4E,在指定位置创建自定义字符,位置范围为 0 到 7(共 8 个位置),需发送 8 个字节以指示字符的外观。
  • 将自定义字符保存到 EEPROM 库:0xFE 0xC1,将自定义字符保存到 EEPROM 库以供后续使用,每个库有 4 个库,每个库有 8 个位置。
  • 从 EEPROM 库加载自定义字符:0xFE 0xC0,将保存到 EEPROM 库的所有 8 个字符加载到 LCD 的内存中。

(四)通用输出

通用输出有 4 个未被背包使用的引脚,可将这些引脚设置为高电平或低电平。GPO1 标记为 PB0,GPO2 标记为 PC2,GPO3 标记为 PC4,GPO4 标记为 PC7。

  • GPO 关闭:0xFE 0x56,将通用引脚设置为低电平(0V)。
  • GPO 开启:0xFE 0x57,将通用引脚设置为高电平(5V)。
  • GPO 初始状态:0xFE 0xC3,设置 GPO 引脚的“初始”状态。

(五)不支持的功能

  • 设置自动换行开启(0xFE 0x43)和设置自动换行关闭(0xFE 0x44)不支持,自动换行功能始终开启。
  • 初始化/放置中大型数字、水平条和垂直条不支持。

六、下载资源

(一)文件

(二)驱动

提供 Windows XP/7/Vista 的 INF 驱动,解压后在“新硬件向导”中导航到该文件夹。点击链接(https://adafru.it/d4R)可下载 usb_serial_backpack - driver.zip。还有 Windows 8 签名驱动(处于测试阶段,可尝试使用),点击链接(https://adafru.it/Ccb)可下载 USB - Serial RGB LCD Backpack 签名驱动。

总之,Adafruit 的 USB + Serial RGB Backlight Character LCD Backpack 为电子工程师在项目中添加字符显示功能提供了强大而便捷的解决方案,丰富的功能和详细的命令参考能满足不同的需求。大家在使用过程中遇到问题或有新的创意,不妨留言分享,让我们一起探索更多可能性。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分