De_ES 2113
Make a dice
 
Loading...
Searching...
No Matches
Accelerometre.h File Reference
#include <stdint.h>
Include dependency graph for Accelerometre.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define addr_GPIO_CTRL   0x33
 
#define addr_DEV_STAT   0x05
 
#define addr_INTR_CTRL   0x06
 
#define addr_MODE   0x07
 
#define addr_SR   0x08
 
#define addr_MOTION_CTRL   0x09
 
#define addr_FIFO_STAT   0x0A
 
#define addr_FIFO_R_P   0x0B
 
#define addr_FIFO_W_P   0x0C
 
#define addr_Xout_Ex_L   0x0D
 
#define addr_Xout_Ex_H   0x0E
 
#define addr_Yout_Ex_L   0x0F
 
#define addr_Yout_Ex_H   0x10
 
#define addr_Zout_Ex_L   0x11
 
#define addr_Zout_Ex_H   0x12
 
#define addr_Status   0x13
 
#define addr_INTR_STAT   0x14
 
#define addr_Chip_ID   0x18
 
#define addr_Reset   0x1C
 
#define addr_Range   0x20
 
#define addr_XOFFL   0x21
 
#define addr_XOFFH   0x22
 
#define addr_XGAIN8   0x22
 
#define addr_XGAIN   0x27
 
#define addr_YOFFL   0x23
 
#define addr_YOFFH   0x24
 
#define addr_YGAIN8   0x24
 
#define addr_YGAIN   0x28
 
#define addr_ZOFFL   0x25
 
#define addr_ZOFFH   0x26
 
#define addr_ZGAIN8   0x26
 
#define addr_ZGAIN   0x29
 
#define addr_FIFO_CTRL   0x2D
 
#define addr_FIFO_CTRL_TR   0x2E
 
#define addr_FIFO_INTR   0x2F
 
#define addr_FIFO_CTRL2_SR2   0x30
 
#define addr_COMM_CTRL   0x31
 
#define addr_TF_LSB   0x40
 
#define addr_TF_MSB   0x41
 
#define addr_TF_SB   0x42
 
#define addr_AM_LSB   0x43
 
#define addr_AM_MSB   0x44
 
#define addr_AM_DB   0x45
 
#define addr_SHK_LSB   0x46
 
#define addr_SHK_MSB   0x47
 
#define addr_PK_P2P_DUR_LSB   0x48
 
#define addr_PK_P2P_DUR_MSB   0x49
 
#define addr_TIMER_CTRL   0x4A
 
#define addr_RD_CNT   0x4B
 

Enumerations

enum  MC3419_GPIO_CTRL {
  GPIO1_INTN1_IAH = 0x04 , GPIO1_INTN1_IPP = 0x08 , GPIO2_INT2_IAH = 0x40 , GPIO2_INTN2_IPP = 0x80 ,
  Mask_GPIO_CTRL = 0x33
}
 
enum  MC3419_DeviceStat {
  STANDBY_STAT = 0x00 , WAKE_STAT = 0x01 , RES_MODE = 0x04 , I2C_WDT = 0x10 ,
  OTP_BUSY = 0x80
}
 
enum  MC3419_INTR_CTRL {
  INTR_Desable = 0x00 , TILT_INT_EN = 0x01 , FLIP_INT_EN = 0x02 , ANYM_INT_EN = 0x04 ,
  SHAKE_INT_EN = 0x08 , TILT_35_INT_EN = 0x10 , AUTO_CLR_EN = 0x40 , ACQ_INT_EN = 0x80 ,
  Mask_INT_CTRL = 0x20
}
 
enum  MC3419_Mode { SLEEP = 0x00 , STANDBY = 0x03 , WAKE = 0x01 , Mask_Mode = 0xF0 }
 
enum  MC3419_SamplRate {
  ODR25_Hz = 0x10 , ODR50_Hz = 0x11 , ODR62_5_Hz = 0x12 , ODR100_Hz = 0x13 ,
  ODR125_Hz = 0x14 , ODR250_Hz = 0x15 , ODR500_Hz = 0x16 , ODR1000_Hz = 0x17
}
 
