The ADuCM3029_demo_adxrs290 is a dual-axis angular rate sensor (gyroscope) demo project that provides a solution to control the EVAL-ADXRS290-PMDZ PMOD using a minimal CLI and the no-OS drivers for the EVAL-ADICUP3029 platform. It is a simple evaluation board that allows quick evaluation of the performance of the ADXRS290.
This project is an example on how to use Eval-ADICUP3029.
The ADuCM3029_demo_adxrs290_pmdz project uses the EVAL-ADXRS290-PMDZ which has the ADXRS290, a high performance pitch and roll (dual-axis in-plane) angular rate sensor (gyroscope) on board.
The application senses and reads the X-axis and Y-axis rate that is also called a roll and pitch rate sensing device. It produces a positive output voltage for clockwise rotation about the x-axis and y-axis.
The ADXRS290 provides an output full-scale range of ±100°/s with a sensitivity of 200 LSB/°/s. Its resonating disk sensor structure enables angular rate measurement about the axes normal to the sides of the package around an in-plane axis. Angular rate data is formatted as 16-bit twos complement and is accessible through a SPI digital interface. The ADXRS290 exhibits a low noise floor of 0.004°/s/√Hz and features programmable high-pass and lowpass filters.
In digital mode, the ADXRS290 communicates via 4-wire SPI and operates as a slave. Ignore data transmitted from the ADXRS290 to the master device during writes to the ADXRS290. Wire the ADXRS290 for SPI communication. The maximum SPI clockspeed is 5 MHz, with 12 pF maximum loading.
All the outputs are printed from the UART to the USER USB port and can be read on the PC using a serial terminal program, such as Putty or Tera Term.
The application builds upon the no-OS device and platform drivers and a minimal CLI module to provide a robust command set to set the range and output value of the channels.
The program first initializes the hardware system as well as the driver handlers, then goes into the main process that just implements the CLI process and waits for user commands. If a command is received, it is executed and the program returns to the main loop.
The following is a list of items needed in order to replicate this demo.
There are two basic ways to program the ADICUP3029 with the software for the ADXRS290.
Using the drag and drop method, the software is going to be a version that Analog Devices creates for testing and evaluation purposes. This is the EASIEST way to get started with the reference design.
Importing the project into CrossCore is going to allow you to change parameters and customize the software to fit your needs, but will be a bit more advanced and will require you to download the CrossCore toolchain.
The software for the ADICUP3029_ADXRS290 demo can be found here:
The official tool we promote for use with the EVAL-ADICUP3029 is CrossCore Embedded Studio. For more information on downloading the tools and a quick start guide on how to use the tool basics, please check out the Tools Overview page.
For more detailed instructions on importing this application/demo example into the CrossCore Embedded Studios tools, please view our How to import existing projects into your workspace section.
For more detailed instructions on importing this application/demo example into the CrossCore Embedded Studios tools, please view our How to configure the debug session section.
Beside the IDE generated sources the project structure is divided into high level software modules and low level software modules.
The high level modules are in the src folder and are:
The low level modules are the platform drivers and are included in the platform_source and platform_include folders.
For more information on importing, debugging, or other tools related questions, please see the tools user guide.
#define ADXRS290_SENSE 2
#define ACT_VALUE 50 #define INACT_VALUE 50
#define ACT_TIMER 50 #define INACT_TIMER 50
Following is the UART configuration.
Select COM Port Baud rate: 115200 Data: 8 bit Parity: none Stop: 1 bit Flow Control: none
It should now display the value similar to the image below.
The user must press the reset button on ADICUP3029 each time they want to display the results.
The Digital communication on the EVAL-ADXRS290-PMDZ is accomplished using a standard expanded SPI PMOD port.