打印

I2C只能读到偶数地址

[复制链接]
2310|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zdh30000|  楼主 | 2012-7-28 18:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1.同样的代码, 直接对开发板的24c02写16个位置后读出,结果正确:
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

2.把跳线断开,用杜邦线操作一块焊在洞洞板上的24C02,结果只有奇数地址是正确的:
00 FF 02 FF 04 FF 06 FF 08 FF 0A FF 0C FF 0E FF

3.搁一块比较一下:
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00 FF  02 FF 04 FF 06  FF 08 FF 0A  FF 0C FF 0E FF

4.请大侠指点下原因,代码一样的,外接的这颗IIC没坏试过好几颗了,片子的Pin8和4也加了104的电容,sda/scl都有4k7上拉到vcc

相关帖子

沙发
NE5532| | 2012-7-28 19:38 | 只看该作者
串行总线,出现这样的问题很奇怪,楼主仔细分析一下有没有低级错误,还有你怎么确定出现“错误”的那块E2里的数据写对了呢?就是说如果写就写成这样了,读成这样就很自然了。

使用特权

评论回复
板凳
zdh30000|  楼主 | 2012-7-28 19:45 | 只看该作者
恩  
我这里是00地址写00 ,对01地址写01 ... 对0F地址写0F...

使用特权

评论回复
地板
ningling_21| | 2012-7-28 19:47 | 只看该作者
先写,写完后,用编程器读取数据看看,是不是写对了...

使用特权

评论回复
5
NE5532| | 2012-7-28 20:06 | 只看该作者
恩  
我这里是00地址写00 ,对01地址写01 ... 对0F地址写0F...
zdh30000 发表于 2012-7-28 19:45


怎么保证你写是对的?

使用特权

评论回复
6
cjseng| | 2012-7-29 23:51 | 只看该作者
本帖最后由 cjseng 于 2012-7-29 23:54 编辑

把读写的延时都调大一点试试,如果是51,就把原来加NOP的地方再增加一个NOP试试。
如果直接对开发板上的24C02读写都是对的,可以先把数据写进去,然后焊下来,放到洞洞板上读,这样确保写进去的数据是正确的。
或者,把洞洞板上的104电容再并上一个10uf以上的电解。

使用特权

评论回复
7
dlyt_test001| | 2012-7-30 08:36 | 只看该作者
把洞洞板上的24C02换到开发板上试一试!

使用特权

评论回复
8
zdh30000|  楼主 | 2012-7-31 11:46 | 只看该作者
多谢大神指点! 这两个封装不一样的互换不了。

忘了说一个关键的因素:外接的这颗24C, 距离mcu的IO口, 大概有1.2米,用质量较好的排线连的

不知道距离是不是个原因, 好像spec里讲到最好是SDA绕着VCC,SCL绕着VSS,具体记不大清楚了 我这里是平行排列的

使用特权

评论回复
9
ayb_ice| | 2012-7-31 13:28 | 只看该作者
本帖最后由 ayb_ice 于 2012-7-31 13:29 编辑

好的程序都要返回状态的,根据返回的状态很快就知道哪出问题了,更何况IIC本身就有应答信号的

使用特权

评论回复
10
阮天宇00| | 2012-7-31 17:51 | 只看该作者
好的程序都要返回状态的,根据返回的状态很快就知道哪出问题了,更何况IIC本身就有应答信号的
ayb_ice 发表于 2012-7-31 13:28


要有应答!
或者加大读写的延迟(一点点加到很大,呵呵),但是这只是权益之计。

使用特权

评论回复
11
旭日东起| | 2012-7-31 20:32 | 只看该作者
读写的那个延迟,我通常是延迟10us左右,你试试单独对一个地址读写看看,连续写的时候,我记得好像是不能连续读写8个字节的,连续写了之后要延迟10MS才能再去写的!

使用特权

评论回复
评分
参与人数 1威望 +2 收起 理由
Archost + 2 太感谢了!几天一直纠结这个问题,延时时间.
12
cjseng| | 2012-7-31 23:01 | 只看该作者
8# zdh30000
1.2米啊,把那两个4.7K电阻换成1K试试,另外洞洞板上电源与地之间加电解电容再并104电容。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

4

帖子

0

粉丝