enum  MC3419_MotionControl {
  TF_ENABLE = 0x01 , MOTION_LATCH = 0x02 , ANYM_EN = 0x04 , SHAKE_EN = 0x08 ,
  TILT_35_EN = 0x10 , Z_AXIS_ORT = 0x20 , RAW_PROC_STAT = 0x40 , MOTION_RESET = 0x80
}
 
enum  MC3419_FIFO_Stat { EMPTY = 0x01 , FULL = 0x02 , TRESH = 0x04 }
 
enum  MC3419_FIFO_ReadPointer { FIFO_RD_PTR = 0x1F , FIFO_RD_PTR5 = 0x20 }
 
enum  MC3419_FIFO_WPointer { FIFO_WR_PTR = 0x1F , FIFO_WR_PTR5 = 0x20 }
 
enum  MC3419_Status {
  TILT_FLAG = 0x01 , FLIP_FLAG = 0x02 , ANYM_FLAG = 0x04 , SHAKE_FLAG = 0x08 ,
  TILT_35_FLAG = 0x10 , FIFO_FLAG = 0x20 , NEW_DATA = 0x80
}
 
enum  MC3419_INTR_Status {
  TILT_INT = 0x01 , FLIP_INT = 0x02 , ANYM_INT = 0x04 , SHAKE_INT = 0x08 ,
  TILT_35_INT = 0x10 , FIFO_INT = 0x20 , ACQ_INT = 0x80 , Mask_INTR_STATUS = 0x60
}
 
enum  MC3419_Reset_CTRL { Reset = 0x40 }
 
enum  MC3419_Range {
  Range2g = 0x00 , Range4g = 0x10 , Range8g = 0x20 , Range16g = 0x30 ,
  Range12g = 0x40 , Mask_Range = 0x07 , Range = 0x70 , LPF_EN = 0x08 ,
  LPF = 0x07
}
 
enum  MC3419_XOFF { MASK_XOFFH_DOR = 0x80 }
 
enum  MC3419_XGAIN { MASK_XOFFH8 = 0x80 }
 
enum  MC3419_YOFF { MASK_YOFFH_DOR = 0x80 }
 
enum  MC3419_YGAIN { MASK_YOFFH8 = 0x80 }
 
enum  MC3419_ZOFF { MASK_ZOFFH_DOR = 0x80 }
 
enum  MC3419_ZGAIN { MASK_ZOFFH8 = 0x80 }
 
enum  MC3419_FIFO_CTRL {
  ALL_FIFO_CTRL_DIS = 0x00 , FIFO_EMPTY_INT_EN = 0x01 , FIFO_FULL_INT_EN = 0x02 , FIFO_TH_INT_EN = 0x04 ,
  COMB_INT_EN = 0x08 , FIFO_RESET = 0x10 , FIFO_EN = 0x20 , FIFO_MODE = 0x40
}
 
enum  MC3419_FIFO_THRESH_CTRL { Mask_FIFO_TH = 0xE0 }
 
enum  MC3419_FIFO_INTR { EMPTY_INT = 0x01 , FULL_INT = 0x02 , TRESH_INT = 0x40 }
 
enum  MC3419_FIFO_CTRL_2 { DEC_MODE_RATE = 0x1F , ENABLE_WRAP_N = 0x10 , SELECT_WRAP_ADDR = 0x20 , FIFO_BURST_MODE = 0x80 }
 
enum  MC3419_COMM_CTRL { INT1_INT2_REQ_SWAP = 0x10 , SPI_3WIRE_EN = 0x20 , INDIV_INTR_CLR = 0x40 }
 
enum  MC3419_TF_THRESH { Mask_THRESH_TF_MSB = 0x80 }
 
enum  MC3419_AM_THRESH { Mask_THRESH_AM_MSB = 0x80 }
 
enum  MC3419_PK_TRESH { Mask_PK_P2P_DUR_MSB = 0x80 }
 
enum  MC3419_TIMER_CTRL { TILT_35 = 0x07 , TEMP_PERIOD = 0x70 , TEMP_PER_INT_EN = 0x80 }
 

