This is an old revision of the document!
The ADICUP3029_ADT7420 is a temperature sensor demo project for the EVAL-ADICUP3029 base board with additional EVAL-ADT7420-PMDZ shield, created using the Analog Devices Cross Core Embedded Studio.
The ADICUP3029_ADT7420 project uses EVAL-ADT7420-PMDZ PMOD which is a 16-bit ambient temperature sensor. It requires no calibration.
The following is a list of items needed in order to replicate this demo.
In the adt7420_app.h header files you can configure the following parameters:
Once the hardware is setup and software is configured, user needs to select how they want to view the data coming from the temperature sensor(ADT7420).
There are three different ways to visualize the data:
Depending on how you want to operate the board and visualize the data, there are two different options that must be selected from. Below is a table outlining the general operation, and you need to click on which launch file you need to program onto the EVAL-ADICUP3029, and hit the <F5> key on your keyboard.
Data Output Destination | Connected to Debugger | Configuration File |
---|---|---|
CCES Console Window | Yes | ADICUP3029_Debug.launch |
PC/Laptop Serial Terminal | No | ADICUP3029_Release.launch |
IoTNode Smart App | Yes | ADICUP3029_Debug.launch |
IoTNode Smart App | No | ADICUP3029_Release.launch |
Debug launch mode is used when connected to the debugger. In debug mode, all the outputs are directed to the console window of the CrossCore tools via semihosting. The data is also sent by default to the IoTNode smart app (ADI_APP_USE_BLUETOOTH =1), but can be turned of if desired by setting ADI_APP_USE_BLUETOOTH = 0.
Figure shows when ADI_APP_USE_BLUETOOTH is set to 1, sensor data is sent to android application.
If you have the app installed on your phone, these figure shows the output on android device.
Do not try to connect directly (or pair) to the EVAL-ADICUP3029 from your phone.
It's important to remember that when you use the Debug.launch file that you hit the “play” button when using the tools or else your program will not run.
Release launch mode is used for running without the debugger connected. When in release mode, console output is redirected to UART. Bluetooth is enabled, and sensor data is sent to android application. If disabled, sensor data is directed only to the UART. If you are using the UART to make print to the PC/laptop, here are the settings your TCP client must be set too. Following is the UART configuration.
Select COM Port Baud rate: 9600 Data: 8 bit Parity: none Stop: 1 bit Flow Control: none
Figure shows when ADI_APP_USE_BLUETOOTH is set to 1
If you have the app installed on your phone, these figure shows the output on android device.
Do not try to connect directly (or pair) to the EVAL-ADICUP3029 from your phone.
There are two basic ways to program the ADICUP3029 with the software for the ADT7420.
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. Below screen shot shows how to open project from CCES Example browser.
The software for the ADuCM3029_demo_adt7420 demo can be found here:
Prebuilt ADT7420 Hex File
Complete ADT7420 Source Files
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.
The ADICUP3029_ADT7420 is a C project that uses ADuCM3029 C/C++ Project structure.
This project contains: system initialization part - disabling watchdog, setting system clock, enabling clock for peripherals; port configuration for I2C read/write; configuring and reading from ADT7420, UART read/write functions;
adt7420_app.cpp and adt7420_app.h are the main source and header files related to ADICUP3029_ADT7420 be found under RTE/ADuCM3029 folder.ADT7420 sensor software drivers are located in RTE/Sensor folder. All ADuCM3029 related drivers can BLE related files can be seen under RTE/Board_Support folder.
pinmux.c – contains GPIO pinmuxing for UART and SPI.
End of Document