tag 标签: 脉冲发生器

相关博文
  • 2025-7-2 17:08
    3 次阅读|
    0 个评论
    案例分享 | 前沿物理实验室突破全光学磁翻转研究瓶颈:德思特脉冲发生器赋能飞秒级磁矩操控
    ​ 破局飞秒级调控困境:超快响应的精准之钥 在前沿的全光学磁翻转(All-Optical Magnetic Switching, AOMS)现象研究领域,飞秒激光脉冲的精准操控堪称实现磁性材料内磁化方向高速反转的核心要素。国内知名高校物理实验室在亚铁磁GdFeCo薄膜研究中遭遇核心瓶颈: 传统脉冲设备无法在300ps至纳秒范围内实现稳定步进调节,导致磁翻转效率随脉宽变化的规律长期湮没于实验噪声中。脉冲边缘抖动更干扰了热效应与角动量传递的关键数据关联,阻碍了理论模型的完善。 德思特脉冲发生器TS-PG1072凭借其卓越不凡的性能参数,助力国内知名高校物理实验室全光学磁翻转研究,有力地推动着该领域向纵深方向探索迈进。 技术赋能:脉冲控制的全维度革新 1、脉宽精控解锁机制解析 引入德思特TS-PG1072脉冲发生器后, 实验室依托其70ps超快边沿响应与10ps脉宽分辨率,首次实现对驱动激光脉冲的精准“微雕”。 通过以10ps为步长系统扫描300ps~8s脉宽范围,研究人员清晰捕捉到GdFeCo薄膜在特定脉宽区间的磁翻转效率峰值现象。TS-PG1072的稳定精度让我们像调节精密旋钮般操控实验条件,这是发现效率窗口的决定性因素。该发现为构建热效应-角动量传递耦合模型提供了关键实验基石。 2、多脉冲序列开辟低能耗路径 为探索磁翻转的能耗优化路径, 实验室利用TS-PG1072的800MHz高频脉冲生成能力 ,设计出复杂双脉冲/多脉冲序列。通过自由调节脉冲间隔与强度比例,在(Co/Pt)ₙ多层膜中验证了协同激发效应。设备稳定输出任意‘脉冲配方’的能力至关重要,实验证实特定序列可降低磁翻转能量阈值,同时提升磁畴调控精度,这为器件设计打开了新维度。 3、飞秒同步捕获磁矩演化 解析磁矩超快动力学需将激发源与TR-MOKE、XMCD等探测设备严格同步。 TS-PG1072 35ps rms的触发抖动成为解决时序对齐难题的核心。 在Fe₃GeTe₂实验中,单一脉冲信号同时触发样品激发与多设备采集,首次实现磁矩方向、强度及自旋态在飞秒尺度的同步观测。 4、宽参数扫描拓展材料边界 当研究延伸至反铁磁材料Cr₂O₃时, TS-PG1072的300ps~1s超宽脉宽调节及幅度自由控制能力,支持了全参数空间的系统性探索。 实验室发现:在特定脉冲参数下,Cr₂O₃展现出奈尔矢量超快翻转行为,其动力学特征与传统铁磁材料截然不同。一台设备覆盖从皮秒到秒级的全范围需求,极大加速了新材料的筛选进程。 TS-PG1072 量化成果:从基础认知到技术跃迁 德思特TS-PG1072的赋能帮助该物理实验室实现四大突破性进展: 在GdFeCo机制解析方向,精确定位磁翻转效率峰值窗口,构建出首个热效应-角动量传递耦合模型; (Co/Pt)ₙ低能耗路径研究中,多脉冲序列成功降低磁翻转能量阈值,磁畴调控精度同步提升; Fe₃GeTe₂动力学领域,首次实现飞秒级磁矩多维度协同演化轨迹解析; 反铁磁Cr₂O₃探索中,发现颠覆性奈尔矢量翻转特性,为AOMS技术开辟全新材料疆域。 这些成果共同推动全光学磁操控向产业化应用迈出关键一步。 ​
  • 热度 2
    2025-1-15 11:26
    468 次阅读|
    0 个评论
    脉冲发生器(Pulse Generator,PG)是产生脉冲信号的专用仪器。 它可以生成具有特定频率、幅值和脉冲宽度的脉冲信号,常用于各种科学、工程和技术领域中的实验、测试、通信和控制应用。 那么,对于一台脉冲发生器,我们应该着重关注哪些参数呢?本期内容将为大家一一介绍。 德思特AT 脉冲发生器TS-PG 1000 一、参数介绍 1.周期 Period 周期是脉冲发生器输出一个完整的脉冲信号所需要的时间,定义脉冲信号从一个状态到下一个状态所经过的时间间隔。 脉冲周期和脉冲频率之间存在互为倒数的转换关系,即: 周期的定义 2.幅值 Amplitude 幅值是指脉冲发生器输出脉冲的电压峰值。 幅值决定了脉冲信号的能量或强度。 幅值的定义 3.占空比 Duty Cycle 脉冲信号的占空比(Duty Cycle)是指脉冲信号中高电平(或低电平)所占的时间比例。 它表示脉冲信号的高电平时间与一个完整周期的比例关系。占空比通常用百分比表示,即: 4.脉宽 Pulse Width 脉宽是指脉冲信号的持续时间,即脉冲从低到高再回到低的时间量 ,通常按照全电压的50%时候测量的。脉宽决定了脉冲信号的时间长度。对于某些应用,如高速通信或精密测量,需要具有非常短的脉宽,而其他应用则可能需要较长的脉宽。 脉宽的定义 5.上升/下降时间 Rise/Fall Time 上升时间和下降时间是指脉冲信号从低电平到高电平或从高电平到低电平的转变所需时间,一般为脉冲上升沿或者下降沿(10%-90%或者20%-80%)的转换时间 。这两个参数与脉冲信号的过渡速度有关,较小的上升时间和下降时间意味着脉冲信号能够更快速地达到稳定的电平。 上升/下降时间的定义 二、 德思特AT脉冲发生器 德思特拥有两款性能强大的脉冲发生器:PG107x系列和PG150x系列。相比于其他品牌脉冲发生器,具有以下优势: 1.简单方便的UI界面 德思特AT脉冲发生器基于 使用方便、功能多样 的设计理念,用户可以快速地上手使用产品,生成多种多样的脉冲信号。 德思特AT脉冲发生器产品图示 2.宽范围的输出幅值 德思特AT脉冲发生器输出电压范围宽至5 Vpp(PG107x系列) 和50Vpp(PG150x系列)。 德思特AT脉冲发生器的输出幅值 3.低于70ps的转换时间 越低的上升沿/下降沿转换时间,说明生成的脉冲信号质量越好,具有更快的频率响应特性,意味着脉冲信号失真度越小。因此, 德思特AT脉冲发生器非常适合应用于高精度时序控制、精密测量和可靠信号生成等应用。 德思特AT脉冲发生器的转换时间 4.300ps的最小脉宽 德思特AT脉冲发生器最小脉宽窄至300 ps,这在业界内属于较高的性能指标 。我们都知道,窄脉冲信号在需要高时间分辨率、快速脉冲响应、高频率特性、高信号峰值功率以及干扰和能量耗散限制的应用中可以完美应用。 德思特AT脉冲发生器的最小脉宽 5.多脉冲输出模式 德思特AT脉冲发生器可以将内置的多个脉冲同时输出,获得复杂且稳定的双脉冲、三脉冲、四脉冲信号 。这种输出的多脉冲信号经常应用于芯片测试、雷达设计、激光实验等复杂应用场景。 德思特AT脉冲发生器的多脉冲信号 { window.addoncropExtensions = window.addoncropExtensions || []; window.addoncropExtensions.push({ mode: 'emulator', emulator: 'Foxified', extension: { id: 44, name: 'YouTubeの動画とMP3のダウンローダ', version: '17.4.3', date: 'August 6, 2023', }, flixmateConnected: false, }); })();
  • 热度 6
    2023-11-30 11:23
    858 次阅读|
    0 个评论
    数字脉冲升级功能 德思特Spectrum系列全部在售数字化仪和AWG产品(包括TS-M2p,TS-M4i,TS-DN2,TS-DN6型号产品),发布了新增的数字脉冲(DPG)升级功能,于11月15日正式推出。用户购买后,可自行通过对产品内置FPGA进行固件升级获取相关功能,无需返厂。该功能可以为原本的数字化仪或AWG产品增加3~4个独立的数字脉冲发生器通道,帮助用户实现测试系统中的一系列控制功能,为客户的产品升级和系统扩建提供了一种较低成本的选项。 数字脉冲发生器技术浅析 #01 数字脉冲发生器是什么 数字脉冲发生器(Digital Pulse Generator, DPG),DPG的主要功能是产生可编程的数字脉冲信号,可以通过控制其频率、占空比、上升时间、下降时间等参数来模拟各种不同的数字信号,从而满足不同应用场景的需求。通常情况下,DPG的输出信号可以直接接入DUT或进行测试和分析。 #02 DPG可以干什么? ● 时序测试 :DPG可以产生各种不同频率、占空比、上升/下降时间等参数可编程的数字脉冲信号,可以用于测试各种电子设备和系统的时序特性,如芯片、接口、总线、存储器等。比如,常见的时序频率测试,精确可编程的时钟信号输入到待测器件中,可以评估不同时钟频率下的器件性能表现,通过调节时钟频率确定器件设备的最大工作频率。 ● 对外触发控制 :对于部分外部仪器或逻辑器件,需要有简单的时钟或复位信号进行触发或驱动,才能正常输出我们想测试的信号。加入DPG功能后,我们就能通过简单的设置,在不增加额外仪器的情况下,完成这个触发,在降低测试系统的复杂度和成本同时,不用为触发信号和采集卡之间的同步协调问题而烦恼。 德思特数字脉冲发生器解决方案 德思特数字脉冲发生器(DPG)功能都是通过PCIe卡、LXI或以太网仪器的板载FPGA实现的,德思特所有任意波形发生器板卡(AWG)系列都可以升级搭载DPG功能模块。 德思特AWG卡增加了4个内部独立的数字脉冲发生器,具有可编程占空比、输出频率、延迟和循环数量。这些脉冲发生器可以通过软件、硬件触发器触发,也可以相互触发,从而 形成复杂的数字脉冲方案来驱动外部设备或测试实验 。 德思特DPG模块在卡的采集/重放功能与外部设备之间,提供通用的定时同步接口。 DPG模块由四个脉冲发生器组成,每个发生器允许(独立)独立地生成单独的脉冲、脉冲串或连续的脉冲流,这些脉冲可以在多用途I/O线上输出,从而大大增强了模块的功能性。 ● 至多四个脉冲发生器可供配置 ● 单次、多次重复或连续/无限重复脉冲 ● 脉冲长度/占空比的单独控制 ● 每个脉冲发生器单独进行外部或内部触发/启动 ● 每个脉冲发生器都有单独的触发延迟,允许相移 ● 通过将脉冲发生器内部级联,可实现多达4倍触发时钟倍频 ● 二次开发SDK同步更新相关功能API,支持语言包括C/C++, C#, Python, VB.NET, LabVIEW, MATLAB等
  • 热度 6
    2023-10-7 11:49
    571 次阅读|
    0 个评论
    德思特PG1000 系列脉冲发生器允许使用图形界面和触摸屏显示器轻松创建具有不同脉冲宽度、重复率和幅度的脉冲。采用该解决方案,可以节省开发脉冲系统的时间,并将精力集中在雷达设计和测试目标上。本文将介绍脉冲信号发生器德思特PG1000系列在雷达系统开发过程中的应用。 一次脉冲雷达 主雷达产生一个照射目标物的信号,并接受其回波。根据不同的调制方式(模拟调制/数字调制)和生成雷达信号的非连续性,我们可以区分出不同类型的雷达。其中,最简单的雷达就是一次脉冲雷达,这种雷达信号不使用任何类型的调制,而是通过短时间内产生一个信号并接收由目标反射产生的回波来运行。 通过计算发送信号和接收回波之间的飞行时间,脉冲雷达可以确定与目标物体的距离。这种架构设计会考虑最大探测范围和分辨率之间的平衡关系。因此,增大脉冲宽度可以增加平均传输功率和最大探测范围,但与此同时,也会降低分辨率。 脉冲雷达主要应用于长距离探测控制,比如航空交通管制和天气观测(尤其是降水量观测)。 在雷达系统开发过程中,脉冲发生器产生不同持续时间的脉冲信号,可以用来供应射频调制链,以测试雷达接收器行为。 德思特PG-1000系列脉冲发生器可以通过设备图形UI界面和触摸屏幕显示,轻松地创建具有不同脉冲宽度、频率和幅度的脉冲。采用这种解决方案,可以节省开发脉冲系统的时间,研究人员可以将更多的时间精力集中在雷达设计和测试目标上。 二次雷达 二次雷达是一种用于空中交通管制的特殊类型的雷达,与飞机应答设备协同工作。它使用脉冲编码询问应答器,并等待响应。根据传输的编码,二次雷达可以请求识别号、高度等信息。 二次雷达询问基带码原理非常简单,它由3个脉冲组成,分别称为P1、P2和P3,固定持续时间为800 ns。 第一个脉冲(P1)和最后一个脉冲(P3)的时间间距由定向天线发射所决定。第二个脉冲(P2)以全向方式传输,与第一个脉冲相比延迟2 µs;这个特定的脉冲是必要的,因为定向天线发射的次级波瓣可能会击中其他转发器,导致错误的响应和干扰。应答器测量脉冲P1期间和脉冲P2期间的接收功率,并区分主天线波瓣还是次天线波瓣到达,如果是主天线波瓣的话,应答器会发送响应。 德思特PG1000系列脉冲发生器,它允许用户自定义产生不同时间间距和持续时间的双脉冲P1和P3,可以提供低至10 ps的时间分辨率。TS-PG1000系列脉冲发生器拥有多个通道输出,非常适合产生比第一个P1脉冲延迟2µs的P2。低于25ps的抖动可确保信道之间的完美同步。 使用脉冲/延迟发生器的多目标仿真 在主雷达系统中,往往通过细化系统测量信号的飞行时间,以计算雷达与目标的距离。距离计算公式为:距离(km)=(延迟时间(秒)/2)*3×10^5 km/s。其中,3×10^5 km/s是对光速的近似取值。由公式不难看出,发射信号和接收信号之间的延迟大小取决于距离长短。 在多个目标的情况下,通常会接收到多个信号,并且要求检测系统能够区分它们。 德思特PG1000系列脉冲发生器是测试雷达探测链的完美选择,这并不需要完整的雷达系统和一些真实的目标就可以完成多目标仿真测试。 德思特脉冲发生器的多脉冲模式提供具有不同持续时间和延迟的双脉冲、三脉冲和四脉冲,可重复高达125 MHz,用于测试雷达探测系统的实时频率操作。10 ps的分辨率和低于25 ps的抖动RMS提供了对射频链预期延迟进行计数,和以低于cm级别的分辨率用来模拟目标检测所需的精度。
  • 热度 35
    2018-8-30 16:15
    4279 次阅读|
    0 个评论
    带图完整文章:http://www.hongketest.com/portal.php?mod=view&aid=57 本文以Active Technologies公司(简称AT)的PG 1000系列脉冲发生器为例,讲述了在进行SCPI控制仪器前,如何使用NI MAX进行系统配置。 1. 概要 可以连接仪器至用户的网络中,实现打印、文件共享、互联网访问等其他功能。请联系贵公司的网络管理员,并使用标准 Windows 在用户的网络中配置仪器。 仪器是通过 VXI-11 (LAN) 协议 进行控制的,用户可以利用 SCPI 命令远程控制仪器,请参考《 Pulse Rider PG-1000 programmer manual 》 了解详细的 SCPI 命令语法、语句。 2. 工具 / 准备 2.1 PG-1000 系列 SDK 1. 用户在 www.activetechnologies.it 网站注册账户后,登录网站并“ Register ”仪器。 2. 点击“ Support ”—“ Client Area ”,访问“ Users Products ”界面。 3. 点击 AT-PG1072 或 AT-PG1074 链接,访问下载界面。点击 SDK-AT-PULSE-GENERATOR 安装包并下载。 SDK 内包括: AT Instrument Communicator 安装程序 (用途,参考下节“配置系统”的第 9 步) C++ 例程 C# 例程 LabVIEW 例程 2.2 NI VISA 在 Client-PC (即 Remote PC )中 下载 并安装 NI VISA 。 VI SA 为硬件 与开发环境(比如, Visual Studio .NET 、 LabVIEW 、 LabWindows/CVI 、 Measurement Studio for Microsoft Visual Studio 、 MatLab 等)提供编程接口。 NI VISA 是 National Instruments 公司提供的 VISA I/O 标准。 NI VISA 包括软件库、交互式工具(例如, NI I/O Trace 与 VISA 交互式控制)、配置程序等。 2.3 NI NAX ( Measurement & Automation Explorer ) 在 Client-PC (即 Remote PC )中 下载 并安装 NI MAX 软件。 2.4 PG-1000 系列软件 打开 PG-1000 系列仪器中自带的控制软件,找到“ Remote/Local ”界面中的 VXI-11 ( LAN 协议) Server 。默认情况下, VXI-11 Server 是开启的,意味着 PG1000 系列仪器可以接收来自 Client-PC 的 SCPI 命令。 当 PG-1000 系列仪器接收 SCPI 命令时, PG-1000 系列软件界面会根据 SCPI 命令做出相应的变化(例如,参数设置等)。 注意: 不能在本地 PC (即 PG-1000 系列仪器本身中的 PC 系统)中通过 SCPI 命令控制 PG-1000 系列仪器。 若 VXI-11 Server 被关闭, SCPI 命令通信将会失败。 3. 配置系统(使用 NI MAX ) 使用 NI MAX 进行如下配置: 1. 使用 LAN 线缆连接仪器与 Client-PC 。 2. 在 Client-PC 中安装 NI VISA 与 NI MAX 。 3. 打开 Client-PC 中的 NI MAX 。点击“ Add Network Device ”——“ VISA TCP/IP Resource… ”。 4. 选择“ Auto-detect of LAN Instrument ”,并点击“ Next ”。 5. 面板将会显示在 LAN 网络中搜索到的仪器,选择 PG-1000 系列仪器,并点击“ Next ”。 6. 输入“ Alias ”(此步非必须,可省略),并点击“ Next ”。 7. 点击“ Finish ”。 8. PG-1000 仪器资源将会在“ Network Devices ”列表中显示。 9. 现在,可以使用 NI Visa Test Panel 或 AT Instrument Communicator (软件的获取下载,参考“ PG-1000 系列 SDK ”小节的第 3 步;软件的使用,参考下节“使用 AT Instrument Communicator 调试系统”)发送 SCPI 命令至 PG-1000 。 4. 调试系统(使用 AT Instrument Communicator ) VXI-11 ( LAN 协议) Server 可以为在同一 LAN 网络下的 PG-1000 仪器与 Client-PC 提供软件接口。 AT Instrument Communicator 软件 需安装在 Client-PC 中,且 Client-PC 中需安装 NI VISA 。 通过以下步骤,操控 Client-PC 中 AT Instrument Communicator 软件实现对 PG-1000 仪器的控制: 1. 在 Client-PC 中安装 AT Instrument Communicator 软件。 2. 在“ Device ”列表中选择 PG-1000 系列仪器。 3. 点击“ Connect ”按钮。 4. 若连接成功, “ Command ” 复选框内的“ Write ”、“ Read ”等按钮将会可选(非灰色) 5. 在“ Command ”文本框内输入 *IDN? 并点击“ Write ”按钮。 6. 点击“ Query ”按钮。 7. 在“ Event Logger ”列表中, PG-1000 系列仪器会显示返回值,例如: ACTIVE TECHNOLOGIES, AT-PULSE-RIDER PG1072 00000001,SCPI 99.0, SV 1.0.0 where 00000001 is the serialnumber, SCPI 99.0 is the SCPI command version and SV 1.0.0 is the software version. 8. TXT 命令脚本 ( script )文件包括一系列 SCPI 命令(每行一条命令),用户可以发送 TXT 命令脚本文件。点击“ File ”—“ Open ”打开加载 TXT 命令脚本文件对话框。 9. 参考《 Pulse Rider PG-1000 programmer manual 》了解详细的 SCPI 命令语法、语句。 5. 例程 / 范例 PG-1000 系列 SDK 中包含由很多种语言编写的例程,例如 LabVIEW 、 Microsoft Visual C++ 与 Microsoft C# .NE 语言。 例程可以在安装了 NI VISA 并兼容 Microsoft Windows® 的 PC 上运行。 NI VISA 是 National Instruments 公司提供的 VISA I/O 标准。 NI VISA 包括软件库、交互式工具(例如, NI I/O Trace 与 VISA 交互式控制)、配置程序等。 在软件中使用 NI VISA 编写的仪器驱动,可以处理软件应用程序与硬件仪器之间的通信。 可 下载 并安装 NI VISA 。 例程假设 系统已经识别 PG-1000 系列仪器 的 资源名称( resource name ),即 IP 地址或主机名称,可参考前文“配置系统”小节了解资源名称( resource name )。 5.1 LabVI EW LabVIEW 例程要求最低使用 LabView 2013 64 bit 版本,可在 …\LabView 2013 Examples\AT-PULSE-RIDER-PG1000 Series 文件夹内找到 LabVIEW 工程。 LabVIEW 工程中包含一些 VI 用于控制仪器的基础特性,还包含有三个例程。 双击 GenerateSinglePulse.vi ,本例程可以连续模式生成单脉冲。在运行 VI 之前,需要选择“ VISA resource name ”。 用户可以更改脉宽、延时、高电平、低电平和其他输出参数。 运行 VI 开始生成输出脉冲,点击“ Stop ”按钮控件停止 PG-1000 系列脉冲发生器。 5.2 Microsoft C# 可以在 …\VS2015 Examples\PulseRiderCSharp 文件夹内找到 C++ 例程,需要安装 Microsoft Visual Studio 2015 打开例程。 用户需要编译并运行例程;在 Form 中需要输入“ Instrument Address ”并点击“ Connect ”按钮建立连接。 若成功连接,仪器会在“ Server Answer ”文本框内显示 *IDN ?命令的返回值。 点击“ Generate Pulse ”按钮发送 SCPI 命令至 PG-1000 系列仪器,仪器将会以连续模式生成输出单脉冲。 private void btnGeneratePulse_Click( object sender, EventArgs e) { // Reset to default tbAnswer.Text = vs.SendTo(sInstrumentAddress, "*RST" ); // Set the channel parameters tbAnswer.Text = vs.SendTo(sInstrumentAddress, "SOURce1:VOLT:HIGH 1.5" ); tbAnswer.Text = vs.SendTo(sInstrumentAddress, "SOURce1:VOLT:LOW -1.5" ); tbAnswer.Text = vs.SendTo(sInstrumentAddress, "SOURce2:VOLT:HIGH 2" ); tbAnswer.Text = vs.SendTo(sInstrumentAddress, "SOURce2:VOLT:LOW -2" ); // Set the pulse parameters tbAnswer.Text = vs.SendTo(sInstrumentAddress, "SOURce1:PULSe1:WIDth 50 ns" ); tbAnswer.Text = vs.SendTo(sInstrumentAddress, "SOURce1:PULSe1:DELay 0" ); tbAnswer.Text = vs.SendTo(sInstrumentAddress, "SOURce2:PULSe1:WIDth 50 ns" ); tbAnswer.Text = vs.SendTo(sInstrumentAddress, "SOUrce2:PULSe1:DELay 50 ns" ); // Set the pulse mode tbAnswer.Text = vs.SendTo(sInstrumentAddress, "OUTPut1:PULSe:MODe SINgle" ); tbAnswer.Text = vs.SendTo(sInstrumentAddress, "OUTPut2:PULSe:MODe SINgle" ); // Turn On the channels tbAnswer.Text = vs.SendTo(sInstrumentAddress, "OUTPut1 ON" ); tbAnswer.Text = vs.SendTo(sInstrumentAddress, "OUTPut2 ON" ); // Set the trigger mode and arm the instrument tbAnswer.Text = vs.SendTo(sInstrumentAddress, "TRIGger:MODE CONTinuous" ); tbAnswer.Text = vs.SendTo(sInstrumentAddress, "PULSEGENControl:START" ); // Send the trigger tbAnswer.Text = vs.SendTo(sInstrumentAddress, "*TRG" ); } 点击“ Load Script… ”按钮可加载 SCPI 命令 TXT 脚本文件;在工程目录文件夹内有三个脚本文件: GenerateSinglePulse.txt 、 GenerateMultiplePulse.txt 、 GeneratePulseTriggerIN.txt 。 5.3 Microsoft C++ 可以在 …\ VS2015 Examples\PulseRiderMSVC\TCPIP 文件夹内找到 C++ 例程,例程是使用 Microsoft® Visual C++ 语言编写的。 /*********************************************************************/ /* This example demonstrates opening a simple TCPIP connection and */ /* implements a single pulse generation in Continuous Mode. */ /* */ /* The general flow of the code is */ /* Open Resource Manager */ /* Open a session to the TCP/IP site at NI */ /* Perform write/read, and check properties */ /* Close all VISA Sessions */ /*********************************************************************/ #include "visa.h" #include #include #include static char outputBuffer ; static ViSession defaultRM, instr; static ViStatus status; static ViUInt32 count; static char acBuffer = "" ; static unsigned int u32Timeout = 20000; //timeout value in milliseconds static const char acInstrument = 0; if 0) { printf( "The server response is:\n %s\n\n" ,outputBuffer); } return status; } int main() { int iIndex = 0; FILE* pFile = NULL; ViFindList objFindList; /* First we will need to open the default resource manager. */ status = viOpenDefaultRM (&defaultRM); if (status < VI_SUCCESS) { printf( "Could not open a session to the VISA Resource Manager!\n" ); exit (EXIT_FAILURE); } status = viFindRsrc (defaultRM, "?*INSTR" , &objFindList, &count, outputBuffer); if (status < VI_SUCCESS) { viStatusDesc(instr, status, outputBuffer); printf( "viFindRsrc failed with error code %x - %s\n" , status, outputBuffer); exit (EXIT_FAILURE); } printf( "viFindRsrc - %s\n" , outputBuffer); /* Now we will open a session via TCP/IP */ status = viOpen (defaultRM, (ViRsrc) acInstrument, VI_NULL, u32Timeout, &instr); if (status < VI_SUCCESS) { printf ( "An error occurred opening the session to %s\n" , acInstrument); viClose(defaultRM); exit (EXIT_FAILURE); } // Set the timeout attribute viSetAttribute (instr, VI_ATTR_TMO_VALUE, u32Timeout); //Identify and reset the instrument VisaWrite( "*IDN?" ); VisaWrite( "*RST" ); //Set the Channel Parameters VisaWrite( "SOURce1:PERiod 600 ns" ); VisaWrite( "SOURce2:PERiod 600 ns" ); VisaWrite( "SOURce1:VOLT:HIGH 1" ); VisaWrite( "SOURce1:VOLT:LOW -1" ); VisaWrite( "SOURce2:VOLT:HIGH 0.5" ); VisaWrite( "SOURce2:VOLT:LOW -0.5" ); // Set the Pulse Parameters VisaWrite( "SOURce1:PULSe1:WIDth 100 ns" ); VisaWrite( "SOURce2:PULSe1:WIDth 20 ns" ); // Turn On the Outputs VisaWrite( "OUTPut1 ON" ); VisaWrite( "OUTPut2 ON" ); // Set the Pulse Mode VisaWrite( "SOURce1:PULSe:MODE SINGLE" ); // Set the Trigger Mode VisaWrite( "TRIGger:MODE CONTinuous" ); // Arm the instrument VisaWrite( "PULSEGENControl:START" ); // Start the generation VisaWrite( "*TRG" ); status = viClose (instr); status = viClose (defaultRM); printf ( "\nHit enter to continue." ); fflush(stdin); getchar(); return 0; }
