Go to the documentation of this file.00001 #ifndef _DEV_AT45D_H_
00002 #define _DEV_AT45D_H_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00046 #include <sys/types.h>
00047 #include <stdint.h>
00048
00059 #define DFCMD_CONT_READ_LF 0x03
00060
00067 #define DFCMD_CONT_READ_HF 0x0B
00068
00071 #define DFCMD_BLOCK_ERASE 0x50
00072
00075 #define DFCMD_SECTOR_ERASE 0x7C
00076
00079 #define DFCMD_PAGE_ERASE 0x81
00080
00083 #define DFCMD_BUF1_PROG 0x82
00084
00087 #define DFCMD_BUF1_FLASH 0x83
00088
00091 #define DFCMD_BUF1_WRITE 0x84
00092
00094 #define DFCMD_BUF2_PROG 0x85
00095
00098 #define DFCMD_BUF2_FLASH 0x86
00099
00102 #define DFCMD_BUF2_WRITE 0x87
00103
00106 #define DFCMD_BUF1_FLASH_NE 0x88
00107
00110 #define DFCMD_BUF2_FLASH_NE 0x89
00111
00113 #define DFCMD_CHIP_ERASE 0xC7
00114
00117 #define DFCMD_BUF1_READ_LF 0xD1
00118
00124 #define DFCMD_READ_PAGE 0xD2
00125
00128 #define DFCMD_BUF2_READ_LF 0xD3
00129
00132 #define DFCMD_BUF1_READ 0xD4
00133
00136 #define DFCMD_BUF2_READ 0xD6
00137
00140 #define DFCMD_READ_STATUS 0xD7
00141
00148 #define DFCMD_CONT_READ 0xE8
00149
00157 #define AT45D_STATUS_RDY 0x80
00158
00159 #define AT45D_STATUS_COMP 0x40
00160
00161 #define AT45D_STATUS_DENSITY 0x3C
00162
00163 #define AT45D_STATUS_PROTECT 0x02
00164
00165 #define AT45D_STATUS_PAGE_SIZE 0x01
00166
00172 typedef CONST struct _AT45D_INFO AT45D_INFO;
00173
00177 struct _AT45D_INFO {
00179 uint_fast8_t at45d_pshft;
00181 uint32_t at45d_pages;
00183 size_t at45d_psize;
00185 uint_fast8_t at45d_srval;
00186 };
00187
00191 extern AT45D_INFO at45d_info[];
00192
00196 extern uint_fast8_t at45d_known_types;
00197
00198 #endif