ATY_LIB V2_102_230218
ATY_LIB for general devices or ALGO
 
Loading...
Searching...
No Matches
adxl345.h File Reference
#include "fw_hal.h"

Go to the source code of this file.

Macros

#define ADXL345_CS   P35
 
#define ADXL345_MOSI   P34
 
#define ADXL345_MISO   P33
 
#define ADXL345_SCK   P32
 
#define ADXL345_INT1   P36
 
#define ADXL345_INT2   P37
 
#define ADXL345_DEFAULT_ADDRESS   (0x53)
 
#define ADXL345_DEVICE_ID   (0xE5)
 
#define ADXL345_REG_DEVID   (0x00)
 
#define ADXL345_REG_THRESH_TAP   (0x1D)
 
#define ADXL345_REG_OFSX   (0x1E)
 
#define ADXL345_REG_OFSY   (0x1F)
 
#define ADXL345_REG_OFSZ   (0x20)
 
#define ADXL345_REG_DUR   (0x21)
 
#define ADXL345_REG_LATENT   (0x22)
 
#define ADXL345_REG_WINDOW   (0x23)
 
#define ADXL345_REG_THRESH_ACT   (0x24)
 
#define ADXL345_REG_THRESH_INACT   (0x25)
 
#define ADXL345_REG_TIME_INACT   (0x26)
 
#define ADXL345_REG_ACT_INACT_CTL   (0x27)
 
#define ADXL345_REG_THRESH_FF   (0x28)
 
#define ADXL345_REG_TIME_FF   (0x29)
 
#define ADXL345_REG_TAP_AXES   (0x2A)
 
#define ADXL345_REG_ACT_TAP_STATUS   (0x2B)
 
#define ADXL345_REG_BW_RATE   (0x2C)
 
#define ADXL345_REG_POWER_CTL   (0x2D)
 
#define ADXL345_REG_INT_ENABLE   (0x2E)
 
#define ADXL345_REG_INT_MAP   (0x2F)
 
#define ADXL345_REG_INT_SOURCE   (0x30)
 
#define ADXL345_REG_DATA_FORMAT   (0x31)
 
#define ADXL345_REG_DATAX0   (0x32)
 
#define ADXL345_REG_DATAX1   (0x33)
 
#define ADXL345_REG_DATAY0   (0x34)
 
#define ADXL345_REG_DATAY1   (0x35)
 
#define ADXL345_REG_DATAZ0   (0x36)
 
#define ADXL345_REG_DATAZ1   (0x37)
 
#define ADXL345_REG_FIFO_CTL   (0x38)
 
#define ADXL345_REG_FIFO_STATUS   (0x39)
 
#define ADXL345_MG2G_MULTIPLIER   (0.004)
 
#define ADXL345_INT_DATA_READY   (0x80)
 
#define ADXL345_INT_SINGLE_TAP   (0x40)
 
#define ADXL345_INT_DOUBLE_TAP   (0x20)
 
#define ADXL345_INT_ACTIVITY   (0x10)
 
#define ADXL345_INT_INACTIVITY   (0x08)
 
#define ADXL345_INT_FREE_FALL   (0x04)
 
#define ADXL345_INT_WATERMARK   (0x02)
 
#define ADXL345_INT_OVERRUN   (0x01)
 
#define ADXL345_TAP_DETECT_AXIS_Z   (0x01)
 
#define ADXL345_TAP_DETECT_AXIS_Y   (0x02)
 
#define ADXL345_TAP_DETECT_AXIS_X   (0x04)
 

Enumerations

