ZHCSPR9 December 2023 AFE782H1 , AFE882H1
PRODUCTION DATA
为了在 HART 总线上实现无错误的可靠通信,系统控制器必须及时从 AFEx82H1 检测到表 6-7 中列出的事件。如果 IRQ 信号未直接连接到系统控制器,请轮询相应的状态标志。在 UART 模式下,FIFO_H2U 自动出队功能可显著简化事件管理,并非所有事件都必须转换为 IRQ。
将 HART 调制解调器与 IRQ 配合使用时,IRQ 功能可帮助控制两个方向的通信。请通过以下步骤启用 IRQ 功能:
AFEx82H1HART 状态 | 事件 | MODEM_STATUS 标志 | 生效方法(1) | 操作 |
---|---|---|---|---|
接收 | RTS 置为无效 | CTS_DEASSERT | 将 RTS 引脚切换为高电平或设置 MODEM_CFG.RTS = 0。 | 解调器已启用并准备好接收 HART 数据。 |
载波检测置为有效 | CD_ASSERT | 解调器检测到有效幅度的 HART 载波信号。 | 期望接收 HART 数据。设置所需的 FIFO_H2U 级别触发阈值。 | |
FIFO_H2U 级别阈值触发器 | FIFO_H2U_LEVEL_FLAG | HART 解调器使数据自动进入 FIFO_H2U 队列。 | 当级别超过设置的阈值时,使数据从 FIFO_H2U 出队。 防止 FIFO_H2U 满容,以免丢失传入数据。 |
|
FIFO_H2U 已满 | FIFO_H2U_FULL_FLAG | HART 解调器使数据自动进入 FIFO_H2U 队列。系统控制器尚未使数据从 FIFO_H2U 出队。 | 关键标志。 立即使数据从 FIFO_H2U 出队以免丢失传入数据。 |
|
载波检测置为无效 | CD_DEASSERT | 解调器停止检测有效幅度的 HART 载波信号。 | 使剩余数据从 FIFO_H2U 出列。 监控空标志以确保已接收到所有数据。 |
|
FIFO_H2U 为空 | FIFO_H2U_EMPTY_FLAG | 系统控制器使数据从 FIFO_H2U 出队。 | 如果使用 UART,请等待以确保在 UARTOUT 上接收到最后一个字符。 | |
发送 | RTS 置为有效 | 不适用 | 将 RTS 引脚切换为低电平或写入设置 MODEM_CFG.RTS = 1。 |
等待“允许发送”确认标志。 |
允许发送 (CTS) | CTS_ASSERT | RTS 置为有效且 CD 置为无效。 | 调制器已启用。器件开始调制 MOD_OUT 上的载波。设置所需的 FIFO_U2H 级别触发阈值。使数据进入 FIFO_U2H 队列。调制器自动使数据从 FIFO_U2H 出队并发送 HART 数据。 | |
FIFO_U2H 级别阈值触发器 | FIFO_U2H_LEVEL_FLAG | HART 调制器自动使数据从 FIFO_U2H 出队。 | 当级别降至低于设置的阈值时,使新数据进入 FIFO_U2H 队列。 防止 FIFO_U2H 清空以避免发送中出现间隙。 |
|
FIFO_U2H 已满 | FIFO_U2H_FULL_FLAG | 系统控制器使新数据进入 FIFO_U2H 队列。 | 关键标志。 立即停止使数据进入 FIFO_U2H 队列以免丢失 HART 数据。 |
|
FIFO_U2H 为空 | FIFO_U2H_EMPTY_FLAG | HART 调制器自动使数据从 FIFO_U2H 出队。系统控制器尚未使新数据进入 FIFO_U2H 队列。 | 位于数据包中间的关键标志。 立即使新数据进入 FIFO_U2H 队列以免发送中出现间隙。 当最后一个字符从 FIFO_U2H 出队时,请等待该字符在 MOD_OUT 上完全发送,然后再将 RTS 置为无效。 |