Wiki

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
resources:eval:user-guides:eval-adicup3029:reference_designs:demo_cn0357 [17 May 2017 16:07] – [Project Structure] ANMOL Raykarresources:eval:user-guides:eval-adicup3029:reference_designs:demo_cn0357 [31 Jul 2017 19:39] – removed Brandon Bushey
Line 1: Line 1:
-======CO Toxic Gas Measurement Demo (with EVAL-CN0357-ARDZ)====== 
-\\ 
-The **ADICUP3029_CN0357** is a toxic gas(CO) detector demo project for the EVAL-ADICUP3029 base board with additional [[http://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-CN0357-ARDZ.html|EVAL-CN0357-ARDZ shield]], created using the CrossCore Embedded Studio environment. 
-\\ 
-\\ 
- 
- 
-===== General Description/Overview ===== 
-\\ 
-This userguide gives a detailed explanation about  ADICUP3029_CN0357  toxic gas (CO) detection project for [[https://wiki.analog.com/resources/eval/user-guides/eval-adicup3029/hardware/adicup3029|EVAL-ADICUP3029]] base board and [[http://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-CN0357-ARDZ.html|EVAL-CN0357-ARDZ]] gas sensor shield. The gas sensor shield consists of portable gas detector circuit. 
-\\ 
-{{ :resources:eval:user-guides:eval-adicup3029:reference_designs:picture1.jpg?500 |}} 
-The [[http://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-CN0357-ARDZ.html|EVAL-CN0357-ARDZ shield]] circuit provides a potentiostatic circuit for biasing the electrochemical sensor and 16-bit Sigma-Delta ADC. The small currents passing in the sensor is being converted to a voltage that can be read by the ADC. The 16-bit ADC value is received via SPI interface of the EVAL-ADICUP3029 board, where the gas concentration is computed.  
-\\ 
- 
-The **ADICUP3029_CN0357** application configures the necessary components, processes ADC output value and make all necessary conversions in order to provide the gas concentration. A UART interface (38400 baud rate and 8-bits data length) is used to send the results to terminal window: CO Concentration in **Parts Per Million(PPM)** are the outputs provided in the terminal window. 
-\\ 
-\\ 
-At the start of the project, the software computes the necessary parameters and configure the digital rheostat(AD5270) . The required parameters are the sensor sensitivity and sensor range. These can be modified by changing the values of the constants **SENSOR_SENSITIVITY** and **SENSOR_RANGE** found in the **CN0357.h** header file of the project.  See the "//Project Structure//" section for more details. 
-\\ 
-\\ 
- 
-===== Setting up the hardware ===== 
-\\ 
- 
-<note important>Extremely important to plug in an acceptable power supply to the barrel jack **P11** to supply power for the **EVAL-CN0357-ARDZ Rev B**.  The boards will not work if you try only to power it from the DEBUG_USB or the USER_USB. The external power supply is not required for **EVAL-CN0357-ARDZ Rev C**. </note> 
- 
-  - Make sure that Carbon Monoxide sensor **CO-AX** is properly placed on the **EVAL-CN0357** sensor shield 
-  - Mount **EVAL-CN0357-ARDZ** on the **EVAL-ADICUP3029** base board such that **DIGI1** and **DIGI0** of the sensor shield are connected to the **P6** and **P7** on the EVAL-ADICUP3029 board respectively. 
-  - Insert the **DEBUG USB** in **P10** of EVAL-ADICUP3029 base board 
-\\ 
-The ADuCM3029_demo_cn0357 uses **UART** connection via **P0.10/P0.11** and **SPI0** channel of the ADuCM3029 to communicate with EVAL-CN0357-ARDZ board.  
-\\ 
-\\ 
-==== Jumper and Switch Settings ==== 
-\\ 
-  - Place the jumper on P18 (Arduino Power Rails) on the EVAL-ADICUP3029 base board. 
-  - Check the direction of the switch S2 for the proper working of the UART and S5 for USB/Wall power supply. 
-  - Place the jumper on P15 on the EVAL-ADICUP3029 base board to power the BLE.  
-{{ :resources:eval:user-guides:eval-adicup3029:reference_designs:jumper_ble.png?500 |}} 
- - Similarly the jumper settings for EVAL-CN0357-ARDZ Rev C are as follows 
- 
-{{ :resources:eval:user-guides:eval-adicup3029:reference_designs:jumper_cn0357.png?500 |}} 
-\\ 
-===== Obtaining the source code ===== 
-\\ 
-We recommend not opening the project directly, but rather import it into CrossCore Embedded Studio and make a local copy in your workspace.  
-\\ 
- 
-The source code and include files of the **ADICUP3029_CN0357** can be found on Github: 
-<WRAP round 40% download> 
- 
-The source code has to be inserted from the github 
-  
-</WRAP> 
-\\ 
- 
- 
-===== Outputting Data ===== 
- 
- When the ADICUP3029 is in advertising mode, UART terminal would display 
- 
-{{:resources:eval:user-guides:eval-adicup3029:reference_designs:advertising.png?300|}} 
- 
- 
- The ADI_CO_SENSOR node device found on iPAD 
- 
-{{:resources:eval:user-guides:eval-adicup3029:reference_designs:ipad_connect.png?300|}} 
-                            
- 
- The ADICUP3029 connected to BLE peripheral and sending the CO ppm concentration values 
- 
- {{:resources:eval:user-guides:eval-adicup3029:reference_designs:screenshot2.png?300|}} 
- 
-The data transmission successful is indicated by green LED glow 
- 
-{{:resources:eval:user-guides:eval-adicup3029:reference_designs:green_led_glow.png?300|}} 
- 
-The data transmission un-successful is indicated by red LED glow 
-  
-{{:resources:eval:user-guides:eval-adicup3029:reference_designs:red_led_glow.png?300|}} 
- 
-The ppm concentration values displayed on ios 
- 
-{{:resources:eval:user-guides:eval-adicup3029:reference_designs:co_val.png?300|}} 
- 
-Graph displaying ppm values 
- 
-{{:resources:eval:user-guides:eval-adicup3029:reference_designs:graph.png?300|}} 
- 
-The ADICUP3029 disconnected to BLE peripheral 
- 
-{{:resources:eval:user-guides:eval-adicup3029:reference_designs:disco.png?300|}} 
- 
-===== How to use the Tools ===== 
-\\ 
-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 [[resources:eval:user-guides:eval-adicup3029:tools|Tools Overview page.]] 
-\\ 
- 
-==== Importing  ==== 
-\\ 
-For more detailed instructions on importing this application/demo example into the CrossCore Embedded Studios tools, please view our [[resources:eval:user-guides:eval-adicup3029:tools:cces_user_guide#how_to_import_existing_projects_into_your_workspace|How to import existing projects into your workspace]] section. 
-\\ 
- 
- 
-==== Debugging ==== 
-\\ 
-* A debug configuration must be set up for this project in order to have the possibility to program and to debug the **ADICUP3029_CN0357** project. To do this, follow the instructions from [[resources:eval:user-guides:eval-adicup3029:tools:cces_user_guide#how_to_configure_the_debug_session_for_an_aducm3029_application|How to configure the debug session]] section. 
- 
-        * Make sure the target board is connected to the computer (via **DEBUG USB**) and using the tool bar, navigate to the small Debug icon{{:resources:eval:user-guides:eval-aducm360-ardz:quickstart:bug.png?30|}} and select the debugging session you created. The application will programmed and the program execution will stop at the beginning of the main() function. 
-  
- * Use step-by-step execution or directly run the program. 
-  
-After completion of the steps above the program will remain written into the system flash and it will run by default every time the board is powered up. 
- 
-{{:resources:eval:user-guides:eval-adicup3029:reference_designs:debugging.png?500|}} 
-\\ 
- 
- 
- 
-==== Project Structure === 
-\\ 
-The **ADICUP3029_CN0357** project use ADuCM302x C/C++ Project structure.  
-  
-This project contains: system initialization part - disabling watchdog, enabling clock for peripherals; port configuration for SPI0;SPI2;UART , SPI and UART initialisation, SPI, UART read/write functions, AD7790 control, AD5270 control and gas concentration computation, BLE initialization, packet formation and sending data . 
- 
-In the **src** and **include** folders you will find the source and header files related to CN0357 software  application. The //Communication.c/h// files contain SPI and UART specific data, the //AD7790.c/h// files contain the ADC control, the //AD5270.c/h// files contain the rheostat control, the //CN0357.c/h// files contain ppm computations specific to the gas detector application and the //CN0357.c/h// . 
-\\ 
- 
-{{:resources:eval:user-guides:eval-adicup3029:reference_designs:project_structure.png?300|}} 
-\\ 
-In the appropriate header files you can **configure** next **parameters**: 
-\\ 
-\\ 
- 
-    * **Sensor Range** - <fc #008000>SENSOR_RANGE</fc> - maximum value of the gas conentration (ppm) that can be detected by the electrochemical gas sensor being used (//CN0357.h//). 
-<code> 
-    #define SENSOR_RANGE     2000  
-</code> 
- 
-  * **Sensor Sensitivity** - <fc #008000>SENSOR_SENSITIVITY</fc> - sensitivity (nA/ppm) of the electrochemical sensor being used (//CN0357.h//). 
-<code> 
-    #define SENSOR_SENSITIVITY  65    
-</code> 
- 
-\\ 
-The **system** folder contains system related files (try not to change these files): 
-            * **ADuCM360** – contains low levels drivers for ADuCM360 microcontroller. 
-            * **CMSIS** – contains files related to ADuCM360 platform, such as: //ADuCM360.h// (registers definitions), //system_ADuCM360.c/h// (system clock), //vectors_ADuCM360.c// (interrupt vector table). 
-            * **cortexm** – contains files for system management (start-up, reset, exception handler). 
- 
-\\ 
  
resources/eval/user-guides/eval-adicup3029/reference_designs/demo_cn0357.txt · Last modified: 04 Mar 2021 06:06 by Zuedmar Arceo