How does it work?
SRAM 3 Click is based on the ANV32AA1WDK66, a serial non-volatile SRAM with double memory architecture and SPI serial interface organized as 128k words of 8 bits each from Anvo-System Dresden. This memory has a silicon-oxide-nitride-oxide-silicon (SONOS) flash storage element included with each memory cell. In the case of an unforeseeable operating voltage drop below a defined value, the SONOS technology enables non-volatile storage of all data in less than 15ms. An integrated Power Down functionality of the SRAM 3 Click with a standby current of less than 1µA ensures its low power consumption, with recovery time from Power-Down Mode of typically of 60µs.
This ANV32AA1WDK66 possesses unique safety features, such as Checksum Protected Memory Accesses (Secure READ and Secure WRITE instructions) and Time Monitoring that ensures a high degree of reliability of this Click board™. Corrupt data cannot overwrite existing memory content, and even valid data would not overwrite on a corrupted address. The SRAM 3 Click also provides some distinctive advantages of SRAMs, such as fast access times and unlimited write/read endurance.
SRAM 3 Click incorporates an additional IC, labeled as the TXB0108PWR, an 8-bit bidirectional voltage level translator from Texas Instruments. This allows the Click board™ to be used with a much extensive range of MCUs. At the same time, the TXB0108PWR protects the ANV32AA1WDK66 from the Electrostatic Discharges (ESD) up to ±15 kV, making SRAM 3 Click a very reliable embedded storage solution.
The ANV32AA1WDK66 communicates with MCU using the standard SPI serial interface that supports modes 0 and 3 with a maximum frequency of 66 MHz. It also possesses additional HOLD function routed at the PWM pin of the mikroBUS™ socket labeled as HLD. This pin is used in conjunction with the CS pin to select the device. When the device is selected, and a serial sequence is underway, an HLD pin can be used to pause the serial communication with the master device without resetting the serial sequence.
This Click Board™ is designed to be operated with both 3.3V and 5V logic levels that can be selected via VCC SEL jumper. This allows for both 3.3V and 5V capable MCUs to use the SPI communication lines properly. However, the Click board™ comes equipped with a library that contains easy to use functions and an example code that can be used as a reference for further development.
Specifications
Type
SRAM
Applications
Can be used to store drive profiles, configurations, and similar data, or for applications such as medical devices, industrial automation (for example, motor control and robotics), smart metering systems, and many others.
On-board modules
SRAM 3 Click is based on the ANV32AA1WDK66, a serial non-volatile SRAM with double memory architecture and SPI serial interface organized as 128k words of 8 bits each from Anvo-System Dresden.
Key Features
Low power consumption, high storage capacity, fast access & cycle times, high data accuracy, ease of use, and unlimited read & write accessed by a high-speed SPI compatible bus, 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 SRAM 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 | Power Supply Voltage Selection 3V3/5V, left position 3v3, right position 5v |
SRAM 3 Click electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | 2.7 | 3.3 | 3.6 | V |
Average VCC Current at 66MHz | – | – | 5 | mA |
Operating Temperature Range | 0 | 25 | 70 | °C |
Software Support
We provide a library for the SRAM 3 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
Library provides functions for communicating with device via SPI module, functions for reading and writing to memory as well as some protective functions to prevent data corruption.
Key functions:
void sram3_read( uint32_t mem_adr, uint8_t *read_buf, uint8_t buf_size )
– Function for reading data from memmoryuint8_t sram3_secure_read( uint32_t mem_adr, uint8_t *read_buf )
– Function for reading data from memmory with crc checksum for data validationvoid sram3_write( uint32_t mem_adr, uint8_t *write_buf, uint8_t buf_size )
– Function for writing data to memmoryvoid sram3_secure_write( uint32_t mem_adr, uint8_t *write_buf )
– Function for writing data to memmory with crc checksum for data validation
Examples description
The application is composed of three sections :
- System Initialization – Initialization of SPI module
- Application Initialization – Configures SPI module
- Application Task – Writes “MikroE” to memory location 0x00 and reads from it
void application_task ( ) { uint8_t buff_out[ 10 ] = { 0 }; mikrobus_logWrite( "Writing "MikroE" to memory...", _LOG_LINE ); sram3_enable_write( ); sram3_write( 0x00, &buf[ 0 ], 6 ); Delay_100ms( ); mikrobus_logWrite( "Data read from memory: ", _LOG_TEXT ); sram3_read( 0x00, &buff_out[ 0 ], 6 ); mikrobus_logWrite( &buff_out[ 0 ], _LOG_LINE ); mikrobus_logWrite( "---------------------------------------------", _LOG_LINE ); Delay_1sec( ); }
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
- SPI
- UART
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.