Ce module fournit les fonctions permettant d'accéder à des mémoires I2c. Ce module gère les mémoires entre 1 kbits et 4MBits (128 octets à 512 ko).
|
| int | iI2cMemAddr (const xI2cMem *mem) |
| | Adresse I2c de la mémoire. More...
|
| |
| int | iI2cMemClose (xI2cMem *mem) |
| | Fermeture d'une mémoire sur bus I2c. More...
|
| |
| int | iI2cMemRead (xI2cMem *mem, uint32_t offset, uint8_t *buffer, uint16_t size) |
| | Lecture dans une mémoire sur bus I2c. More...
|
| |
| int | iI2cMemWrite (xI2cMem *mem, uint32_t offset, const uint8_t *buffer, uint16_t size) |
| | Ecriture dans une mémoire sur bus I2c. More...
|
| |
| uint8_t | ucI2cMemFlags (const xI2cMem *mem) |
| | Drapeaux de la mémoire. More...
|
| |
| uint32_t | ulI2cMemSize (const xI2cMem *mem) |
| | Taille de la mémoire. More...
|
| |
| uint16_t | usI2cMemPageSize (const xI2cMem *mem) |
| | Taile de la page mémoire pour l'écriture. More...
|
| |
| xI2cMem * | xI2cMemOpen (const char *device, int i2caddr, uint32_t mem_size, uint16_t page_size, uint8_t flags) |
| | Ouverture d'une mémoire sur bus I2c. More...
|
| |
|
|
typedef struct xI2cMem | xI2cMem |
| |
| #define I2CMEM_FLAG_ADDR16 0x80 |
| #define I2CMEM_FLAG_READONLY 0x40 |
| int iI2cMemAddr |
( |
const xI2cMem * |
mem | ) |
|
#include <i2c.h>
Adresse I2c de la mémoire.
- Parameters
-
| mem | pointeur sur le contexte de la mémoire |
- Returns
- adresse I2c alignée à droite
| int iI2cMemClose |
( |
xI2cMem * |
mem | ) |
|
| int iI2cMemRead |
( |
xI2cMem * |
mem, |
|
|
uint32_t |
offset, |
|
|
uint8_t * |
buffer, |
|
|
uint16_t |
size |
|
) |
| |
#include <i2c.h>
Lecture dans une mémoire sur bus I2c.
- Parameters
-
| mem | pointeur sur le contexte de la mémoire |
| offset | adresse du premier octet à lire |
| buffer | pointeur vers une zone pour stocker les octets lus |
| size | nombre d'octets à lire |
- Returns
- le nombre d'octets lus, -1 si erreur
- Examples:
- i2c/mem-eeprom/sysio_demo_i2c_eeprom.c.
| int iI2cMemWrite |
( |
xI2cMem * |
mem, |
|
|
uint32_t |
offset, |
|
|
const uint8_t * |
buffer, |
|
|
uint16_t |
size |
|
) |
| |
#include <i2c.h>
Ecriture dans une mémoire sur bus I2c.
L'écriture se fait page par page,
- Parameters
-
| mem | pointeur sur le contexte de la mémoire |
| offset | adresse du premier octet à écrire |
| buffer | pointeur vers les octets à écrire |
| size | nombre d'octets à écrire |
- Returns
- 0, -1 si erreur
- Examples:
- i2c/mem-eeprom/sysio_demo_i2c_eeprom.c.
| uint8_t ucI2cMemFlags |
( |
const xI2cMem * |
mem | ) |
|
#include <i2c.h>
Drapeaux de la mémoire.
- Parameters
-
| mem | pointeur sur le contexte de la mémoire |
- Returns
- drapeaux
| uint32_t ulI2cMemSize |
( |
const xI2cMem * |
mem | ) |
|
#include <i2c.h>
Taille de la mémoire.
- Parameters
-
| mem | pointeur sur le contexte de la mémoire |
- Returns
- taille
| uint16_t usI2cMemPageSize |
( |
const xI2cMem * |
mem | ) |
|
#include <i2c.h>
Taile de la page mémoire pour l'écriture.
- Parameters
-
| mem | pointeur sur le contexte de la mémoire |
- Returns
- taille
| xI2cMem* xI2cMemOpen |
( |
const char * |
device, |
|
|
int |
i2caddr, |
|
|
uint32_t |
mem_size, |
|
|
uint16_t |
page_size, |
|
|
uint8_t |
flags |
|
) |
| |
#include <i2c.h>
Ouverture d'une mémoire sur bus I2c.
- Parameters
-
| device | nom du fichier d'accès au bus I2C (par exemple /dev/i2c-1) |
| i2caddr | adresse du circuit I2C (alignée à droite) |
| mem_size | taille de la mémoire |
| page_size | taille de la page en écriture |
| flags | drapeaux cf I2CMEM_FLAG_ADDR16, I2CMEM_FLAG_READONLY |
- Returns
- pointeur sur le contexte de la mémoire, NULL si erreur
- Examples:
- i2c/mem-eeprom/sysio_demo_i2c_eeprom.c.