English
Language : 

AN4505 Datasheet, PDF (28/43 Pages) Dynex Semiconductor – Power Assemblies
Interrupt generation
Figure 15. No-move interrupt
AN4505
28/43
=
<
GSV
;
12527$7,21
=21(
6HOHFWLYH$[LV
,QWHUUXSW
$0Y
This paragraph provides the basics for the use of the selective axis movement detection
feature. The example code which implements the SW routine for the selective axis
movement recognition is given below.
1 Write 0Fh into CTRL_REG1
3 Write 80h into CTRL_REG3
4 Write 00h into CTRL_REG4
6 Write 2Ch into INT1_THS_XH
7 Write A4h into INT1_THS_XL
8 Write 2Ch into INT1_THS_YH
9 Write A4h into INT1_THS_YL
10 Write 2Ch into INT1_THS_ZH
11 Write A4h into INT1_THS_ZL
12 Write 01h into INT1_DURATION
13 Write 65h into INT1_CFG
14 Poll INT1 pad; if INT1=0 then go to 8
15 Read INT1_SRC
16
(Wake-up event has occurred; insert
your code here)
17 Go to 15
// Turn-on the sensor and enable X, Y, and Z
// ODR = 100 Hz
// Interrupt driven to INT1 pad
// FS = 250 dps
// Threshold = 60 dps
// Threshold = 60 dps
// Threshold = 60 dps
// Threshold = 60 dps
// Threshold = 60 dps
// Threshold = 60 dps
// Duration = 10 ms
// Enable XL, YL and ZH interrupt generation in AND
// configuration. Interrupt latched
// Poll INT1 pin waiting for the
// wake-up event
// Return the event that has triggered the
// interrupt
// Event handling
The code sample exploits a threshold set at 60 dps selective axis movement detection and
the event is notified by the hardware signal INT1. At step 12, the INT1_DURATION register
is configured like this to ignore events that are shorter than 1/DR = 1/100 ~= 10 msec in
order to avoid false detections. Once the selective axis movement detection has occurred, a
read of the INT1_SRC register clears the request and the device is ready to recognize other
events.
DocID026441 Rev 1