enum  ADXL345_DataRate_t {
  ADXL345_DATARATE_3200_HZ = 0x0F , ADXL345_DATARATE_1600_HZ = 0x0E , ADXL345_DATARATE_800_HZ = 0x0D , ADXL345_DATARATE_400_HZ = 0x0C ,
  ADXL345_DATARATE_200_HZ = 0x0B , ADXL345_DATARATE_100_HZ = 0x0A , ADXL345_DATARATE_50_HZ = 0x09 , ADXL345_DATARATE_25_HZ = 0x08 ,
  ADXL345_DATARATE_12_5_HZ = 0x07 , ADXL345_DATARATE_6_25HZ = 0x06 , ADXL345_DATARATE_3_13_HZ = 0x05 , ADXL345_DATARATE_1_56_HZ = 0x04 ,
  ADXL345_DATARATE_0_78_HZ = 0x03 , ADXL345_DATARATE_0_39_HZ = 0x02 , ADXL345_DATARATE_0_20_HZ = 0x01 , ADXL345_DATARATE_0_10_HZ = 0x00
}
 Used with register 0x2C (ADXL345_REG_BW_RATE) to set bandwidth. More...
 
enum  ADXL345_SelfTest_t { ADXL345_SELF_TEST_OFF = 0x00 , ADXL345_SELF_TEST_ON = 0x80 }
 Used with register ADXL345_REG_DATA_FORMAT to set SPI wires. More...
 
enum  ADXL345_SPI_Wire_t { ADXL345_SPI_WIRE_4 = 0x00 , ADXL345_SPI_WIRE_3 = 0x40 }
 Used with register ADXL345_REG_DATA_FORMAT to set SPI wires. More...
 
enum  ADXL345_IntActive_t { ADXL345_INT_ACTIVE_HIGH = 0x00 , ADXL345_INT_ACTIVE_LOW = 0x20 }
 Used with register ADXL345_REG_DATA_FORMAT to set interrupt active level. More...
 
enum  ADXL345_DataResolve_t { ADXL345_DATA_RESOLVE_10BIT = 0x00 , ADXL345_DATA_RESOLVE_FULL = 0x08 }
 Used with register ADXL345_REG_DATA_FORMAT to set resolution mode. More...
 
enum  ADXL345_DataAlignment_t { ADXL345_DATA_ALIGNMENT_RIGHT = 0x00 , ADXL345_DATA_ALIGNMENT_LEFT = 0x04 }
 Used with register ADXL345_REG_DATA_FORMAT to set data alignment. More...
 
enum  ADXL345_G_Range_t { ADXL345_G_RANGE_2G = 0x00 , ADXL345_G_RANGE_4G = 0x01 , ADXL345_G_RANGE_8G = 0x02 , ADXL345_G_RANGE_16G = 0x03 }
 Used with register ADXL345_REG_DATA_FORMAT to set g range. More...
 

Functions

uint8_t ADXL345_ReadByte (uint8_t addr)
 
uint16_t ADXL345_ReadInt (uint8_t addr)
 
void ADXL345_WriteByte (uint8_t addr, uint8_t dat)
 
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_SetInterrupts (uint8_t interrupts)
 
void ADXL345_RemapInterrupts (uint8_t interrupts)
 
uint8_t ADXL345_IsInterrupt (uint8_t interrupt)
 
void ADXL345_EnableTapDetectOnAxes (uint8_t axes)
 

Macro Definition Documentation

◆ ADXL345_CS

#define ADXL345_CS   P35

Definition at line 20 of file adxl345.h.

◆ ADXL345_DEFAULT_ADDRESS

#define ADXL345_DEFAULT_ADDRESS   (0x53)

Definition at line 27 of file adxl345.h.

◆ ADXL345_DEVICE_ID

#define ADXL345_DEVICE_ID   (0xE5)

Definition at line 28 of file adxl345.h.

◆ ADXL345_INT1

#define ADXL345_INT1   P36

Definition at line 24 of file adxl345.h.

◆ ADXL345_INT2

#define ADXL345_INT2   P37

Definition at line 25 of file adxl345.h.

◆ ADXL345_INT_ACTIVITY

#define ADXL345_INT_ACTIVITY   (0x10)

Definition at line 69 of file adxl345.h.

