Skip to content

Commit a337ec1

Browse files
committed
projects: AD413x: Added readme documentation
Signed-off-by: Joyce Velasco <[email protected]>
1 parent 1cc7551 commit a337ec1

File tree

3 files changed

+232
-0
lines changed

3 files changed

+232
-0
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.. include:: ../../../../../projects/ad413x/README.rst

doc/sphinx/source/projects_doc.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,14 @@ ADC / DAC
2020

2121
projects/adc-dac/*
2222

23+
ANALOG FRONT-ENDS
24+
=================
25+
.. toctree::
26+
:maxdepth: 1
27+
:glob:
28+
29+
projects/afe/*
30+
2331
FREQUENCY GENERATORS
2432
====================
2533
.. toctree::

projects/ad413x/README.rst

Lines changed: 223 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,223 @@
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

Comments
 (0)