主题中讨论的其他器件:HALCOGEN
您好!
使用 MibSPI 时我观察到意外的接收器溢出。
我在多缓冲模式下使用 MibSPI。
我已经监控了多缓冲 RAM 的 RXRAM 位置、它们的变化如下。
RAM 被初始化为0x80000000。 即 RXEMPTY 标志被置位而 RXOVR 标志被清零。 这是我所期望的。
当我调用 HALCoGen 函数 mibspiSetData ()时、RXRAM 会更改为0xA0000000。 即 RXEMPTY 标志被置位、RXOVR 标志被清零、而 TXFULL 现在被置位。 这是我所期望的。
然后我调用一次 mibspiTransfer ()、RXRAM 将更改为0x403D0000。 即、现在已设置 RXOVR。
为什么当 RXRAM 为空且发生单次传输时会发生 RXOVR?
对 mibspiGetData()的后续调用不会更改 RXRAM。 它保持为0x403D0000。
为什么读取数据不清除 RXOVR 标志?
谢谢你。