📄 memory.h
字号:
/********************************************************************************/
/* MEMORY.H v1.00 */
/* 版权(c) 2003- 北京合众达电子技术有限责任公司 */
/* 设计者: 段立锋 */
/********************************************************************************/
#ifndef _MEMORY
#define _MEMORY
/********************************************************************************/
/* 常量定义 */
/********************************************************************************/
#define SECTOR_SIZE 0x0800 /* Flash扇区长度为2K */
#define BLOCK_SIZE 0x8000 /* Flash块长度为32K */
#define SECTOR_ERASE 0x30 /* Flash扇区擦除 */
#define BLOCK_ERASE 0x50 /* Flash块擦除 */
#define CHIP_ERASE 0x10 /* Flash整片擦除 */
#define CHIP_ADDR 0x5555 /* Flash整片擦除时的地址 */
/********************************************************************************/
/* 函数声明 */
/********************************************************************************/
unsigned int flash_erase(unsigned long addr, unsigned int type);
unsigned int flash_writes(unsigned int addr, unsigned int data);
unsigned int flash_writem(unsigned long addr, unsigned int * ptr, unsigned int length);
unsigned int flash_reads(unsigned long addr);
void flash_readm(unsigned long addr, unsigned int * ptr, unsigned int length);
/************************************************************************************/
/* */
/* 函数定义:void progm_readm(ulong addr, uint * ptr, uint length) */
/* 功 能:从ptr所指向的数据缓冲区中将length长的数据写入addr指定的程序空间中 */
/* */
/* 入口参数:A ---- 地址addr,程序空间的地址 */
/* (SP+n) ---- 数据缓冲区起始地址ptr,如果是.far_mode模式则n为2,否则n为1 */
/* (SP+m) ---- 数据长度length,如果是.far_mode模式则m为3,否则m为2 */
/* 出口参数:A ---- 读出数据 */
/* 资源使用:B,AR0 */
/* */
/************************************************************************************/
void progm_readm(unsigned int addr,unsigned int *ptr, unsigned int length);
/************************************************************************************/
/* */
/* 函数定义:void _progm_writem(ulong addr, uint * ptr, uint length) */
/* 功 能:从ptr所指向的数据缓冲区中将length长的数据写入addr指定的程序空间中 */
/* */
/* 入口参数:addr ---- 地址addr,程序空间的地址 */
/* *ptr ---- 数据缓冲区起始地址ptr,如果是.far_mode模式则n为2,否则n为1 */
/* length--- 数据长度length,如果是.far_mode模式则m为3,否则m为2 */
/* 出口参数:无 */
/************************************************************************************/
void progm_writem(unsigned int addr,unsigned int *ptr, unsigned int length);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -