TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (405 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (133 codes)
  5. Bugz Bensce (97 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (141923 times)
  2. FAT32 Library (75068 times)
  3. Network Ethernet Library (59367 times)
  4. USB Device Library (49362 times)
  5. Network WiFi Library (45171 times)
  6. FT800 Library (44739 times)
  7. GSM click (31323 times)
  8. mikroSDK (30273 times)
  9. microSD click (27690 times)
  10. PID Library (27580 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
mikroSDK Library

EEPROM 10 Click

Rating:

0

Author: MIKROE

Last Updated: 2024-10-31

Package Version: 2.1.0.9

mikroSDK Library: 2.0.0.0

Category: EEPROM

Downloaded: 240 times

Not followed.

License: MIT license  

EEPROM 10 Click is a compact add-on board that contains the highest-density memory solution. This board features the N24C32, a 32Kb I2C CMOS Serial EEPROM from ON Semiconductor. It is internally organized as 128 pages of 32 bytes each, with a 32-byte page write buffer and a fast write time of up to 4ms.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "EEPROM 10 Click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "EEPROM 10 Click" changes.

Do you want to report abuse regarding "EEPROM 10 Click".

  • Information
  • Comments (0)

mikroSDK Library Blog


EEPROM 10 Click

EEPROM 10 Click is a compact add-on board that contains the highest-density memory solution. This board features the N24C32, a 32Kb I2C CMOS Serial EEPROM from ON Semiconductor. It is internally organized as 128 pages of 32 bytes each, with a 32-byte page write buffer and a fast write time of up to 4ms.

eeprom10_click.png

Click Product page


Click library

  • Author : Stefan Ilic
  • Date : May 2023.
  • Type : I2C type

Software Support

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

Standard key functions :

  • eeprom10_cfg_setup Config Object Initialization function.

    void eeprom10_cfg_setup ( eeprom10_cfg_t *cfg );
  • eeprom10_init Initialization function.

    err_t eeprom10_init ( eeprom10_t *ctx, eeprom10_cfg_t *cfg );

Example key functions :

  • eeprom10_write_enable EEPROM 10 write enable function.

    void eeprom10_write_enable( eeprom10_t *ctx );
  • eeprom10_write_n_byte EEPROM 10 write desired number of data function.

    err_t eeprom10_write_n_byte ( eeprom10_t *ctx, uint16_t address, uint8_t *data_in, uint8_t len );
  • eeprom10_read_n_byte EEPROM 10 read desired number of data function.

    err_t eeprom10_read_n_byte ( eeprom10_t *ctx, uint16_t address, uint8_t *data_out, uint8_t len );

Example Description

This example demonstrates the use of EEPROM 10 Click board by writing specified data to the memory and reading it back.

The demo application is composed of two sections :

Application Init

Initializes the driver and USB UART logging.


void application_init ( void ) 
{
    log_cfg_t log_cfg;  /**< Logger config object. */
    eeprom10_cfg_t eeprom10_cfg;  /**< Click config object. */

    /** 
     * Logger initialization.
     * Default baud rate: 115200
     * Default log level: LOG_LEVEL_DEBUG
     * @note If USB_UART_RX and USB_UART_TX 
     * are defined as HAL_PIN_NC, you will 
     * need to define them manually for log to work. 
     * See @b LOG_MAP_USB_UART macro definition for detailed explanation.
     */
    LOG_MAP_USB_UART( log_cfg );
    log_init( &logger, &log_cfg );
    log_info( &logger, " Application Init " );

    // Click initialization.
    eeprom10_cfg_setup( &eeprom10_cfg );
    EEPROM10_MAP_MIKROBUS( eeprom10_cfg, MIKROBUS_1 );
    if ( I2C_MASTER_ERROR == eeprom10_init( &eeprom10, &eeprom10_cfg ) ) 
    {
        log_error( &logger, " Communication init." );
        for ( ; ; );
    }

    eeprom10_write_enable( &eeprom10 );

    log_info( &logger, " Application Task " );
}

Application Task

In this example, we write and then read data from EEPROM memory. Results are being sent to the Usart Terminal where you can track their changes. All data logs write on USB UART changes approximately every second.

void application_task ( void ) 
{
    err_t error_flag = EEPROM10_OK;

    error_flag = eeprom10_write_n_byte( &eeprom10, EEPROM10_TEST_ADDRESS, tx_data, 14 );
    if ( EEPROM10_OK == error_flag )
    {
        log_printf( &logger, " Write %s data to 0x%.4X address \r\n", tx_data, ( uint16_t ) EEPROM10_TEST_ADDRESS );
    }
    else
    {
        log_error( &logger, " Write operation failed!!! " );
    }
    Delay_ms ( 100 );

    error_flag = eeprom10_read_n_byte( &eeprom10, EEPROM10_TEST_ADDRESS, rx_data, 14 );
    if ( EEPROM10_OK == error_flag )
    {
        log_printf( &logger, " Read %s from 0x%.4X address \r\n", rx_data, ( uint16_t ) EEPROM10_TEST_ADDRESS );
    }
    else
    {
        log_error( &logger, " Read operation failed!!! " );
    }
    Delay_ms ( 1000 );
}

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.EEPROM10

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. UART terminal is available in all MikroElektronika compilers.


ALSO FROM THIS AUTHOR

Tamper Click

0

Tamper Click is equipped with SDS001, a low profile side-actuated detect switch, made by C&K company. This is a high-quality, low-current detection switch, which is designed in a form of a push button. The switch itself is very small - only 2mm of switch overtravel length, which coupled with its low actuation force, makes it ideal for using it as a contact detector in various applications - consumer electronics devices, medical devices, smart card detection and similar applications.

[Learn More]

TempHum 21 Click

0

Temp&Hum 21 Click is a compact add-on board representing temperature and humidity sensing solution. This board features the HIH8130-021-001, a highly accurate, fully-calibrated digital humidity and temperature sensor from Honeywell Sensing and Productivity Solutions. This sensor, characterized by its high accuracy (±2% RH and ±0.5°C over a wide operating temperature range) and high resolution, provides factory-calibrated 14-bit data to the host controller with a configurable I2C interface. It also comes with alarm features with selectable alarm thresholds by an MCU or externally.

[Learn More]

XBEE 2 Click

0

Xbee 2 Click is a compact add-on board providing wireless end-point connectivity to other devices. This board features the XB3-24Z8UM, a Digi XBee® 3 transceiver module offering a fully interoperable ecosystem covering all vertical markets from Digi International. Building on industry-leading technology, the pre-certified Digi XBee® 3 module delivers the flexibility to switch between multiple frequencies and wireless protocols as needed (Zigbee, 802.15.4, DigiMesh® and BLE). It can be easily configured and controlled from a simple, central platform and comes with built-in Digi TrustFence® security, identity, and data privacy features which use more than 175 controls to protect against new and evolving cyber threats.

[Learn More]