PRINT_DEVICES_LINK
The PRINT_DEVICES_LINK function prints a hyperlink for a set of devices in the test output, that enables the devices to be visualised in the application.
This is similar to the function PRINT_DEVICE_LINK. There is also an equivalent for the test details output: TEST_DETAILS_DEVICES_LINK.
XJDeveloper and XJInvestigator
If an ODB++ netlist is available for each board, left clicking the hyperlink will launch Layout Viewer and highlight all the devices. Right clicking the link will present the following options - Open in Layout Viewer, Add to Selection in Layout Viewer and Show in Schematic Viewer. If XJAnalyser is available, for any JTAG-accessible devices there will also be a Show in Analyser option, which navigates to the device in the Analyser screen.
XJRunner
Links will only be highlighted and clickable if ODB++ information is available for each board. In this case left clicking will launch Layout Viewer and show the devices. Right clicking the link will present the following options - Open in Layout Viewer, Add to Selection in Layout Viewer and Show in Schematic Viewer.
XJRun command line
No formatting will be applied.
Syntax
PRINT_DEVICES_LINK( text, deviceReference, ... )
Parameters
- text
- The text to print for the link.
- deviceReference
-
One or more device references in the form 'board.device'. The board name is optional, but each device reference must uniquely identify a device; if there is any ambiguity, then the board name must be supplied.
Errors
An error can occur in the following circumstances:
- Any deviceReference supplied does not match any test device in the project.
- Any deviceReference supplied does not contain a board name and matches more than one device.
In both these cases, if the expressions are constant, the error will occur at compile-time. Otherwise, the error will occur at run-time, when the function is run.
Examples
CONST STRING constDeviceA := "IC1"; STRING varDeviceB := "IC2"; // Checked at compile time PRINT_DEVICES_LINK("IC1\n", constDeviceA); // Checked at run time PRINT_DEVICES_LINK("IC1 and IC2\n", constDeviceA, varDeviceB); // Guaranteed to be found with board qualifier PRINT_DEVICES_LINK("IC3 and IC4\n", "XJDemo.IC3", "XJDemo.IC4"); // Print this device and one other PRINT_DEVICES_LINK("This device and IC6\n", UNIQUE_DEVICE_REF, "XJDemo.IC6"); // Print in the middle of a line of text PRINT("Here is a link to "); PRINT_DEVICES_LINK("IC7/IC8", "XJDemo.IC7", "XJDemo.IC8"); PRINT(" in the middle of a sentence.\n"); // Many device links PRINT_DEVICES_LINK("Many devices\n", "XJDemo.IC1", "XJDemo.IC2", "XJDemo.IC3", "XJDemo.IC4");
Output
IC1 IC1 and IC2 IC3 and IC4 This device and IC6 Here is a link to IC7/IC8 in the middle of a sentence. Many devices
XJTAG v4.1.100