Functions

void MC3419_SetMode (MC3419_Mode Mode)
 Définit le mode de fonctionnement du capteur.
 
void MC3419_SetRangleCtrl (MC3419_Range Range)
 Définit la plage de mesure du capteur.
 
void MC3419_SetSampleRate (MC3419_SamplRate SampleRate)
 Définit la fréquence d'échantillonnage du capteur.
 
void MC3419_wake (void)
 Met le capteur en mode réveil.
 
void MC3419_stop (void)
 Met le capteur en mode veille.
 
void MC3419_reset (void)
 Réinitialise le capteur.
 
void MC3419_start (void)
 Initialise le capteur avec la configuration par défaut.
 
uint8_t MC3419_ID (void)
 Lit l'identifiant du capteur.
 
uint8_t ReadRegister8 (uint8_t address)
 Lit un registre 8 bits du capteur.
 
void writeRegister8 (uint8_t address, uint8_t data)
 Écrit une valeur 8 bits dans un registre du capteur.
 
void MC3419_Pol_INT (MC3419_GPIO_CTRL GPIO_CTRL)
 Définit la polarité des interruptions du capteur.
 
void MC3419_INT_Enable (MC3419_INTR_CTRL INTR_CTRL)
 Active les interruptions du capteur.
 
void MC3419_MotionCTRL (MC3419_MotionControl Motion)
 Configure le contrôle de mouvement du capteur.
 
uint8_t MC3419_ReadStatusRegister (void)
 Lit le registre de statut des interruptions du capteur.
 
uint8_t MC3419_ReadIntStatusRegisterAndAck (void)
 Lit et acquitte le registre de statut des interruptions du capteur.
 
uint8_t MC3419_FiFo_CTRL_REG (MC3419_FIFO_CTRL ValCTRL)
 Configure le registre de contrôle FIFO du capteur.
 
void MC3419_FIFO_TRESHOLD (uint8_t Fifo_Tresh)
 Définit le seuil FIFO du capteur.
 
void MC3419_WriteShakeThresholdRegister (uint16_t Value)
 Écrit le seuil de détection de secousse (Shake) dans le capteur.
 
void MC3419_WriteShakeDurationAndP2PRegister (uint8_t shakeDuration, uint16_t shakeP2P)
 Écrit la durée et la valeur P2P de secousse dans le capteur.
 
void MC3419_WriteAnyMotionDebounceRegister (uint8_t tresholda)
 Écrit la valeur de debounce AnyMotion dans le registre du capteur.
 
uint8_t MC3419_clearRegister (void)
 Efface le registre de statut des interruptions du capteur.
 

Macro Definition Documentation

◆ addr_AM_DB

#define addr_AM_DB   0x45

◆ addr_AM_LSB

#define addr_AM_LSB   0x43

◆ addr_AM_MSB

#define addr_AM_MSB   0x44

◆ addr_Chip_ID

#define addr_Chip_ID   0x18

◆ addr_COMM_CTRL

#define addr_COMM_CTRL   0x31

◆ addr_DEV_STAT

#define addr_DEV_STAT   0x05

◆ addr_FIFO_CTRL

#define addr_FIFO_CTRL   0x2D

◆ addr_FIFO_CTRL2_SR2

#define addr_FIFO_CTRL2_SR2   0x30

◆ addr_FIFO_CTRL_TR

#define addr_FIFO_CTRL_TR   0x2E

◆ addr_FIFO_INTR

#define addr_FIFO_INTR   0x2F

◆ addr_FIFO_R_P

#define addr_FIFO_R_P   0x0B

◆ addr_FIFO_STAT

#define addr_FIFO_STAT   0x0A

◆ addr_FIFO_W_P

#define addr_FIFO_W_P   0x0C

◆ addr_GPIO_CTRL

#define addr_GPIO_CTRL   0x33

◆ addr_INTR_CTRL

#define addr_INTR_CTRL   0x06

◆ addr_INTR_STAT

#define addr_INTR_STAT   0x14

◆ addr_MODE