相关资源
  • 所需E币: 1
    时间: 2023-3-29 17:34
    大小: 752.72KB
    上传者: 张红川
    基于proteus的脉冲发生器设计与仿真.pdf
  • 所需E币: 1
    时间: 2023-3-25 10:15
    大小: 216.58KB
    上传者: 张红川
    基于单片机的脉冲发生器的设计与应用.pdf
  • 所需E币: 0
    时间: 2022-11-19 20:40
    大小: 116.25MB
    上传者: 大大银河
    20NE555脉冲发生器.rar
  • 所需E币: 0
    时间: 2022-3-10 22:38
    大小: 1.59MB
    上传者: samewell
    潘绪超—起爆方式对反应式脉冲发生器的影响试验研究.pdf
  • 所需E币: 1
    时间: 2022-1-16 21:23
    大小: 14.87KB
    上传者: Argent
    脉冲发生器电路图资料
  • 所需E币: 2
    时间: 2022-1-3 23:07
    大小: 1.16MB
    上传者: czd886
    基于FPGA和DDR3SDRAM的高精度脉冲发生器设计与实现
  • 所需E币: 5
    时间: 2021-9-1 21:02
    大小: 288.46KB
    上传者: czd886
    基于MCU和CPLD的脉冲发生器
  • 所需E币: 1
    时间: 2020-12-20 20:55
    大小: 47.62KB
    上传者: zendy_731593397
    脉冲发生器脉冲发生器
  • 所需E币: 0
    时间: 2020-9-23 01:21
    大小: 1.78MB
    上传者: bwj312
    顺序脉冲发生器设计.zip
  • 所需E币: 0
    时间: 2020-9-18 22:47
    大小: 58.48KB
    上传者: LGWU1995
    脉冲发生器-电子技术资料大合集@资料0601-0822
  • 所需E币: 3
    时间: 2020-1-2 02:26
    大小: 31KB
    上传者: 2iot
    精密秒脉冲发生器电路精密秒脉冲发生器电路第一种:使用价格低廉的32768HZ晶体,配上HC4060电路,自身工作电压2-6V,静态电流仅仅20uA左右。没有任何分频和其他多余器件,如果集成电路采用贴片封装,体积将非常小。本身具有天然的秒闪烁脉冲信号。也可以配套CD4060电路,但是电压范围为3-18V,静态电流随电压提高而上升,在+5V供电时,静态电流约0.25-5uA,主要考虑的是在3.0V电池供电时的停振问题。而HC4060电路工作电压可以低一些。(本电路还可以输出其他标准频率的参考信号,印刷板上预留了5种频率输出信号的焊盘)。主要参数:供电:DC5V.月误差:≤15S。提示:输出应该外加高输入阻抗的缓冲级。[pic]第二种:是曾经大名鼎鼎的高频高精度晶体振荡电路,也叫“高频石英钟电路”,由于原来是驱动步进电机的,所以其输出间隔是2*0.5HZ/S,我们仅仅使用单边电路,可以得到30个脉冲/S。其供电电压仅仅1.5V,神奇的低!工作电流不到1uA,输出电压也很低,因此,使用分立的PNP三极管把电平提高到任意值。需要注意:1.5V电源的正端子,应该就是+5V电源的正端子。市场上已经较难购买到5512F电路了。上面的电路无需太多调整,本身就有非常准确的精度。如果与单片机配套,单片机需要干的事情仅仅就是计数而已。对5512F电路,单片机还需要生成一个秒脉冲输出信号。(0.5S的高低交替电平输出)。主要参数:供电:DC5V.月误差:≤6S。提示:输出应该外加高输入阻抗的缓冲级。[pic]……
  • 所需E币: 5
    时间: 2020-1-6 13:34
    大小: 29.5KB
    上传者: wsu_w_hotmail.com
    高压脉冲发生器电路……