Pmod ACL2 Reference Manual
The Digilent PmodACL2 (Revision A) is a 3-axis MEMS accelerometer that used the ADXL362 to provide up to 12 bits of resolution for each axis of acceleration. Additionally, this module offers a variety of feedback from multiple interrupt sources as well as power saving features through its inactivity monitoring.
Download This Reference Manual
Features
- User-selectable resolution
- Less than 2 μA consumption at 100Hz
- Activity and inactivity monitoring
- Free fall detection
Functional Description
The PmodACL2 utilizes Analog Devices ADXL362 to provide MEMS acceleration data to the system board. With its deep 512-sample FIFO buffer, users are able to view a long string of events prior to a triggered interrupt or simply be able to have the system board access acceleration data when the user finds it most convenient.
Interfacing with the Pmod
The PmodACL2 communicates with the host board via the SPI protocol. To read from the on-board data registers, the Chip Select line must first be pulled low and then send a command byte to read from the data registers (0x0B). The desired address byte must be sent next, and then the desired byte is received with the MSB first on the falling clock edge. Because the address pointer auto-increments to the next address byte, it is possible to read multiple bytes consecutively by continuing to pulse the Serial Clock line. An example set of commands to read from the y-axis register is given below:
Command Read | First Y-axis Address | LSB byte of Y-axis data | MSB byte of Y-axis data | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | LSB | SX | SX | SX | SX | MSB | b10 | b9 | b8 |
Note* Each SX
bit is the same value as the most significant bit of the y-axis data
To read from the FIFO buffer, a command byte to write to a data register (0x0A) must first be sent so that we can configure the FIFO Control register (address 0x28) to indicate that we want the FIFO buffer to store data. After the ADXL362 has been configured to use the FIFO buffer, a command byte to read from the FIFO buffer (0x0D) must first be sent, to then be followed by pairs of data bytes containing which axis is being measured and the acceleration data. An example set of commands to read from the FIFO buffer is given below:
Command Write | FIFO Control Register Address | Command FIFO Read | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 |
LSB byte of axis data | MSB byte of axis data | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
b7 | b6 | b5 | b4 | b3 | b2 | b1 | LSB | b15 | b14 | SX | SX | MSB | b10 | b9 | b8 |
Note 1* Each SX
bit is the same value as the most significant bit of the y-axis data
Note 2* b15
and b14
represent which axis the incoming data represents
Pinout Description Table
Pinout Table of the PmodACL2 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Connector J1 | Connector J2 | |||||||||
Pin | Signal | Description | Pin | Signal | Description | Pin | Signal | Description | ||
1 | ~CS | Chip select | 7 | INT2 | Interrupt Two | 1 | INT1 | Interrupt One | ||
2 | MOSI | Master Out Slave In | 8 | INT1 | Interrupt One | 2 | G | Power Supply Ground | ||
3 | MISO | Master In Slave Out | 9 | NC | Not connected | Connector J3 | ||||
4 | SCLK | Serial clock | 10 | NC | Not connected | Pin | Signal | Description | ||
5 | GND | Power supply ground | 11 | GND | Power supply ground | 1 | INT2 | Interrupt Two | ||
6 | VCC | Power supply (3.3V) | 12 | VCC | Power supply (3.3V) | 2 | G | Power Supply Ground |
The PmodACL2 also has two programmable interrupt pins available for use. Both of these pins can be set to trigger an interrupt upon multiple different triggers including activity/inactivity (to help reduce system power), when the FIFO buffer is filled to a desired level, when data is ready to be retrieved, and other triggers.
Any external power applied to the PmodACL2 must be within 1.6V and 3.5V. Consequently, with Digilent system boards, this Pmod must be run off of a 3.3V rail.
Physical Dimensions
The pins on the pin header are spaced 100 mil apart. The PCB is 0.95 inches long on the sides parallel to the pins on the pin header and 0.8 inches long on the sides perpendicular to the pin header.
Additional Information
The schematics of the PmodACL2 are available here. Additional information about the on-board accelerometer by Analog Devices can be found here.
Example code demonstrating how to get information from the PmodACL2 can be found here.
If you have any questions or comments about the PmodACL2, feel free to post them under the appropriate section (“Add-on Boards”) of the Digilent Forum.