/************************************************************/
/* STCMCU EEPROM操作函数库 */
/* File Name: stceeprom.C */
/* Author: JAY.J */
/* Created: 2007/8/3 */
/* Modified: NO */
/* Revision: 1.0 */
/************************************************************/
#ifndef STCEEPROM
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
#define isp_read 1
#define isp_program 2
#define isp_erase 3
#define isp_con 0x81
sfr ISP_DATA = 0xe2;
sfr ISP_ADDRH = 0xe3;
sfr ISP_ADDRL = 0xe4;
sfr ISP_CMD = 0xe5;
sfr ISP_TRIG = 0xe6;
sfr ISP_CONTR = 0xe7;
//*********************读EEPROM一字节************************/
uchar read_byte_eeprom(uchar addth,addtl)
{
uchar temp_data;
ISP_ADDRH=addth;
ISP_ADDRL=addtl;
EA=0;
ISP_CONTR=isp_con;
ISP_CMD=isp_read;
ISP_TRIG=0x46;
ISP_TRIG=0xB9;
temp_data=ISP_DATA;
EA=1;
return temp_data;
}
//*********************写EEPROM一字节***********************/
void program_byte_eeprom(uchar temp_data, addth,addtl)
{
ISP_DATA=temp_data;
ISP_ADDRH=addth;
ISP_ADDRL=addtl;
EA=0;
ISP_CONTR=isp_con;
ISP_CMD=isp_program;
ISP_TRIG=0x46;
ISP_TRIG=0xB9;
EA=1;
}
//********************擦除EEPROM一扇区子函数*****************/
void erase_sector_eeprom(uchar addth,addtl)
{
ISP_ADDRH=addth;
ISP_ADDRL=addtl;
EA=0;
ISP_CONTR=isp_con;
ISP_CMD=isp_erase;
ISP_TRIG=0x46;
ISP_TRIG=0xB9;
EA=1;
}
#endif
文章评论(0条评论)
登录后参与讨论