应用笔记

Moku:Go 协议分析器

使用逻辑分析仪进行 UART 解码

Moku:围棋逻辑分析仪 集成了自己的协议分析器,其中包含三种协议:SPI、I2C、I2S、UART 和 CAN。

Moku:Go

Moku:Go 在一个高性能设备中结合了 14 多台实验室仪器,具有两个模拟输入、两个模拟输出、16 个数字 I/O 引脚和可选的集成电源。

Moku:Go 逻辑分析器的更新

协议分析器可通过 逻辑分析仪 Windows 和 macOS 桌面应用程序中的乐器。 逻辑分析仪还具有其他一些功能,例如:

  • 协议:UART、SPI、I2C、I2S
  • 所有 125 个数字输入/输出 (DIO) 的采样率为 16 MSa/s
  • 时间游标
  • 高级触发选项
    • 使用 AND/OR 逻辑触发多个引脚
    • 如果信号为高电平、低电平或上升/下降沿触发

让我们看看其中一些功能的实际应用,看看如何在下一个数字逻辑项目中使用它们。

从 Arduino 解码 UART

通用异步接收器/发送器 (UART) 是传输和接收串行数据的通用协议。 例如,UART 在 Arduino 项目中经常用于控制各种外围设备,例如具有串行 I/O 的并行 LCD。 让我们在将 UART 总线连接到 LCD 之前测试它,以确保 Arduino 代码正常工作。

设置协议分析器很简单:首先,添加一个新的协议解码器(最多两个); 然后,选择将数据路由到哪个引脚。 图 1 显示了如何在 Moku:Go 桌面应用程序中添加协议解码器通道。

图 1:设置协议解码器

添加协议解码器后,配置适合数据发送器和接收器规范的协议特定设置。 在图 2 中,有用于配置 UART 协议的选项,包括数据宽度、奇偶校验、波特率等。

图 2:UART 解码器设置

对于这个项目,UART 协议解码器使用与图 2 相同的设置,例如 9,600 bps 的波特率,这对于 5 V 晶体管到晶体管逻辑 (TTL) 串行接口很常见。 让我们确保 LCD 屏幕上的“Hello”文本也显示在协议分析器中。 最后一步是将 Arduino 的发射器引脚连接到 Moku:Go 接收器引脚(引脚 1)。 图 4 显示了与 Moku:Go 随附的 DIO 电缆相对应的 Moku:Go DIO 接头连接器的引出线图。 协议分析器以十六进制报告值,因此使用 ASCII 字符转换图 5 中的 3 个数据包可确认 LCD 屏幕将在连接后显示“Hello”。

图 3:协议分析器示例

将十六进制字符转换为 ASCII 字符非常简单,可以使用表格或任意数量的在线转换工具完成。 该项目的截断十六进制到 ASCII 字符表如表 1 所示。

十六进制到ASCII字符转换

表 1:十六进制到 ASCII 字符的转换

使用 Moku:Go 协议分析器时,您可以触发输入引脚并在协议解码器引脚旁边的屏幕上显示值。 这允许快速调试,揭示定时错误,如不匹配的波特率或不正确的奇偶校验位。

图 4:Moku:Go DIO 接头引出线

总结

Moku:Go 协议分析仪为您的下一个数字逻辑项目提供灵活的工具。 可用的协议有 UART、I2C、SPI、I2S,未来更新中还会有更多协议。 有关使用 Moku:Go 逻辑分析器的更多练习,请探索 4位加法器 项目。 如果您对接下来希望看到的协议有什么建议,请通过我们的网站告诉我们 论坛。

Moku:Go 演示模式

您可以下载适用于 macOS 和 Windows 的 Moku 应用程序 此处。 演示模式无需任何硬件即可运行,并介绍如何使用 Moku:Go。

问题或意见?

如果您对此类培训课程感兴趣,想了解更多信息,请您联系 support@liquidinstruments.com.