at24c02可以存多少字节,AT24C02有多少个字节可以用来存数据
来源:整理 编辑:亚灵电子网 2023-01-25 02:05:11
1,AT24C02有多少个字节可以用来存数据

2,at24c02到底有多大内存书上说有2kb又说有32页每页码8B共

3,at24c02保存多个数据
你好:先说说是哪儿不对,出现了什么现象。其次,每次写之后延时一会,让at24c02有时间去处理。或者,你是没加应答函数么,直接写入。
4,at24c02能不能跨页写
你好:AT24C02一共就能存256字节,也就是只有256的存储单位。你若是问能不能不按顺序进行存储,这个是可以的。只要把地址写对,可以在任意单位进行存储数据。希望我的回答能帮助到你。
5,为什么at24c02的2k256字节计算机明明是2k2048字节
这个2k要分清是2kb还是2KB,如果是2kb的话,2k=2048bit,1字节=8bit,so...2k=256字节你好!你看错了吧,2k=2048bit 才正确。仔细看看,大意的造成的或是学艺不精。希望对你有所帮助,望采纳。
6,真心求教怎么看单片机往EEPROM AT24C02的写入数据的大小
1. 你要写什么数据进入AT24C02, 只有你自己知道. 自己定义的数据可能是变量, 数组, 结构等. 2. 衡量数据的大小一般用字节来(byte)计算, 1字节(byte) = 8 位(bits). 如果你的程序是用C语言写的话, 可以直接用sizeof()来获取你的字节数 (例如, 定义int a; 则sizeof(a)可以返回 a用了多少字节). 这样你就知道你写入数据的大小了, 比较AT24C02的2K位(bit)的存储容量, 通过简单的计算就知道够不够用了.3. 如果是汇编语言或者其它不能用sizeof()的编程语言, 可以查看编译的结果的文件(list文件或者map文件), 看看你用于写入数据所定义的变量, 数组, 结构(数据块)到底用了多少个字节.24c02是2K Bit,也就是2048/8=256字节,换算成8位的AD结果可以储存256个在AT24C02里面,只能存放 256 字节。每次,最多连续写入 16 字节。真心不懂你要知道什么?E2ROM总共能够存放2KBit数据,至于你要存多少数据进去,是你自己定义的,只要不超过它的空间总量就行了!
7,谁知道AT24C02的中文资料在单片机中是如何被利用的他的功能是
AT24C02简介
AT24C02是美国 ATMEL 公司的低功耗 CMOS 串行 EEPROM,它是内含256×8
位存储空间,具有工作电压宽(2.5~5.5V) 、擦写次数多(大于10000次) 、写入速
度快(小于10ms)等特点。AT24C02中带有片内寻址寄存器。每写入或读出一个数
据字节后,该地址寄存器自动加1,以实现对下一个存储单元的操作。所有字节都
以单一操作方式读取。为降低总的写入时间,一次操作可写入多达8字节的数据。
图6为AT24C系列芯片的封装图。各引脚功能如下:
SCL:串行时钟。在该引脚的上升沿时,系统将数据输入到每个 EEPROM 器件,在
下降沿时输出。
SDA:串行数据。该引脚为开漏极驱动,可双向传送数据。
A0、A1、A2:器件/页面寻址。为器件地址输入端。
WP:硬件写保护。当该引脚为高电平时禁止写入,当为低电平时可正常读写数据。
VCC:电源。一般输入+5V电压。
VSS:接地。 I2C总线由单片机控制,挂在I2C总线上的设备可以很多个,每个有独立的地址,A0,A1,A2。。。但单片机发送地址后,该地址的设备就会被激活,向单片机反馈一个应答信号,然后进行该设备的操作任务,比如这个设备是AT24C02,它是用来存储数据的,具体的操作有发送地址,发送指令,接受数据以及发送数据等等,你还是仔细研究下I2C协议吧!发个例子给你看看吧!
#ifndef _ROM24C02_H_2008_11_30_
#define _ROM24C02_H_2008_11_30_
#define uchar unsigned char
#define uint unsigned int
sbit rom24c02_sda= P2^1; //24c02串行数据
sbit rom24c02_scl= P2^0; //24c02串行时钟
void rom_delay1ms(unsigned int count) //延时1ms
{
unsigned char j;
for(;count>0;count--)
for(j=0;j<120;j++);
}
void delay1c()
{;}
void rom24c02_start(void)
{
rom24c02_sda=1;
rom24c02_scl=1;
delay1c();
rom24c02_sda=0;
delay1c();
}
void rom24c02_stop(void)
{
rom24c02_sda=0;
rom24c02_scl=1;
delay1c();
rom24c02_sda=1;
delay1c();
}
void rom24c02_ack(void)
{
rom24c02_sda=0;
delay1c();
rom24c02_scl=1;
delay1c();
rom24c02_scl=0;
}
void rom24c02_noack(void)
{
rom24c02_sda=1;
delay1c();
rom24c02_scl=1;
delay1c();
rom24c02_scl=0;
}
void rom24c02_write8bit(uchar dat)
{
uchar i=8;
do
{
rom24c02_scl=0;
delay1c();
if((dat&0x80)==0x80)
rom24c02_sda=1;
else
rom24c02_sda=0;
rom24c02_scl=1;
delay1c();
rom24c02_scl=0;
dat=dat<<1;
}while(--i);
rom24c02_scl=0;
}
uchar rom24c02_read8bit(void)
{
uchar temp=0;
uchar i=8;
rom24c02_sda=1;
do{
rom24c02_scl=0;
delay1c();
rom24c02_scl=1;
delay1c();
if(rom24c02_sda)
temp=temp|0x01;
else
temp=temp&0xfe;
if(i-1)
{
temp=temp<<1;
}
i--;
}while(i);
return(temp);
}
void rom24c02_writeone(uchar pdat,uchar add)
{
rom24c02_start();
rom24c02_write8bit(0xa0);
rom24c02_ack();
rom24c02_write8bit(add);
rom24c02_ack();
rom24c02_write8bit(pdat);
rom24c02_ack();
rom24c02_stop();
rom_delay1ms(10);
}
uchar rom24c02_readone(uchar add)
{
uchar temp;
rom24c02_start();
rom24c02_write8bit(0xa0);
rom24c02_ack();
rom24c02_write8bit(add);
rom24c02_ack();
rom24c02_start();
rom24c02_write8bit(0xa1);
rom24c02_ack();
temp=rom24c02_read8bit();
rom24c02_scl=0;
rom24c02_noack();
rom24c02_stop();
return(temp);
}
#endif
文章TAG:
at24c02可以存多少字节at24c02 可以 多少