The ADuCM360_demo_cn0396 is a dual toxic gas detector demo project, for the EVAL-ADICUP360 base board with additional EVAL-CN0396-ARDZ shield, created using the CrossCore Embedded Studios Interactive Development Environment.(IDE)
The ADuCM360_demo_cn0396 project uses the EVAL-CN0396-ARDZ shield which is a single-supply, low noise, portable gas detector, using a 4-electrode electrochemical sensor, for simultaneous detection of two distinct gases - for this example is used the Alphasense COH-A2 sensor, which detects carbon monoxide(CO) and hydrogen sulfide(H2S).
The EVAL-CN0396-ARDZ board provides a potentiostatic circuit for biasing the electrochemical sensor, along with dual programmable TIA's and 16-bit Sigma-Delta ADC. The TIA's convert the small currents passing in the sensor to a voltage that can be read by the AD7798 a 3-channel, low noise, low power 16-bit ADC that converts the analog voltage into digital data. The 16-bit ADC outputs are received via SPI interface of the EVAL-ADICUP360 board. An ADT7310 digital temperature sensor is also included to measure ambient temperature in order for correction of temperature effects.
The ADuCM360_demo_cn0396 application reads temperature value from ADT7310 and ADC values for each gas channel (CO and H2S), processes the values and make all necessary conversions in order to provide the gas concentrations. A UART interface (115200 baud rate and 8-bits data length) is used to send the results to terminal window. The output data will be displayed continuously considering a data refresh parameter (see DISPLAY_REFRESH).
Based on the maximum sensor sensitivity for each gas the system should be configured before using it. The application will calculate the gas concentration using sensor gas sensitivity and then compensate these values using measured temperature value.
The following is a list of items needed in order to replicate this demo.
There are two basic ways to program the ADICUP360 with the software for the CN0396.
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 ADuCM360_demo_cn0396 demo can be found here:
Prebuilt CN0396 Bin File
Complete CN0396 Source Files
For more information on importing, debugging, or other tools related questions, please see the tools user guide.
#define CO_RANGE 1000 #define H2S_RANGE 200
#define CO_SENS (75 * pow(10, -9)) #define H2S_SENS (800 * pow(10, -9))
#define MAX_CO_SENS (100 * pow(10, -9)) #define MAX_H2S_SENS (1000 * pow(10, -9))
#define DISPLAY_REFRESH 500
Following is the UART configuration.
Select COM Port Baud rate: 115200 Data: 8 bit Parity: none Stop: 1 bit Flow Control: none
The official tool we promote for use with the EVAL-ADICUP360 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 ADuCM360_demo_cn0396 is a C project which uses ADuCM36x C/C++ Project structure.
This project contains: system initialization part - disabling watchdog, setting system clock, enabling clock for peripherals; port configuration for SPI1, UART via P0.6/P0.7; SPI, UART read/write functions, AD7798 control, AD5270 and ADT7310 control; gas concentration computation.
In the src and include folders you will find the source and header files related to CN0396 software application. The Communication.c/h files contain SPI and UART specific data, the AD7798.c/h files contain the ADC control, the AD5270.c/h files contain the rheostat control, the ADT73100.c/h files contain the temperature sensor control, and the CN0396.c/h files are for the gas calculations.
The RTE folder contains device and system related files:
End of Document