更新UCD-API库及文档

This commit is contained in:
xinzhu.yin
2026-07-02 17:16:18 +08:00
parent a500751d85
commit 9fa811a9eb
290 changed files with 9558 additions and 2306 deletions

View File

@@ -0,0 +1,76 @@
#
# Import UniTAP module.
#
import UniTAP
#
# To initialize UniTAP library wrapper user should create UniTAP.TsiLib() object.
#
lUniTAP = UniTAP.TsiLib()
#
# For opening device, please, put serial number of the device as 8 symbol str or put index of device.
#
# dev = lUniTAP.open("NNNNNNNN")
dev = lUniTAP.open(0)
# After opening device as in UCD Console device role should be selected.
role = dev.select_role(UniTAP.dev.UCD400.DPSourceDPSink)
# role = dev.select_role(UniTAP.dev.UCD500.DPSourceDPSink)
dev.opf_handler = UniTAP.OpfHandlerInternal(port_tx=role.dptx, port_rx=role.dprx)
group_test = UniTAP.TestGroupId.DP_TX_LL_CTS
# You can make a copy of the object, configure it and reassign it or can configure it directly
# Copy
params = role.dut_tests.get_default_parameters(UniTAP.Dp14SinkTestParam)
# Configure supported timings for DP DUT Sink tests
params.timings.T_3840_x_2160_60.set_all()
params.timings.T_5120_x_2160_60.set_all()
# Configure Event Filter from Source side
event_filter_tx = role.dptx.event_capturer.event_filter(UniTAP.EventFilterDpTx) # Get filter object
event_filter_tx.config_hpd_events(True) # Enable capturing HPD events
event_filter_tx.config_aux_events(True) # Enable capturing AUX events
role.dptx.event_capturer.configure_capturer(event_filter_tx) # Transfer updated filter object
event_filter_rx = role.dprx.event_capturer.event_filter(UniTAP.EventFilterDpRx) # Get filter object
event_filter_rx.config_hpd_events(True) # Enable capturing HPD events
event_filter_rx.config_aux_events(True) # Enable capturing AUX events
event_filter_rx.config_sdp_events(True, UniTAP.EventSDP.CG2) # Enable capturing SDP (CG2) events
role.dprx.event_capturer.configure_capturer(event_filter_rx) # Transfer updated filter object
role.dptx.event_capturer.start() # Start event capturing
role.dut_tests.run(group_id=group_test, test_id=0, params=params) # Run selected test
results = role.dut_tests.get_all_tests_results() # Get results after testing
role.dptx.event_capturer.stop() # Stop event capturing
capture_result = role.dptx.event_capturer.pop_all_elements_as_result_object() # Get all captured events
event_log_file_path = "EventData"
event_log_html_file_path = "EventDataReport"
if len(capture_result.buffer) > 0:
# Save captured events to BIN file and save HTML report
capture_result.save_to_file_all_events(file_format=UniTAP.EventFileFormat.BIN, path=event_log_file_path)
capture_result.save_to_file_all_events(file_format=UniTAP.EventFileFormat.HTML, path=event_log_html_file_path)
else:
print("Buffer is empty.")
# Save test result to HTML report
role.dut_tests.make_report('./report',
tested_by="Example",
remarks="Remarks for test report.")
#
# Since the 3.5 version, TsiLib and TSIDevice objects have the option to be closed earlier.
# TSIDevice can be closed with the TsiLib method close(). TsiLib can be closed with cleanup().
# Clean up will close all opened devices and block ability to open any devices
# with same TsiLib object.
#
lUniTAP.close(dev)
lUniTAP.cleanup()