赞
踩
#include"global.h"
void EEPROM_ByteWrite(u8 ADDR,u8 byte)
{
_emi=0;
_eea = ADDR; //地址 HT66F0185 的EEPROM地址从0x01-0x7f 共128字节
_eed = byte; //数据
_mp1 = 0x40;
_bp = 1;
_iar1|=0x8; //写使能 间接寻址EEC寄存器
_iar1|=0x4; //开始写入 间接寻址EEC寄存器
while((_iar1&0x04) !=0);//等待写入结束 间接寻址EEC寄存器
_iar1&=0xf7; //写入失能 间接寻址EEC寄存器
_iar1=0;
_mp1=0;
_emi=1;
_bp = 0;
}
u8 EEPROM_ByteRead(volatile u8 Addr)
{
u8 byte;
_emi=0;
_eea=Addr; //要读取的地址
_mp1=0x40; //EEPROM的物理起始地址
_bp = 1;
_iar1|=0x2; //读使能 间接寻址EEC寄存器
_iar1|=0x1; //开始读取 间接寻址EEC寄存器
while((_iar1&0x01) !=0);//等待读取结束 间接寻址EEC寄存器
byte=_eed;
_iar1&=0xfD; //读取失能 间接寻址EEC寄存器
_iar1=0;
_mp1=0;
_emi=1;
_bp = 0;
return(byte);
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。