测试I2C中关于中断延时的问题

在进行I2C中断测试时遇到接收溢出中断的问题,发现数据读取超过FIFO深度但中断状态不一致。通过在读取9个数据后加入1毫秒延迟函数,中断状态变得稳定,表明中断状态寄存器更新速度慢于原始中断。测试结果显示,延时调整有助于避免中断异常,确保I2C通信的稳定性。
摘要由CSDN通过智能技术生成

在测试接受溢出中断的时候发现接受的数据超过了物理FIFO的深度,但是中断状态仍然为0,而原始中断却不为0,但是也经常出现正常的情况,只是不稳定,后来我在读9个数据到8个FIFO深度代码后面加了mdelay(1)代码,此后加载 超过十次,中断一直稳定。所以确定是延时的问题,说明中断原始状态寄存器的速度比中断状态寄存器的变化速度要快,所以更准确(只在我测试的I2C)

start ic_rx_over_intr test:
I2C have read 10 data from e2prom
I2C_INTR_STAR: 0x0
I2C_RAW_INTR_STAR: 0x716
RXFIFO have number of 8 data 
1
2
3
4
5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值