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

📄 nan.h

📁 K9F1208 在STR710处理器上的驱动源代码
💻 H
字号:
/****************************************Copyright (c)**************************************************
**                                      
**                                          	公 司
**                                         	部 门
**
**                                 http://www.osmcu.com
**
**--------------文件信息--------------------------------------------------------------------------------
** 文 件 名: 		nan.h
** 创 建 人: 		李海军
** 创建日期: 	2006年6月14日
** 描    述: 		该文件包含了所有NAN  FLASH  功能函数原型与所需要的常量
**
**--------------历史版本--------------------------------------------------------------------------------
** 创 建 人: 		李海军
** 版      本: 		V1.0
** 日   期: 		2006年6月14日
** 描   述: 		原始版本
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#include "types.h"

/************************************** 宏定义,常量定义 ******************************************/

//NAN 操作定义
#define NAN_ADDRESS_BASE	(0x66000000)
#define NAN_ALE				(NAN_ADDRESS_BASE + 4)
#define NAN_CLE				(NAN_ADDRESS_BASE + 2)



#define NAN_WRITE_COMMAND(command)							\
	(*(volatile UINT8 *)NAN_CLE) = (UINT8)(command)
	
#define NAN_WRITE_ADDRESS(address)							\
	(*(volatile UINT8 *)NAN_ALE) = (UINT8)(address)	
	
#define NAN_WRITE_DATA(data)								\
	(*(volatile UINT8 *)NAN_ADDRESS_BASE) = (UINT8)(data)
	
#define NAN_READ_DATA()		(*(volatile UINT8 *)NAN_ADDRESS_BASE)	

#define NAN_GET_RB		(GPIO_ReadBit(GPIO2,11))

//NAN 信息定义
#define NAN_BLOCKS				(1 << 12)
#define NAN_PAGE_PER_BLOCK	(1 << 5)
#define NAN_PAGES				(1 << 17)
#define NAN_PAGE_SIZE			(528)
#define NAN_HALF_ADDRESS		(256)
#define NAN_SPARE_ADDRESS		(512)

/**************************************  枚举类型定义  *******************************************/

//函数返回信息定义
typedef enum
{
	NAN_SUCCESS = 0,
	NAN_TIMEOUT,
	NAN_PROGRAM_ERROR,
	NAN_COPY_ERROR,
	nan_earse_ERROR,
	NAN_PARA_ERROR,
	NAN_BLOCK_ERROR

}NAN_RETURN_T;

/************************************** 结构体类型定义  ******************************************/

/********************************** 全局外部函数原型声明 *****************************************/

extern UINT32 nan_get_id(void);
extern void nan_poll_bad_blocks(void);
extern NAN_RETURN_T nan_earse(UINT32 block);
extern NAN_RETURN_T nan_program(UINT16 column, UINT32 page, UINT8 * p_data, UINT16 size);
extern NAN_RETURN_T nan_read(UINT16 column, UINT32 page, UINT8 * p_buf, UINT16 size);
extern NAN_RETURN_T nan_copy_back(UINT32 src_page, UINT32 dest_page);

⌨️ 快捷键说明

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