AD4130 Mbed IIO Firmware

Dependencies:   tempsensors sdp_k1_sdram

Committer:
MPhalke@MPHALKE-L02.ad.analog.com
Date:
Fri Jul 15 17:47:44 2022 +0530
Revision:
2:871d585d96ee
AD4130 firmware - initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 1 /***************************************************************************//**
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 2 * @file ad4130_data_capture.h
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 3 * @brief Header for AD4130 data capture interfaces
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 4 ********************************************************************************
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 5 * Copyright (c) 2021-22 Analog Devices, Inc.
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 6 * All rights reserved.
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 7 *
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 8 * This software is proprietary to Analog Devices, Inc. and its licensors.
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 9 * By using this software you agree to the terms of the associated
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 10 * Analog Devices Software License Agreement.
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 11 *******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 12
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 13 #ifndef AD4130_DATA_CAPTURE_H_
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 14 #define AD4130_DATA_CAPTURE_H_
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 15
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 16 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 17 /***************************** Include Files **********************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 18 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 19
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 20 #include <stdint.h>
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 21 #include <stdbool.h>
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 22 #include <stddef.h>
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 23
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 24 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 25 /********************** Macros and Constants Definition ***********************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 26 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 27
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 28 #if defined(USE_SDRAM_CAPTURE_BUFFER)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 29 #define adc_data_buffer SDRAM_START_ADDRESS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 30 #define DATA_BUFFER_SIZE SDRAM_SIZE_BYTES
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 31 #else
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 32 extern int8_t adc_data_buffer[];
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 33 #define DATA_BUFFER_SIZE (32768) // 32kbytes
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 34 #endif
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 35
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 36 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 37 /********************** Variables and User Defined Data Types *****************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 38 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 39
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 40 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 41 /************************ Public Declarations *********************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 42 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 43
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 44 int32_t ad4130_data_capture_init(void);
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 45 int32_t read_single_sample(uint8_t input_chn, uint32_t *raw_data);
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 46 int32_t read_buffered_data(int8_t **pbuf, uint32_t nb_of_bytes);
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 47 int32_t prepare_data_transfer(uint32_t ch_mask, uint8_t sample_size);
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 48 int32_t end_data_transfer(void);
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 49 void data_capture_callback(void *ctx);
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 50 void fifo_data_capture_callback(void *ctx);
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 51
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 52 #endif /* AD4130_DATA_CAPTURE_H_ */