电子说
在电子项目中,为项目或计算机添加字符显示功能是常见需求。而 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 接口是最便捷的方式。只需用迷你 B 型电缆将背包连接到计算机,即可实现供电和数据传输。在 Windows、Mac 和 Linux 计算机上,背包会显示为“USB 串行端口”。Windows 需要 INF 文件,而 Mac 和 Linux 无需驱动。Windows 会创建 COM 端口,Mac/Linux 会在 /dev/cu.usbserialXX 或类似路径下创建设备,插入设备后运行 dmesg 命令可查看设备名称。使用 USB 时,可使用任何终端程序以任意波特率连接到端口并发送文本和命令数据,波特率对 USB 连接无影响,选择 9600 或其他方便的波特率即可。
可通过红/黑/白线进行连接。将黑线接地,红线接 +5V 提供电源,白线为 5V TTL 串行输入。默认情况下,背包配置为 9600 波特、8 位、无校验、1 个停止位,也可根据需要配置波特率。通电时,背包会在显示屏上闪烁 100 毫秒波特率,若有疑问,可在观察显示屏的同时连接。也可通过 USB 连接(USB 不使用波特率)并在那里重置波特率。对于 USB 连接的硬接线,有标准的“5x1”引脚排列的 USB 分线;对于 TTL 连接的硬接线,PCB 边缘有 RX 和 TX 引脚的分线。
首先,将字符 LCD 显示屏焊接到背包上。需注意,仅支持字符类型的显示屏,尺寸最大为 20x4。所有 Adafruit 字符显示屏都适用,但不能保证其他显示屏能正常工作。若购买的套件中有额外的蓝色 10K 电位器,该部件并非此套件必需,可用于其他项目。背包配有一段排针,可用于安装显示屏,使用无焊面包板能更方便地将排针安装整齐。
将排针折断,使其与 LCD 的引脚数量匹配。将排针长端朝下放入面包板,然后将 LCD 放在上面。若使用有两行引脚的 LCD,要确保使用与示例图像匹配的那一行。
用烙铁焊接所有排针,然后将背包与 LCD 的角落对齐,使背包上的孔与 LCD 位置一致,最后完全焊接背包。
要显示文本,只需发送 ASCII 字符。需注意一些特殊字符:换行符(0x0A 或 'n')会用空格填充当前行的剩余部分并移动到下一行;回车符(0x0D 或 'r')不会被处理;退格符(0x08)会将字符后退一个空格并用空格替换最后一个字符以擦除它。唯一特殊的字符是 0xFE,它是“命令开始”字符。
测试 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 脚本。
可以使用 Arduino 微控制器发送文本和命令,当然也可使用任何能配置为 9600 波特串行输出的微控制器。将 JST 电缆连接到背包,红线接 +5V,黑线接地,白线接数字引脚 #2(可根据需要更改)。可从 GitHub 存储库下载示例代码。在代码中,可设置显示尺寸、RGB 背光并创建自定义字符。设置显示尺寸、对比度、亮度、关闭光标、创建自定义字符、清屏、归位等操作都有相应的命令,每个命令后建议添加延迟,以确保数据发送和 LCD 更新。在循环中,可调整背光颜色,让背景颜色不断变化。
通用输出有 4 个未被背包使用的引脚,可将这些引脚设置为高电平或低电平。GPO1 标记为 PB0,GPO2 标记为 PC2,GPO3 标记为 PC4,GPO4 标记为 PC7。
提供 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 为电子工程师在项目中添加字符显示功能提供了强大而便捷的解决方案,丰富的功能和详细的命令参考能满足不同的需求。大家在使用过程中遇到问题或有新的创意,不妨留言分享,让我们一起探索更多可能性。
全部0条评论
快来发表一下你的评论吧 !