IIC调试心得——基于ADuC7023(ARM7TDMI)

本文分享了基于ADuC7023(ARMV4架构)的IIC调试经验,涵盖从机与主机的基本通信,包括检查供电、波形、ACK响应等问题,特别指出在400kHz速率下,ADuC7023需要预加载FIFO以确保数据正确发送,这一特殊设计在数据手册中并未明确说明,调试过程中遇到了诸多挑战。
摘要由CSDN通过智能技术生成

IIC调试心得——基于ADuC7023(ARMV4架构)

以下调试均在外部IIC Master通信正常的情况下,进行的ADuC7023 IIC Slave&Master侧调试。
且仅列出我在调试中踩过的坑和我想到可能有的坑。

基本通信——从机侧

  1. 无波形
    • 供电正常?
    • IIC线可能被拉死,Master无法驱动(测试方法:断掉与Slave的连接观察Master波形;将Slave IIC设置为IO模式,看能否拉高拉低IO)
    • Slave侧是否有特殊的兼容设计(一开始我调试的Demo板上就有个短接开关)
  2. 有波形
    • 无ACK:
      1. Device address和IIC Master不匹配
      2. IIC模式未开启
      3. 检查IIC Tx IRQ、Rx IRQ、STOP IRQ、RSTART IRQ是否正常开启
      4. Slave侧IO驱动能力不足
    • 有ACK:
      1. ACK之后的数据有规则,非乱码 -> 通信基本成功,需要查看传入的数据
      2. ACK之后数据全高/低,或无规则 ->高电平电压不达标; ADuC7023的速率实现问题。

基本通信——主机侧

因为先调试了从机,主机侧遇到的困难参考了从机解决。需要注意的是时钟线占空比最好是50%(例程中非50%)。

速率100kHz和

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值