Firefly开源社区

打印 上一主题 下一主题

铩羽于小小IIC,求救无门。

31

积分

0

威望

0

贡献

游客

积分
31

铩羽于小小IIC,求救无门。

发表于 2015-5-28 08:57:21      浏览:5201 | 回复:8        打印      只看该作者   [复制链接] 楼主
这几天调试IIC从机,官方的资料倒是全,但仅仅是全而已了,很多关键没提及,成功还好了,不成功那就不知道怎么办了。
我以蓝牙模块作为从机,其它单片机作为主机。保证主机IIC格式的正确情况下。以IIC标准格式给蓝牙模块发送了数据:
比如   S + SLAVEADDR/wr +S_ACK +DATA+S_ACK+P     但是蓝牙模块IIC从机只响应了 SLAVEADDR/wr(从机地址),也就是红色部分响应了一次应答,后面数据收发都失败了。例子照搬Driver 例子里面的I2C,多次检查,没发现那里没配置的。而我主机端跟别的IIC从器件通信正常(EEPROM芯片)。

回复

使用道具 举报

151

积分

0

威望

0

贡献

技术小白

积分
151
发表于 2015-5-28 09:19:36        只看该作者  沙发
跑的是全系统,包括协议栈?如果是请注意睡眠问题,建议在裸驱下调好再加入。
回复

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-5-28 09:31:26        只看该作者  板凳
FireBLE_blue 发表于 2015-5-28 09:19
跑的是全系统,包括协议栈?如果是请注意睡眠问题,建议在裸驱下调好再加入。

不是,是driver,不包括协议栈和内核。就是driver example 里面的iic例子。
回复

使用道具 举报

151

积分

0

威望

0

贡献

技术小白

积分
151
发表于 2015-5-28 10:28:47        只看该作者  地板
没摸索过从机的iic
  1. #define I2C_MODE                                       I2C_SLAVE //I2C_MASTER  /*!< Config I2C Mode: Master or Slave */
复制代码
回复

使用道具 举报

179

积分

0

威望

0

贡献

技术小白

积分
179
发表于 2015-5-28 23:17:50        只看该作者  5#
楼主解决了吗。
回复

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-5-29 10:48:17        只看该作者  6#

没解决,代码完全检查了,没发现问题。
回复

使用道具 举报

151

积分

0

威望

0

贡献

技术小白

积分
151
发表于 2015-5-29 14:30:13        只看该作者  7#
你的iic 主机读的时序是怎样?直接用eeprom 程序来调试吗?
回复

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-6-1 10:04:37        只看该作者  8#
FireBLE_blue 发表于 2015-5-29 14:30
你的iic 主机读的时序是怎样?直接用eeprom 程序来调试吗?

S   从机地址 A data A p
回复

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-6-1 10:06:22        只看该作者  9#
EEprom要写从机地址和寄存器地址,我这个不用,只发从机地址,得到应答后就发数据了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表