Board specific Dataflash driver header for the Atmel EVK527.
More...
Board specific Dataflash driver header for the Atmel EVK527.
Name | Info | Select Pin | SPI Port |
DATAFLASH_CHIP1 | AT45DB321C (4MB) | PORTE.6 | SPI0 |
#define DATAFLASH_CHIP1 (1 << 6) |
Mask for the first dataflash chip selected.
#define DATAFLASH_NO_CHIP 0 |
Mask for no dataflash chip selected.
#define DATAFLASH_PAGE_SIZE 512 |
Internal main memory page size for the board's dataflash IC.
#define DATAFLASH_PAGES 8192 |
Total number of pages inside the board's dataflash IC.
#define DATAFLASH_TOTALCHIPS 1 |
Constant indicating the total number of dataflash ICs mounted on the selected board.
static void Dataflash_DeselectChip |
( |
void |
| ) |
|
|
inlinestatic |
Deselects the current dataflash chip, so that no dataflash is selected.
static uint8_t Dataflash_GetSelectedChip |
( |
void |
| ) |
|
|
inlinestatic |
Determines the currently selected dataflash chip.
- Returns
- Mask of the currently selected Dataflash chip, either DATAFLASH_NO_CHIP if no chip is selected or a DATAFLASH_CHIPn mask (where n is the chip number).
static void Dataflash_Init |
( |
void |
| ) |
|
|
inlinestatic |
Initializes the dataflash driver so that commands and data may be sent to an attached dataflash IC. The appropriate SPI interface will be automatically configured.
static uint8_t Dataflash_ReceiveByte |
( |
void |
| ) |
|
|
inlinestatic |
Sends a dummy byte to the currently selected dataflash IC, and returns the next byte from the dataflash.
- Returns
- Last response byte from the dataflash
static void Dataflash_SelectChip |
( |
const uint8_t |
ChipMask | ) |
|
|
inlinestatic |
Selects the given dataflash chip.
- Parameters
-
[in] | ChipMask | Mask of the Dataflash IC to select, in the form of a DATAFLASH_CHIPn mask (where n is the chip number). |
static void Dataflash_SelectChipFromPage |
( |
const uint16_t |
PageAddress | ) |
|
|
inlinestatic |
Selects a dataflash IC from the given page number, which should range from 0 to ((DATAFLASH_PAGES * DATAFLASH_TOTALCHIPS) - 1). For boards containing only one dataflash IC, this will select DATAFLASH_CHIP1. If the given page number is outside the total number of pages contained in the boards dataflash ICs, all dataflash ICs are deselected.
- Parameters
-
[in] | PageAddress | Address of the page to manipulate, ranging from 0 to ((DATAFLASH_PAGES * DATAFLASH_TOTALCHIPS) - 1). |
static void Dataflash_SendAddressBytes |
( |
uint16_t |
PageAddress, |
|
|
const uint16_t |
BufferByte |
|
) |
| |
|
inlinestatic |
Sends a set of page and buffer address bytes to the currently selected dataflash IC, for use with dataflash commands which require a complete 24-bit address.
- Parameters
-
[in] | PageAddress | Page address within the selected dataflash IC |
[in] | BufferByte | Address within the dataflash's buffer |
static void Dataflash_SendByte |
( |
const uint8_t |
Byte | ) |
|
|
inlinestatic |
Sends a byte to the currently selected dataflash IC, and ignores the next byte from the dataflash.
- Parameters
-
[in] | Byte | Byte of data to send to the dataflash |
static void Dataflash_ToggleSelectedChipCS |
( |
void |
| ) |
|
|
inlinestatic |
Toggles the select line of the currently selected dataflash IC, so that it is ready to receive a new command.
static uint8_t Dataflash_TransferByte |
( |
const uint8_t |
Byte | ) |
|
|
inlinestatic |
Sends a byte to the currently selected dataflash IC, and returns a byte from the dataflash.
- Parameters
-
[in] | Byte | Byte of data to send to the dataflash |
- Returns
- Last response byte from the dataflash
static void Dataflash_WaitWhileBusy |
( |
void |
| ) |
|
|
inlinestatic |
Spin-loops while the currently selected dataflash is busy executing a command, such as a main memory page program or main memory to buffer transfer.