How does it work?
EERAM 3 Click as its foundation uses the 48L256, an SPI nonvolatile EERAM memory IC designed to retain data when power is disrupted from Microchip Technology. The user can treat this Click board™ as a full symmetrical read/write SRAM: it allows symmetrical reads and writes and has no limits on cell usage. It is structured as a 256-Kbit SRAM with EEPROM backup in each memory cell, where SRAM is organized as 32,768×8 bits. The 48L256 specifies 100.000 endurance cycles with data retention of a minimum of 10 years, which gives the 48L256 the unique capability to handle unlimited reads/writes to the memory.
The backup EEPROM is invisible to the user and cannot be accessed by the user independently. The 48L256 includes circuitry that detects VCC voltage dropping below a certain threshold, shuts its connection to the outside environment, and transfers all SRAM data to the EEPROM portion of each cell for safekeeping. When VCC returns, the circuitry automatically returns the data to the SRAM, and the user’s interaction with the SRAM can continue with the same data set.
The 48L256 communicates with MCU through a standard SPI interface that enables very high clock speeds up to 66MHz, supporting the two most common SPI modes – SPI Mode 0 and 3, and a proper logic voltage level conversion performed by the appropriate voltage level translator. The VCC logic level provides a needed reference voltage for one side of the TXB0106, a 6-bit bidirectional level shifting, and a voltage translator with automatic direction sensing from Texas Instruments. On another side of the level shifter, the reference voltage is taken from the 3.3V mikroBUS™ power rail.
Another feature of this Click board™ represents the configurable HOLD function labeled as HLD routed on the INT pin of the mikroBUS™ socket. The HLD pin is used to suspend transmission to the 48L256 while in the middle of a serial sequence without re-transmitting the entire sequence over again. It must be held high any time this function is not being used. Once the device is selected and a serial sequence is underway, the HLD pin may be pulled low to pause further serial communication without resetting the serial sequence.
This Click board™ can operate with both 3.3V and 5V logic voltage levels selected via the VCC SEL jumper. This way, it is allowed for both 3.3V and 5V capable MCUs to use the SPI communication lines properly. However, the Click board™ comes equipped with a library containing easy-to-use functions and an example code that can be used, as a reference, for further development.
Specifications
Type
EERAM
Applications
Can be used for nonvolatile memory applications requiring frequent or rapid writes and unlimited endurance
On-board modules
48L256 – serial EERAM with SRAM memory core, including hidden EEPROM backup from Microchip Technology
Key Features
Low power consumption, unlimited reads/writes, standard serial SRAM protocol, high-speed SPI interface, cell-based nonvolatile backup, data endurance and retention, and more
Interface
SPI
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
S (28.6 x 25.4 mm)
Input Voltage
3.3V or 5V
Pinout diagram
This table shows how the pinout on EERAM 3 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | – | Power LED Indicator |
JP1 | VCC SEL | Left | Logic Level Voltage Selection 3V3/5V: Left position 3V3, Right position 5V |
EERAM 3 Click electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | 3.3 | – | 5 | V |
Memory Size | – | – | 256 | kbit |
Write Endurance | 100.000 | – | – | Store Cycles |
Data Retention | 10 | – | – | Years |
Operating Temperature Range | -40 | +25 | +85 | °C |
Software Support
We provide a library for the EERAM 3 Click as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Package can be downloaded/installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.
Library Description
This library contains API for EERAM 3 Click driver.
Key functions:
eeram3_memory_secure_write
– This function securely writes a desired number of data bytes starting from the selected memory address.eeram3_memory_secure_read
– This function securely reads a desired number of data bytes starting from the selected memory address.eeram3_set_block_protection
– This function sets the block protection bits of the Status register.
Examples description
This example demonstrates the use of EERAM 3 Click board™.
void application_task ( void ) { uint8_t data_buf[ 64 ] = { 0 }; if ( EERAM3_OK == eeram3_memory_secure_write ( &eeram3, STARTING_ADDRESS, DEMO_TEXT_MESSAGE, strlen ( DEMO_TEXT_MESSAGE ) ) ) { log_printf ( &logger, "Data written to address 0x%.4X: %srn", ( uint16_t ) STARTING_ADDRESS, ( char * ) DEMO_TEXT_MESSAGE ); } if ( EERAM3_OK == eeram3_memory_secure_read ( &eeram3, STARTING_ADDRESS, data_buf, strlen ( DEMO_TEXT_MESSAGE ) ) ) { log_printf ( &logger, "Data read from address 0x%.4X: %srnn", ( uint16_t ) STARTING_ADDRESS, data_buf ); Delay_ms ( 3000 ); } }
The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.
Other mikroE Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.EERAM3
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
mikroSDK
This Click board™ is supported with mikroSDK – MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.