使用LabVIEW的2-Wire通信

描述

LabVIEW™是一种图形编程工具,用于生产和实验室环境,用于收集数据并提供控制信号,以监视和控制其监视的环境。DS3900为RS-232转2线接口,设计用于在PC串行端口和任何2线器件之间提供硬件/固件接口。

本 应用 简报 介绍 了 如何 使用 LabVIEW 通过 PC 串 口 来 控制 2 线 接口。本文以DS1086的接口为例。该 简报 还 介绍 了 如何 配置 LabVIEW 图形 用户 界面 (GUI) 以 与 DS3900 串 口 适配器 通信。举例说明如何操作DS1086低EMI经济振荡器中的寄存器设置™.提供了如何与DS1086通信的详细信息的流程图。

DS3900串口转2线适配器不打算销售,但Dallas Semiconductor为支持DS2等1086线器件而提供的开发套件除外。虽然 本 应用 笔记 是 为 DS1086 编写 的, 但 可 用于 开发 基于 LabVIEW 的 接口, 连接 任何 达拉斯 或 Maxim 2 线 线 器件。

介绍

LabVIEW 是 一个 图形 化 编 程 工具, 用于 在 实验 室 中 与 硬件 和 实验 室 连接 设备。图形化LabVIEW程序 取代 了 传统 代码, 可 缩短 开发 时间, 缩短 时间 使用称为虚拟仪器 (VI) 的预制模块。LabVIEW 具有 串行 VI, 可 与 语音 通信 电脑上的串行端口。这些串行VI可用于使用DS2与3900线器件通信,DS2接受来自串行端口的数据和命令,并将信息转换为<>线协议。

本 应用 笔记 提供 了 一个 示例, 说明 了 LabVIEW 如何 用于 与 2 线 线 通信 设备。LabVIEW 示例 VI 可 从 达拉斯 半导体 FTP 站点 下载。这 运行LabVIEW示例VI需要LabVIEW软件包。

硬件要求

使用 LabVIEW 示例 VI 所需 的 唯一 硬件 是 DS3900。虽然,如果客户 应用板具有2线通信方式,不需要DS3900,但LabVIEW示例 VI可能需要修改。

DS3900提供了一种使用PC串行端口进行2线通信的方法。DS3900利用MAX3223 RS232收发器将串口信号电平从±12V转换为电压电平,从而将串行端口信号电平转换为 微处理器。然后,微处理器能够使用其通用与PC通信 异步接收器发射器 (UART)。DS3900的功能框图如图1所示。

适配器

图1.功能图。

2线协议

LabVIEW 示例 VI (communicate_2wire.vi) 使用 DS3900 2 线 通过 串 口 进行 通信 命令。写入设备时,需要发送以下命令:启动、控制、寄存器 地址、数据和停止。从设备读取时,需要发送以下命令:启动、控制、 寄存器地址、开始(重复)、控制、数据和停止。所有命令均为十六进制。参见DS1086 2线示例部分。

DS1086 2线示例

DS1086为可编程频率合成器,具有2线接口。字节示例 DS2在1086线通信期间发送和接收如表1和表2所示。在此示例中, VI将写入和读取F0h以在DS02中寄存1086h。虽然DS1086用于此应用 请注意, 任何 2 线 设备 都 可 与 LabVIEW 示例 VI 配合 使用。

每个 2 线命令由两个字节组成。每个命令中的第一个字节确定操作的类型 要执行。除启动和停止命令外,第二个字节将有所不同。第二个控制字节 由设备标识符、设备地址和 R/W 位组成。当 R/W 位设置为 0 时,数据将写入 设备。要从设备读取数据,第一个控制命令中的 R/W 位应设置为 0,R/W 位应设置为 1 在第二个控制命令应设置为 <>。第二个寄存器地址字节是寄存器,即 正在写入或读取,要发送或接收的数据位于第二个数据字节中。将每个命令发送到 设备,接收一个或多个应答字节。

 

