|
ChibiOS
0.0.0
|
Micron serial flash driver header. More...
#include "hal_jesd216_flash.h"Go to the source code of this file.
Data Structures | |
| struct | M25QConfig |
| Type of a M25Q configuration structure. More... | |
| struct | M25QDriverVMT |
M25Q virtual methods table. More... | |
| struct | M25QDriver |
| Type of M25Q flash class. More... | |
Macros | |
| #define | _m25q_methods _jesd216_flash_methods |
M25Q specific methods. More... | |
Version identification | |
| #define | EX_M25Q_VERSION "1.0.0" |
| M25Q driver version string. More... | |
| #define | EX_M25Q_MAJOR 1 |
| M25Q driver version major number. More... | |
| #define | EX_M25Q_MINOR 0 |
| M25Q driver version minor number. More... | |
| #define | EX_M25Q_PATCH 0 |
| M25Q driver version patch number. More... | |
Command codes | |
| #define | M25Q_CMD_RESET_ENABLE 0x66 |
| #define | M25Q_CMD_RESET_MEMORY 0x99 |
| #define | M25Q_CMD_READ_ID 0x9F |
| #define | M25Q_CMD_MULTIPLE_IO_READ_ID 0xAF |
| #define | M25Q_CMD_READ_DISCOVERY_PARAMETER 0x5A |
| #define | M25Q_CMD_READ 0x03 |
| #define | M25Q_CMD_FAST_READ 0x0B |
| #define | M25Q_CMD_WRITE_ENABLE 0x06 |
| #define | M25Q_CMD_WRITE_DISABLE 0x04 |
| #define | M25Q_CMD_READ_STATUS_REGISTER 0x05 |
| #define | M25Q_CMD_WRITE_STATUS_REGISTER 0x01 |
| #define | M25Q_CMD_READ_LOCK_REGISTER 0xE8 |
| #define | M25Q_CMD_WRITE_LOCK_REGISTER 0xE5 |
| #define | M25Q_CMD_READ_FLAG_STATUS_REGISTER 0x70 |
| #define | M25Q_CMD_CLEAR_FLAG_STATUS_REGISTER 0x50 |
| #define | M25Q_CMD_READ_NV_CONFIGURATION_REGISTER 0xB5 |
| #define | M25Q_CMD_WRITE_NV_CONFIGURATION_REGISTER 0xB1 |
| #define | M25Q_CMD_READ_V_CONF_REGISTER 0x85 |
| #define | M25Q_CMD_WRITE_V_CONF_REGISTER 0x81 |
| #define | M25Q_CMD_READ_ENHANCED_V_CONF_REGISTER 0x65 |
| #define | M25Q_CMD_WRITE_ENHANCED_V_CONF_REGISTER 0x61 |
| #define | M25Q_CMD_PAGE_PROGRAM 0x02 |
| #define | M25Q_CMD_SUBSECTOR_ERASE 0x20 |
| #define | M25Q_CMD_SECTOR_ERASE 0xD8 |
| #define | M25Q_CMD_BULK_ERASE 0xC7 |
| #define | M25Q_CMD_PROGRAM_ERASE_RESUME 0x7A |
| #define | M25Q_CMD_PROGRAM_ERASE_SUSPEND 0x75 |
| #define | M25Q_CMD_READ_OTP_ARRAY 0x4B |
| #define | M25Q_CMD_PROGRAM_OTP_ARRAY 0x42 |
Flags status register bits | |
| #define | M25Q_FLAGS_PROGRAM_ERASE 0x80U |
| #define | M25Q_FLAGS_ERASE_SUSPEND 0x40U |
| #define | M25Q_FLAGS_ERASE_ERROR 0x20U |
| #define | M25Q_FLAGS_PROGRAM_ERROR 0x10U |
| #define | M25Q_FLAGS_VPP_ERROR 0x08U |
| #define | M25Q_FLAGS_PROGRAM_SUSPEND 0x04U |
| #define | M25Q_FLAGS_PROTECTION_ERROR 0x02U |
| #define | M25Q_FLAGS_RESERVED 0x01U |
| #define | M25Q_FLAGS_ALL_ERRORS |
Configuration options | |
| #define | M25Q_READ_DUMMY_CYCLES 8 |
| Number of dummy cycles for fast read (1..15). More... | |
| #define | M25Q_SWITCH_WIDTH TRUE |
| Switch QSPI bus width on initialization. More... | |
| #define | M25Q_NICE_WAITING TRUE |
| Delays insertions. More... | |
| #define | M25Q_USE_SUB_SECTORS FALSE |
| Uses 4kB sub-sectors rather than 64kB sectors. More... | |
| #define | M25Q_SUPPORTED_MANUFACTURE_IDS {0x20} |
| Supported JEDEC manufacturer identifiers. More... | |
| #define | M25Q_SUPPORTED_MEMORY_TYPE_IDS {0xBA, 0xBB} |
| Supported memory type identifiers. More... | |
| #define | M25Q_COMPARE_BUFFER_SIZE 32 |
| Size of the compare buffer. More... | |
Functions | |
| void | m25qObjectInit (M25QDriver *devp) |
| Initializes an instance. More... | |
| void | m25qStart (M25QDriver *devp, const M25QConfig *config) |
| Configures and activates N25Q128 driver. More... | |
| void | m25qStop (M25QDriver *devp) |
| Deactivates the N25Q128 driver. More... | |
| void | m25qMemoryMap (M25QDriver *devp, uint8_t **addrp) |
| Enters the memory Mapping mode. More... | |
| void | m25qMemoryUnmap (M25QDriver *devp) |
| Leaves the memory Mapping mode. More... | |
Micron serial flash driver header.
Definition in file m25q.h.