您好!
我正在尝试从 FIFO 向微控制器接收数据。 我将器件中的35字节数据传输到 AFE881H1EVM 中。 我能够正确接收31个字节的数据、但当我读取字节31之后的接下来的字节时、它会反复发送同一个最后一个字节。
似乎 FIFO 没有被清除、新数据似乎被加载。
请帮我解决这个问题。
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.
您好!
我正在尝试从 FIFO 向微控制器接收数据。 我将器件中的35字节数据传输到 AFE881H1EVM 中。 我能够正确接收31个字节的数据、但当我读取字节31之后的接下来的字节时、它会反复发送同一个最后一个字节。
似乎 FIFO 没有被清除、新数据似乎被加载。
请帮我解决这个问题。
您好!
为了帮助对其进行调试、我将需要更多有关如何设置器件以检查 FIFO 接收的信息。 您是否使用 IRQ 来确定 FIFO 的电平(查看 FIFO 是满、空还是处于特定电平)? 您是否检查了 MODEM_STATUS_MASK 寄存器以确保 IRQ 正确地响应这些标志?
您要将哪些 FSK 数据发送到器件中、并且您是否能够通过 FIFO_H2U 至少读回前32个字节的正确数据? 您是否检查过示波器以查看 FSK 的时序是否与读取时序相匹配?
约瑟夫·吴
您好!
同样、您是否检查了 MODEM_STATUS_MASK 以确保 IRQ 响应 FIFO_H2H_EMPTY_FLAG? 您还可以使用 FIFO_H2U_RD 寄存器中的 LEVEL 字段来检查每次读取时 FIFO 的完整程度。 一般而言、您会在 FIFO 已满时从 FIFO 读取数据、然后在 FIFO 为空或 CD 不再为高电平时读回数据。
我不清楚为什么没有看到 FIFO 为空的指示。 但是、如果您继续读取 FIFO、是否确定已接收到其余字节? 您是否已检查示波器以确保在读取最后字节之前器件已接收到 HART 数据?
约瑟夫·吴