命令 1圣字节已发送 2德·字节已发送 1圣字节已接收 笔记
开始 0xA0 0x00
0xB0
2线启动
控制 0xA1 0xB0
0xB1
设备标识符 = 1011,设备地址 = 000,

R/W = 0
寄存器
地址
0xA1 0x02
0xB1
发送寄存器地址 (0x02)
数据 0xA1 0xF0
0xB1
发送数据写入 (0xF0)
0xA3 0x00
0xB3
2线挡块
命令 1圣字节已发送 2德·字节已发送 1圣字节已接收 2德·字节已接收 笔记
开始 0xA0 0x00
0xB0
  2线启动
控制 0xA1 0xB0
0xB1
  设备标识符 = 1011,设备地址 = 000,

R/W = 0
寄存器
地址
0xA1 0x02
0xB1
  发送寄存器地址 (0x02)
重复
启动
0xA0 0x00
0xB0
  2线启动
控制 0xA1 0xB0
0xB1
  设备标识符 = 1011,设备地址 = 000,

R/W = 1
数据 0xA2 0x00
0xF1

0xB2
发送数据写入 (0xF0)
0xA3 0x00
0xB3
  2线挡块

 

以下 硬件 组 件 用于 通过 LabVIEW VI 与 DS1086 通信: PC 一个串行端口、DS3900和一个DS1086。图2所示为如何将DS1086连接至DS3900。

适配器

图2.典型工作电路。

LabVIEW

LabVIEW 程序 (communicate_2wire.vi) 允许 用户 输入 串 口 设置 并 读取 或 写入 2 线 设备 的 内容。

communicate_2wire.vi 执行以下操作(另请参阅图 3):

提示用户输入串行端口设置

配置串行端口

确定是通过用户输入读取还是写入寄存器

写入或读取用户输入的寄存器

返回确认字节

在读取期间返回寄存器中的值

适配器

图3.Communicate_2wire.vi 流程图。

要使用 LabVIEW 程序:

从Maxim的FTP站点下载2wire.zip

解压缩文件并双击 communicate_2wire.vi

输入串行端口设置并单击继续(请参阅图 4)

输入寄存器(见图5)

输入数据(如果写入)

点击运行

完成运行程序后单击停止并关闭应用程序

适配器

图4.进入串行端口设置前面板。

适配器

图5.Communicate_2wire.vi 前面板。

VI的内部结构遵循如下所示的顺序(图3中也显示了更详细的信息)。 首先,VI读取用户提供的串口设置,并在正面显示所选设置 面板。图 6 显示 了 LabVIEW VI 图 中 配置 串 口 设置 的 部分。

适配器

图6.输入串行端口信息。

当单击RUN按钮时,程序通过串行端口发送在前面板上输入的数据 到DS3900,最后到2线器件。如果用户选择写入数据,则写入循环完成(请参阅 图7)。

适配器

图7.串行写入。

在图 7 和图 8 中,启动命令已经完成。接下来,将控制命令发送到 返回DS3900和应答字节。应答字节始终在命令字节 送。数据命令完成后,将发送停止命令。

如果用户选择读取数据,则读取循环将完成(参见图 8)。

适配器

图8.串行读取。

写入或读取完成后,程序等待用户写入或读取另一个寄存器或停止 程序。如果单击STOP按钮,即使程序未完成写入2- 电线装置。

结论

本 应用 说明 介绍 了 如何 使用 LabVIEW VI 与 2 线 设备 通信。有很多 使用 LabVIEW 2 线 程序 的 优势。LabVIEW 程序 有助 于 减少 开发 过程 时间有两种方式:无需编写软件,除DS3900外无需其他硬件 需要。LabVIEW 还 可 通过 将 LabVIEW 与 GPIB 连接 来 自动 化 设备 测试 设备。

审核编辑:郭婷

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

全部0条评论

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

×
20
完善资料,
赚取积分