×

uTerm2-S:多仿真彩色RS232终端

消耗积分:2 | 格式:zip | 大小:0.29 MB | 2022-07-07

分享资料个

PCB图如下:
poYBAGK1NImAJ-QLAACtGjaHI2o847.jpg
poYBAGK1NIuAZVWFAAC6jPv_hdM286.jpg

描述

uTerm2-S:多仿真彩色RS232终端

* * 硬件概述 * *

uTerm2-S(独立微型 Term2)是一个易于构建的多仿真 RS232 终端,使用 ESP32-Wroom-32 模块和出色的 FabGL 库(http://www.fabglib.org)。此外,使用 ESP32 让您有机会通过 Arduino IDE 和 ESP32 内核以多种不同方式轻松使用 uTerm2-S。

这些uTerm2-S的主要规格:

RS232串口;

VGA输出;

串行 USB 适配器的“透明”端口(如uTerm-S中);

使用串行 USB 适配器进行 ESP32 编程的辅助串行端口;

RS232 和“透明”端口之间的 RTS/CTS 支持(如在uTerm-S中);

车载电源;

颜色、图形和声音功能(FabGL 库);

多语言键盘支持(FabGL 库);

各种终端仿真(FabGL 库);

用于键盘和鼠标的 PS/2 连接器;

用于外部扬声器的板载放大器。

在下图中,连接到普通 PC 扬声器的 uTerm2-S(以前的 PCB 版本):

 

这是最后一块板:

 

 

COM-USB2 (J3) 连接器(透明端口)

uTerm2-S 有一个用于 USB 串行适配器的“透明”端口(如 uTerm-S),因此您可以使用 XMODEM 与 PC 交换文件(运行支持 XMODEM 文件传输的终端仿真器),而uTerm2-S 正在使用中。

两种“混合”电源方案(USB 串行适配器不是由 USB 供电,而是由 uTerm2-S 供电,反之亦然)均由硬件管理,因此您无需担心。

在下图中,串行 USB 适配器通过电缆连接到透明 COM-USB2 (J3) 端口:

 

这允许在“同一”时间使用两个键盘和两个显示器(一个键盘和显示器直接连接到 uTerm2-S,另一个键盘和显示器在与串行 USB 连接的 PC 上的终端仿真器)。

请注意,COM-USB2 (J3) 端口支持 RTS/CTS 硬件握手,因此串行 USB 适配器上需要两个 RTS/CTS 信号。

在下图中,一个通用的基于 CP2102 的串行 USB 适配器连接了 RTS/CTS 信号:

 

下表显示了如何将串行 USB 适配器连接到 J3:

poYBAGK1NK6AQrP5AAEFuPQErvo839.jpg

注意:信号分配与 uTerm-S 的 SER-USB (J3) 连接器相同。

PRG-USB1 (J2) 连接器(编程端口)

PRG-USB1 (J2) 连接器用于使用串行 USB 适配器对 ESP32 进行编程(建议使用支持默认 921600 比特/秒上传速度的型号,如基于 CP2102 的适配器)。

两种“混合”电源方案(USB 串行适配器不是由 USB 供电,而是由 uTerm2-S 供电,反之亦然)均由硬件管理,因此您无需担心。

有关编程过程的更多信息,请参阅“如何对 ESP32 进行编程”段落。

SPK (J9) 连接器

SPK (J9) 连接器用于连接可选扬声器(4/16 欧姆)。我使用了一个打捞的 PC 扬声器。

其他连接器

其余的连接器是显而易见的。PS/2 KB (J5) 和 PS/2 MOUSE (J4) 用于 PS/2 键盘和可选的 PS/2 鼠标。请注意,许多 USB 键盘(以及 USB 鼠标)内部都有 PS/2 兼容芯片,因此可以与众所周知的“绿色适配器”一起使用:

 

 

VGA (J1) 连接器用于 VGA 显示器,RS232 (J8) 连接器是主机的 RS232 串行端口。最高速度为115200 bps(这是MAX232 RS232驱动器的最高速度)。

DC-IN (J2) 是电源输入连接器。建议使用 9V 1A 直流电源。

RTS-HS (SW3) 开关

uTerm2-S 具有 RTS/CTS 信号,用于在 RS232 串行端口 (J8) 连接器(用于主机)和 COM-USB2 (J3) 连接器(用于终端仿真软件的“透明端口”)之间PC),所以它可以用于文件交换。

