Example program for EVAL-AD4696.
Dependencies: platform_drivers
app/ad4696_user_config.c@1:edd760d6380f, 2021-09-30 (annotated)
- Committer:
- Kjansen
- Date:
- Thu Sep 30 11:58:20 2021 +0100
- Revision:
- 1:edd760d6380f
AD4696 IIO Application- Initial Revision
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Kjansen |
1:edd760d6380f | 1 | /*************************************************************************//** |
Kjansen |
1:edd760d6380f | 2 | * @file ad4696_user_config.c |
Kjansen |
1:edd760d6380f | 3 | * @brief User configuration file for AD4696 device |
Kjansen |
1:edd760d6380f | 4 | ****************************************************************************** |
Kjansen |
1:edd760d6380f | 5 | * Copyright (c) 2021 Analog Devices, Inc. |
Kjansen |
1:edd760d6380f | 6 | * |
Kjansen |
1:edd760d6380f | 7 | * All rights reserved. |
Kjansen |
1:edd760d6380f | 8 | * |
Kjansen |
1:edd760d6380f | 9 | * This software is proprietary to Analog Devices, Inc. and its licensors. |
Kjansen |
1:edd760d6380f | 10 | * By using this software you agree to the terms of the associated |
Kjansen |
1:edd760d6380f | 11 | * Analog Devices Software License Agreement. |
Kjansen |
1:edd760d6380f | 12 | *****************************************************************************/ |
Kjansen |
1:edd760d6380f | 13 | |
Kjansen |
1:edd760d6380f | 14 | /******************************************************************************/ |
Kjansen |
1:edd760d6380f | 15 | /***************************** Include Files **********************************/ |
Kjansen |
1:edd760d6380f | 16 | /******************************************************************************/ |
Kjansen |
1:edd760d6380f | 17 | |
Kjansen |
1:edd760d6380f | 18 | #include <stdint.h> |
Kjansen |
1:edd760d6380f | 19 | #include "app_config.h" |
Kjansen |
1:edd760d6380f | 20 | #include "ad4696_user_config.h" |
Kjansen |
1:edd760d6380f | 21 | #include "ad4696_support.h" |
Kjansen |
1:edd760d6380f | 22 | #include "gpio.h" |
Kjansen |
1:edd760d6380f | 23 | #include "spi_extra.h" |
Kjansen |
1:edd760d6380f | 24 | #include "gpio_extra.h" |
Kjansen |
1:edd760d6380f | 25 | |
Kjansen |
1:edd760d6380f | 26 | /******************************************************************************/ |
Kjansen |
1:edd760d6380f | 27 | /********************** Macros and Constants Definition ***********************/ |
Kjansen |
1:edd760d6380f | 28 | /******************************************************************************/ |
Kjansen |
1:edd760d6380f | 29 | |
Kjansen |
1:edd760d6380f | 30 | #define USER_CONFIG_RANGE (DEFAULT_CHN_RANGE * 1000) |
Kjansen |
1:edd760d6380f | 31 | |
Kjansen |
1:edd760d6380f | 32 | /******************************************************************************/ |
Kjansen |
1:edd760d6380f | 33 | /********************** Variables and User Defined Data Types *****************/ |
Kjansen |
1:edd760d6380f | 34 | /******************************************************************************/ |
Kjansen |
1:edd760d6380f | 35 | |
Kjansen |
1:edd760d6380f | 36 | struct gpio_init_param gpio_init_reset = { |
Kjansen |
1:edd760d6380f | 37 | .number = RESET_PIN, |
Kjansen |
1:edd760d6380f | 38 | .extra = NULL |
Kjansen |
1:edd760d6380f | 39 | }; |
Kjansen |
1:edd760d6380f | 40 | |
Kjansen |
1:edd760d6380f | 41 | struct gpio_init_param gpio_init_convst = { |
Kjansen |
1:edd760d6380f | 42 | .number = CONVST_PIN, |
Kjansen |
1:edd760d6380f | 43 | .extra = NULL |
Kjansen |
1:edd760d6380f | 44 | }; |
Kjansen |
1:edd760d6380f | 45 | |
Kjansen |
1:edd760d6380f | 46 | struct gpio_init_param gpio_init_busy = { |
Kjansen |
1:edd760d6380f | 47 | .number = BUSY_PIN, |
Kjansen |
1:edd760d6380f | 48 | .extra = &bsy_gpio_extra_init_params |
Kjansen |
1:edd760d6380f | 49 | }; |
Kjansen |
1:edd760d6380f | 50 | |
Kjansen |
1:edd760d6380f | 51 | struct spi_init_param spi_init_params = { |
Kjansen |
1:edd760d6380f | 52 | .max_speed_hz = 22500000, // Max SPI Speed |
Kjansen |
1:edd760d6380f | 53 | .chip_select = SPI_CSB, // Chip Select |
Kjansen |
1:edd760d6380f | 54 | .mode = SPI_MODE_3, // CPOL = 1, CPHA = 1 |
Kjansen |
1:edd760d6380f | 55 | .extra = &spi_extra_init_params // SPI extra configurations |
Kjansen |
1:edd760d6380f | 56 | }; |
Kjansen |
1:edd760d6380f | 57 | |
Kjansen |
1:edd760d6380f | 58 | /* Initialize the AD4696 device structure */ |
Kjansen |
1:edd760d6380f | 59 | struct ad469x_init_param ad4696_init_str = { |
Kjansen |
1:edd760d6380f | 60 | // Define SPI init parameters structure |
Kjansen |
1:edd760d6380f | 61 | .spi_init = &spi_init_params, |
Kjansen |
1:edd760d6380f | 62 | |
Kjansen |
1:edd760d6380f | 63 | // Define GPIOs init parameter structure |
Kjansen |
1:edd760d6380f | 64 | .gpio_resetn = &gpio_init_reset, |
Kjansen |
1:edd760d6380f | 65 | .gpio_convst = &gpio_init_convst, |
Kjansen |
1:edd760d6380f | 66 | .gpio_busy = &gpio_init_busy, |
Kjansen |
1:edd760d6380f | 67 | .dev_id = ACTIVE_DEVICE |
Kjansen |
1:edd760d6380f | 68 | }; |