at45db081.h

来自「这个是我设计的采用c8051f330为核心的测温系统源码」· C头文件 代码 · 共 47 行

H
47
字号
#ifndef AT45DB081_H
#define AT45DB081_H
#include "main.h"

sbit CS=P0^6;
sbit WP=P0^7;
sbit RDY=P1^0;
#define BUFFER_1 0x00 			// buffer 1
#define BUFFER_2 0x01 			// buffer 2
#define BUFFER_1_WRITE 0x84 	// buffer 1 write
#define BUFFER_2_WRITE 0x87 	// buffer 2 write
#define BUFFER_1_READ  0x54		// buffer 1 read (change to 0xD4 for SPI mode 0,3)
#define BUFFER_2_READ  0x56		// buffer 2 read (change to 0xD6 for SPI mode 0,3)
#define B1_TO_PAGE_WITH_ERASE 0x83 		// buffer 1 to main memory page program with built-in erase
#define B2_TO_PAGE_WITH_ERASE 0x86 		// buffer 2 to main memory page program with built-in erase
#define B1_TO_PAGE_WITHOUT_ERASE 0x88 	// buffer 1 to main memory page program without built-in erase
#define B2_TO_PAGE_WITHOUT_ERASE 0x89 	// buffer 2 to main memory page program without built-in erase
#define PAGE_PROG_THROUGH_B1 0x82 		// main memory page program through buffer 1
#define PAGE_PROG_THROUGH_B2 0x85 		// main memory page program through buffer 2
#define AUTO_PAGE_REWRITE_THROUGH_B1 0x58 // auto page rewrite through buffer 1
#define AUTO_PAGE_REWRITE_THROUGH_B2 0x59 // auto page rewrite through buffer 2
#define PAGE_TO_B1_COMP 0x60 	// main memory page compare to buffer 1
#define PAGE_TO_B2_COMP 0x61 	// main memory page compare to buffer 2
#define PAGE_TO_B1_XFER 0x53 	// main memory page to buffer 1 transfer
#define PAGE_TO_B2_XFER 0x55 	// main memory page to buffer 2 transfer
#define STATUS_REGISTER 0x57
#define MAIN_MEMORY_PAGE_READ 0x52 // main memory page read (change to 0xD2 for SPI mode 0,3)
#define PAGE_ERASE 0x81 	// erase a 528 byte page
#define BLOCK_ERASE 0x50 	// erase 512 pages
#define DF_CHIP_SELECT  CS=0;
#define DF_CHIP_NOSELECT CS=1;
#define DF_RDY_BUSY RDY=1;while(!RDY);

void SendSPIByte(uchar ch);
uchar GetSPIByte(void);
void FlashBufferRead(uint addr,uchar choice,uint len,uchar*buffer);
void FlashBufferWrite(uint addr,uchar choice,uint len,uchar*buffer);
uchar ReadStatus();
void PageToBuffer(uchar choice,uint page);
void PageRead(uint page,uint addr,uint len,uchar*buffer);
bit PageToBufferComp(uchar choice,uint page);
void BufferToPageWithErase(uchar choice,uint page);
void BufferToPageWithOutErase(uchar choice, uint page);
void PageProgViaBuffer(uchar choice,uint page,uint addr,uint len,uchar* buffer);
void AutoPageRewiteViaBuffer(uchar choice,uint page);
#endif

⌨️ 快捷键说明

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