只需1-Wire即可操作I2C/SPI端点

描述

I 2 C和 SPI 端点设备 能否仅通过一根线供电和控制?

可以通过使用 Analog Devices 的 1-Wire ®技术的单线连接和接地来提供电源和数据以运行 I 2 C 和 SPI 端点,例如湿度或温度传感器。当与主机上可能只有一个或几个引脚可用的 IO 受限系统一起工作时,该技术提供了一个强大的解决方案。DS28E18是一个很好的桥接器件示例,它利用 1-Wire 解决一系列常见的系统挑战,例如布线限制、通信距离和协议转换。

SPI

这种单线接口技术是 ADI 公司独有的,自 1980 年代以来一直存在。电力和数据通过单个专用连接传输,支持广泛的应用,例如本地或远程环境传感、医疗传感器或附件识别。用于这些应用的 1-Wire 解决方案具有通过单触点接口运行 SPI 或 I 2 C 器件的优势,无需外部电源,以及 1-Wire 和 I 2 C/SPI 主控的灵活性操作模式。

为了操作这个接口,总共有两个触点,1-Wire 单连接和一个接地连接,通过它我们可以在过载模式下以 11.7 kb/s 和 62.5 kb/s 两种不同的速度进行通信。图 1展示了一个非常简单的系统级配置以及 DS28E18 如何融入系统。微控制器主机 (µC) 通过与 DS28E18 桥接器的 1-Wire 接口连接到远程 SPI 传感器,仅使用两个连接,即 1-Wire IO 和接地。

SPI

图 1. 系统级配置

1-Wire 至 I 2 C/SPI,带排序器和功率收集

DS28E18 通信桥的独特功能之一是它可以收集高达 10mA 的电流来为外部连接的 I 2 C/SPI 端点供电。该器件还能够分别驱动高达 1MHz 和 2.3MHz的 I 2 C 和 SPI 端点。它采用小型 2x3mm TDFN 封装,在 -40°C 至 +85°C 的环境条件下工作电压为 3.3V (±10%)。

除了 1-Wire 接口和功能之外,DS28E18 还具有与 I 2 C/SPI 端点接口必不可少的三个主要模块;一个命令定序器,用作 1-Wire 命令和 I 2 C/SPI 命令之间的桥梁,一个带有数据的 SRAM 块以最终操作该器件,以及一个 I 2 C/SPI/GPIO 接口控制器。这一切都显示在下面的图 2中。

SPI

图 2. 框图

命令定序器

命令定序器处理缓冲区数据并将其存储在 SRAM 中的指定地址(一次 128 个字节),并返回 CRC16 以供主机处理器验证数据传输。定序器通过将最常用的命令存储在 SRAM 中来最大限度地减少主机的通信开销。DS28E18 在 SRAM 中提供一个 512 字节的缓冲区,可以加载多个 I 2 C 或 SPI 命令。加载后,主机控制器发送命令以执行序列、提供电源并从连接的 I 2 C 或 SPI 外设收集数据。随后的 1-Wire 命令读取收集的传感器数据。

存在三种类型的命令来操作此设备,它们位于下图 3中蓝色突出显示的元素中。它们是“1-Wire ROM 功能命令”、“DS28E18 器件功能命令”和“DS28E18 定序器命令”。

SPI

图 3. 命令所在位置的突出显示框图

主机使用 1-Wire ROM 级功能命令启动通信以识别和选择 DS28E18 桥接器件。选择后,设备功能命令将用于与定序器交互。图 4 列出了 DS28E18 可用的 1-Wire ROM 和器件功能命令。

DS28E18 有一个 144 字节的命令缓冲区,利用 16 字节的设备功能命令操作和 128 字节的顺序命令将形成的数据包传输到 512 字节的 SRAM 定序器。可以调用安装在 SRAM 定序器中的已形成数据包来向连接的从机写入和/或读取 I 2 C/SPI 数据。序列的最大长度为 512 字节。序列完成后,I 2 C/SPI 从机响应使用读取序列器命令恢复。

返回的结果字节表示成功或遇到的任何错误,例如收到 NACK。如果结果字节指示错误,则返回两个附加字节,指示序列中错误的位置。

定序器的实用程序命令通过 SENS_VDD 引脚为端点设备提供各种功能,例如延迟和电源门控。延迟可以按顺序使用,以允许 I 2 C/SPI 端点设备有额外的时间来执行转换,或允许在端点上电后建立稳定。延迟范围从 1ms 到 32s。提供给端点的电源来自 1-Wire 接口,因此主机必须为整个序列启用强上拉。DS28E18 可提供高达 10mA 的电流。

图 4显示了不同命令的列表及其在命令层次结构中的级别。

SPI

图 4. 命令层次结构

接口控制

DS28E18 的 GPIO、I 2 C 和 SPI 接口在四个引脚上复用,如图 5所示。I 2 C 接口可配置为以 100kHz、400kHz 或 1MHz 运行,SPI 可配置为以 100kHz、400kHz、1MHz 或 2.3MHz 运行。当配置为 SPI 时,GPIO 不可用。

SPI

图 5. GPIO/I 2 C/SPI 引脚复用和接口控制

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

全部0条评论

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

×
20
完善资料,
赚取积分