Stufin
Home Quick Cart Profile

W25Q64 NorFlash Storage Module 64Mbit

Buy Now on Stufin

Component Name

W25Q64 NorFlash Storage Module 64Mbit

Overview

The W25Q64 NorFlash Storage Module is a 64Mbit (8MB) non-volatile flash memory chip designed for use in a variety of Internet of Things (IoT) applications. This module provides a reliable and efficient means of storing data in devices that require low power consumption and high storage capacity.

Functionality

The W25Q64 NorFlash Storage Module is a serial flash memory device that operates on a single 3.3V power supply. It features a standard Serial Peripheral Interface (SPI) bus, enabling communication with microcontrollers and other devices. The module's primary function is to store data, such as firmware, configuration settings, and user data, in a non-volatile manner, allowing the data to be retained even when power is removed.

Key Features

### Performance

Frequency

The module operates at a maximum frequency of 104MHz, enabling fast data transfer and access.

Read Speed

The read speed of the module is up to 104MHz, allowing for efficient data retrieval.

### Memory Organization

Memory Size

64Mbit (8MB) of non-volatile flash memory.

Sector Organization

The memory is organized into 128 sectors, each of 64KB.

Page Organization

Each sector consists of 128 pages, each of 528 bytes.

### Reliability and Security

Error Correction

The module features built-in Error Correction Code (ECC) to detect and correct data errors.

Write Protection

The module provides hardware and software write protection mechanisms to prevent unauthorized data modification.

Secure Erase

The module supports a secure erase function, which allows for the secure deletion of sensitive data.

### Power Management

Low Power Consumption

The module operates at a low power consumption of 20mA (typical) during read operations.

Power-Down ModeThe module features a power-down mode, which reduces power consumption to 10A (typical) when not in use.

### Compatibility and Interface

SPI Interface

The module uses a standard 4-wire SPI interface, ensuring compatibility with a wide range of microcontrollers and devices.

Operating Temperature

The module operates across a temperature range of -40C to +85C, making it suitable for use in various IoT applications.

Package and Dimensions

The W25Q64 NorFlash Storage Module comes in a 8-pin SOP (Small Outline Package) package, with dimensions of 5.3mm x 4.9mm x 1.5mm.

Operating Conditions

Supply Voltage

2.7V to 3.6V

Input/Output Logic LevelsCMOS compatible

Application

The W25Q64 NorFlash Storage Module is suitable for use in a variety of IoT applications, including

Wireless sensor nodes

Industrial control systems

Smart home devices

Wearable devices

IoT gateways and routers

Pin Configuration

  • W25Q64 NorFlash Storage Module 64Mbit Pinout Description
  • The W25Q64 NorFlash Storage Module is a 64Mbit serial flash memory module that provides a reliable and efficient storage solution for various IoT applications. The module has a 8-pin SOP (Small Outline Package) footprint, and each pin plays a crucial role in the operation of the device. Below is a detailed description of each pin and how to connect them:
  • Pin 1: VCC (Power Supply)
  • -----------------------------
  • Function: Provides power to the module
  • Voltage: Typically 3.3V or 5V (dependent on the system requirements)
  • Connection: Connect to the positive terminal of the power supply or a voltage regulator output
  • Pin 2: GND (Ground)
  • -------------------------
  • Function: Provides a ground reference for the module
  • Connection: Connect to the negative terminal of the power supply or system ground
  • Pin 3: SI (Serial Input)
  • ---------------------------
  • Function: Receives serial data from the host controller
  • Connection: Connect to the transmit pin of the host controller (e.g., MCU, CPU, or microcontroller)
  • Pin 4: SO (Serial Output)
  • ---------------------------
  • Function: Transmits serial data to the host controller
  • Connection: Connect to the receive pin of the host controller (e.g., MCU, CPU, or microcontroller)
  • Pin 5: SCK (Serial Clock)
  • -----------------------------
  • Function: Provides a clock signal for serial data transfer
  • Connection: Connect to the clock pin of the host controller (e.g., MCU, CPU, or microcontroller)
  • Pin 6: WP (Write Protect)
  • ---------------------------
  • Function: Enables or disables write protection for the memory
  • Connection: Connect to a logic high (VCC) to enable write protection or a logic low (GND) to disable write protection
  • Pin 7: HOLD (Hold)
  • ----------------------
  • Function: Suspends the current operation and puts the device in a low-power state
  • Connection: Connect to a logic high (VCC) to hold the device or a logic low (GND) to release the device
  • Pin 8: NC (No Connect)
  • -------------------------
  • Function: Not connected internally
  • Connection: Leave unconnected
  • Connection Structure:
  • To connect the W25Q64 NorFlash Storage Module to a host controller, follow this structure:
  • VCC (Pin 1) -> Power Supply (e.g., 3.3V or 5V)
  • GND (Pin 2) -> System Ground
  • SI (Pin 3) -> Host Controller Transmit Pin (e.g., MCU, CPU, or microcontroller)
  • SO (Pin 4) -> Host Controller Receive Pin (e.g., MCU, CPU, or microcontroller)
  • SCK (Pin 5) -> Host Controller Clock Pin (e.g., MCU, CPU, or microcontroller)
  • WP (Pin 6) -> Write Protect Signal (e.g., pull-up or pull-down resistor)
  • HOLD (Pin 7) -> Hold Signal (e.g., pull-up or pull-down resistor)
  • NC (Pin 8) -> Leave Unconnected
  • Please note that the specific connection details may vary depending on the host controller and system requirements. Ensure proper voltage levels and signal integrity to avoid damage to the module or the system.

Code Examples

W25Q64 NorFlash Storage Module 64Mbit Documentation
Overview
The W25Q64 NorFlash Storage Module is a 64Mbit Serial Flash memory chip that provides a reliable and efficient storage solution for various IoT applications. This module is designed to be compatible with a wide range of microcontrollers and development boards.
Features
64Mbit (8MB) of storage capacity
 Operates at 1.8V to 3.6V power supply
 SPI (Serial Peripheral Interface) bus compatible
 Fast read and write performance (up to 104MHz clock frequency)
 Low power consumption (active read current: 15mA, standby current: 1A)
Pinout
The W25Q64 NorFlash Storage Module has a 8-pin package with the following pinout:
VCC (1.8V to 3.6V power supply)
 GND (ground)
 SCK (clock input)
 MOSI (master out, slave in)
 MISO (master in, slave out)
 CS (chip select)
 WP (write protect)
 HOLD (hold)
Code Examples
### Example 1: Basic Read and Write Operations using Arduino
In this example, we will use the Arduino Uno development board to demonstrate basic read and write operations with the W25Q64 NorFlash Storage Module.
Hardware Connections
VCC to Arduino 3.3V pin
 GND to Arduino GND pin
 SCK to Arduino SCK pin (pin 13)
 MOSI to Arduino MOSI pin (pin 11)
 MISO to Arduino MISO pin (pin 12)
 CS to Arduino digital pin 10
 WP and HOLD not connected (optional)
Software
```c++
#include <SPI.h>
const int csPin = 10;  // Chip select pin
void setup() {
  SPI.begin();
  pinMode(csPin, OUTPUT);
  digitalWrite(csPin, HIGH); // Initialize chip select as high
}
void loop() {
  // Write data to NorFlash
  byte dataToWrite[] = {0x01, 0x02, 0x03, 0x04, 0x05};
  digitalWrite(csPin, LOW);
  SPI.transfer(0x06); // Write enable command
  SPI.transfer(0x00); // Address 0x000000
  SPI.transfer(dataToWrite, 5);
  digitalWrite(csPin, HIGH);
delay(1000);
// Read data from NorFlash
  byte dataRead[5];
  digitalWrite(csPin, LOW);
  SPI.transfer(0x03); // Read command
  SPI.transfer(0x00); // Address 0x000000
  SPI.transfer(dataRead, 5);
  digitalWrite(csPin, HIGH);
// Print read data
  for (int i = 0; i < 5; i++) {
    Serial.print("Data ");
    Serial.print(i);
    Serial.print(": ");
    Serial.println(dataRead[i], HEX);
  }
delay(1000);
}
```
### Example 2: Using the W25Q64 with a Raspberry Pi Pico (MicroPython)
In this example, we will use the Raspberry Pi Pico microcontroller board to demonstrate how to use the W25Q64 NorFlash Storage Module with MicroPython.
Hardware Connections
VCC to Raspberry Pi Pico 3.3V pin
 GND to Raspberry Pi Pico GND pin
 SCK to Raspberry Pi Pico GP6 pin
 MOSI to Raspberry Pi Pico GP7 pin
 MISO to Raspberry Pi Pico GP4 pin
 CS to Raspberry Pi Pico GP5 pin
 WP and HOLD not connected (optional)
Software
```python
import machine
import utime
# Initialize SPI bus
spi = machine.SPI(0, baudrate=1000000, sck=machine.Pin(6), mosi=machine.Pin(7), miso=machine.Pin(4))
# Initialize chip select pin
cs = machine.Pin(5, machine.Pin.OUT)
cs.value(1)  # Initialize chip select as high
# Write data to NorFlash
data_to_write = bytearray([0x01, 0x02, 0x03, 0x04, 0x05])
cs.value(0)  # Select chip
spi.write(b'x06' + b'x00' + data_to_write)  # Write enable command and data
cs.value(1)  # Deselect chip
utime.sleep(1)
# Read data from NorFlash
data_read = bytearray(5)
cs.value(0)  # Select chip
spi.write(b'x03' + b'x00')  # Read command
spi.readinto(data_read)  # Read data
cs.value(1)  # Deselect chip
# Print read data
for i in range(5):
    print(f"Data {i}: {data_read[i]:02x}")
```
Note: These examples are for illustrative purposes only and may require modifications to work with your specific use case. Additionally, ensure to follow the recommended operating conditions and handling precautions for the W25Q64 NorFlash Storage Module to prevent damage or data loss.