导航:首页 > 编程语言 > at24c02怎么在线编程

at24c02怎么在线编程

发布时间:2022-07-14 05:31:43

A. 单片机怎么把多个十进制数存入at24c02,再怎么读出~~~~~求c语言编程~

真的很懒,还是贴出我自己用的代码吧,接口自己定义
/*******************
//
函数功能:演示函数
//参数:x:时间传递参数
//函数名:delaym()
void
delaym(int
x)
{
int
y;
for(x;x>0;x--)

for(y=110;y>0;y--);
}
//*******************
//
函数功能:开始应答
//参数:无
//函数名:start()
void
start()
{
scl=1;
sda=1;
sda=0;
scl=0;
}
//*******************
//
函数功能:停止应答
//参数:无
//函数名:stop()
void
stop()
{
scl=0;
sda=0;
scl=1;
sda=1;
}
bit
testack()
{
bit
errorbit;
sda=1;
scl=1;
errorbit=sda;
scl=0;
return(errorbit);
}
//*******************
//
函数功能:写1byte到24c02
//参数:input:写数据
//函数名:writebyte()
void
writebyte(char
input
)
{
char
i;
for(i=8;i>0;i--)
{

sda=(bit)(input&0x80);

scl=1;

scl=0;

input=input<<1;
}
}
//*******************
//
函数功能:读取1byte数据
//参数:k:读出的数据
//函数名:readbyre()
char
readbyte()
{
char
i,k;
for(i=8;i>0;i--)
{

scl=1;

k=(k<<1)|sda;

scl=0;
}
return(k);
}
//*******************
//
函数功能:写数据到24c02指定地址
//参数:address:地址
,date:写入的数据
//函数名:writeaddadd()
void
writeadd(char
address,char
date)
{
start();
writebyte(0xa0);
testack();
writebyte(address);
testack();
writebyte(date);
testack();
stop();
delaym(10);
}
//*******************
//
函数功能:读取24c02指定地址数据
//参数:address:地址
,ch:读出的数据
//函数名:readadd()
char
readadd(char
address)
{
char
ch;
start();
writebyte(0xa0);
testack();
writebyte(address);
testack();
start();
writebyte(0xa1);
testack();
ch=readbyte();
stop();
return(ch);
}

B. 写一个通过串口访问AT24C02(EEPROM)程序,该怎样写手上有一块单片机的开发板,不知道怎用。

发给你一个例子,带PROTEUS仿真的,你留 下Q

C. 用51单片机给at24c16与at24c02编程上的区别和要注意些什么,程序的写法有那些不同,比如

没什么太大的不同,AT24C02 读写时要指定地址 A2 A1 A0 ,这就是芯片上这3支管脚的接法,而 AT24C16 不用指定地址但是因为容量比较大因此要选定所要读写的页(PAGE)。

D. 特急:关于单片机at89c52连接at24c02的编程问题

void start(void)
{
SDA=1;
SCL=1;
_nop_();
_nop_();
SDA=0;
_nop_();
_nop_();
_nop_();
_nop_();
SCL=0;
}

/***************************************************************
函数功能:停止iiC总线数据传送子程序
入口参数:
出口参数:
******************************************************************/
void stop(void)
{
SDA=0;
SCL=1;
_nop_();
_nop_();
SDA=1;
_nop_();
_nop_();
_nop_();
_nop_();
SCL=0;
}

/*******************************************************************
函数功能:读取数据
入口参数:
出口参数:read_data
*********************************************************************/
unsigned char read(void)
{
uchar read_data=0,i;
for(i=0;i<8;i++)
{
SCL=1; //此时SDA上的高低电平保持稳定
read_data<<=1;
read_data|=(unsigned char)SDA;
SCL=0; //此时SDA上的高低电平可以变化
}
return read_data;
}

/******************************************************************
函数功能:向EEPROM写数据
入口参数:dat
出口参数:ack_bit
*****************************************************************/
bit write_dat(unsigned char dat)
{
unsigned char i;
bit ack_bit; //应答位
for(i=0;i<8;i++)
{
SDA=(bit)(dat&0x80);
_nop_();
_nop_();
SCL=1;
_nop_();
_nop_();
SCL=0;
dat<<=1;

}
SDA=1; //检测应答信号,这在第九个时钟周期出现
_nop_();
_nop_();
SCL=1;
_nop_();
_nop_();
_nop_();
_nop_();
ack_bit=SDA;
SCL=0;
return ack_bit;

}

/*******************************************************************
函数功能:向指定地址写数据
入口参数:addr,write_data
出口参数:
**********************************************************************/
void write_byte(unsigned char addr,unsigned char write_data)
{
start();
write_dat(OP_WRITE);
write_dat(addr);
write_dat(write_data);
stop();
delayms(10);

}

/************************************************************************
函数功能:读取当前地址数据
入口参数:
出口参数:read_data
***********************************************************************/
unsigned char read_current()
{
unsigned char read_data;
start();
write_dat(OP_READ);
read_data=read();
stop();
return read_data;
}

/**********************************************************************
函数功能:向指定地址读数据
入口参数:randon_addr
出口参数:read_data
********************************************************************/
unsigned char read_randon(uchar randon_addr)
{
start();
write_dat(OP_WRITE);
write_dat(randon_addr);
return (read_current());
}

例如你想将shiwei写进2402,write_byte(0x04,shiwei)
读出来就是read_randon(0x04)
你先将你要存的数据写进2402,上电时程序首先就把你存的数据先读出来显示在数码管上
你有加#include<intrins.h>吗》????

E. 单片机编程'AT24C02Read': requires ANSI-style prototype怎么办谢谢大神,麻烦了

AT24C02Read()这个函数缺少原型声明。
你需要在程序前面加上它的原型声明,并且确保与函数实体一致。例如:
unsigned char AT24C02Read(unsigned char);

F. 如何用编程器把AT24C02程序擦除清零

直接点击擦除芯片就可以了!

G. 单片机编程将'好人一生平安'乐谱录入AT24C02求程序,急用,求大神帮忙!!

网上很多程序,你先确定能对24c02读写,需要注意的是,24c02每次只能写入8个字节,所以你只能循环写入!

H. 单片机编程将‘好人一生平安’乐谱录入AT24C02怎么编程

使用数组烧录到单片机再由单片机烧录24c02或者用串口输入单片机再由单片机的ram烧录进24c02

I. 现实单片机按键编程

是否要实现在线编程ISP?
有ISP功能的MCU编程可以看做两部分,好像:电脑的BIOS与硬盘程序,你设置好BIOS以处理你要实现的编程功能,那么硬盘程序就交给用户去实现了!

也就是说,你要写好2k~8k的ISP引导码即可!

阅读全文

与at24c02怎么在线编程相关的资料

热点内容
程序员如何不被废 浏览:803
二进制流转pdf 浏览:915
php判断爬虫 浏览:569
960除24除4简便算法 浏览:786
关于解压英语翻译 浏览:565
python控制键盘右键 浏览:920
php没有libmysqldll 浏览:828
时政新闻app哪个好 浏览:906
手机已加密怎么办 浏览:201
安卓手机截屏怎么传到苹果 浏览:527
京管家app哪里下载 浏览:33
文件夹横向排列的竖向排列 浏览:453
51单片机驱动摄像头模块 浏览:689
政府文件加密没法转换 浏览:373
android判断栈顶 浏览:331
凭证软件源码 浏览:860
androidwebview滚动事件 浏览:11
如何将电脑上的图片压缩成文件包 浏览:899
程序员转金融IT 浏览:837
黑马程序员培训效果如何 浏览:915