为了清楚起见,下图显示了 uTerm2-S 的串行端口框图:

pYYBAGK1NL-AePUWAAByA06c9BU923.jpg

在 COM-USB2 (J3) 侧,如果 PC 侧的 RX 缓冲区已满,PC 上的终端仿真软件使用 RTS 信号将通信置于等待状态。CTS 信号是一个输入,如果主机端的输入缓冲区已满,则允许主机执行相同操作。由于 PC 通常比复古系统快得多,因此可以方便地将 RTS 信号设置为“始终准备好接受”状态(在 PC 端)。在这种情况下,RTS-HS 开关 (SW3) 用于打开或关闭 RTS 握手。

关闭时,连接到串行端口的主机将看到 RST 线始终处于活动状态(RTS 和 CTS 是活动的“低”信号)。这在某些情况下会很方便。

RTS-HS 开关对 CTS 信号没有影响。

第一个键 (SW2)

RST 键(SW2)用于复位 ESP32 模块。

DFLT 键 (SW1)

DFLT 键 (SW1) 用于将所有终端参数重置为默认值。要激活此功能,您必须按下 DFLT 键,并按住它直到复位完成,按下并松开 RST 键 (SW2) 以复位 uTerm2-S。

注意:必须在 AnsiTerminal 草图中启用 DFLT 键(请参阅“如何编程 ESP32(J2/PROG-USB1 连接器)”段落)才能使其工作。

* * 软件概述 * *

uTerm2-S 设计为使用 FabGL 库,因此您需要首先安装 Arduino IDE 和 ESP32 内核。

然后你必须安装 FabGL 库。因为周围有很多教程,所以我不会在这里提供更多关于如何设置“工具链”的详细信息(即参见 FabGL 站点上的演示和教程部分)。

如何对 ESP32 进行编程

uTerm2-S 可以使用 Arduino IDE 作为通用 ESP32 板进行编程(具有自动上传所需的电路):

 

您只需将 PRG-USB1 (J2) 连接器与串行 USB 适配器一起使用:

 

下表显示如何将串行 USB 适配器连接到 PRG-USB1 (J2):

poYBAGK1NNWATz1tAAEE2S9ARHY616.jpg

注意:您可以使用相同的适配器/电缆进行编程(通过 J2)和与透明端口(通过 J3)通信,因为 J2 和 J3 连接表具有兼容的信号分配。

要刷新终端固件,您必须从 FabGL 库的示例中打开 AnsiTerminal “草图”:

pYYBAGK1NOOAHWFKACSsBUO7QUs322.jpg

请记住首先更改包含以下内容的行:

#define USERESETPIN 0

至:

#define USERESETPIN 1

启用 DFLT 键:

poYBAGK1NOaAfMxmAAHfD_ySR6w273.png

现在您可以编译和刷新 AnsiTerminal 草图。

pYYBAGK1NPGANsMcACGv8-vPAtA488.jpg

注 1:不要在“流控制”终端设置面板上启用 HW RTS/CTS 握手,因为 HW 握手是为 COM-USB2 (J3)“透明”连接器保留的(请参阅“RTS-HS 开关”段),并且相关的 GPIO 不用于此。

注 2:最大终端串行速度不能超过 115200 bps。

游戏

在 FabGL 库的示例目录中,也有一些可以使用 uTerm2-S 运行的游戏。

这里是太空侵略者:

poYBAGK1NP-AHrR4ACGKjDILiaU939.jpg

和经典赛车:

pYYBAGK1NRKARD7bAC7WLnpMth4078.jpg

并且不要忘记连接扬声器!

* * 学分 * *

FabGL 库由 Fabrizio Di Vittorio ( http://www.fabglib.org ) 开发。

 

 

 

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

评论(0)
发评论

下载排行榜

全部0条评论

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