-
#include
需要上
stc
官网下载此头文件
#include
/* use _nop_() function */
#include
/* use _nop_()
function */
//sfr16 DPTR = 0x82;
/*
新增特殊功能寄存器定义
*/
sfr
ISP_DATA
=
0xe2;
sfr
ISP_ADDRH
=
0xe3;
sfr
ISP_ADDRL
=
0xe4;
sfr
ISP_CMD
=
0xe5;
sfr
ISP_TRIG
=
0xe6;
sfr
ISP_CONTR
=
0xe7;
/*
定义命令
*/
#define ENABLE_ISP
0x84
/*
IAP
功能使能
*/
#define READ_Command
0x01
/*
字节读数据存储区
*/
#define PROGRAM_Command
0x02
/*
字节编程数据存储区
*/
#define ERASE_Command
0x03
/*
扇区擦除数据存储区
*/
typedef
unsigned char
INT8U;
/* 8 bit
无符号整型
*/
typedef
unsigned int
INT16U;
/*
16 bit
无符号整型
*/
void
IAP_Disable();
void
Sector_Erase(INT16U add);
void Array_Program(INT16U add,INT8U
Array[],INT8U n,INT8U m);
INT8U Byte_Read(INT16U add);
void IAP_Disable()
{
//
关闭
IAP
功能
,
清相关的特殊功能寄存器
p>
,
使
CPU
处于安全状态
,
//
一次连续的
IAP
操作完成之后建议关闭
IAP
功能<
/p>
,
不需要每次都关
IAP_CONTR = 0;
//
关闭
IAP
功能
IAP_CMD
= 0;
//
清命令寄存器
< br>,
使命令寄存器无命令
,
此句可
不用
IAP_TRIG
= 0;
//<
/p>
清命令触发寄存器
,
使命令触发寄存器无
触发
,
此句可不用
IAP_ADDRH = 0;
IAP_ADDRL = 0;
}
//
擦除扇区
,
入口
:DPTR =
扇区地址
void
Sector_Erase(INT16U add)
{
IAP_CONTR = ENABLE_ISP;
//
打开
IAP
功能
,
设置
Flash
操作等待时间
-
-
-
-
-
-
-
-
-
上一篇:如何破解Excel写保护
下一篇:货物进口合同(中英文)通用版