no-OS
Functions
supply.c File Reference

Power supply phase implementation file. More...

#include "no_os_print_log.h"
#include "common_data.h"
#include "maxim_spi.h"
#include "supply.h"
#include "spi.h"
Include dependency graph for supply.c:

Functions

int get_zero_cross_flag_state (void)
 Get zero crossing flag value. More...
 
void reset_zero_cross_flag_state (void)
 Reset zero crossing flag value. More...
 
int supply_init (struct ade9113_dev **device)
 Initialize supply component. More...
 
int32_t supply_scale_v1 (int32_t val)
 Scale V1 value. More...
 
int32_t supply_scale_v2 (int32_t val)
 Scale V2 value. More...
 
int64_t rms_filter_v1 (int32_t sample)
 Compute v1 rms value. More...
 
int64_t rms_filter_v2 (int32_t sample)
 Compute v2 rms value. More...
 
int64_t rms_filter_i (int32_t sample)
 Compute i rms value. More...
 
int rms_adc_values_read (struct stout *stout, struct rms_adc_values *rms)
 saves the current and voltage values in rms_adc structure More...
 

Detailed Description

Power supply phase implementation file.

Author
GMois (georg.nosp@m.e.mo.nosp@m.is@an.nosp@m.alog.nosp@m..com), REtz (radu..nosp@m.etz@.nosp@m.analo.nosp@m.g.co.nosp@m.m)

Copyright (c) 2023 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

◆ get_zero_cross_flag_state()

int get_zero_cross_flag_state ( void  )

Get zero crossing flag value.

Returns
flag value
Here is the caller graph for this function:

◆ reset_zero_cross_flag_state()

void reset_zero_cross_flag_state ( void  )

Reset zero crossing flag value.

Returns
none
Here is the caller graph for this function:

◆ rms_adc_values_read()

int rms_adc_values_read ( struct stout stout,
struct rms_adc_values rms 
)

saves the current and voltage values in rms_adc structure

Parameters
stout- application strucutre
rms- structure holding the measurements values
Returns
0 in case of success, negative error code otherwise
Here is the caller graph for this function:

◆ rms_filter_i()

int64_t rms_filter_i ( int32_t  sample)

Compute i rms value.

Parameters
sample- i sample
Returns
i rms value
Here is the caller graph for this function:

◆ rms_filter_v1()

int64_t rms_filter_v1 ( int32_t  sample)

Compute v1 rms value.

Parameters
sample- v1 sample
Returns
v1 rms value
Here is the caller graph for this function:

◆ rms_filter_v2()

int64_t rms_filter_v2 ( int32_t  sample)

Compute v2 rms value.

Parameters
sample- v2 sample
Returns
v2 rms value
Here is the caller graph for this function:

◆ supply_init()

int supply_init ( struct ade9113_dev **  device)

Initialize supply component.

Parameters
device- ADE9713 device descriptor
Returns
0 in case of success, error code otherwise

Callback to be called when an event occurs.

Parameter to be passed when the callback is called

Event that triggers the calling of the callback.

Interrupt source peripheral specifier.

Not used in the case of a GPIO IRQ controller

Here is the caller graph for this function:

◆ supply_scale_v1()

int32_t supply_scale_v1 ( int32_t  val)

Scale V1 value.

Parameters
val- value to be scaled
Returns
scaled value
Here is the caller graph for this function:

◆ supply_scale_v2()

int32_t supply_scale_v2 ( int32_t  val)

Scale V2 value.

Parameters
val- value to be scaled
Returns
scaled value
Here is the caller graph for this function: