📄 spi_device_settings.h
字号:
#include "SPI_Selection_Table.h"
//////////////////////////////////////////////////////////////////////////////////////////
#ifdef ST_M25P32
//This device is part of the flash family
#define SPI_FLASH
#define SPI_Description "M25P32"
//Flash commands
#define SPI_WREN (0x06) //Set Write Enable Latch
#define SPI_WRDI (0x04) //Reset Write Enable Latch
#define SPI_RDSR (0x05) //Read Status Register
#define SPI_WRSR (0x01) //Write Status Register
#define SPI_READ (0x03) //Read data from memory
#define SPI_PP (0x02) //Program Data into memory
#define SPI_SE (0xD8) //Erase one sector in memory
#define SPI_BE (0xC7) //Erase all memory
#define WIP (0x1) //Check the write in progress bit of the SPI status register
#define WEL (0x2) //Check the write enable bit of the SPI status register
//Maximum number of bytes that can be sent to the SPI in a single program sequence
#define SPI_PAGE_SIZE (256)
//Sector Size
#define SPI_SECTORS (0x40) //Includes 64 sectors
#define SPI_SECTOR_SIZE (0x10000) //The sector size
//24 bit addressable devices get an extra address byte
#define SPI_24BIT_ADDRESSING
#endif
//////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////
#ifdef ST_M25P20
//This device is part of the flash family
#define SPI_FLASH
#define SPI_Description "STMicro. M25P20"
//Flash commands
#define SPI_WREN (0x06) //Set Write Enable Latch
#define SPI_WRDI (0x04) //Reset Write Enable Latch
#define SPI_RDSR (0x05) //Read Status Register
#define SPI_WRSR (0x01) //Write Status Register
#define SPI_READ (0x03) //Read data from memory
#define SPI_PP (0x02) //Program Data into memory
#define SPI_SE (0xD8) //Erase one sector in memory
#define SPI_BE (0xC7) //Erase all memory
#define WIP (0x1) //Check the write in progress bit of the SPI status register
#define WEL (0x2) //Check the write enable bit of the SPI status register
//Maximum number of bytes that can be sent to the SPI in a single program sequence
#define SPI_PAGE_SIZE (256)
//Sector Size
#define SPI_SECTORS (0x4) //Includes 4 sectors
#define SPI_SECTOR_SIZE (0x10000) //The sector size
//24 bit addressable devices get an extra address byte
#define SPI_24BIT_ADDRESSING
#endif
//////////////////////////////////////////////////////////////////////////////////////////
#ifdef Atmel_AT25F512
//This this device is part of the flash family
#define SPI_FLASH
#define SPI_Description "Atmel AT25F512"
//Flash commands
#define SPI_WREN (0x06) //Set Write Enable Latch
#define SPI_WRDI (0x04) //Reset Write Enable Latch
#define SPI_RDSR (0x05) //Read Status Register
#define SPI_WRSR (0x01) //Write Status Register
#define SPI_READ (0x03) //Read data from memory
#define SPI_PP (0x02) //Program Data into memory
#define SPI_SE (0x52) //Erase one sector in memory
#define SPI_BE (0x62) //Erase all memory
#define WIP (0x1) //Check the write in progress bit of the SPI status register
#define WEL (0x2) //Check the write enable bit of the SPI status register
//Maximum number of bytes that can be sent to the SPI in a single program sequence
#define SPI_PAGE_SIZE (256)
//Sector Size
#define SPI_SECTORS (0x2) //Includes 4 sectors
#define SPI_SECTOR_SIZE (0x8000) //The sector size
//24 bit addressable devices get an extra address byte
#define SPI_24BIT_ADDRESSING
#endif
//////////////////////////////////////////////////////////////////////////////////////////
#ifdef Atmel_AT25F1024
//This device is part of the flash family
#define SPI_FLASH
#define SPI_Description "Atmel AT25F1024"
//Flash commands
#define SPI_WREN (0x06) //Set Write Enable Latch
#define SPI_WRDI (0x04) //Reset Write Enable Latch
#define SPI_RDSR (0x05) //Read Status Register
#define SPI_WRSR (0x01) //Write Status Register
#define SPI_READ (0x03) //Read data from memory
#define SPI_PP (0x02) //Program Data into memory
#define SPI_SE (0x52) //Erase one sector in memory
#define SPI_BE (0x62) //Erase all memory
#define WIP (0x1) //Check the write in progress bit of the SPI status register
#define WEL (0x2) //Check the write enable bit of the SPI status register
//Maximum number of bytes that can be sent to the SPI in a single program sequence
#define SPI_PAGE_SIZE (256)
//Sector Size
#define SPI_SECTORS (0x4) //Includes 4 sectors
#define SPI_SECTOR_SIZE (0x8000) //The sector size
//24 bit addressable devices get an extra address byte
#define SPI_24BIT_ADDRESSING
#endif
//////////////////////////////////////////////////////////////////////////////////////////
#ifdef Atmel_AT25P1024
//This device is part of the EEPROM family
#define SPI_EEPROM
#define SPI_Description "Atmel AT25P1024"
//Flash commands
#define SPI_WREN (0x06) //Set Write Enable Latch
#define SPI_WRDI (0x04) //Reset Write Enable Latch
#define SPI_RDSR (0x05) //Read Status Register
#define SPI_WRSR (0x01) //Write Status Register
#define SPI_READ (0x03) //Read data from memory
#define SPI_PP (0x02) //Program Data into memory
#define SPI_SE (0xD8) //Erase one sector in memory
#define SPI_BE (0xC7) //Erase all memory
#define WIP (0x1) //Check the write in progress bit of the SPI status register
#define WEL (0x2) //Check the write enable bit of the SPI status register
//Maximum number of bytes that can be sent to the SPI in a single program sequence
#define SPI_PAGE_SIZE (128)
//Sector Size
#define SPI_SECTORS (0x1) //Includes 1 sector
#define SPI_SECTOR_SIZE (0x20000) //The sector size
//24 bit addressable devices get an extra address byte
#define SPI_24BIT_ADDRESSING
#endif
//////////////////////////////////////////////////////////////////////////////////////////
#ifdef Atmel_AT45DB081B
#define SPI_Description "Atmel AT45DB081B"
//Flash commands
#define SPI_WREN (0x06) //Set Write Enable Latch
#define SPI_WRDI (0x04) //Reset Write Enable Latch
#define SPI_RDSR (0xD7) //Read Status Register
#define SPI_WRSR (0x01) //Write Status Register
#define SPI_READ (0xE8) //Read data from memory
#define SPI_PP (0x82) //Program Data into memory
#define SPI_SE (0xD8) //Erase one sector in memory
#define SPI_BE (0xC7) //Erase all memory
#define WIP (0x80) //Check the write in progress bit of the SPI status register
#define WEL (0x80) //Check the write enable bit of the SPI status register
//Maximum number of bytes that can be sent to the SPI in a single program sequence
#define SPI_PAGE_SIZE (264)
//Sector Size
#define SPI_SECTORS (0x1) //Includes 1 sector
#define SPI_SECTOR_SIZE (0x107EF8) //The sector size
#define PAGE_SIZE_DIFF (248)
//24 bit addressable devices get an extra address byte
#define SPI_24BIT_ADDRESSING
#define ATMEL_DATAFLASH
#endif
//////////////////////////////////////////////////////////////////////////////////////////
#if defined (Atmel_AT25640) || defined (MicroChip_25xx640)
//This device is part of the EEPROM family
#define SPI_EEPROM
#ifdef Atmel_AT25640
#define SPI_Description "Atmel AT25640"
#endif
#ifdef MicroChip_25xx640
#define SPI_Description "MicroChip 25xx640"
#endif
//Flash commands
#define SPI_WREN (0x06) //Set Write Enable Latch
#define SPI_WRDI (0x04) //Reset Write Enable Latch
#define SPI_RDSR (0x05) //Read Status Register
#define SPI_WRSR (0x01) //Write Status Register
#define SPI_READ (0x03) //Read data from memory
#define SPI_PP (0x02) //Program Data into memory
#define SPI_SE (0xD8) //Erase one sector in memory
#define SPI_BE (0xC7) //Erase all memory
#define WIP (0x1) //Check the write in progress bit of the SPI status register
#define WEL (0x2) //Check the write enable bit of the SPI status register
//Maximum number of bytes that can be sent to the SPI in a single program sequence
#define SPI_PAGE_SIZE (32)
//Sector Size
#define SPI_SECTORS (0x1) //Includes 1 sector
#define SPI_SECTOR_SIZE (0x2000) //The sector size
//16 bit addressable device
#define SPI_16BIT_ADDRESSING
#endif
//////////////////////////////////////////////////////////////////////////////////////////
#ifdef Atmel_AT25020
//This device is part of the EEPROM family
#define SPI_EEPROM
#define SPI_Description "Atmel AT25020"
//Flash commands
#define SPI_WREN (0x06) //Set Write Enable Latch
#define SPI_WRDI (0x04) //Reset Write Enable Latch
#define SPI_RDSR (0x05) //Read Status Register
#define SPI_WRSR (0x01) //Write Status Register
#define SPI_READ (0x03) //Read data from memory
#define SPI_PP (0x02) //Program Data into memory
#define SPI_SE (0xD8) //Erase one sector in memory
#define SPI_BE (0xC7) //Erase all memory
#define WIP (0x1) //Check the write in progress bit of the SPI status register
#define WEL (0x2) //Check the write enable bit of the SPI status register
//Maximum number of bytes that can be sent to the SPI in a single program sequence
#define SPI_PAGE_SIZE (8)
//Sector Size
#define SPI_SECTORS (0x1) //Includes 1 sector
#define SPI_SECTOR_SIZE (0xFF) //The sector size
//16 bit addressable device
#define SPI_8BIT_ADDRESSING
#endif
//////////////////////////////////////////////////////////////////////////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -