Free shipment for orders above $200 - offer lasts until November 20 at 11:00 CET
Product successfully added to your shopping cart
There are 0 items in your cart. There is 1 item in your cart.
Total products
Total shipping  To be determined
Continue shopping Proceed to checkout

Flash 2 click


20 g

Flash 2 click is a mikroBUS™ add-on board for adding more Flash Memory to your target board microcontroller. It carries Microchip’s SST26VF064B flash-memory module with 64 Mbits capacity.

More details


Quantity Unit Price
5 $11.40
20 $10.80

Flash 2 click is a mikroBUS™ add-on board for adding more Flash Memory to your target board microcontroller. It carries Microchip’s SST26VF064B flash-memory module with 64 Mbits capacity. It’s a highly reliable module with a specified minimum of 100,000 read and write cycles and with over 100 years of Data Retention. For data security, the module features a One-Time Programmable (OTP) 2 KB bit secure ID and a 64 bit unique, factory pre-programmed identifier. Additional software security measures include inidividual-block write Protection with permanent lock-down capability. Flash 2 click communicates with the target MCU through the mikroBUS™ SPI interface (CS#, SCK, MISO, MOSI) with additional functionality provided by the #HOLD pin (in place of default mikroBUS™ RST pin). The board is designed to use a 3.3V power supply.


Type Flash
Applications Ideal as a mass storage option in multimedia devices, drives, optical and printing devices.
On-board modules Microchip’s SST26VF064B flash-memory module with 64 Mbits capacity
Key Features 100,000 write cycles with 100 years of data retention.
Key Benefits One-Time programmable 2 KB secure ID. 64 bit, factory pre-programmed identifier.
Interface GPIO,SPI
Input Voltage 3.3V
Compatibility mikroBUS
Click board size S (28.6 x 25.4 mm)

Features and usage notes

The SST26VF064B/064BA memory array is organized in uniform, 4 KByte erasable sectors with the following erasable blocks:

  • - Eight 8 KB parameter
  • - Two 32 KByte overlay
  • - One-hundred twenty-six 64 KByte overlay blocks

The #HOLD pin temporarily stops serial communication with the SPI Flash memory while the device is selected. This pin only works in SPI, single-bit and dual-bit Read mode and must be tied high when not in use.

The manufacturer's data sheet has more information about the memory protection features of the chip:

"SST26VF064B/064BA offers flexible memory protection scheme that allows the protection state of each individual block to be controlled separately. In addition, the Write-Protection Lock-Down register prevents any change of the lock status during device operation. To avoid inadvertent writes during power-up, the device is write-protected by default after a power-on reset cycle. A Global Block Protection Unlock command offers a single command cycle that unlocks the entire memory array for faster manufacturing throughput."


This snippet initializes all necessary pins and functions for using Flash 2 Click, and performs a test by writing test values to the click, and then reading them back to the user through UART communication.

 1 #include <stdint.h>
 2 #include "flash_2_hw.h"
 4 sbit FLASH_2_WP at GPIOA_ODR.B0;
 5 sbit FLASH_2_CS at GPIOD_ODR.B13;
 6 sbit FLASH_2_HLD at GPIOC_ODR.B2;
 8 int main(void)
 9 {
11      uint8_t buffer[4]                      = {15,20,25,30};
12      uint16_t count                        = 4;
13      uint32_t address                    = 0x0100F0;
14      uint8_t receive_buffer[4];
15      char tmp[20];
17     GPIO_Digital_Output( &GPIOA_BASE, _GPIO_PINMASK_0 );
18     GPIO_Digital_Output( &GPIOC_BASE, _GPIO_PINMASK_2 );
19     GPIO_Digital_Output( &GPIOD_BASE, _GPIO_PINMASK_13 );
21     SPI1_Init_Advanced( _SPI_FPCLK_DIV64,
22                           _SPI_MASTER | _SPI_8_BIT | _SPI_CLK_IDLE_LOW |
23                           _SPI_FIRST_CLK_EDGE_TRANSITION | _SPI_MSB_FIRST |
24                           _SPI_SS_DISABLE | _SPI_SSM_ENABLE |
25                           _SPI_SSI_1,
26                           &_GPIO_MODULE_SPI3_PC10_11_12 );
28     Delay_ms(300);
30     UART1_Init(9600);
31     Delay_ms(300);
33     UART1_Write_Text( "Initializing Flash 2 click... " );
34     UART1_Write_Text( "rn" );
35     flash_2_init();
36     Delay_ms(300);
37     flash_2_global_block_unlock();
38     Delay_ms(400);
39     flash_2_write( address, buffer, count );
40     flash_2_read( address, receive_buffer, count );
42     UART1_Write_Text( "Initial Values: " );
43     while( count-- )
44     {
45        ByteToStr( buffer[count], tmp );
46        UART1_Write_Text( tmp );
47     }
48     UART1_Write_Text( "rn" );
49     count = 4;
51     UART1_Write_Text( "Received Values: " );
52     while( count -- )
53     {
54        ByteToStr( receive_buffer[count], tmp );
55        UART1_Write_Text( tmp );
56     }
57     UART1_Write_Text( "rn" );
59     return;
60 }

Code examples that demonstrate the usage of Flash 2 click with MikroElektronika hardware, written for mikroC for ARM, AVR, dsPIC, FT90x, PIC and PIC32 are available on Libstock

You Might Also Need

Products in the same category

Send a message

Flash 2 click

Flash 2 click

What can we do for you?