no-OS
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
voltage_input_irq.c File Reference

Voltage input with interrupt example code for ad74416h-pmdz project. More...

#include "common_data.h"
#include "ad74416h.h"
#include "no_os_delay.h"
#include "no_os_print_log.h"
#include "no_os_gpio.h"
#include "no_os_irq.h"
#include <math.h>
Include dependency graph for voltage_input_irq.c:

Functions

void adc_rdy_event_handler ()
 
int gpio_adc_rdy_init ()
 
int example_main ()
 Voltage input irq example main execution.
 

Variables

struct no_os_gpio_descadc_rdy_gpio_desc
 
struct no_os_irq_ctrl_descadc_rdy_irq_desc
 
struct ad74416h_desc * ad74416h_desc
 
volatile uint8_t send_result_to_uart = 0
 
volatile int adc_value = 0
 

Detailed Description

Voltage input with interrupt example code for ad74416h-pmdz project.

Author
Raquel Grau (raque.nosp@m.l.gr.nosp@m.au@an.nosp@m.alog.nosp@m..com)
Antoniu Miclaus (anton.nosp@m.iu.m.nosp@m.iclau.nosp@m.s@an.nosp@m.alog..nosp@m.com)

Copyright 2025(c) Analog Devices, Inc.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of Analog Devices, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES, INC. “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANALOG DEVICES, INC. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Function Documentation

◆ adc_rdy_event_handler()

void adc_rdy_event_handler ( )

◆ example_main()

int example_main ( void )

Voltage input irq example main execution.

Basic example main execution.

Returns
ret - Result of the example execution. If working correctly, will execute continuously the while(1) loop and will not return.

Initialize the ADC_RDY GPIO and associated IRQ event

Returns
0 if success, negative error code otherwise

◆ gpio_adc_rdy_init()

int gpio_adc_rdy_init ( )
Here is the caller graph for this function:

Variable Documentation

◆ ad74416h_desc

struct ad74416h_desc* ad74416h_desc

◆ adc_rdy_gpio_desc

struct no_os_gpio_desc* adc_rdy_gpio_desc

◆ adc_rdy_irq_desc

struct no_os_irq_ctrl_desc* adc_rdy_irq_desc

◆ adc_value

volatile int adc_value = 0

◆ send_result_to_uart

volatile uint8_t send_result_to_uart = 0