Skip to main content

Crate is25lp128f

Crate is25lp128f 

Source
Expand description

Async no_std driver for ISSI IS25LP128F 128 Mbit SPI NOR flash.

§Implemented instructions (Table 6.3 and companion reads)

OpcodeMnemonicMethod
01hWRSRwrite_status, write_status_volatile
02hPPwrite_page
03hREADread
04hWRDIdisable_write_latch
05hRDSRread_status
06hWRENenable_write_latch
0BhFast Readread_fast, read_fast_with_dummy
3BhFast Read Dual Outputread_fast_dual_output
6BhFast Read Quad Outputread_fast_quad_output
BBhFast Read Dual I/Oread_fast_dual_io
EBhFast Read Quad I/Oread_fast_quad_io
0FhRead Read Regread_read_register (opcode per datasheet)
12h4PPwrite_page_4byte
14hRDABRread_autoboot_register
15hWRABRwrite_autoboot_register
16hRDBRread_bank_register
17hWRBRV (no WREN)write_bank_register_volatile_no_wren
18hWRBRNVwrite_bank_register_nv
21h4SERerase_4byte (4K)
29hEX4Bexit_4byte_address_mode
32hPPQwrite_page_quad
34h4PPQwrite_page_4byte_quad
42hWRFRwrite_function_register
48hRDFRread_function_register
4BhRDUIDread_unique_id
4FhRead Extended Read Regread_extended_read_register (opcode per datasheet)
50hVSRWE(used by write_status_volatile)
52hBER32erase (32K)
5AhRead SFDPread_sfdp
5Ch4BER32erase_4byte (32K)
62hIRPprogram_information_row
63hSRPVset_read_parameters_volatile
64hIRERerase_information_row
65hSRPNVset_read_parameters_nv
66h/99hResetsoftware_reset
75hSuspendsuspend
7AhResumeresume
7EhGBLKgang_lock
83hSERPVset_extended_read_parameters_volatile
85hSERPNVset_extended_read_parameters_nv
91hSFRZset_freeze
98hGBUNgang_unlock
9FhRDIDread_jedec_id
A6hWRPLBwrite_ppb_lock
A7hRDPLBread_ppb_lock
ABhRelease DPexit_deep_power_down
B7hEN4Benter_4byte_address_mode
B9hEnter DPenter_deep_power_down
C5hWRBRVwrite_bank_register_volatile
C7hCERfull_erase
D7hSERerase (4K)
D8hBER64erase (64K)
DCh4BER64erase_4byte (64K)
E0h4RDDYBread_dyb_4byte
E1h4WRDYBwrite_dyb_4byte
E2h4RDPPBread_ppb_4byte
E3h4PGPPBprogram_ppb_4byte
E4hERPPBerase_ppb
E7hRDPWDread_password
E8hPGPWDprogram_password
E9hUNPWDunlock_password
FAhRDDYBread_dyb
FBhWRDYBwrite_dyb
FChRDPPBread_ppb
FDhPGPPBprogram_ppb
2BhRDASPread_asp
2FhPGASPprogram_asp
13hRead 4-byteread_4byte

Modules§

prelude
Prelude for convenient imports.

Structs§

ExtendedReadStatus
Extended Read Register contents (opcode 4Fh). Table 6.12–6.13.
Is25lp128f
ISSI IS25LP128F driver.
JedecId
JEDEC manufacturer and device identification (RDID 9Fh response).
OperationErrors
Operation error bits from the Extended Read Register (EB3:1). Read-only; set by failed erase/program or protection violations. Use read_operation_errors to read after an operation.
Status
Status register (Read Status opcode 0x05)
StatusWrite
Writable status register bits (WRSR 01h). WIP and WEL are read-only; BP0–BP3, QE, SRWD are writable. Datasheet Table 6.1–6.2.

Enums§

AddressMode
Addressing mode for legacy commands. 3-byte is sufficient for 128 Mbit.
BlockProtectionLevel
Block protection level (BP3–BP0) per datasheet Table 6.4. Standard table; TBS selects top vs bottom.
DriverStrength
Output driver strength (ODS) for read modes. Extended Read Register bits EB7, EB6, EB5. Datasheet Table 6.14. SERPNV/SERPV set only these bits; EB4:0 are read-only and not affected.
Error
FlashEraseSize

Constants§

CHIP_SIZE
The total chip size in bytes; Datasheet pp. 2.3
PAGE_SIZE
Flash page size in bytes; Datasheet p. 77
SECTOR_SIZE
START_ADDRESS
Memory map specified starting address; Datasheet p. 14
WRITE_MAX_TIME_MSEC
Max internal write page cycle time is 0.8ms; Datasheet p. 171 Add additional time for robustness

Traits§

HardwareInterface
Spi