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

📄 flash.h

📁 一款收款机C源代码!因为是几年前的代码了
💻 H
字号:
/*------------------------------------------------------------------------------
	FLASH芯片用途和内存分配
	FLASH #0		==== 存放ROM代码和所有的图片LOGO信息,存放帮助信息.
						 对于此片FLASH的操作,放置在库文件中,不开放给Programmer.
						 Programmer可以读此FLASH中的内容,但是不能写.
	FLASH #1		==== 一共2M字节大小.
						 前面的1M ( 0x000000 ---- 0x0fffff) 存放EJ数据
						 后面的1M ( 0x100000 ---- 0x1fffff) 存放帮助信息
						 此片FLASH的操作,可以开放给Programmer.
	FLASH #2		==== DIP FLASH ROM(在调试的时候使用的FLASH芯片)
						 由于此芯片仅仅用于调试,并且和Programmer接触的机会很少,
						 所以也不开放给Programmer.
	为了程序将来的扩展方便,虽然程序员能看到的FLASH只有一片,(即#2),但是在调用相关
	函数的时候,依然保持有参数的输入,用户可以直接传送 FLS_CHIP_IDX_2(即#2FLASH)
	2006-9-7 15:50						 
*-----------------------------------------------------------------------------*/
	#ifndef ___FLASH_H
#define	___FLASH_H	
	
/*------------------------------------------------------------------------------
 *	写入一个字到FLASH中,
 *	chipNo -- CHIP0 only 
 *			   为了软件稳定,对于PROGRAM chip 的FLASH,单独写程序并封装成LIB文件
 *			   所以,实际可以操作的只有一片FLASH(不考虑扩展板的情况)
 * 送入参数中,如果adr不为偶数,也不会写入,因为现在FLASH在按WORD模式操作,
 * 要求目标地址必须为偶地址
 *	函数返回:	是否写入正确:	OK/NG
 *----------------------------------------------------------------------------*/
BOOL	Fls_WriteWord(char	chipNo,int *dst, int value);
/*----------------------------------------------------------------------------
*	把指定地址(srcAdr)中一段字符串到指定芯片(chipNo)的指定地址(dstAdr),字符串
*	长度由len决定
*	len:	字的长度,比如要写入0x55aa55aa,则len为2. (2个字)
*	注意: dstAdr 必须为偶数地址,否则程序会返回错误信息
*	函数返回:	OK/NG
*---------------------------------------------------------------------------*/
BOOL	Fls_WriteStr(BYTE chipNo, int *dst, int *src, word len);
/*---------------------------------------------------------------------------*
*	从指定芯片的指定地址读取一个字到返回指针中.
*	函数返回: OK/NG
*	要求:	 所指定的地址必须为偶数,否则也会返回错误
*---------------------------------------------------------------------------*/
BOOL Fls_ReadWord(BYTE chipNo, int *src, int *readData);
/*--------------------------------------------------------------------------*
*	从指定芯片的指定地址读取一段字符串到返回指针中,读取长度为len.
*   len 为字的长度.
*	如果指定的地址不为偶数,则会返回错误(读取不成功)
*	len:	字的长度,比如要写入0x55aa55aa,则len为2. (2个字)
*--------------------------------------------------------------------------*/
BOOL Fls_ReadStr(BYTE chipNo,  int *src, int *readData,int len);
/*--------------------------------------------------------------------------*
*	擦除指定芯片
*	函数返回: OK/NG
*--------------------------------------------------------------------------*/
BOOL Fls_ChipErase(BYTE	chipNo);
/*--------------------------------------------------------------------------*
*	Initialize the Flash chip.
*	初使化相关的端口,等等
*--------------------------------------------------------------------------*/
void Fls_Inital(void);
/*--------------------------------------------------------------------------*
*	擦除指定芯片的指定扇区.
*	函数输入:	idx -- 扇区Index No. ( 0---MAX_FLS_SECTOR_NUM)
*	函数返回: OK/NG
*--------------------------------------------------------------------------*/
BOOL Fls_SectorErase(byte idx);

	#endif	/* End of the ifndef FLASH.h*/

⌨️ 快捷键说明

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