at24c256应用

发布时间:2023-11-08 08:29:10

24C256程序控制原理(ZZ24C256是具有I2C接口的512x64存储器,在数据的存储过程中除了遵循I2C协议必须的逻辑以外,一个最容易忽视并且最容易导致出错的问题就是存储地址问题。24C256的数据容量是32768,即可以存储的有效字节数。所以它的地址是16位整型数,有效范围是032768数据字节为单位存储,16位地址其中有效数据只有15位,605)位地址表示的容量是063,然后连续的9614)位地址表示页码的范围0511,在数据连续存储过程中,相同的页面内,存储地址自动完成累加过程;数据在不同页面的存储时,地址不能自动累加,如果不做正确处理,数据将从本页开始的地址重新开始覆盖已经存在的数据。例如,地址是63(二进制码111111)表示的是第0页的最后一个存储空间,地址64(二进制码1,000000)表示第1页最开始的存储空间。在当前存储地址是63时如果该器件处于连续存储模式下,数据将出错。原因是什么呢?24C256支持数据的连续存储,最大的存贮数量是64即一页的内容,如果在地址选择上超过了这个限制,数据将会覆盖本页开始的位置重新存储,这就造成数据的错误,在使用上,虽然数据是分页存储的,但在形式上是连续数据,所以存储中不需要特意区分页地址和页内地址。在连续存储中,尽管数据每次存储的数量小于64,数据也可能出错,例如每次存储数量为11,地址的变化是0112233445566……,看上去没有什么问题,地址是按照每次11递增的,然而存储的结果还是出错了,原因是什么呢?在地址55开始的空间无法提供连续11个页内存储空间,当地址增加到63以后数据又从该页0地址重新开始,从而导致数据储存的错误。有效的解决办法是如果使用连续存储模式,地址的安排上要使存储块的大小为643216842此外都不能使用连续地址存储。如果数据采
集中的有效数据位小于64比如每次采集的结果是30字节,在连续存储模式下要按照32为单位存储,不足的字节补零处理。以下是MSP430F44924C256数据传输基本控制模块//延时处理模块voidIIC_Delay(void{_NOP(;_NOP(;_NOP(;}//启动I2C模块voidstart_IIC(void{P2OUT&=0xf9;//启动I2//设置P2输出

at24c256应用

相关推荐