单片机内部 EEROM 存储C语言 源程序
void Init()
{
TMOD=0x01;
TH0=0xfe; //1MS
TL0=0x0c;
ET0=1;
TR0=1;
EA=1;
EX0=1;
IT0=1;
}
void erase(unsigned char ADDRH)
{
if(ADDRH <0x2a)ISP_ADDRH=0x28;
else if(ADDRH <0x2c)ISP_ADDRH=0x2a;
else if(ADDRH <0x2e)ISP_ADDRH=0x2c;
else if(ADDRH <0x30)ISP_ADDRH=0x2e;
ISP_ADDRL=0x00;
ISP_CONTR=0x8b;
ISP_CMD=3;
ISP_TRIG=0x46;
ISP_TRIG=0xb9; //触发ISP/IAP
delay(5);
}
void write(unsigned char ADDRH,unsigned char *p,unsigned char k)
{
unsigned char i;
erase(ADDRH);
ISP_ADDRH =ADDRH; //擦除
ISP_ADDRL=0x00;
for(i=0;i <k;i++)
{
ISP_DATA=p[i];
ISP_CONTR=0x8b;
ISP_CMD=2;
ISP_TRIG=0x46; //触发ISP/IAP
ISP_TRIG=0xb9;
ISP_ADDRL++; //地址+1;
delay(5);
}
}
unsigned char read(unsigned char ADDRH,unsigned char ADDRL) //ADDRH 范围0x28-0x2f ADDL"0-255"
{
ISP_ADDRH=ADDRH; //ISP/IAP控制寄存器
ISP_ADDRL=ADDRL;
ISP_CONTR=0x8b;
ISP_CMD=1; //送字节读命令
ISP_TRIG=0x46;
ISP_TRIG=0xb9; //触发ISP/IAP
delay(5);
return ISP_DATA;
}
配套程序 实验板详见下面网站
重庆市优易特电子
联系人:行卫军
电话:023-62111023
网址:
发表时间:2008年2月25日17:40:48