Skip to content

Commit a2d05ee

Browse files
committed
projects: AD463x_FMCZ: Added readme doc
Signed-off-by: Joyce Velasco <[email protected]>
1 parent 78703a5 commit a2d05ee

File tree

1 file changed

+261
-0
lines changed

1 file changed

+261
-0
lines changed

projects/ad463x_fmcz/README.rst

Lines changed: 261 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,261 @@
1+
AD463x-FMCZ no-OS Example Project
2+
=================================
3+
4+
.. contents::
5+
:depth: 3
6+
7+
Supported Evaluation Boards
8+
---------------------------
9+
10+
- :adi:`EVAL-AD4030-24FMCZ`
11+
- :adi:`EVAL-AD4630-16FMCZ`
12+
- :adi:`EVAL-AD4630-24FMCZ`
13+
- :adi:`EVAL-ADAQ4224-FMCZ`
14+
- :adi:`EV-ISO-4224-FMCZ`
15+
16+
Overview
17+
--------
18+
19+
The EVAL-AD4630-24FMCZ, EVAL-AD4030-24FMCZ, and EVAL-AD4630-16FMCZ
20+
evaluation boards enable quick and easy evaluation of the AD4X3X family
21+
of 24-bit and 16-bit precision successive approximation register (SAR)
22+
analog-to-digital converters (ADCs). The :adi:`AD4630-24` and
23+
:adi:`AD4630-16` are 2 MSPS per channel, low power, dual channel 24-bit
24+
or 16-bit SAR ADCs while the :adi:`AD4030-24` is a single channel
25+
24-bit precision SAR ADC that supports up to 2 MSPS per channel.
26+
The evaluation boards demonstrate the performance of either the
27+
AD4630-24, AD4030-24. or AD4630-16 and provides a configurable analog
28+
front end (AFE) for a variety of system applications.
29+
30+
The evaluations board are designed for use with a ZedBoard.
31+
The ZedBoard is used to control data capture and buffering. The
32+
evaluation board connects to the ZedBoard board via a field-programmable
33+
gate array (FPGA) mezzanine card (FMC) low pin count (LPC) connector.
34+
35+
Applications
36+
------------
37+
38+
- Automatic test equipment
39+
- Digital control loops
40+
- Medical instrumentation
41+
- Seismology
42+
- Semiconductor manufacturing
43+
- Scientific instrumentation
44+
45+
Hardware Specifications
46+
-----------------------
47+
48+
Power Supply Requirements
49+
~~~~~~~~~~~~~~~~~~~~~~~~~
50+
51+
The EVAL-AD4630-24FMCZ evaluation board derives its primary 12V power
52+
supply directly from the ZedBoard via the FMC connector. This 12V input
53+
is crucial as it is first converted to a 7.5V intermediate voltage by a
54+
switching regulator before being post-regulated to provide various
55+
required voltage rails. Moreover, the 12V is instrumental in generating
56+
negative rail voltages, such as the -3.3V needed for the buffers and
57+
drive amplifiers, ensuring precise operational amplifier functionality.
58+
59+
============ ========================================= ======== ========
60+
Power Supply Function Min. (V) Max. (V)
61+
+12V 12V primary supply via FMC connector N/A N/A
62+
GND Ground connection N/A N/A
63+
+3.3V 3.3V for various digital logic 3.26 3.33
64+
+1.8V 1.8V for the ADC 1.77 1.81
65+
VIO 1.8V supply for the ADC digital I/O 1.77 1.81
66+
+5.4V 5.4V for the ADC 5.34 5.46
67+
REFIN 5V ADC reference input 4.95 5.05
68+
VAMP+ Positive supply for the amplifiers 6.35 6.5
69+
VAMP- Negative supply for the amplifiers -3.35 -3.28
70+
VP1 7.5V at the input of the switcher 7.425 7.575
71+
REF 5V at the ADC reference output 4.95 5.05
72+
EN 1.8V enable signal for the power supplies 1.75 1.85
73+
============ ========================================= ======== ========
74+
75+
No-OS Build Setup
76+
-----------------
77+
78+
Please see: `https://wiki.analog.com/resources/no-os/build`
79+
80+
No-OS Supported Examples
81+
------------------------
82+
83+
The initialization data used in the examples is taken out from the
84+
`Project Common Data Path <https://github.com/analogdevicesinc/no-OS/tree/main/projects/ad463x_fmcz/src/common>`__
85+
86+
The macros used in Common Data are defined in platform specific files
87+
found in the
88+
`Project Platform Configuration Path <https://github.com/analogdevicesinc/no-OS/tree/main/projects/ad463x_fmcz/src/platform>`__
89+
90+
Basic example
91+
~~~~~~~~~~~~~
92+
93+
The basic example code demonstrates the initialization, configuration,
94+
and data acquisition for AD463x series ADCs. The process begins with the
95+
``basic_example_main`` function, which initializes the ADC using
96+
``ad463x_init``. If the ADAQ4224 is used, gain settings are configured
97+
via a scale table with ``ad463x_set_pgia_gain``. The function then exits
98+
the register configuration mode using ``ad463x_exit_reg_cfg_mode``. ADC
99+
data is read into a buffer with ``ad463x_read_data`` and sign-extended
100+
with ``no_os_sign_extend32``. Finally, data for two channels is printed
101+
to the console, providing a clear demonstration of ADC data handling.
102+
This example includes error management and cleanup operations for robust
103+
execution.
104+
105+
In order to build the basic example, make sure you have the following
106+
configuration in the
107+
`Makefile: <https://github.com/analogdevicesinc/no-OS/blob/main/projects/ad463x_fmcz/Makefile>`__:
108+
109+
.. code-block:: bash
110+
111+
# Select the example you want to enable by choosing y for enabling and n for disabling
112+
BASIC_EXAMPLE = y
113+
IIO_EXAMPLE = n
114+
115+
IIO example
116+
~~~~~~~~~~~
117+
118+
The IIO example code for the ad463x_fmcz project demonstrates the use of
119+
the Industrial I/O framework to interface with AD463x series ADCs. It
120+
focuses on initializing the ADC device and setting up the IIO interface
121+
through the ``iio_example_main()`` function. This involves allocating
122+
and initializing an ``ad463x_dev`` structure, alongside an
123+
``iio_ad463x`` structure to support IIO functions. The example routinely
124+
streams data from the ADC, handling it via an IIO-configured buffer,
125+
showcasing ADC configuration and data management capabilities using the
126+
IIO framework. It provides a practical implementation of IIO for
127+
enhanced device interfacing, forming a key part of hardware-software
128+
integration within the project.
129+
130+
If you are not familiar with ADI IIO Application, please take a look at:
131+
`IIO No-OS <https://wiki.analog.com/resources/tools-software/no-os-software/iio>`__
132+
133+
In order to build the IIO project, make sure you have the following
134+
configuration in the Makefile:
135+
136+
.. code-block:: bash
137+
138+
# Select the example you want to enable by choosing y for enabling and n for disabling
139+
BASIC_EXAMPLE = n
140+
IIO_EXAMPLE = y
141+
142+
No-OS Supported Platforms
143+
--------------------------
144+
145+
Xilinx Platform
146+
~~~~~~~~~~~~~~~
147+
148+
Hardware Used
149+
^^^^^^^^^^^^^
150+
151+
- :adi:`EVAL-AD4630-24FMCZ`
152+
- ZedBoard
153+
154+
Connections
155+
^^^^^^^^^^^
156+
157+
**EVAL-AD4030-24FMCZ**
158+
159+
+-----------------------+-----------------------------------------------+
160+
| **Connection** | **Function** |
161+
+-----------------------+-----------------------------------------------+
162+
| FMC Connector | Connect to ZedBoard FMC for data and 12V |
163+
| | power supply |
164+
+-----------------------+-----------------------------------------------+
165+
| SMA Connectors | Connect differential signal sources to input |
166+
| | channels |
167+
+-----------------------+-----------------------------------------------+
168+
| VADJ SELECT Jumper | Set to correct voltage (e.g., **2.5V**) to |
169+
| | avoid damage |
170+
+-----------------------+-----------------------------------------------+
171+
| CLK IN SMA | Optional external clock input ≤100 MHz |
172+
+-----------------------+-----------------------------------------------+
173+
174+
175+
**ZedBoard**
176+
177+
+-----------------------+---------------------------------------+
178+
| **Connection** | **Function** |
179+
+-----------------------+---------------------------------------+
180+
| Boot Jumpers | Configure for SD card boot |
181+
+-----------------------+---------------------------------------+
182+
| USB OTG Port | Connect to PC for communication and |
183+
| | power |
184+
+-----------------------+---------------------------------------+
185+
| J20/DC Input | Connect power supply to power the |
186+
| | system |
187+
+-----------------------+---------------------------------------+
188+
| LD1/3 POWER LED | Verify green LED is lit after |
189+
| | powering up |
190+
+-----------------------+---------------------------------------+
191+
192+
Build Command
193+
^^^^^^^^^^^^^
194+
195+
.. code-block:: bash
196+
197+
cp <SOME_PATH>/system_top.xsa .
198+
# to delete current build
199+
make reset
200+
# to build the project
201+
make PLATFORM=xilinx
202+
# to flash the code
203+
make run
204+
# to debug the code
205+
make debug
206+
207+
208+
STM32 Platform
209+
~~~~~~~~~~~~~~~
210+
211+
Hardware Used
212+
^^^^^^^^^^^^^
213+
214+
- :adi:`EVAL-AD4630-24FMCZ`
215+
- :adi:`EVAL-SDP-CK1Z` (SDP-K1)
216+
217+
Connections
218+
^^^^^^^^^^^
219+
220+
+-----------------------+-----------------------+-----------------------+
221+
| **Board** | **Connection Point** | **Function** |
222+
+-----------------------+-----------------------+-----------------------+
223+
| EVAL-AD4630-24FMCZ | FMC Connector | Align and mate with |
224+
| | | SDP-K1’s 120-pin FMC |
225+
| | | connector |
226+
+-----------------------+-----------------------+-----------------------+
227+
| Power via FMC | Receives +12V, +3.3V, | |
228+
| | +18V through | |
229+
| | connector interface | |
230+
+-----------------------+-----------------------+-----------------------+
231+
| SDP-K1 | DC Jack | Connect 7V to 12V DC |
232+
| | | power supply (center |
233+
| | | positive, min 300mA, |
234+
| | | max 3.5A) |
235+
+-----------------------+-----------------------+-----------------------+
236+
| VIO_ADJUST Header | Set to correct | |
237+
| | voltage (1.8V or | |
238+
| | 3.3V) before powering | |
239+
| | to avoid damage | |
240+
+-----------------------+-----------------------+-----------------------+
241+
| SYS_PWR LED | Should light up to | |
242+
| | indicate proper power | |
243+
+-----------------------+-----------------------+-----------------------+
244+
| USB Mini-B Port | Connect to PC using | |
245+
| | USB standard-A to | |
246+
| | mini-B cable | |
247+
+-----------------------+-----------------------+-----------------------+
248+
249+
Build Command
250+
^^^^^^^^^^^^^
251+
252+
.. code-block:: bash
253+
254+
# to delete current build
255+
make reset
256+
# to build the project
257+
make PLATFORM=stm32
258+
# to flash the code
259+
make run
260+
# to debug the code
261+
make debug

0 commit comments

Comments
 (0)