大家好、
我的客户将 UART 器件从 TL16C752B (EOL)更改为 TL16C752D、现在正在使用其系统评估 TL16C752D。 他们发现 TL16C752D 存在以下问题。
对于 TL16C752B、当在 LSR 寄存器中接收 FIFO 变为空时、接收中断被清除。
但是、对于 TL16C752D、当接收 FIFO 在 LSR 寄存器变为空时、接收中断不会被清除、并且从 RHR 寄存器读取的过程会停止。
Q1:要在 TL16C752D 的 LSR 寄存器中清除接收 FIFO 为空时的接收中断、它们该怎么做?
当使用 TL16C752D 接收 FIFO 变为空时、他们再次尝试 RHR 寄存器读取过程、但在某些情况下接收中断被清除、在某些情况下也未被清除。
当在 LSR 寄存器检测到接收 FIFO 为空时、如果 TL16C752D 等待10ms (延迟10ms)、则接收中断被清除。
Q2:上述操作是否符合 TL16C752D 的规格?
谢谢你。
此致、
Koshi Ninomiya