因此、我特别想了解 HART 应用的相关信息。
数据表并未很好地涵盖寄存器。 例如、当芯片确定存在间隙误差时-这到底意味着什么? 如果有这个答案就好了、但这不是唯一的问题。 没有一个寄存器有很好的解释。
第二个特定问题是关于 CD (载波检测)的问题。 我看到 HART 帧可能会重叠。 如果是这种情况,CD 是否会在帧重叠的情况下变为非活动状态? 如果是、芯片用于生成 CD 的具体条件是什么?
Mike。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
因此、我特别想了解 HART 应用的相关信息。
数据表并未很好地涵盖寄存器。 例如、当芯片确定存在间隙误差时-这到底意味着什么? 如果有这个答案就好了、但这不是唯一的问题。 没有一个寄存器有很好的解释。
第二个特定问题是关于 CD (载波检测)的问题。 我看到 HART 帧可能会重叠。 如果是这种情况,CD 是否会在帧重叠的情况下变为非活动状态? 如果是、芯片用于生成 CD 的具体条件是什么?
Mike。
Paul、
我试图弄清楚的是如何知道我何时捕获了整个帧。 如果我将8742H 中的字节 DMA 给我的微控制器、如何知道帧何时完成? 我是否总是保证在 CD 上转换? 通过查看 HART 物理层规范(#54)、可以看出帧之间不能保持静默、但不清楚载波是否必须降至帧之间的80mV 以下(我正在查看标准中的帧定义)。
我查看了 GAP 错误定义的标准、这里是它所说的:" GAP 错误表示发送器件在中间消息中出现故障"。 嗯、这不是很清楚。 确切地了解导致8742H 上的间隙误差的原因将会很有帮助。 当它没有预期间隙时、是否存在大于1位(中间消息)。 8742H 如何知道消息不完整(因为 HART 中没有结束分隔符)?
现在、我在这里选择缝隙、但数据表中没有介绍8742H 中的几个状态位。 当然、有人可以解释造成这些问题的原因。
Mike。
尊敬的 Mike:
HART 信号是一个相位连续 FSK 信号、1200Hz 和2200Hz 分别表示对应于位1和0的'ark '和'stace'频率。 正如 Paul 先前提到的、DAC8742H 被设计成符合由物理层和数据链路层定义的 HART 标准、并假定理解由 HART 通信基金会定义的术语。 不过、我将尝试回答您的问题。
间隙由两个有效字符/帧之间的时序定义。 当这个时序超过1个完整字符长度(即11位)时、一个间隙误差被报告。
在检测到有效载波后、CD 被触发、该载波最大为6位时间。 CD 在有效字符之间不会变低。 该器件需要1个起始位、8个数据位、1个奇数奇偶校验位和1个停止位或8O1 UART 字符格式。 "限制符"是所发送字符的起始位和停止位的组合。
我希望这能为你澄清。
此致、
请
尊敬的 Mike:
下面是您的问题、因为我理解这些问题以及我的相应回答。 如果我理解正确的问题、请告诉我。
问题1. 我试图弄清楚的是如何知道我何时捕获了整个帧。 如果我将8742H 中的字节 DMA 给我的微控制器、如何知道帧何时完成? 我是否总是保证在 CD 上转换?
RTS 引脚上的逻辑低电平使能 DAC8742H HART 调制解调器的传输。 在此模式下、DAC8742H 只需以1200波特的波特率将 UART_IN 上的数据传递到 MOD_OUT、而不存在间隙。 当检测到有效载波(80mV 至120mV 之间的 MOD_IN 信号)时、CD 变为逻辑高电平并开始以1200波特进行解调。 同样、DAC8742H 只是简单地从 HART 直接转换为 UART_OUT。 仅当 MOD_IN 上的信号降至80mV 以下时、CD 才会恢复逻辑低电平。
通过 UART 接口连接 HART 调制解调器时、该器件可被视为简单的 UART 转 HART 或 HART 转 UART 直接馈通转换器
问题2. 确切地了解导致8742H 上的间隙误差的原因将会很有帮助。 当它没有预期间隙时、是否存在大于1位(中间消息)。 8742H 如何知道消息不完整(因为 HART 中没有结束分隔符)?
DAC8742H 报告 HART 帧中的 GAP 错误、但不会导致 GAP 错误。 当 DAC8742H 在 HART 模式下进行解调时、该器件需要1个起始位、8个数据位、1个奇数奇偶校验位和1个停止位或8O1 UART 字符格式。 如果字符之间的间隙超过一个字符长度、则会报告间隙错误
请告诉我是否正确理解了您的问题、或者请进一步解释、以便我可以更好地回答这些问题。 谢谢。
此致、
请
尊敬的 Mike:
我还假设您将 UART 与 HART 相连。 很抱歉。 我在下面的回答是 SPI 接口 HART 操作
问题1: 您说我可以依赖 CD 来了解帧何时完成?
是的、当帧结束时、HART 信号基本上不再存在、因此 MOD_IN 引脚上的信号下降至80mV 以下、导致 CD 变为逻辑低电平。 CD 位可以从调制解调器状态寄存器读回、以指示是否存在载波。
Q2: 您是否还说我们保证数据包之间的载波始终会下降到80mV 以下的点?
在数据包之间、载波不需要降至80mV 以下。 因此、只要有效字符/数据包之间的时间小于1个字符长度、就不会报告间隙错误。
Q3:8742H 如何知道它是间隙而不是帧的末尾
当有效字符或帧之间的时序超过1个字符长度时、无论发生什么情况、都会报告间隙错误。 如果传输 HART 器件的帧完整、则发送器件的 RTS 可设置为关闭 HART 信号、这将关闭 DAC8742H 的 CD 位。 这样、DAC8742H 不会期望另一个字符、因此不会报告间隙误差。
尊敬的 Mike:
如上所述、"...连续帧之间可能存在静音、也可能不存在静音。。" 帧之间的静音意味着载波被移除、并且 MOD_IN 上的信号振幅下降至80mV 以下。 这反过来会将 CD 变为逻辑低电平。 但是、如果帧之间没有静音、这意味着载波仍然存在、振幅大于80mV、因此 CD 在这些帧之间保持逻辑高电平。
HART 帧之间的静音或缺失由 HART 发送器控制、而不是由接收 DAC8742H 控制。 DAC8742H 通过 CD 上的逻辑低电平响应静音、或者如果帧之间没有静音、则 CD 保持逻辑高电平。
为了帮助我更好地了解您的情况、您能否解释一下如何生成 HART 信号?
此致、
请