#define addr_MODE   0x07

◆ addr_MOTION_CTRL

#define addr_MOTION_CTRL   0x09

◆ addr_PK_P2P_DUR_LSB

#define addr_PK_P2P_DUR_LSB   0x48

◆ addr_PK_P2P_DUR_MSB

#define addr_PK_P2P_DUR_MSB   0x49

◆ addr_Range

#define addr_Range   0x20

◆ addr_RD_CNT

#define addr_RD_CNT   0x4B

◆ addr_Reset

#define addr_Reset   0x1C

◆ addr_SHK_LSB

#define addr_SHK_LSB   0x46

◆ addr_SHK_MSB

#define addr_SHK_MSB   0x47

◆ addr_SR

#define addr_SR   0x08

◆ addr_Status

#define addr_Status   0x13

◆ addr_TF_LSB

#define addr_TF_LSB   0x40

◆ addr_TF_MSB

#define addr_TF_MSB   0x41

◆ addr_TF_SB

#define addr_TF_SB   0x42

◆ addr_TIMER_CTRL

#define addr_TIMER_CTRL   0x4A

◆ addr_XGAIN

#define addr_XGAIN   0x27

◆ addr_XGAIN8

#define addr_XGAIN8   0x22

◆ addr_XOFFH

#define addr_XOFFH   0x22

◆ addr_XOFFL

#define addr_XOFFL   0x21

◆ addr_Xout_Ex_H

#define addr_Xout_Ex_H   0x0E

◆ addr_Xout_Ex_L

#define addr_Xout_Ex_L   0x0D

◆ addr_YGAIN

#define addr_YGAIN   0x28

◆ addr_YGAIN8

#define addr_YGAIN8   0x24

◆ addr_YOFFH

#define addr_YOFFH   0x24

◆ addr_YOFFL

#define addr_YOFFL   0x23

◆ addr_Yout_Ex_H

#define addr_Yout_Ex_H   0x10

◆ addr_Yout_Ex_L

#define addr_Yout_Ex_L   0x0F

◆ addr_ZGAIN

#define addr_ZGAIN   0x29

◆ addr_ZGAIN8

#define addr_ZGAIN8   0x26

◆ addr_ZOFFH

#define addr_ZOFFH   0x26

◆ addr_ZOFFL

#define addr_ZOFFL   0x25

◆ addr_Zout_Ex_H

#define addr_Zout_Ex_H   0x12

◆ addr_Zout_Ex_L

#define addr_Zout_Ex_L   0x11

Enumeration Type Documentation

◆ MC3419_AM_THRESH

Enumerator
Mask_THRESH_AM_MSB 

◆ MC3419_COMM_CTRL

Enumerator
INT1_INT2_REQ_SWAP 
SPI_3WIRE_EN 
INDIV_INTR_CLR 

◆ MC3419_DeviceStat

Enumerator
STANDBY_STAT 
WAKE_STAT 
RES_MODE 
I2C_WDT 
OTP_BUSY 

◆ MC3419_FIFO_CTRL

Enumerator
ALL_FIFO_CTRL_DIS 
FIFO_EMPTY_INT_EN 
FIFO_FULL_INT_EN 
FIFO_TH_INT_EN 
COMB_INT_EN 
FIFO_RESET 
FIFO_EN 
FIFO_MODE 

◆ MC3419_FIFO_CTRL_2

Enumerator
DEC_MODE_RATE 
ENABLE_WRAP_N 
SELECT_WRAP_ADDR 
FIFO_BURST_MODE 

◆ MC3419_FIFO_INTR

Enumerator
EMPTY_INT 
FULL_INT 
TRESH_INT 

◆ MC3419_FIFO_ReadPointer

Enumerator
FIFO_RD_PTR 
FIFO_RD_PTR5 

◆ MC3419_FIFO_Stat

Enumerator
EMPTY 
FULL 
TRESH 

◆ MC3419_FIFO_THRESH_CTRL

Enumerator
Mask_FIFO_TH 

◆ MC3419_FIFO_WPointer

Enumerator
FIFO_WR_PTR 
FIFO_WR_PTR5 

◆ MC3419_GPIO_CTRL

Enumerator
GPIO1_INTN1_IAH 
GPIO1_INTN1_IPP 
GPIO2_INT2_IAH 
GPIO2_INTN2_IPP 
Mask_GPIO_CTRL 

◆ MC3419_INTR_CTRL

Enumerator
INTR_Desable 
TILT_INT_EN 
FLIP_INT_EN 
ANYM_INT_EN 
SHAKE_INT_EN 
TILT_35_INT_EN 
AUTO_CLR_EN 
ACQ_INT_EN 
Mask_INT_CTRL 

◆ MC3419_INTR_Status

Enumerator
TILT_INT 
FLIP_INT 
ANYM_INT 
SHAKE_INT 
TILT_35_INT 
FIFO_INT 
ACQ_INT 
Mask_INTR_STATUS 

◆ MC3419_Mode

Enumerator
SLEEP 
STANDBY 
WAKE 
Mask_Mode 

◆ MC3419_MotionControl

Enumerator
TF_ENABLE 
MOTION_LATCH 
ANYM_EN 
SHAKE_EN 
TILT_35_EN 
Z_AXIS_ORT 
RAW_PROC_STAT 
MOTION_RESET 

◆ MC3419_PK_TRESH

Enumerator
Mask_PK_P2P_DUR_MSB 

◆ MC3419_Range

Enumerator
Range2g 
Range4g 
Range8g 
Range16g 
Range12g 
Mask_Range 
Range 
LPF_EN 
LPF 

◆ MC3419_Reset_CTRL

Enumerator
Reset 

◆ MC3419_SamplRate

Enumerator
ODR25_Hz 
ODR50_Hz 
ODR62_5_Hz 
ODR100_Hz 
ODR125_Hz 
ODR250_Hz 
ODR500_Hz 
ODR1000_Hz 

◆ MC3419_Status

Enumerator
TILT_FLAG 
FLIP_FLAG 
ANYM_FLAG 
SHAKE_FLAG 
TILT_35_FLAG 
FIFO_FLAG 
NEW_DATA 

◆ MC3419_TF_THRESH

Enumerator
Mask_THRESH_TF_MSB 

◆ MC3419_TIMER_CTRL

Enumerator
TILT_35 
TEMP_PERIOD 
TEMP_PER_INT_EN 

◆ MC3419_XGAIN

Enumerator
MASK_XOFFH8 

◆ MC3419_XOFF

Enumerator
MASK_XOFFH_DOR 

◆ MC3419_YGAIN

Enumerator
MASK_YOFFH8 

◆ MC3419_YOFF

Enumerator
MASK_YOFFH_DOR 

◆ MC3419_ZGAIN

Enumerator
MASK_ZOFFH8 

◆ MC3419_ZOFF

Enumerator
MASK_ZOFFH_DOR 

Function Documentation

◆ MC3419_clearRegister()

uint8_t MC3419_clearRegister ( void )

Efface le registre de statut des interruptions du capteur.

Returns
Statut effacé.
Statut effacé
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_FiFo_CTRL_REG()

uint8_t MC3419_FiFo_CTRL_REG ( MC3419_FIFO_CTRL ValCTRL)

Configure le registre de contrôle FIFO du capteur.

Parameters
ValCTRLValeur de configuration.
Returns
Valeur précédente lue.
Parameters
ValCTRLValeur de configuration
Returns
Valeur précédente lue
Here is the call graph for this function:

◆ MC3419_FIFO_TRESHOLD()

void MC3419_FIFO_TRESHOLD ( uint8_t Fifo_Tresh)

Définit le seuil FIFO du capteur.

Parameters
Fifo_TreshSeuil FIFO.
Fifo_TreshSeuil FIFO
Here is the call graph for this function:

◆ MC3419_ID()

uint8_t MC3419_ID ( void )

Lit l'identifiant du capteur.

Returns
Identifiant du capteur.
Valeur de l'ID
Here is the call graph for this function:

◆ MC3419_INT_Enable()

void MC3419_INT_Enable ( MC3419_INTR_CTRL INTR_CTRL)

Active les interruptions du capteur.

Parameters
INTR_CTRLMasque d'interruptions à activer.
INTR_CTRLMasque d'interruptions à activer
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_MotionCTRL()

void MC3419_MotionCTRL ( MC3419_MotionControl Motion)

Configure le contrôle de mouvement du capteur.

Parameters
MotionMasque de configuration.
MotionMasque de configuration
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_Pol_INT()

void MC3419_Pol_INT ( MC3419_GPIO_CTRL GPIO_CTRL)

Définit la polarité des interruptions du capteur.

Parameters
GPIO_CTRLConfiguration GPIO.
GPIO_CTRLConfiguration GPIO
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_ReadIntStatusRegisterAndAck()

uint8_t MC3419_ReadIntStatusRegisterAndAck ( void )

Lit et acquitte le registre de statut des interruptions du capteur.

Returns
Valeur lue.
Valeur lue
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_ReadStatusRegister()

uint8_t MC3419_ReadStatusRegister ( void )

Lit le registre de statut des interruptions du capteur.

Returns
Statut des interruptions.
Statut des interruptions
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_reset()

void MC3419_reset ( void )

Réinitialise le capteur.

Réinitialise le capteur.

Met le capteur en veille, attend, effectue un power-on-reset, désactive les interruptions.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_SetMode()

void MC3419_SetMode ( MC3419_Mode Mode)

Définit le mode de fonctionnement du capteur.

Parameters
ModeMode à appliquer.
ModeMode à appliquer
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_SetRangleCtrl()

void MC3419_SetRangleCtrl ( MC3419_Range Range)

Définit la plage de mesure du capteur.

Parameters
RangePlage à appliquer.
RangePlage à appliquer
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_SetSampleRate()

void MC3419_SetSampleRate ( MC3419_SamplRate SampleRate)

Définit la fréquence d'échantillonnage du capteur.

Parameters
SampleRateFréquence à appliquer.
SampleRateFréquence à appliquer
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_start()

void MC3419_start ( void )

Initialise le capteur avec la configuration par défaut.

Initialise le capteur avec la configuration par défaut.

Effectue un reset, configure la plage, la fréquence, les interruptions et met le capteur en mode actif.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_stop()

void MC3419_stop ( void )

Met le capteur en mode veille.

Met le capteur en mode veille.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_wake()

void MC3419_wake ( void )

Met le capteur en mode réveil.

Met le capteur en mode réveil.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_WriteAnyMotionDebounceRegister()

void MC3419_WriteAnyMotionDebounceRegister ( uint8_t tresholda)

Écrit la valeur de debounce AnyMotion dans le registre du capteur.

Parameters
tresholdaValeur de debounce.
tresholdaValeur de debounce
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_WriteShakeDurationAndP2PRegister()

void MC3419_WriteShakeDurationAndP2PRegister ( uint8_t shakeDuration,
uint16_t shakeP2P )

Écrit la durée et la valeur P2P de secousse dans le capteur.

Parameters
shakeDurationDurée de secousse.
shakeP2PValeur P2P.
shakeDurationDurée de secousse
shakeP2PValeur P2P
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MC3419_WriteShakeThresholdRegister()

void MC3419_WriteShakeThresholdRegister ( uint16_t Value)

Écrit le seuil de détection de secousse (Shake) dans le capteur.

Parameters
ValueSeuil Shake.
ValueSeuil Shake
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReadRegister8()

uint8_t ReadRegister8 ( uint8_t address)

Lit un registre 8 bits du capteur.

Parameters
addressAdresse du registre.
Returns
Valeur lue.
Parameters
addressAdresse du registre
Returns
Valeur lue
Here is the caller graph for this function:

◆ writeRegister8()

void writeRegister8 ( uint8_t address,
uint8_t data )

Écrit une valeur 8 bits dans un registre du capteur.

Parameters
addressAdresse du registre.
dataDonnée à écrire.
addressAdresse du registre
dataDonnée à écrire
Here is the caller graph for this function: