STM32F072B-Discovery BSP User Manual
|
This file provides a set of functions needed to manage an I2C M24LR64 EEPROM memory. More...
#include "stm32f072b_discovery_eeprom.h"
Go to the source code of this file.
Functions | |
uint32_t | BSP_EEPROM_Init (void) |
Initializes peripherals used by the I2C EEPROM driver. | |
uint32_t | BSP_EEPROM_ReadBuffer (uint8_t *pBuffer, uint16_t ReadAddr, uint16_t *NumByteToRead) |
Reads a block of data from the EEPROM. | |
uint32_t | BSP_EEPROM_WritePage (uint8_t *pBuffer, uint16_t WriteAddr, uint8_t *NumByteToWrite) |
Writes more than one byte to the EEPROM with a single WRITE cycle. | |
uint32_t | BSP_EEPROM_WriteBuffer (uint8_t *pBuffer, uint16_t WriteAddr, uint16_t NumByteToWrite) |
Writes buffer of data to the I2C EEPROM. | |
uint32_t | BSP_EEPROM_WaitEepromStandbyState (void) |
Wait for EEPROM Standby state. | |
void | HAL_I2C_MemTxCpltCallback (I2C_HandleTypeDef *hi2c) |
Memory Tx Transfer completed callbacks. | |
void | HAL_I2C_MemRxCpltCallback (I2C_HandleTypeDef *hi2c) |
Memory Rx Transfer completed callbacks. | |
__weak uint32_t | BSP_EEPROM_TIMEOUT_UserCallback (void) |
Basic management of the timeout situation. | |
Variables | |
__IO uint16_t | EEPROMAddress = 0 |
__IO uint32_t | EEPROMTimeout = EEPROM_LONG_TIMEOUT |
__IO uint16_t | EEPROMDataRead |
__IO uint8_t * | EEPROMDataWritePointer |
__IO uint8_t | EEPROMDataNum |
Detailed Description
This file provides a set of functions needed to manage an I2C M24LR64 EEPROM memory.
It implements a high level communication layer for read and write from/to this memory. The needed STM32F0xx hardware resources (I2C and GPIO) are defined in stm32f072b_discovery.h file, and the initialization is performed in EEPROM_IO_Init() function declared in stm32f072b_discovery.c file. You can easily tailor this driver to any other development board, by just adapting the defines for hardware resources and EEPROM_IO_Init() function.
- Note:
- In this driver, basic read and write functions (EEPROM_ReadBuffer() and EEPROM_WritePage()) use Polling mode to perform the data transfer to/from EEPROM memory.
+-----------------------------------------------------------------+ | Pin assignment for M24LR64 EEPROM | +---------------------------------------+-----------+-------------+ | STM32F0xx I2C Pins | EEPROM | Pin | +---------------------------------------+-----------+-------------+ | . | E0(GND) | 1 (0V) | | . | AC0 | 2 | | . | AC1 | 3 | | . | VSS | 4 (0V) | | EEPROM_I2Cx_SDA_PIN/ SDA | SDA | 5 | | EEPROM_I2Cx_SCL_PIN/ SCL | SCL | 6 | | . | E1(GND) | 7 (0V) | | . | VDD | 8 (3.3V) | +---------------------------------------+-----------+-------------+
- Attention:
© COPYRIGHT(c) 2016 STMicroelectronics
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Definition in file stm32f072b_discovery_eeprom.c.
Generated on Wed Jul 5 2017 09:43:19 for STM32F072B-Discovery BSP User Manual by
![doxygen](doxygen.png)