读书人

51单片机与EEPROM用IIC模拟通信。解决

发布时间: 2014-01-21 00:35:39 作者: rapoo

51单片机与EEPROM用IIC模拟通信。
IIC总线中为什么有的时候要让SCL为1 有的时候为0 1的时候SDA有效。为什么0的时候SDA为读写。为1的时候有哪些功能?
还有EEPROM是不能自己发出应答信号的吧?可是这个信号是怎么发出来的?
大神解答一下。谢谢!
[解决办法]
看看I2C协议
[解决办法]
当然看I2C协议
SCL是时钟信号,当然要有0有1,不然那里还有时钟?
为1时SDA有效,这时是接收方读取一位数据的时候,为0时SDA可写,是发送方写入下一位数据的时候
[解决办法]
支持I2C的片子自然都能发应答信号
[解决办法]
菲利普官方的I2C协议,要看明白。
I2C的芯片是可以发应答的。
[解决办法]

引用:
Quote: 引用:

菲利普官方的I2C协议,要看明白。
I2C的芯片是可以发应答的。

谢谢。已经明白了一些了。为什么要给EEPROM两次地址?再给数据?第一次是机器地址,第二次是存储地址?
I2C总线可以挂多个芯片,先发slave address来表示对哪个芯片寻址,具体的芯片不同,它的寄存器也不同对寻址也有要求,这个就要看芯片手册了,比如eeprom芯片,里面还回提及每个page是多大,地址从多少到多少,数据地址是多少字节,因此需要发寄存器地址(或者叫数据地址)。看了菲利普官方的I2C协议,再找个eeprom的数据手册看看你就明白了。

读书人网 >单片机

热点推荐