24c02存储多个数据Word下载.docx

上传人:b****2 文档编号:14824825 上传时间:2022-10-25 格式:DOCX 页数:6 大小:43.75KB
下载 相关 举报
24c02存储多个数据Word下载.docx_第1页
第1页 / 共6页
24c02存储多个数据Word下载.docx_第2页
第2页 / 共6页
24c02存储多个数据Word下载.docx_第3页
第3页 / 共6页
24c02存储多个数据Word下载.docx_第4页
第4页 / 共6页
24c02存储多个数据Word下载.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

24c02存储多个数据Word下载.docx

《24c02存储多个数据Word下载.docx》由会员分享,可在线阅读,更多相关《24c02存储多个数据Word下载.docx(6页珍藏版)》请在冰豆网上搜索。

24c02存储多个数据Word下载.docx

//此为待写入24c02的数据。

为了便于验证结果,数组的内容为周期重复的。

charcodemusic[]={

0x55,0xaa,0x0f,0xf0,0x55,0xaa,0x0f,0xf0,0x55,0xaa,0x0f,0xf0,

0x55,0xaa,0x0f,0xf0,0x55,0xaa,0x0f,0xf0,0x55,0xaa,0x0f,0xf0

};

//由于最后还要讲这些数据读出送到P1口,故可发现P1口相连的led有规律地闪烁15个周期

uchardatabuffer[100];

//用于缓存从24c02中读取的数据。

delay(unsignedintm)

{

unsignedintn,p;

for(n=m;

n>

0;

n--)

for(p=125;

p>

p--);

}

voidnop()

_nop_();

scl=0;

nop();

sda=CY;

//temp左移时,移出的值放入了CY中

scl=1;

//待sda线上的数据稳定后,将scl拉高

}

scl=0;

nop();

sda=1;

unsignedcharreadbyte()//读一个字节

unsignedchari,j,k=0;

for(i=0;

i<

8;

i++)

{

scl=1;

if(sda==1)

j=1;

else

j=0;

k=(k<

<

1)|j;

return(k);

voidclock()//I2C总线时钟

unsignedchari=0;

while((sda==1)&

&

(i<

255))

i++;

////////从24c02的地址address中读取一个字节数据/////

unsignedcharread24c02(unsignedcharaddress)

unsignedchari;

start();

writebyte(0xa0);

clock();

writebyte(address);

writebyte(0xa1);

i=readbyte();

stop();

delay1(100);

return(i);

//////向24c02的address地址中写入一字节数据info/////

voidwrite24c02(unsignedcharaddress,unsignedcharinfo)

writebyte(info);

delay1(5000);

//这个延时一定要足够长,否则会出错。

因为24c02在从sda上取得数据后,还需要一定时间的烧录过程。

voidmain()

ucharadd,i,j,m;

init();

//初始化24C02

P1=0X55;

while(add!

=sizeof(music))

write24c02(0x00+add,music[add]);

add++;

if(add%4==0)

P1=~P1;

P1=0X00;

//到此为止,向24C02中写入数据的过程均已结束。

下面的程序为附加的。

//将已写入的数据再读出,送到P1口,通过观察led的亮灭来检验写入的数据是否正确。

while(m!

=add)

buffer[i]=read24c02(m);

m++;

while(j!

P1=buffer[j];

j++;

delay(1000);

while

(1);

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 自然景观

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1