⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 eeprom.c

📁 把原先的快走丝设备改进
💻 C
字号:
#include"XQG.h"
#include <intrins.h>


#define IAP_READ				0x01        /*  字节读数据存储区   */
#define IAP_WRITE          			0x02        /*  字节编程数据存储区 */
#define IAP_ERASER     			0x03        /*  扇区擦除数据存储区 */
#define WAIT_TIME        			0x02






unsigned char byte_read(unsigned int byte_addr)
{
	unsigned char lvc_data_tmp;
	ISP_ADDRH	=	(unsigned char)(byte_addr >> 8);
	ISP_ADDRL	=	(unsigned char)(byte_addr & 0x00ff);
	EA	=	0;	/* 关中断 */
	ISP_CONTR	=	WAIT_TIME;
	ISP_CONTR	=	ISP_CONTR | 0x80; 
	ISP_CMD		=	IAP_READ;        /* 0000,0001 */
	ISP_TRIG	=	0x46;
	ISP_TRIG	=	0xb9;
	_nop_();
	lvc_data_tmp=ISP_DATA;
	ISP_CONTR	=	0;
	ISP_CMD	=	0;	
	ISP_TRIG	=	0;
	ISP_ADDRH	=	0;
	ISP_ADDRL	=	0;

	EA			=   	1;                	/* 开中断 */	
	return (lvc_data_tmp);
}


void byte_write(unsigned int byte_addr, unsigned char indata)
{
	ISP_DATA	=	indata;
	ISP_ADDRH	=	(unsigned char)(byte_addr >> 8);
	ISP_ADDRL	=	(unsigned char)(byte_addr & 0x00ff);
	EA	=	0;	/* 关中断 */
	ISP_CONTR	=	WAIT_TIME;
	ISP_CONTR	=	ISP_CONTR | 0x80; 
	ISP_CMD	=	IAP_WRITE;        /* 0000,0001 */
	ISP_TRIG	=	0x46;
	ISP_TRIG	=	0xb9;
	_nop_();
	ISP_CONTR	=	0;
	ISP_CMD	=	0;	
	ISP_TRIG	=	0;
	ISP_ADDRH	=	0;
	ISP_ADDRL	=	0;

	EA			=   	1;                	/* 开中断 */	
}
void Sector_eraser(unsigned int byte_addr)
{
	ISP_ADDRH	=	(unsigned char)(byte_addr >> 8);
	ISP_ADDRL	=	0x00;
	EA	=	0;	/* 关中断 */
	ISP_CONTR	=	WAIT_TIME;
	ISP_CONTR	=	ISP_CONTR | 0x80; 
	ISP_CMD	=	IAP_ERASER;        /* 0000,0001 */
	ISP_TRIG	=	0x46;
	ISP_TRIG	=	0xb9;
	_nop_();
	ISP_CONTR	=	0;
	ISP_CMD	=	0;	
	ISP_TRIG	=	0;
	ISP_ADDRH	=	0;
	ISP_ADDRL	=	0;

	EA			=   	1;                	/* 开中断 */	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -