21#define ADXL345_MOSI P34
22#define ADXL345_MISO P33
23#define ADXL345_SCK P32
24#define ADXL345_INT1 P36
25#define ADXL345_INT2 P37
27#define ADXL345_DEFAULT_ADDRESS (0x53)
28#define ADXL345_DEVICE_ID (0xE5)
30#define ADXL345_REG_DEVID (0x00)
31#define ADXL345_REG_THRESH_TAP (0x1D)
32#define ADXL345_REG_OFSX (0x1E)
33#define ADXL345_REG_OFSY (0x1F)
34#define ADXL345_REG_OFSZ (0x20)
35#define ADXL345_REG_DUR (0x21)
36#define ADXL345_REG_LATENT (0x22)
37#define ADXL345_REG_WINDOW (0x23)
38#define ADXL345_REG_THRESH_ACT (0x24)
39#define ADXL345_REG_THRESH_INACT (0x25)
40#define ADXL345_REG_TIME_INACT (0x26)
41#define ADXL345_REG_ACT_INACT_CTL (0x27)
42#define ADXL345_REG_THRESH_FF (0x28)
43#define ADXL345_REG_TIME_FF (0x29)
44#define ADXL345_REG_TAP_AXES (0x2A)
45#define ADXL345_REG_ACT_TAP_STATUS (0x2B)
46#define ADXL345_REG_BW_RATE (0x2C)
47#define ADXL345_REG_POWER_CTL (0x2D)
48#define ADXL345_REG_INT_ENABLE (0x2E)
49#define ADXL345_REG_INT_MAP (0x2F)
50#define ADXL345_REG_INT_SOURCE (0x30)
51#define ADXL345_REG_DATA_FORMAT (0x31)
52#define ADXL345_REG_DATAX0 (0x32)
53#define ADXL345_REG_DATAX1 (0x33)
54#define ADXL345_REG_DATAY0 (0x34)
55#define ADXL345_REG_DATAY1 (0x35)
56#define ADXL345_REG_DATAZ0 (0x36)
57#define ADXL345_REG_DATAZ1 (0x37)
58#define ADXL345_REG_FIFO_CTL (0x38)
59#define ADXL345_REG_FIFO_STATUS (0x39)
61#define ADXL345_MG2G_MULTIPLIER (0.004)
66#define ADXL345_INT_DATA_READY (0x80)
67#define ADXL345_INT_SINGLE_TAP (0x40)
68#define ADXL345_INT_DOUBLE_TAP (0x20)
69#define ADXL345_INT_ACTIVITY (0x10)
70#define ADXL345_INT_INACTIVITY (0x08)
71#define ADXL345_INT_FREE_FALL (0x04)
72#define ADXL345_INT_WATERMARK (0x02)
73#define ADXL345_INT_OVERRUN (0x01)
75#define ADXL345_TAP_DETECT_AXIS_Z (0x01)
76#define ADXL345_TAP_DETECT_AXIS_Y (0x02)
77#define ADXL345_TAP_DETECT_AXIS_X (0x04)
uint8_t ADXL345_ReadByte(uint8_t addr)
void ADXL345_SetInterrupts(uint8_t interrupts)
ADXL345_SelfTest_t
Used with register ADXL345_REG_DATA_FORMAT to set SPI wires.
ADXL345_DataRate_t
Used with register 0x2C (ADXL345_REG_BW_RATE) to set bandwidth.
@ ADXL345_DATARATE_1600_HZ
@ ADXL345_DATARATE_3_13_HZ
@ ADXL345_DATARATE_3200_HZ
@ ADXL345_DATARATE_200_HZ
@ ADXL345_DATARATE_1_56_HZ
@ ADXL345_DATARATE_6_25HZ
@ ADXL345_DATARATE_400_HZ
@ ADXL345_DATARATE_100_HZ
@ ADXL345_DATARATE_0_10_HZ
@ ADXL345_DATARATE_800_HZ
@ ADXL345_DATARATE_0_20_HZ
@ ADXL345_DATARATE_0_39_HZ
@ ADXL345_DATARATE_12_5_HZ
@ ADXL345_DATARATE_0_78_HZ
uint16_t ADXL345_ReadInt(uint8_t addr)
void ADXL345_EnableTapDetectOnAxes(uint8_t axes)
ADXL345_DataResolve_t
Used with register ADXL345_REG_DATA_FORMAT to set resolution mode.
@ ADXL345_DATA_RESOLVE_FULL
@ ADXL345_DATA_RESOLVE_10BIT
HAL_StatusTypeDef ADXL345_Init(ADXL345_DataRate_t dataRate, ADXL345_SPI_Wire_t spiWire, ADXL345_IntActive_t intLevel, ADXL345_DataResolve_t resolve, ADXL345_DataAlignment_t alignment, ADXL345_G_Range_t range)
void ADXL345_RemapInterrupts(uint8_t interrupts)
ADXL345_G_Range_t
Used with register ADXL345_REG_DATA_FORMAT to set g range.
ADXL345_DataAlignment_t
Used with register ADXL345_REG_DATA_FORMAT to set data alignment.
@ ADXL345_DATA_ALIGNMENT_RIGHT
@ ADXL345_DATA_ALIGNMENT_LEFT
ADXL345_SPI_Wire_t
Used with register ADXL345_REG_DATA_FORMAT to set SPI wires.
ADXL345_IntActive_t
Used with register ADXL345_REG_DATA_FORMAT to set interrupt active level.
@ ADXL345_INT_ACTIVE_HIGH
void ADXL345_WriteByte(uint8_t addr, uint8_t dat)
uint8_t ADXL345_IsInterrupt(uint8_t interrupt)