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

📄 flash.h

📁 用LPC2132驱动SPI接口FLASH的c驱动程序
💻 H
字号:
/********************************************************************************
*                                                                               *
*                 ATML AT45DB021B FLASH 操作函数								*
*                      2007年4月28日调试成功									*
*                         编写:周思友											*
*********************************************************************************/
#include "config.h"
#define FLASH_CS			1<<21				//SET p0.21 for cs
#define MOSI11				1<<19				//SET P0,19 FOR MOSI1
#define MISO11				1<<18				//SET P0.18 FOR MISO
#define SCK11				1<<17				//SET P0.17 FOR SCK1
#define FLASH_WP			1<<20				//SET P1.20 FOR WP
#define AT_RST				1<<22				//SET P0.22 FOR RESET FLASH

#define DF_SELECT_1			IOCLR=FLASH_CS	
#define DF_DESELECT_1		IOSET=FLASH_CS		

#define DF_RST_0			IOCLR=AT_RST		
#define DF_RST_1			IOSET=AT_RST	

#define WP_UP				IO1SET=FLASH_WP
#define WP_DOWN				IO1CLR=FLASH_WP

#define MOSI11_1			IOSET=MOSI11
#define MOSI11_0			IOCLR=MOSI11 

#define SCK11_1			IOSET=SCK11
#define SCK11_0			IOCLR=SCK11
#define MISO_IN         ((IOPIN& 0x40000)>>18)

#define FLASH_IO_CON_IN		FLASH_CS|MOSI11|AT_RST|SCK11


#define BUFFER_1_WRITE		 0x84					// 写入第一缓冲区
#define BUFFER_2_WRITE		 0x87					// 写入第二缓冲区
#define BUFFER_1_READ		 0xD4					// 读取第一缓冲区
#define BUFFER_2_READ 		 0xD6					// 读取第二缓冲区
#define B1_TO_MM_PAGE_PROG_WITH_ERASE 0x83	// 将第一缓冲区的数据写入主存储器(擦除模式)
#define B2_TO_MM_PAGE_PROG_WITH_ERASE 0x86	// 将第二缓冲区的数据写入主存储器(擦除模式)
#define MM_PAGE_TO_B1_XFER 0x53				// 将主存储器的指定页数据加载到第一缓冲区
#define MM_PAGE_TO_B2_XFER 0x55				// 将主存储器的指定页数据加载到第二缓冲区
#define PAGE_ERASE 0x81						// 页删除(每页512/528字节)
#define BLOCK_ERASE 0x50					// 块擦除(每块8*264字节)
#define READ_STATE_REGISTER 0xD7			// 读取状态寄存器
#define MAIN_MEMORY_PAGE_READ 0xD2			// 直接主存页读

⌨️ 快捷键说明

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