9,00
(11,16 inc tax)
075.0056
Out of stock
Add to Wishlist

DESCRIPTION

SWI EEPROM Click is a compact add-on board that provides a highly reliable memory solution. This board features the AT21CS01, a single-wire serial EEPROM with a unique, factory-programmed 64-bit serial number from Microchip Technology. The AT21CS01 has an ultra-high write endurance capability allowing more than one million cycles for each memory location to meet the requirements for today's high-write endurance applications. It is internally as 128 words of 8 bits each with achieved communication through a single I/O pin with Standard-Speed and High-Speed mode options. Also, it offers a security register with a factory-programmed serial number, which makes it the easiest way to add identification to various accessories and consumables. This Click board™ is suitable for applications where identification or memory storage is required.

SWI EEPROM Click is supported by a mikroSDK compliant library, which includes functions that simplify software development. This Click board™ comes as a fully tested product, ready to be used on a system equipped with the mikroBUS™ socket.

HOW DOES IT WORK?

SWI EEPROM Click, as its foundation, uses the AT21CS01, 2-pin serial electrically erasable and programmable read-only memory (EEPROM) that harvests energy from the SI/O pin to power the integrated circuit from Microchip Technology. It provides 1,024 bits organized as 128 words of 8 bits each, a security register with a 64-bit factory programmed serial number, and an extra 16-bytes of user-programmable and permanently lockable storage. It delivers a guaranteed unique serial number for inventory tracking, asset tagging and can always protect the data if needed.

swi eeprom click inner

The AT21CS01 benefit from 100 years of data retention, combining their unprecedented data storage with excellent energy efficiency. It is characterized by high reliability and ultra-high writing endurance capability, allowing more than one million cycles for each memory location to meet today's high-write endurance applications' requirements.

SWI EEPROM Click communicates with MCU using the Single-Wire interface that, by definition, requires only one data line (and ground) for communication with MCU. The SI/O pin routed to the PWM pin of the mikroBUS™ socket is a bidirectional input/output pin used to serially transfer data to and from the device featuring a maximum 15.4Kbps bit rate in Standard-Speed mode and 125Kbps in High-Speed mode.

The AT21CS01 uses a modified I2C interface to extract power from the reading and writing sequences. The software sequence sent to the device is an emulation of what would be sent to an I2C serial EEPROM, except that a 4-bit opcode replaces a typical 4-bit device type identifier of 1010b in the device address. The device has been architected to allow for rapid deployment and significant reuse of existing I2C firmware.

This Click board™ can be operated only with a 3.3V logic voltage level. The board must perform appropriate logic voltage level conversion before use with MCUs with different logic levels. However, the Click board™ comes equipped with a library containing functions and an example code that can be used, as a reference, for further development.

SPECIFICATIONS

TypeEEPROM
ApplicationsCan be used for applications where identification or memory storage is required.
On-board modulesAT21CS01 - 2-pin serial electrically erasable and programmable read-only memory (EEPROM) that harvests energy from the SI/O pin to power the integrated circuit from Microchip Technology
Key FeaturesHigh reliability, a unique, factory-programmed 64-bit serial number, ultra-high write endurance, Standard-Speed and High-Speed mode options, and more.
InterfaceSWI
CompatibilitymikroBUS
Click board sizeS (28.6 x 25.4 mm)
Input Voltage3.3V

PINOUT DIAGRAM

This table shows how the pinout on SWI EEPROM Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).

NotesPinMikrobus logo.pngPinNotes
 NC1ANPWM16SI/0Single-Wire Data IN/OUT
 NC2RSTINT15NC 
 NC3CSRX14NC 
 NC4SCKTX13NC 
 NC5MISOSCL12NC 
 NC6MOSISDA11NC 
Power Supply3.3V73.3V5V10NC 
GroundGND8GNDGND9GNDGround

ONBOARD SETTINGS AND INDICATORS

LabelNameDefault Description
LD1PWR-Power LED Indicator

SWI EEPROM CLICK ELECTRICAL SPECIFICATIONS

DescriptionMinTypMaxUnit
Supply Voltage-3.3-V
Memory Size--1Kbit
Write Endurance1.000.00--Write Cycles
Data Retention100--Years
Operating Temperature Range-40+25+85°C

SOFTWARE SUPPORT

We provide a library for the SWI EEPROM 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.

Key functions:

  • swieeprom_init - SWI EEPROM initialization function.
  • swieeprom_write_data_to_memory - SWI EEPROM write data to memory.
  • swieeprom_read_data_from_memory - SWI EEPROM read data from memory.

Examples description

This application shows capability of SWI EEPROM Click board. It checks if device is present, initializes it and show it's functionality to read from memory and write to memory.

The demo application is composed of two sections :

static void application_task ( void )
{    
#define WRITE_DATA_STRING     "MikroE"    
#define START_MEMORY_ADDRESS  0x10 
       
//write memory    
if ( swieeprom_write_data_to_memory( &swieeprom, START_MEMORY_ADDRESS, WRITE_DATA_STRING, 6 ) )    
{        
    log_line( " > Write ERROR!" );    
}    
else    
{        
    log_line( " > Write done!" );    
}    
Delay_ms( 1000 );        
//read_memory    
uint8_t rx_buf[ 8 ] = { 0 };    
if ( swieeprom_read_data_from_memory( &swieeprom, START_MEMORY_ADDRESS, rx_buf, 6 ) )    
{        
    log_line( " > Read ERROR!" );    
}    
else    
{        
    log_txt( " > Read data: " );        
    log_line( rx_buf );        
    if ( 0 != strstr( rx_buf, WRITE_DATA_STRING ) )        
    {            
        log_line( " > Data Match!" );        
    }        
    else        
    {            log_line( " > Data Mismatch!" );        
    }    
}    
Delay_ms( 1000 );        
//clear memory    
if ( swieeprom_clear_data_from_memory( &swieeprom, START_MEMORY_ADDRESS, 6 ) )    
{        
    log_line( " > Clear ERROR!" );    
}    
else    
{        
    log_line( " > Clear done!" );    
}    
Delay_ms( 1000 );        
//read_memory    
uint8_t rec_buf[ 8 ] = { 0 };    
if ( swieeprom_read_data_from_memory( &swieeprom, START_MEMORY_ADDRESS, rec_buf, 6 ) )    
{        
    log_line( " > Read ERROR!" );    
}    
else    
{        
    log_txt( " > Read data: " );        
    log_line( rec_buf );                
    if ( 0 != strstr( rec_buf, WRITE_DATA_STRING ) )        
    {            
    log_line( " > Data not cleared!" );        
    }        
    else        
    {            
    log_line( " > Data cleared!" );        
    }    
}        
log_line( "******************************************" );    
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.

Additional notes and informations

Depending on the development board you are using, you may need USB UART clickUSB 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.

RESOURCES

 Click board™ Catalog
 Click Boards™
 mikroBUS™
 mikroSDK

DOWNLOADS

 SWI EEPROM click example on Libstock
 SWI EEPROM click 2D and 3D files
 SWI EEPROM click schematic
 AT21CS01 datasheet

MPN
:
MIKROE-4521