查看: 26780|回复: 71

[已解决] LPC 824 I2C问题

[复制链接]

该用户从未签到

2

主题

39

帖子

0

注册会员

Rank: 2

积分
103
最后登录
2021-1-27
发表于 2016-10-21 00:05:24 | 显示全部楼层 |阅读模式
本帖最后由 longdelu 于 2016-10-21 00:07 编辑

使用i2c1,通过开关矩阵配置其SCL引脚为PIO0_12, SDA引脚为PIO0_13,发现不能长时间稳定工作,逻辑分析仪显示,经过一段时间其SCL的时序会出错,准确来说缺失一个SCL时钟,本来应该发9个SCL时钟,然而它发了8个,最终导致I2C1控制器 pending 一直为0,从而I2C1再也不能操作总线了。i2c1总线的速率为400K, 外接上拉电阻为10K, 我也把i2c1的SCL、 SDA引脚配置为"假"开漏模式了。然而我把 i2c1的SCL引脚配置PIO0_10, SDA配置为PIO0_11(本来这两个引脚专门用于i2c0的,同时这两个引脚硬件上就是开漏),发现i2c1就能稳定的工作,请问这是啥子原因?是否还有哪些细节我没有注意到?或者芯片硬件的引脚存在bug?这个问题困惑好多天了,恳求各位热心的大神及FAE大牛略加指点{:smile:},感激流泪!!!

最佳答案

哈哈,难得看到这么长的讨论帖,希望常常看到这样热烈的气氛!! 关于外部上拉电阻,这里有一个测试可以一定程度上说明问题,也从实践上解释了楼主碰到的问题,大家有时间可以看看:http://www.dsscircuits.com/ind ...
回复

使用道具 举报

  • TA的每日心情
    开心
    2018-6-12 12:56
  • 签到天数: 215 天

    连续签到: 1 天

    [LV.7]常住居民III

    3

    主题

    444

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1154
    最后登录
    2021-4-29
    发表于 2016-10-21 09:14:51 | 显示全部楼层
    如果说只切换io其它配置一样的话就工作正常的话,i2c内部设置应该没有问题,问题可能就在io脚配置上。先屏蔽掉其它功能只跑i2c确认是不是其它功能影响了,再确认是不是P0_12脚问题,比如连有其它东西,再看看信号质量是否正常。应该就能找到问题了。
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24871
    最后登录
    2025-7-18
    发表于 2016-10-21 10:29:29 | 显示全部楼层
    楼主你好!
    请把你能够复现问题的代码上传,配套从机也上传。我这边会确认下。
    另外,你说经过一段时间,大概多久?除了使用逻辑分析仪,有没有用示波器测试波形?看看出问题的时候,示波器的波形有什么变化。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24871
    最后登录
    2025-7-18
    发表于 2016-10-21 10:29:32 | 显示全部楼层
    楼主你好!
    请把你能够复现问题的代码上传,配套从机也上传。我这边会确认下。
    另外,你说经过一段时间,大概多久?除了使用逻辑分析仪,有没有用示波器测试波形?看看出问题的时候,示波器的波形有什么变化。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-11-11 21:48
  • 签到天数: 19 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    0

    主题

    162

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    376
    最后登录
    2016-11-12
    发表于 2016-10-21 11:23:10 | 显示全部楼层
    关注下..
    回复

    使用道具 举报

    该用户从未签到

    2

    主题

    39

    帖子

    0

    注册会员

    Rank: 2

    积分
    103
    最后登录
    2021-1-27
     楼主| 发表于 2016-10-21 15:00:28 | 显示全部楼层
    本帖最后由 longdelu 于 2016-10-21 15:09 编辑
    小恩GG 发表于 2016-10-21 10:29
    楼主你好!
    请把你能够复现问题的代码上传,配套从机也上传。我这边会确认下。
    另外,你说经过一段时间,大 ...

    你好,感谢你的回复,我这边I2C1的引脚配为非I2CO专用引脚上面,跑平均几分钟i2c1就死机了,而i2c1的SCL引脚配置为PIO0_10, SDA配置为PIO0_11就能长时间工作,经过一个晚上约10个小时的测试也没有出现死机的现像,我从机是用eeprom at24c02, 测试的时候就是不断用读eeprom里面的数据,每次读的间隔很快,只用打印语句打了几个指示字符来表明程序在运行,逻辑分析仪分显示SCL时序的时间符合eeprom的操作要求,只是没有用示波器测试过时序,我认为时序是对的,复现的代码我整理好再上传
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    39

    帖子

    0

    注册会员

    Rank: 2

    积分
    103
    最后登录
    2021-1-27
     楼主| 发表于 2016-10-21 15:05:48 | 显示全部楼层
    wuqt 发表于 2016-10-21 09:14
    如果说只切换io其它配置一样的话就工作正常的话,i2c内部设置应该没有问题,问题可能就在io脚配置上。先屏 ...

    好的,谢谢你的建议,一开始我也是怀疑是有中断影响,我测试的时候ii2c工作方式是通过查询实现的,然而我关掉其他中断还是有这个问题,我再找示波器看看信号质量
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24871
    最后登录
    2025-7-18
    发表于 2016-10-21 16:07:16 | 显示全部楼层
    longdelu 发表于 2016-10-21 15:00
    你好,感谢你的回复,我这边I2C1的引脚配为非I2CO专用引脚上面,跑平均几分钟i2c1就死机了,而i2c1的SCL引 ...

    楼主,你测试的时候把你外部上拉电阻换一个试试。
    不知道你买的电阻质量怎么样,换下,防止是硬件问题导致。
    另外,如果条件允许,你可以再测试一个板子,看看是否其他板子也会有这个问题。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    39

    帖子

    0

    注册会员

    Rank: 2

    积分
    103
    最后登录
    2021-1-27
     楼主| 发表于 2016-10-21 17:28:39 | 显示全部楼层
    小恩GG 发表于 2016-10-21 16:07
    楼主,你测试的时候把你外部上拉电阻换一个试试。
    不知道你买的电阻质量怎么样,换下,防止是硬件问题导 ...

    你好,我换了个板子的得到的结论还是一样的,不过两个板子的上拉电阻都是10K
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    39

    帖子

    0

    注册会员

    Rank: 2

    积分
    103
    最后登录
    2021-1-27
     楼主| 发表于 2016-10-21 20:44:58 | 显示全部楼层
    longdelu 发表于 2016-10-21 17:28
    你好,我换了个板子的得到的结论还是一样的,不过两个板子的上拉电阻都是10K ...

    请问下,上拉电阻的阻值对这个影响大吗?还有我的从机型号更正为FM24CO2,不过我觉得这个影响不大,都是EEPROM,而且操作时序很相似
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-19 23:18 , Processed in 0.107469 second(s), 30 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表