◆ ADXL345_INT_DATA_READY

#define ADXL345_INT_DATA_READY   (0x80)

Interrupt bits

Definition at line 66 of file adxl345.h.

◆ ADXL345_INT_DOUBLE_TAP

#define ADXL345_INT_DOUBLE_TAP   (0x20)

Definition at line 68 of file adxl345.h.

◆ ADXL345_INT_FREE_FALL

#define ADXL345_INT_FREE_FALL   (0x04)

Definition at line 71 of file adxl345.h.

◆ ADXL345_INT_INACTIVITY

#define ADXL345_INT_INACTIVITY   (0x08)

Definition at line 70 of file adxl345.h.

◆ ADXL345_INT_OVERRUN

#define ADXL345_INT_OVERRUN   (0x01)

Definition at line 73 of file adxl345.h.

◆ ADXL345_INT_SINGLE_TAP

#define ADXL345_INT_SINGLE_TAP   (0x40)

Definition at line 67 of file adxl345.h.

◆ ADXL345_INT_WATERMARK

#define ADXL345_INT_WATERMARK   (0x02)

Definition at line 72 of file adxl345.h.

◆ ADXL345_MG2G_MULTIPLIER

#define ADXL345_MG2G_MULTIPLIER   (0.004)

Definition at line 61 of file adxl345.h.

◆ ADXL345_MISO

#define ADXL345_MISO   P33

Definition at line 22 of file adxl345.h.

◆ ADXL345_MOSI

#define ADXL345_MOSI   P34

Definition at line 21 of file adxl345.h.

◆ ADXL345_REG_ACT_INACT_CTL

#define ADXL345_REG_ACT_INACT_CTL   (0x27)

Definition at line 41 of file adxl345.h.

◆ ADXL345_REG_ACT_TAP_STATUS

#define ADXL345_REG_ACT_TAP_STATUS   (0x2B)

Definition at line 45 of file adxl345.h.

◆ ADXL345_REG_BW_RATE

#define ADXL345_REG_BW_RATE   (0x2C)

Definition at line 46 of file adxl345.h.

◆ ADXL345_REG_DATA_FORMAT

#define ADXL345_REG_DATA_FORMAT   (0x31)

Definition at line 51 of file adxl345.h.

◆ ADXL345_REG_DATAX0

#define ADXL345_REG_DATAX0   (0x32)

Definition at line 52 of file adxl345.h.

◆ ADXL345_REG_DATAX1

#define ADXL345_REG_DATAX1   (0x33)

Definition at line 53 of file adxl345.h.

◆ ADXL345_REG_DATAY0

#define ADXL345_REG_DATAY0   (0x34)

Definition at line 54 of file adxl345.h.

◆ ADXL345_REG_DATAY1

#define ADXL345_REG_DATAY1   (0x35)

Definition at line 55 of file adxl345.h.

◆ ADXL345_REG_DATAZ0

#define ADXL345_REG_DATAZ0   (0x36)

Definition at line 56 of file adxl345.h.

◆ ADXL345_REG_DATAZ1

#define ADXL345_REG_DATAZ1   (0x37)

Definition at line 57 of file adxl345.h.

◆ ADXL345_REG_DEVID

#define ADXL345_REG_DEVID   (0x00)

Definition at line 30 of file adxl345.h.

◆ ADXL345_REG_DUR

#define ADXL345_REG_DUR   (0x21)

Definition at line 35 of file adxl345.h.

◆ ADXL345_REG_FIFO_CTL

#define ADXL345_REG_FIFO_CTL   (0x38)

Definition at line 58 of file adxl345.h.

◆ ADXL345_REG_FIFO_STATUS

#define ADXL345_REG_FIFO_STATUS   (0x39)

Definition at line 59 of file adxl345.h.

◆ ADXL345_REG_INT_ENABLE

#define ADXL345_REG_INT_ENABLE   (0x2E)

