打印

28335的I2C通信问题

[复制链接]
5694|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dwananqinyan|  楼主 | 2012-11-27 16:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
dwananqinyan|  楼主 | 2012-11-27 16:16 | 只看该作者
希望各位大侠帮帮忙啦

使用特权

评论回复
板凳
dousfoulexd| | 2012-11-27 16:37 | 只看该作者
地址对不对跟SDA和SCL有无信号没有联系。就算地址错了,SDA和SCL也会有相应的信号。地址的设置仔细阅读AT24C08手册,与A2脚的电平有关。
如果SDA和SCL没信号,首先看加了上拉没,阻值根据手册和I2C上挂的器件数量来算。然后看程序中I2C初始化,使能等等有没问题。

使用特权

评论回复
地板
zhaolei0329| | 2012-12-25 19:08 | 只看该作者
请问楼主解决问题没有?能否留下联系方式交流

使用特权

评论回复
5
wudayongnb| | 2012-12-26 09:23 | 只看该作者
楼主可否把读写函数贴出来,我最近也在搞I2C,也是不成功,希望互相交流一下

使用特权

评论回复
6
winboystar| | 2012-12-26 10:56 | 只看该作者
希望大家多交流心得

使用特权

评论回复
7
jiajia31415| | 2013-2-21 14:50 | 只看该作者
我也遇到问题啊  有高手解决了吗
他的FIFO接收 发送中断有问题  
我放弃使用FIFO发送中断 接收的时候FIFO只能进一次中断 以后就不能进去了
怎么解决啊

使用特权

评论回复
8
五谷道场| | 2013-2-21 17:42 | 只看该作者
没有信号,估计I2C控制器没有使能吧

使用特权

评论回复
9
cuilikun| | 2013-3-1 15:13 | 只看该作者
我也遇到相同问题,时钟和数据都量不到,不知楼主解决了吗

使用特权

评论回复
10
hawksabre| | 2013-3-1 21:09 | 只看该作者
I2C总线   一定要按照协议走   必须要熟悉协议   这样通信才不会出太大的问题

使用特权

评论回复
11
newdavid| | 2013-10-1 14:20 | 只看该作者
我也在用I2C不过不知道那个发送函数为什么把模式设置放在最后,求指导。

使用特权

评论回复
12
njnh| | 2013-12-20 19:59 | 只看该作者
准备学习

使用特权

评论回复
13
ltbytyn| | 2013-12-21 16:06 | 只看该作者
1、AT24C08的器件地址0xA0(A2\A1\A0均接0),你的器件地址是0xA9,那么你的A2接VCC,A1\A0接0.
2、楼主明显属于瞎蒙的那种,肯定没有看过i2c模块资料。28335 I2c模块器件地址设置只有7位和10位两种。在这里明显只能选7位(例程里面默认7位)。7位器件地址是不包含读写位的。即0xA0(或者0xA9)设置器件地址时应该为0x50(或者0x54)。
3、例程中用的是fifo中断方式。注意深度fifo深度设置。即设置发送数据长度大于fifo深度时,你不要指望i2C模块给你干活。28027中的fifo深度是4(高、低地址占2个字节,最多只能发2个数据)。28335深度我不知道,自己查资料。

使用特权

评论回复
14
TLZme| | 2013-12-23 08:56 | 只看该作者
操作命令和寄存器地址也要修改

使用特权

评论回复
15
huangfeng33| | 2013-12-24 09:56 | 只看该作者
28335的读写位是省略的,也就是说地址不是A9,而是去掉最低位,最高位补零,地址等于0x01010100 = 0x54

使用特权

评论回复
16
tirako| | 2014-4-30 11:50 | 只看该作者
本帖最后由 tirako 于 2014-4-30 11:54 编辑

28335,把I2CSAR的设置地址位,采用了bit6-bit0。
所以如24C64地址,就不是A0,而是50。

使用特权

评论回复
17
394751308| | 2014-4-30 16:27 | 只看该作者
sss

使用特权

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

本版积分规则

10

主题

156

帖子

0

粉丝