67 #ifndef FLASHAT45DB_H_
68 #define FLASHAT45DB_H_
70 #include "../dev/mspi.h"
72 #include <util/delay.h>
87 #define AT45DB_STATUS_REG 0xD7
92 #define AT45DB_BLOCK_ERASE 0x50
96 #define AT45DB_PAGE_ERASE 0x81
100 #define AT45DB_PAGE_PROGRAM_1 0x82
104 #define AT45DB_PAGE_PROGRAM_2 0x85
109 #define AT45DB_BUFFER_1 0x84
113 #define AT45DB_BUFFER_2 0x87
118 #define AT45DB_BUF_1_TO_PAGE 0x83 //0x88 without auto erase
122 #define AT45DB_BUF_2_TO_PAGE 0x86 //0x89 without auto erase
126 #define AT45DB_PAGE_READ 0xD2
133 #define AT45DB_PAGE_TO_BUF 0x55 //use buffer 2
139 #define AT45DB_READ_BUFFER 0xD6
159 volatile uint8_t buffer_addr[2];
164 volatile uint8_t buf_to_page_addr[2];
169 volatile uint8_t page_program[2];
245 void at45db_write_page(uint16_t p_addr, uint16_t b_addr, uint8_t *buffer, uint16_t bytes);