Definition at line 48 of file adxl345.h.

◆ ADXL345_REG_INT_MAP

#define ADXL345_REG_INT_MAP   (0x2F)

Definition at line 49 of file adxl345.h.

◆ ADXL345_REG_INT_SOURCE

#define ADXL345_REG_INT_SOURCE   (0x30)

Definition at line 50 of file adxl345.h.

◆ ADXL345_REG_LATENT

#define ADXL345_REG_LATENT   (0x22)

Definition at line 36 of file adxl345.h.

◆ ADXL345_REG_OFSX

#define ADXL345_REG_OFSX   (0x1E)

Definition at line 32 of file adxl345.h.

◆ ADXL345_REG_OFSY

#define ADXL345_REG_OFSY   (0x1F)

Definition at line 33 of file adxl345.h.

◆ ADXL345_REG_OFSZ

#define ADXL345_REG_OFSZ   (0x20)

Definition at line 34 of file adxl345.h.

◆ ADXL345_REG_POWER_CTL

#define ADXL345_REG_POWER_CTL   (0x2D)

Definition at line 47 of file adxl345.h.

◆ ADXL345_REG_TAP_AXES

#define ADXL345_REG_TAP_AXES   (0x2A)

Definition at line 44 of file adxl345.h.

◆ ADXL345_REG_THRESH_ACT

#define ADXL345_REG_THRESH_ACT   (0x24)

Definition at line 38 of file adxl345.h.

◆ ADXL345_REG_THRESH_FF

#define ADXL345_REG_THRESH_FF   (0x28)

Definition at line 42 of file adxl345.h.

◆ ADXL345_REG_THRESH_INACT

#define ADXL345_REG_THRESH_INACT   (0x25)

Definition at line 39 of file adxl345.h.

◆ ADXL345_REG_THRESH_TAP

#define ADXL345_REG_THRESH_TAP   (0x1D)

Definition at line 31 of file adxl345.h.

◆ ADXL345_REG_TIME_FF

#define ADXL345_REG_TIME_FF   (0x29)

Definition at line 43 of file adxl345.h.

◆ ADXL345_REG_TIME_INACT

#define ADXL345_REG_TIME_INACT   (0x26)

Definition at line 40 of file adxl345.h.

◆ ADXL345_REG_WINDOW

#define ADXL345_REG_WINDOW   (0x23)

Definition at line 37 of file adxl345.h.

◆ ADXL345_SCK

#define ADXL345_SCK   P32

Definition at line 23 of file adxl345.h.

◆ ADXL345_TAP_DETECT_AXIS_X

#define ADXL345_TAP_DETECT_AXIS_X   (0x04)

Definition at line 77 of file adxl345.h.

◆ ADXL345_TAP_DETECT_AXIS_Y

#define ADXL345_TAP_DETECT_AXIS_Y   (0x02)

Definition at line 76 of file adxl345.h.

◆ ADXL345_TAP_DETECT_AXIS_Z

#define ADXL345_TAP_DETECT_AXIS_Z   (0x01)

Definition at line 75 of file adxl345.h.

Enumeration Type Documentation

◆ ADXL345_DataAlignment_t

Used with register ADXL345_REG_DATA_FORMAT to set data alignment.

Enumerator
ADXL345_DATA_ALIGNMENT_RIGHT 
ADXL345_DATA_ALIGNMENT_LEFT 

Definition at line 137 of file adxl345.h.

