nvSRAM 3 Click Board
nvSRAM 3 Click Board
The nvSRAM 3 Click Board™ is a compact add-on board with the most reliable nonvolatile memory. This board features the CY14B101I, a 1-Mbit nvSRAM organized as 128K words of 8 bits each with a fully-featured real-time clock from Cypress Semiconductor. The embedded elements incorporate the QuantumTrap technology and provide highly reliable nonvolatile data storage. It provides infinite read and writes cycles with an additional automatic backup switch. Data transfer, initiated by the user through I2C commands, from SRAM to the nonvolatile elements takes place automatically at Power-Down. On the other hand, during the Power-Up, data is restored to the SRAM from the nonvolatile memory. This Click Board™ is suitable for all applications that require fast access and high reliability of stored data, and unlimited endurance.
The nvSRAM 3 Click is supported by a mikroSDK compliant library, which includes functions that simplify software development. This Click Board™ comes as a thoroughly tested product, ready to be used on a system equipped with the mikroBUS™ socket.
Software Support
We provide a library for the nvSRAM 3 Click Board™ as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
The package can be downloaded/installed directly from NECTO Studio The package Manager (recommended), downloaded from our LibStock™ or found on the mikroE Github account.
Library Description
This library contains API for the nvSRAM 3 Click Board™ driver.
Key Functions
nvsram3_cfg_setup
- Config Object Initialization function.nvsram3_init
- Initialization function.nvsram3_default_cfg
- Click Default Configuration function.
Example Description
The demo application shows how to write/read data to/from nvSRAM memory. It also sets RTC date and time, then reads it in an infinite loop and displays results on USB UART each second.
The demo application is composed of two sections :
void application_task ( void ) { nvsram3_get_rtc_time( &nvsram3, &time ); nvsram3_get_rtc_date( &nvsram3, &date ); if ( time.sec != new_sec ) { log_printf( &logger, " Date : %.2d-%.2d-%.4drn", ( uint16_t ) date.day, ( uint16_t ) date.month, ( uint16_t ) date.year ); log_printf( &logger, " Time : %.2d:%.2d:%.2drn", ( uint16_t ) time.hours, ( uint16_t ) time.min, ( uint16_t ) time.sec ); log_printf( &logger, "- - - - - - - - - - - - - - -rn" ); new_sec = time.sec; if ( date.year != c_year ) { log_printf( &logger, " Happy New Year rn" ); c_year = date.year; } else { nvsram3_memory_read( &nvsram3, memory_addr, &rx_data[ 0 ], 9 ); log_printf( &logger, " Read data : %s", rx_data ); } log_printf( &logger, "-----------------------rn" ); } else { Delay_ms( 500 ); } } The full application code, and ready to use projects can be installed directly from NECTO Studio The package Manager (recommended), downloaded from our LibStock™ or found on mikroE Github account.
Other mikroE Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.nvSRAM3
Additional Notes and Information
Depending on the development board you are using, you may need a USB UART Click Board™, USB UART 2 Click Board™ or RS232 Click Board™ 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
The nvSRAM 3 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.
nvSRAM 3 Click Board
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.