打印
[微控制器/MCU]

NXL LPC系列ARM IIC总线下读写AT24Cxx的总结

[复制链接]
2992|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huzixian|  楼主 | 2010-6-25 13:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 huzixian 于 2010-6-25 13:44 编辑

最近应用到NXP LPC系列的ARM IIC总线进行读写AT24Cxx EEPROM,总是出现一下错误,经过查阅资料才发现,原来本人范的全是最基本的错误,感觉很惭愧,现在把容易出错的地方进行总结,希望网友遇到这样的问题时有借进的地方。


      在使用时,一般多要看IC资料,特别是对于单片机,必须了解它的几个寄存器,当然如果用的是模拟总线的方式进行,就没有必要了解寄存器了。例如用51单片机来控制AT24C02的读写,就没有寄存器了。但是用有IIC总线的单片机一定要先了解一下寄存器。



1. 总线配置:对于总线配置,我想很多人都知道,IIC总线一般是需要上拉电阻的,那么怎样选择上拉电阻呢?

相关帖子

沙发
huzixian|  楼主 | 2010-6-25 13:44 | 只看该作者
Rp为上拉电阻,一般为(1K~10K)。它的选择是根据总线的速率而选择的,总线速率越高,电阻阻值越小。IIC数据传输速度:标准为100Kbps,高速为400Kbps。如果工作在标准速度可以选择10K,如果工作在高速可以选择1K。

使用特权

评论回复
板凳
huzixian|  楼主 | 2010-6-25 13:46 | 只看该作者
2.主机收发时序:了解时序,根据时序就能很好的控制IIC.



1.JPG (51.5 KB)
2010-6-23 08:43





2.JPG (43.42 KB)
2010-6-23 08:43





3.AT24Cxx时序:



3.JPG (33.34 KB)
2010-6-23 08:43





4.JPG (37.38 KB)
2010-6-23 08:43





由上面总线模式可以看出,控制是非常简单的,对不可以看出,红圈内为读写控制加器件地址。蓝圈内为数据,在AT24Cxx中,需要发送读写地址,才能操作的,而这个地址的发送的按照数据方式进行的。

使用特权

评论回复
地板
huzixian|  楼主 | 2010-6-25 13:47 | 只看该作者
4.AT24C0xx页面操作:页面操作一定要注意页面的大小,要避免页面翻转产生是数据写入错误。



对应的页面如下:

-------------------------------------------------------------

AT24C01 | 02 | 04 | 08 | 16 | 32 | 64 | 128 | 256

-------------------------------------------------------------

             8 | 16 | 16 | 16 | 16 | 32 | 32 | 64   | 64   

-------------------------------------------------------------



所以在多字节写入时不能超出页面,而已还要注意地址,下面举例说明:

AT24C01,一次最多写入8字节,如果开始地址为0x00,则可以写入8字节数据,如果开始地址是0x03,则只可以写入5字节。其他,推理方法一样。



当然读取的话,就没有这个限制,可以一次读取整个存储区域,最后不要超出容量的大小(容量大小不再叙述,可以查找IC资料),否则也会翻转。



5.注意写入时间:由于EEPROM的写入时间一般在10MS,所以最好在写入数据后,不要急着超值EEPROM,最好有一定的延时,否则会错误。

使用特权

评论回复
5
huzixian|  楼主 | 2010-6-25 13:47 | 只看该作者
有上面的总结可以知道,IIC是可以进行多字节读写操作的,但是一定要注意,对于不同的EEPROM,可以连续操作的大小是不同的,一定要注意查看IC资料。

使用特权

评论回复
6
hotpower| | 2010-7-4 00:54 | 只看该作者
NXP的I2C确实好用~~~

使用特权

评论回复
7
LPC300| | 2010-7-14 21:29 | 只看该作者
好资料,谢谢啊!收藏了!

使用特权

评论回复
8
mcu123AD| | 2010-7-14 21:41 | 只看该作者
NXP的 I2C,确实是不错的。顶顶。

使用特权

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

本版积分规则

262

主题

1534

帖子

2

粉丝