ZHDU136 June   2026

 

  1.   1
  2.   说明
  3.   开始使用
  4.   特性
  5.   5
  6. 1评估模块概述
    1. 1.1 简介
    2. 1.2 套件内容
    3. 1.3 器件信息
  7. 2硬件
    1. 2.1 电路板概述
      1. 2.1.1 RF 信号链
        1. 2.1.1.1 输出功率
      2. 2.1.2 时钟
      3. 2.1.3 电源
    2. 2.2 所需设备
    3. 2.3 硬件设置
    4. 2.4 LED 指示灯
    5. 2.5 输入、输出和控制
    6. 2.6 USB 接口
  8. 3软件
    1. 3.1 所需软件
    2. 3.2 GUI 安装
  9. 4实现结果
    1. 4.1 评估设置
    2. 4.2 SCPI 控制示例
    3. 4.3 Python 脚本示例
    4. 4.4 功率组合
  10. 5硬件设计文件
    1. 5.1 原理图
    2. 5.2 PCB 布局
    3. 5.3 物料清单 (BOM)
  11. 6其他信息
    1.     商标

Python 脚本示例

以下 python 脚本示例可用于直接控制电路板,而无需 GUI。技术参考手册中提供了更多命令。

# pip install pyvisa pyvisa-py
import pyvisa
import time

rm = pyvisa.ResourceManager()
matches = [r for r in rm.list_resources() if '2E8A' in r]
if not matches:
    raise RuntimeError('TSG06D00EVM not found - check 12V power and USB cable')
sg = rm.open_resource(matches[0])
sg.timeout = 5000
print(sg.query('*IDN?'))
assert sg.query('*TST?').strip() == 'PASS', 'Self-test failed'
sg.write('SYST:ERR:CLEAR')

# Set 10 MHz Reference to Internal
sg.write('ROSC:SOUR INT')
print(f"Reference Mode: {sg.query('ROSC:SOUR?')}")

# Configure CH A - 1 GHz, -5 dBm, 0° Phase
sg.write('INST:NSEL 1')
sg.write('FREQ 1e9')
sg.write('POW -5')
sg.write('PHAS 0.0')
sg.write('OUTP 1')
time.sleep(0.1)

# Readback State of CH A
freq_a =float(sg.query('FREQ?'))
power_a =float(sg.query('POW?'))
phase_a =float(sg.query('PHAS?'))
output_a =float(sg.query('OUTP?'))
print(f"Channel A:")
print(f" Frequency: {freq_a/1e9:.4f} GHz")
print(f" Power: {power_a:.2f} dBm")
print(f" Phase: {phase_a} deg")
print(f" Output: {'ON'if output_a else'OFF'}")

# Configure CH B - 2.4 GHz, -10 dBm, +90° Phase
sg.write('INST:NSEL 2')
sg.write('FREQ 2.4e9')
sg.write('POW -10')
sg.write('PHAS 90.0')
sg.write('OUTP 1')
time.sleep(0.1)

# Readback State of CH B
freq_b =float(sg.query('FREQ?'))
power_b =float(sg.query('POW?'))
phase_b =float(sg.query('PHAS?'))
output_b =float(sg.query('OUTP?'))
print(f"Channel B:")
print(f" Frequency: {freq_b/1e9:.4f} GHz")
print(f" Power: {power_b:.2f} dBm")
print(f" Phase: {phase_b} deg")
print(f" Output: {'ON'if output_b else'OFF'}")

# Check for Errors
if int(sg.query('SYST:ERR:COUNT?')) >0:
    print('Error:', sg.query('SYST:ERR:NEXT?'))

# Uncomment lines below to disable both channels when done
# sg.write('INST:NSEL 1')
# sg.write('OUTP 0')
# sg.write('INST:NSEL 2')
# sg.write('OUTP 0')
# sg.close()