This is an old revision of the document!
AD5791 ACE Remote Control
Following section contains the source code for a simple application to calculate the INL and DNL values for a DAC and a guide on how to use it. The Application writes codes to a DAC in the AD5791 family using the
ACE tool and reads voltages recorded on an instrument using VISA.
Getting Started
Hardware
-
-
AD5790
AD5781
AD5780
AD5760
+/-15V Power Supply for the evaluation board.
A Digital Multimeter that supports VISA. The
Keysight 3458A Digital Multimeter was used when the script was written. For a different instrument, you need to consult it's manufacturer's website/documentation.
A
USB to GPIB or equivalent connector for interfacing the instrument to your PC.
Software
-
A python environment.
Python script; Download from
here.
Setting Up
Setting Up the python environment
Download and install Python 3.7 from
here. Make sure that the “Add Python 3.7 to PATH” option is enabled.
Open a command prompt/powershell window in the same directory as the extracted files. Then install the required packages by running the following command:pip install -r requirements.txt
Run the script by using the command:python Main.py
Hardware and ACE
Refer to the Evaluation Board user guide on powering the board up and setting up the ACE plugin. Please make sure that the plugin is functional and the device responds to the plugin interaction before proceeding further.
Setting up communication between ACE and the Python script
Open ACE, then go to Tools → Settings.
Go to IPC Server Tab and ensure that it is enabled. Also ensure that a port is allocated.
In the file “ACERemoteController.py”, ensure that the port number matches on line 70.
Running the application
Make a note of the following constants (lines 52 to 60) in the file “main.py” and change accordingly:
Run the script by using the command:python Main.py
After the script finishing capturing data, you should see the results window similar to this:
A spreadsheet will be exported to the home directory that contains all the values captured and plotted.