freescale IIC 双机通信 主机收不到从机的应答怎么解决?
最近两天在研究freescale的IIC的双机通信的问题,但是现在问题是根据官网提供的文档配置完之后,主机给从机发送完从机地址,从机并没有给出应答,而且从机也没有进入中断,但是我很确定设置的从机地址一致,为什么会进入不到中断呢?主机收不到从机的应答我想可能是不是从机进不了中断引起的呢?我用的是Freescale MKV46F128VLH15的片子,希望大侠们出出招。PS:顺便侃一下freescale的IIC都类似呢?我找的好多资料虽然不是我这片子的,但是内容都是差不多的,是不是freescale大部分芯片的IIC都是差不多一样的呢?我没有接触过其他的freescale芯片,只是找资料的时候发现IIC模块是差不多一样的。。。 自己顶一个 你问的太笼统了,不是那么简单。你的主从都是单片机吗?还是从鸡是外设?我建议你最好先软件模拟iic。在来硬的!goodluck!对了,有示波器或者分析仪不?一目了然... 没上拉 有可能是没有接上拉电阻,导致I2C通信失败 yuyu87 发表于 2015-1-26 19:40
没上拉
有上拉电阻,和EEPROM通信都是正常的,但是两个MCU的时候一个主机一个从机的时候就没有应答了 unknown 发表于 2015-1-27 08:41
有可能是没有接上拉电阻,导致I2C通信失败
感谢回复!IIC的总线上有上拉电阻,外接EEPROM的时候就是通信正常,但是将EEPROM换成同样MCU的时候就出现从机没有应答,进不了中断,但是我确定是从地址发的是正确的 量波形,然后分析波形。 首先要保证2根线没有接反,楼主有逻辑分析仪没有,没有的话用示波器采波形进行分析。 浪里白条 发表于 2015-1-27 15:03
首先要保证2根线没有接反,楼主有逻辑分析仪没有,没有的话用示波器采波形进行分析。 ...
感谢回复!线没有接反,从示波器上看主机重复发送从机的地址,然后就没有然后了,从机就是不给应答 Lu.Shi 发表于 2015-1-27 15:09
感谢回复!线没有接反,从示波器上看主机重复发送从机的地址,然后就没有然后了,从机就是不给应答 ...
你现在从机和主机都是用的一样的芯片,仔细检查下从机寄存器是否配置正确了的。楼主可以发程序上来。 Processor Expert工具暂时不支持KV4x系列,而且暂时官网也下载不到KV4x的参考手册。
不过IIC模块应该是通用的,所以你可以参考Processor Expert工具生成的IIC主从机代码。
Lu.Shi 发表于 2015-1-27 15:09
感谢回复!线没有接反,从示波器上看主机重复发送从机的地址,然后就没有然后了,从机就是不给应答 ...
如果自己通过操作寄存器方式编写IIC主从机中断形式的函数,千万要按照参考手册上IIC那个流程图来:
反正我是被stm32的iic坑死了,不清楚楼主的芯片怎样 最好还是找个例程照着改,比较省力气 FSL_TICS_Robin 发表于 2015-2-5 10:03
如果自己通过操作寄存器方式编写IIC主从机中断形式的函数,千万要按照参考手册上IIC那个流程图来:
...
自己写这个有什么好处么?
FSL_TICS_Robin 发表于 2015-2-5 10:03
如果自己通过操作寄存器方式编写IIC主从机中断形式的函数,千万要按照参考手册上IIC那个流程图来:
...
感谢版主的回复,我是按照这个流程图写的 Lu.Shi 发表于 2015-1-27 15:09
感谢回复!线没有接反,从示波器上看主机重复发送从机的地址,然后就没有然后了,从机就是不给应答 ...
楼主说的“从示波器上看主机重复发送从机的地址”,重复发送周期多少?改长点试一下。 CaineStrong 发表于 2015-2-9 13:25
楼主说的“从示波器上看主机重复发送从机的地址”,重复发送周期多少?改长点试一下。 ...
感谢回复,试验了一下和发送周期没有关系,我的发送周期是1s一发,主机重复发送是因为从机没有给出应答,然后第二个1s时间到然后又开始发送从机的地址 Lu.Shi 发表于 2015-1-27 14:52
感谢回复!IIC的总线上有上拉电阻,外接EEPROM的时候就是通信正常,但是将EEPROM换成同样MCU的时候就出现 ...
与外部EEPROM通讯无问题,说明主机MCU的程序没问题。从机换成MCU后,没有应答。
所以请检查从机的程序,你可以将从机的应答模拟外接的EEPROM(具体请细读EEPROM的数据手册。一般的,在接收到起始信号和从器件地址之后响应一个应答信号;如果器件已选择了写操作则在每接收一个8位字节之后响应一个应答信号) bj232 发表于 2015-2-5 12:57
反正我是被stm32的iic坑死了,不清楚楼主的芯片怎样
哎,说多了都是泪,不好弄,就一个MCU使用手册,没有什么其他的资料也没有例程,代码不好写 ccrt 发表于 2015-2-7 08:08
自己写这个有什么好处么?
估计好处就是不容易出错
页:
[1]