|
| 1 | +AD413x no-OS Example Project |
| 2 | +============================ |
| 3 | + |
| 4 | +.. contents:: |
| 5 | + :depth: 3 |
| 6 | + |
| 7 | +Supported Evaluation Boards |
| 8 | +--------------------------- |
| 9 | + |
| 10 | +- :adi:`EVAL-AD4130-8WARDZ` |
| 11 | + |
| 12 | +Overview |
| 13 | +-------- |
| 14 | + |
| 15 | +The EVAL-AD4130-8WARDZ is an evaluation board that allows users to |
| 16 | +evaluate the AD4130-8, an ultra low power, high precision ADC. The fully |
| 17 | +integrated analog front end (AFE) includes a multiplexer for up to 16 |
| 18 | +single-ended or eight differential inputs, programmable gain amplifier |
| 19 | +(PGA), 24-bit sigma-delta (Σ-Δ) ADC. It features programmable gain |
| 20 | +amplifiers and multiplexers for selecting input channels, supporting |
| 21 | +digital communication over an SPI interface. |
| 22 | + |
| 23 | +Applications |
| 24 | +------------ |
| 25 | + |
| 26 | +- Smart transmitters |
| 27 | +- Wireless battery and harvester powered sensor nodes |
| 28 | +- Portable instrumentation |
| 29 | +- Temperature measurement: thermocouple, RTD, thermistors |
| 30 | +- Pressure measurement: bridge transducers |
| 31 | +- Healthcare and wearables |
| 32 | + |
| 33 | +Hardware Specifications |
| 34 | +------------------------ |
| 35 | + |
| 36 | +Power Supply Requirements |
| 37 | +~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 38 | + |
| 39 | +The EVAL-AD4130-8 evaluation board operates with a 5V USB power supply |
| 40 | +and provides flexibility in power configuration. It features a default |
| 41 | +3.3V regulator for AVDD and an optional 1.8V regulator. External |
| 42 | +AVDD/AVSS connections can be made via Connector J7. The board is |
| 43 | +equipped to facilitate both AVDD and IOVDD selections with integrated |
| 44 | +regulators, enhancing its utility in ADC performance testing and data |
| 45 | +acquisition tasks. |
| 46 | + |
| 47 | +============ ========================= |
| 48 | +J7 Connector Function |
| 49 | +============ ========================= |
| 50 | +1 External IOVDD connection |
| 51 | +2 External GND connection |
| 52 | +3 External AVSS connection |
| 53 | +4 External AVDD connection |
| 54 | +============ ========================= |
| 55 | + |
| 56 | +On-board Connectors |
| 57 | +~~~~~~~~~~~~~~~~~~~ |
| 58 | + |
| 59 | ++-----------------------------------+-----------------------------------+ |
| 60 | +| Connector | Description | |
| 61 | ++-----------------------------------+-----------------------------------+ |
| 62 | +| Connector J10 (Wire Bridge) | Handles analog input for 4/6 Wire | |
| 63 | +| | bridge setups, with specific pin | |
| 64 | +| | functions such as Excitation, | |
| 65 | +| | External Reference, and Ground | |
| 66 | +| | connections. | |
| 67 | ++-----------------------------------+-----------------------------------+ |
| 68 | +| Connector J12 (DC Input) | Provides DC connections for AIN8 | |
| 69 | +| | to AIN15, facilitating analog | |
| 70 | +| | input without DC filtering. | |
| 71 | ++-----------------------------------+-----------------------------------+ |
| 72 | + |
| 73 | +Digital Communication Pins |
| 74 | +~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 75 | + |
| 76 | +================= ========= ========== ======== |
| 77 | +PMOD Connector P7 Function Connection Function |
| 78 | +1 CS_N 7 SYNC_N |
| 79 | +2 MOSI/DIN 8 INT |
| 80 | +3 MISO/DOUT 9 N/C |
| 81 | +4 SCLK 10 N/C |
| 82 | +5 GND 11 GND |
| 83 | +6 V_USB 12 V_USB |
| 84 | +================= ========= ========== ======== |
| 85 | + |
| 86 | +No-OS Build Setup |
| 87 | +----------------- |
| 88 | + |
| 89 | +Please see: `https://wiki.analog.com/resources/no-os/build` |
| 90 | + |
| 91 | +No-OS Supported Examples |
| 92 | +------------------------- |
| 93 | + |
| 94 | +The AD413x no-OS project supports two primary example types: BASIC and |
| 95 | +IIO. The BASIC example focuses on initializing the AD413x, demonstrating |
| 96 | +continuous conversion, SPI data reading, and data display. Conversely, |
| 97 | +the IIO example sets up a device and application for more intricate |
| 98 | +operations, initializing UART communication and IIO buffers. |
| 99 | + |
| 100 | +The initialization data used in the examples is taken out from the |
| 101 | +`Project Data Source Path <https://github.com/analogdevicesinc/no-OS/tree/main/projects/ad413x/src/app>`__ |
| 102 | + |
| 103 | +Basic example |
| 104 | +~~~~~~~~~~~~~ |
| 105 | + |
| 106 | +The basic example code for the AD413x device initializes SPI |
| 107 | +communication in four-wire mode, configures GPIO for conversion |
| 108 | +readiness, and applies predefined presets for channel setup. These |
| 109 | +presets specify input sources, gain settings, filters, and reference |
| 110 | +settings. A soft reset is performed to prepare the device for operation, |
| 111 | +and key parameters such as master clock mode and standby controls are |
| 112 | +set. Once initialized, ADC operation modes, either single or continuous, |
| 113 | +are managed to facilitate data acquisition. This configuration enables |
| 114 | +ready interaction with the AD413x AFE using the no-OS driver setup, |
| 115 | +allowing effective data collection and management. |
| 116 | + |
| 117 | +In order to build the basic example, make sure you have the following |
| 118 | +configuration in the |
| 119 | +`Makefile <https://github.com/analogdevicesinc/no-OS/blob/main/projects/ad413x/Makefile>`__ |
| 120 | + |
| 121 | +.. code-block:: bash |
| 122 | +
|
| 123 | + # Select the example you want to enable by choosing y for enabling and n for disabling |
| 124 | + BASIC_EXAMPLE = y |
| 125 | + IIOD = n |
| 126 | +
|
| 127 | +IIO example |
| 128 | +~~~~~~~~~~~ |
| 129 | + |
| 130 | +The IIO example code for the AD413x ADC series demonstrates integration |
| 131 | +with the Industrial I/O framework for streamlined data acquisition. |
| 132 | +Initialization is handled by ``ad413x_iio_init``, which configures the |
| 133 | +ADC per given parameters and allocates resources. Channel management is |
| 134 | +dynamic, utilizing ``ad413x_iio_close_channels`` and |
| 135 | +``ad413x_iio_update_active_channels`` to modify channel states. Sample |
| 136 | +data is retrieved using ``ad413x_iio_read_samples``, applying continuous |
| 137 | +conversion techniques. The code enables IIO attribute setup for scale |
| 138 | +and raw data properties, ensuring seamless integration and management of |
| 139 | +AD413x devices within IIO applications. |
| 140 | + |
| 141 | +If you are not familiar with ADI IIO Application, please take a look at: |
| 142 | +`IIO No-OS <https://wiki.analog.com/resources/tools-software/no-os-software/iio>`__ |
| 143 | + |
| 144 | +In order to build the IIO project, make sure you have the following |
| 145 | +configuration in the Makefile: |
| 146 | + |
| 147 | +.. code-block:: bash |
| 148 | +
|
| 149 | + # Configure the example you want to enable by setting 'y' for enable and 'n' for disable |
| 150 | + BASIC_EXAMPLE = n |
| 151 | + IIOD = y |
| 152 | +
|
| 153 | +No-OS Supported Platforms |
| 154 | +------------------------- |
| 155 | + |
| 156 | +Xilinx |
| 157 | +~~~~~~ |
| 158 | + |
| 159 | +Hardware Used |
| 160 | +^^^^^^^^^^^^^ |
| 161 | + |
| 162 | +- EVAL-AD4130-8WARDZ |
| 163 | +- ZedBoard |
| 164 | + |
| 165 | +Connections |
| 166 | +^^^^^^^^^^^ |
| 167 | + |
| 168 | +- Power the EVAL-AD4130-8 board with a 5V USB supply. |
| 169 | + |
| 170 | +- Use on-board regulators to set up AVDD (default 3.3V) and IOVDD. |
| 171 | + |
| 172 | +- Connect SPI lines of the EVAL-AD4130-8 board to the ZedBoard’s |
| 173 | + appropriate GPIO/PMOD headers. |
| 174 | + |
| 175 | +- Ensure a common ground is established between EVAL-AD4130-8 and |
| 176 | + ZedBoard. |
| 177 | + |
| 178 | ++-----------------+-----------------+-----------------+-----------------+ |
| 179 | +| **EVAL-AD4130-8 | **Function** | **ZedBoard PMOD | **Function** | |
| 180 | +| PMOD | | Header** | | |
| 181 | +| Connector** | | | | |
| 182 | ++-----------------+-----------------+-----------------+-----------------+ |
| 183 | +| P7-1 | CS_N | Pmod Header Pin | Chip Select | |
| 184 | +| | | 1 | (Active Low) | |
| 185 | ++-----------------+-----------------+-----------------+-----------------+ |
| 186 | +| P7-2 | MOSI/DIN | Pmod Header Pin | Master Out | |
| 187 | +| | | 2 | Slave In / Data | |
| 188 | +| | | | Input | |
| 189 | ++-----------------+-----------------+-----------------+-----------------+ |
| 190 | +| P7-3 | MISO/DOUT | Pmod Header Pin | Master In Slave | |
| 191 | +| | | 3 | Out / Data | |
| 192 | +| | | | Output | |
| 193 | ++-----------------+-----------------+-----------------+-----------------+ |
| 194 | +| P7-4 | SCLK | Pmod Header Pin | Serial Clock | |
| 195 | +| | | 4 | | |
| 196 | ++-----------------+-----------------+-----------------+-----------------+ |
| 197 | +| P7-5 | GND | Pmod Header Pin | Ground | |
| 198 | +| | | 5 | reference for | |
| 199 | +| | | | SPI | |
| 200 | +| | | | communication | |
| 201 | ++-----------------+-----------------+-----------------+-----------------+ |
| 202 | +| P7-6 | V_USB | Pmod Header Pin | Voltage supply | |
| 203 | +| | | 6 | for the board | |
| 204 | +| | | | and peripherals | |
| 205 | ++-----------------+-----------------+-----------------+-----------------+ |
| 206 | + |
| 207 | +- Use a 12V supply in the barrel jack (J20) to power the ZedBoard. |
| 208 | + |
| 209 | +- Connect the ZedBoard’s USB-UART to your PC via MicroUSB. |
| 210 | + |
| 211 | +Build Command |
| 212 | +^^^^^^^^^^^^^^ |
| 213 | + |
| 214 | +.. code-block:: bash |
| 215 | +
|
| 216 | + cp /system_top.xsa . |
| 217 | +
|
| 218 | + # to delete current build |
| 219 | + make reset |
| 220 | + # to build |
| 221 | + the project make |
| 222 | + # to flash the code |
| 223 | + make run |
0 commit comments