137 {
ADXL345_DataAlignment_t
Used with register ADXL345_REG_DATA_FORMAT to set data alignment.
Definition: adxl345.h:137
@ ADXL345_DATA_ALIGNMENT_RIGHT
Definition: adxl345.h:138
@ ADXL345_DATA_ALIGNMENT_LEFT
Definition: adxl345.h:139

◆ ADXL345_DataRate_t

Used with register 0x2C (ADXL345_REG_BW_RATE) to set bandwidth.

Enumerator
ADXL345_DATARATE_3200_HZ 
ADXL345_DATARATE_1600_HZ 
ADXL345_DATARATE_800_HZ 
ADXL345_DATARATE_400_HZ 
ADXL345_DATARATE_200_HZ 
ADXL345_DATARATE_100_HZ 
ADXL345_DATARATE_50_HZ 
ADXL345_DATARATE_25_HZ 
ADXL345_DATARATE_12_5_HZ 
ADXL345_DATARATE_6_25HZ 
ADXL345_DATARATE_3_13_HZ 
ADXL345_DATARATE_1_56_HZ 
ADXL345_DATARATE_0_78_HZ 
ADXL345_DATARATE_0_39_HZ 
ADXL345_DATARATE_0_20_HZ 
ADXL345_DATARATE_0_10_HZ 

Definition at line 82 of file adxl345.h.

82 {
83 ADXL345_DATARATE_3200_HZ = 0x0F, // 1600Hz Bandwidth
84 ADXL345_DATARATE_1600_HZ = 0x0E, // 800Hz Bandwidth
85 ADXL345_DATARATE_800_HZ = 0x0D, // 400Hz Bandwidth
86 ADXL345_DATARATE_400_HZ = 0x0C, // 200Hz Bandwidth
87 ADXL345_DATARATE_200_HZ = 0x0B, // 100Hz Bandwidth
88 ADXL345_DATARATE_100_HZ = 0x0A, // 50Hz Bandwidth (default)
89 ADXL345_DATARATE_50_HZ = 0x09, // 25Hz Bandwidth
90 ADXL345_DATARATE_25_HZ = 0x08, // 12.5Hz Bandwidth
91 ADXL345_DATARATE_12_5_HZ = 0x07, // 6.25Hz Bandwidth
92 ADXL345_DATARATE_6_25HZ = 0x06, // 3.13Hz Bandwidth
93 ADXL345_DATARATE_3_13_HZ = 0x05, // 1.56Hz Bandwidth
94 ADXL345_DATARATE_1_56_HZ = 0x04, // 0.78Hz Bandwidth
95 ADXL345_DATARATE_0_78_HZ = 0x03, // 0.39Hz Bandwidth
96 ADXL345_DATARATE_0_39_HZ = 0x02, // 0.20Hz Bandwidth
97 ADXL345_DATARATE_0_20_HZ = 0x01, // 0.10Hz Bandwidth
98 ADXL345_DATARATE_0_10_HZ = 0x00, // 0.05Hz Bandwidth
ADXL345_DataRate_t
Used with register 0x2C (ADXL345_REG_BW_RATE) to set bandwidth.
Definition: adxl345.h:82
@ ADXL345_DATARATE_1600_HZ
Definition: adxl345.h:84
@ ADXL345_DATARATE_3_13_HZ
Definition: adxl345.h:93
@ ADXL345_DATARATE_3200_HZ
Definition: adxl345.h:83
@ ADXL345_DATARATE_200_HZ
Definition: adxl345.h:87
@ ADXL345_DATARATE_1_56_HZ
Definition: adxl345.h:94
@ ADXL345_DATARATE_6_25HZ
Definition: adxl345.h:92
@ ADXL345_DATARATE_400_HZ
Definition: adxl345.h:86
@ ADXL345_DATARATE_50_HZ
Definition: adxl345.h:89
@ ADXL345_DATARATE_100_HZ
Definition: adxl345.h:88
@ ADXL345_DATARATE_0_10_HZ
Definition: adxl345.h:98
@ ADXL345_DATARATE_800_HZ
Definition: adxl345.h:85
@ ADXL345_DATARATE_0_20_HZ
Definition: adxl345.h:97
@ ADXL345_DATARATE_0_39_HZ
Definition: adxl345.h:96
@ ADXL345_DATARATE_12_5_HZ
Definition: adxl345.h:91
@ ADXL345_DATARATE_25_HZ
Definition: adxl345.h:90
@ ADXL345_DATARATE_0_78_HZ
Definition: adxl345.h:95

◆ ADXL345_DataResolve_t

Used with register ADXL345_REG_DATA_FORMAT to set resolution mode.

Enumerator
ADXL345_DATA_RESOLVE_10BIT 
ADXL345_DATA_RESOLVE_FULL 

Definition at line 129 of file adxl345.h.

129 {
ADXL345_DataResolve_t
Used with register ADXL345_REG_DATA_FORMAT to set resolution mode.
Definition: adxl345.h:129
@ ADXL345_DATA_RESOLVE_FULL
Definition: adxl345.h:131
@ ADXL345_DATA_RESOLVE_10BIT
Definition: adxl345.h:130

◆ ADXL345_G_Range_t

Used with register ADXL345_REG_DATA_FORMAT to set g range.

Enumerator
ADXL345_G_RANGE_2G 
ADXL345_G_RANGE_4G 
ADXL345_G_RANGE_8G 
ADXL345_G_RANGE_16G 

Definition at line 145 of file adxl345.h.

145 {
146 ADXL345_G_RANGE_2G = 0x00, // +/- 2g (default)
147 ADXL345_G_RANGE_4G = 0x01, // +/- 4g
148 ADXL345_G_RANGE_8G = 0x02, // +/- 8g
149 ADXL345_G_RANGE_16G = 0x03, // +/- 16g
ADXL345_G_Range_t
Used with register ADXL345_REG_DATA_FORMAT to set g range.
Definition: adxl345.h:145
@ ADXL345_G_RANGE_2G
Definition: adxl345.h:146
@ ADXL345_G_RANGE_4G
Definition: adxl345.h:147
@ ADXL345_G_RANGE_8G
Definition: adxl345.h:148
@ ADXL345_G_RANGE_16G
Definition: adxl345.h:149

◆ ADXL345_IntActive_t

Used with register ADXL345_REG_DATA_FORMAT to set interrupt active level.

Enumerator
ADXL345_INT_ACTIVE_HIGH 
ADXL345_INT_ACTIVE_LOW 

Definition at line 121 of file adxl345.h.

121 {
ADXL345_IntActive_t
Used with register ADXL345_REG_DATA_FORMAT to set interrupt active level.
Definition: adxl345.h:121
@ ADXL345_INT_ACTIVE_LOW
Definition: adxl345.h:123
@ ADXL345_INT_ACTIVE_HIGH
Definition: adxl345.h:122

◆ ADXL345_SelfTest_t

Used with register ADXL345_REG_DATA_FORMAT to set SPI wires.

Enumerator
ADXL345_SELF_TEST_OFF 
ADXL345_SELF_TEST_ON 

Definition at line 105 of file adxl345.h.

105 {
ADXL345_SelfTest_t
Used with register ADXL345_REG_DATA_FORMAT to set SPI wires.
Definition: adxl345.h:105
@ ADXL345_SELF_TEST_ON
Definition: adxl345.h:107
@ ADXL345_SELF_TEST_OFF
Definition: adxl345.h:106

◆ ADXL345_SPI_Wire_t

Used with register ADXL345_REG_DATA_FORMAT to set SPI wires.

Enumerator
ADXL345_SPI_WIRE_4 
ADXL345_SPI_WIRE_3 

Definition at line 113 of file adxl345.h.

113 {
114 ADXL345_SPI_WIRE_4 = 0x00,
115 ADXL345_SPI_WIRE_3 = 0x40,
ADXL345_SPI_Wire_t
Used with register ADXL345_REG_DATA_FORMAT to set SPI wires.
Definition: adxl345.h:113
@ ADXL345_SPI_WIRE_3
Definition: adxl345.h:115
@ ADXL345_SPI_WIRE_4
Definition: adxl345.h:114

Function Documentation

◆ ADXL345_EnableTapDetectOnAxes()

void ADXL345_EnableTapDetectOnAxes ( uint8_t  axes)

Definition at line 88 of file adxl345.c.

89{
91}
void ADXL345_WriteByte(uint8_t addr, uint8_t dat)
Definition: adxl345.c:41
#define ADXL345_REG_TAP_AXES
Definition: adxl345.h:44

◆ ADXL345_Init()

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 
)

Definition at line 50 of file adxl345.c.

57{
59 {
62 spiWire|intLevel|resolve|alignment|range);
63 ADXL345_WriteByte(ADXL345_REG_POWER_CTL, 0x08); // BIT3=0/1:(测量模式/待机模式);BIT2=0/1:(工作/休眠);
64 return HAL_OK;
65 }
66 else
67 {
68 return HAL_ERROR;
69 }
70}
uint8_t ADXL345_ReadByte(uint8_t addr)
Definition: adxl345.c:20
#define ADXL345_REG_DEVID
Definition: adxl345.h:30
#define ADXL345_REG_BW_RATE
Definition: adxl345.h:46
#define ADXL345_REG_DATA_FORMAT
Definition: adxl345.h:51
#define ADXL345_DEVICE_ID
Definition: adxl345.h:28
#define ADXL345_REG_POWER_CTL
Definition: adxl345.h:47
@ HAL_ERROR
Definition: fw_types.h:77
@ HAL_OK
Definition: fw_types.h:76

◆ ADXL345_IsInterrupt()

uint8_t ADXL345_IsInterrupt ( uint8_t  interrupt)

Definition at line 82 of file adxl345.c.

83{
85 return (int_src & interrupt);
86}
#define ADXL345_REG_INT_SOURCE
Definition: adxl345.h:50
unsigned char uint8_t
Definition: fw_types.h:18

◆ ADXL345_ReadByte()

uint8_t ADXL345_ReadByte ( uint8_t  addr)

Definition at line 20 of file adxl345.c.

21{
22 ADXL345_CS = 0;
23 xbuf[0] = addr | 0x80;
24 xbuf[1] = 0xFF;
26 ADXL345_CS = 1;
27 return xbuf[1];
28}
uint8_t xbuf[3]
Definition: adxl345.c:18
#define ADXL345_CS
Definition: adxl345.h:20
void SPI_TxRxBytes(uint8_t *pBuf, uint8_t len)
Definition: fw_spi.c:28
uint8_t addr[8]
Definition: main.c:28

◆ ADXL345_ReadInt()

uint16_t ADXL345_ReadInt ( uint8_t  addr)

Definition at line 30 of file adxl345.c.

31{
32 ADXL345_CS = 0;
33 xbuf[0] = addr | 0xC0;
34 xbuf[1] = 0xFF;
35 xbuf[2] = 0xFF;
37 ADXL345_CS = 1;
38 return *((uint16_t *)&xbuf[1]);
39}
unsigned short uint16_t
Definition: fw_types.h:19

◆ ADXL345_RemapInterrupts()

void ADXL345_RemapInterrupts ( uint8_t  interrupts)

Remap interrupts to INT2 (default is INT1)

Definition at line 77 of file adxl345.c.

78{
80}
#define ADXL345_REG_INT_MAP
Definition: adxl345.h:49

◆ ADXL345_SetInterrupts()

void ADXL345_SetInterrupts ( uint8_t  interrupts)

Enable interrupts

Definition at line 72 of file adxl345.c.

73{
75}
#define ADXL345_REG_INT_ENABLE
Definition: adxl345.h:48

◆ ADXL345_WriteByte()

void ADXL345_WriteByte ( uint8_t  addr,
uint8_t  dat 
)

Definition at line 41 of file adxl345.c.

42{
43 ADXL345_CS = 0;
44 xbuf[0] = addr;
45 xbuf[1] = dat;
47 ADXL345_CS = 1;
48}
__CODE int8_t dat[20]