📄 eeprom.c
字号:
#include "reg5410.h"
unsigned char read(unsigned char ADDRH,unsigned char ADDRL);
void write(unsigned char ADDRH,unsigned char *p,unsigned char k);
void erase(unsigned char ADDRH);
void Delay0(unsigned int n)
{
unsigned char i,j;
for(i=0;i<n;i++)
for(j=0;j<100;j++);
}
///////////////////eprom start
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;
Delay0(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
Delay0(5);
return ISP_DATA;
}
/***********擦除**************/
void erase(unsigned char ADDRH)
{
ISP_ADDRH=ADDRH;
ISP_ADDRL=0x00;
ISP_CONTR=0x8b;
ISP_CMD=3;
ISP_TRIG=0x46; //触发ISP/IAP
ISP_TRIG=0xb9;
Delay0(5);
}
///////////////////eprom end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -