Digilent仪器协议
Digilent Instrumentation Protocol是一个JSON编码的命令集,用于与电子仪器进行通信和控制。Digilent Instrumentation Protocol最初被设计成两种通信协议波形生活和和OpenScope MZ,但是该协议被设计为硬件不可知和可扩展的。
JSON编码提供了几个优势,包括在基于JavaScript的web和移动应用程序中易于使用,人类可读的命令,以及易于支持HTTP、UART、TCP、WebSockets等的总线无关通信。
命令格式
-
为了便于阅读,下面的JSON数据进行了扩展。在传输之前,所有JSON都应该精简(删除空白)。
-
除非另有说明,所有命令在使用HTTP时都使用POST方法发送。
-
所有Digilent Instrumentation Protocol命令必须是一个JSON对象或一个分块传输:
-
JSON对象
-
必须以'{'字符开始,以'}'字符结束。
-
后面可以跟一个或多个' r\n'。
-
-
块传输
-
由一个或多个块组成的。
-
每个块必须以块中的字节数开始美国信息交换标准代码十六进制格式,后面跟着一个' r\n',二进制数据,和一个' r\n'。
-
数据块长度不包括数据块长度和数据之间的' r\n'。
-
块长度不包括二进制数据后面的尾随' r\n'。
-
-
每个分块传输以一个零长度的块结束。
-
前女友。
-
-
6\r\n chunk1\r\n 8\r\n somedata\r\n E\r\n in\r\n\ nchunks。0 \ r \ n \ r \ n \ r \ n
多命令
可以使用多命令在单个事务中发送多个命令。
例子:
命令
{“直流”:{" 1 ":[{“命令”:“setVoltage”、“电压”:3300},{“命令”:“getVoltage”}),“2”:[{“命令”:“setVoltage”、“电压”:5000}]}}
响应
{“直流”:{" 1 ":[{“命令”:“setVoltage”、“statusCode”:0,“等待”:500},{“命令”:“getVoltage”、“statusCode”:0,“等待”:100年,“电压”:3300}),“2”:[{“命令”:“setVoltage”、“statusCode”:0,“等待”:500}]}}
调试打印
下面的命令用于更改设备调试打印状态。
改变调试打印
更改设备上的串行调试设置。
命令
-
debugPrint-(字符串)-想要的设备调试打印状态- " off " | " on "
响应
-
模式- (String) -应用命令后的设备调试打印状态
例子:
命令
{“debugPrint”:“关闭”}
响应
{“debugPrint”:“关闭”}
模式
下面的命令用于更改设备模式,并且在每个设备模式下都是有效的命令。
进入JSON模式
将设备进入JSON命令模式。
命令
-
模式-(字符串)-想要的设备模式- " JSON "
响应
-
模式- (String) -应用命令后的设备模式
注意:此命令必须包含尾随'\r\n'
例子:
命令
{“模式”:“JSON”}\ r \ n
响应
{“模式”:“JSON”}\ r \ n
进入菜单模式
将设备放入菜单命令模式。
命令
-
模式-(字符串)-想要的设备模式- " menu "
响应
-
模式- (String) -应用命令后的设备模式
注意:此命令必须包含尾随'\r\n'
例子:
命令
{“模式”:“菜单”}\ r \ n
响应
{“模式”:“菜单”}\ r \ n
文件
提供对记录仪数据和功能的访问的命令。
目录列表
列出设备上的一个目录。
命令
-
文件- (Array
-
命令-(字符串)- List Directory命令:" listdir "
-
类型- (String) -存储类型。有效的选项由storageGetLocations返回
-
路径-(字符串)-要列出的目录的路径
-
响应
-
文件- (Array
-
命令-(字符串)- List Directory命令:" listdir "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
类型- (String) -存储类型。有效的选项由storageGetLocations返回
-
路径-(字符串)-要列出的目录的路径
-
例子
命令
{"文件":[{“命令”:“listdir”、“类型”:“sd0”、“路径 ": "/" }] }
响应
{“文件”:[{“命令”:“listdir”、“statusCode”:0,“文件”:“fileone.txt”、“filetwo.bin”,“类型”:“sd0”、“路径”:“/”,“等待”:0}]}
写
写一个文件。
命令
-
文件- (Array
-
命令—(字符串)—Write命令:" Write "
-
类型-(字符串)-存储类型(sd0, flash等)
-
路径-(字符串)-想要的文件路径
-
filePosition- (String) -开始写入文件的索引
-
binaryOffset—(整数)—对应数据开始的二进制块中的偏移量
-
binaryLength—(整数)—二进制数据块的长度
-
响应
-
文件- (Array
-
命令-(字符串)- List Directory命令:" write "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
actualFilePosition-(整数)-文件的实际位置
-
binaryLength—(整数)—二进制数据块的长度
-
binaryOffset—(整数)—对应数据开始的二进制块中的偏移量
-
路径- (String) -文件的路径
-
类型-(字符串)-存储类型(sd0, flash等)
-
例子
命令
80 \ r \ n({{“文件”:“命令”:“写”、“类型”:“闪电”、“路径”:“hardprofiledata。}]}\r\n 1b2\r\n <二进制数据> 0\r\n \r\n . json", "filePosition":0, "binaryOffset":0, "binaryLength":434}]
响应
{"文件":[{“命令”:“写”、“statusCode”:0,“类型”:“闪电”、“路径”:“hardprofiledata。json", "actualFilePosition":0, "binaryOffset":0, "binaryLength":434, "wait":0}]}
读
读取一个文件。
命令
-
文件- (Array
-
命令—(字符串)—Read命令:" Read "
-
类型-(字符串)-存储类型(sd0, flash等)
-
路径-(字符串)-想要的文件路径
-
filePosition- (String) -开始写入文件的索引
-
requestedLength-(整数)-想要读取的长度
-
响应
-
文件- (Array
-
命令—(字符串)—Read命令:" Read "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
actualFilePosition-(整数)-文件的实际位置
-
actualLength—(整数)—实际读取的字节数
-
binaryLength—(整数)—二进制数据块的长度
-
binaryOffset—(整数)—对应数据开始的二进制块中的偏移量
-
路径- (String) -文件的路径
-
类型-(字符串)-存储类型(sd0, flash等)
-
例子
命令
{"文件":[{“命令”:“读”、“类型”:“闪电”、“路径”:“hardprofiledata。json", "filePosition":0, " requestlength ":-1}]}
响应
80 \ r \ n({{“文件”:“命令”:“读”、“statusCode”:0,“类型”:“闪电”、“路径”:“hardprofiledata。"binaryOffset":0, "binaryLength":454, "wait":0}]}\r\n 1B2\r\n <二进制数据> 0\r\n \r\n .
获取文件大小
删除设备上的文件。
命令
-
文件- (Array
-
命令-(字符串)-获取文件大小命令:" getFileSize "
-
类型- (String) -存储类型。有效的选项由storageGetLocations返回
-
路径-(字符串)-要列出的目录的路径
-
响应
-
文件- (Array
-
命令-(字符串)-获取文件大小命令:" getFileSize "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
类型- (String) -存储类型。有效的选项由storageGetLocations返回
-
路径-(字符串)-要列出的目录的路径
-
actualFileSize—(Integer)—实际文件大小
-
例子
命令
{"文件":[{“命令”:“getFileSize”、“类型”:“sd0”、“路径”:“ch1。网络日志本“}}
响应
{"文件":[{“命令”:“getFileSize”、“statusCode”:0,“类型”:“sd0”、“路径”:“ch1。dlog", "actualFileSize":4070, "wait":0}]}
删除
删除设备上的文件。
命令
-
文件- (Array
-
命令-(字符串)-删除文件命令:" Delete "
-
类型- (String) -存储类型。有效的选项由storageGetLocations返回
-
路径-(字符串)-要列出的目录的路径
-
响应
-
文件- (Array
-
命令-(字符串)-删除文件命令:" Delete "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
类型- (String) -存储类型。有效的选项由storageGetLocations返回
-
路径-(字符串)-要列出的目录的路径
-
例子
命令
{“文件”:[{“命令”:“删除”,“类型”:“sd0”、“路径”:“garbage.txt”}]}
响应
{“文件”:[{“命令”:“删除”,“statusCode”:0,“类型”:“sd0”、“路径”:“garbage.txt”,“等待”:0}]}
设备
提供对设备级数据和功能访问的命令。
列举
枚举所有设备信息。
这应该返回关于设备的静态信息。应该使用getter来检索动态数据。命令
-
设备- (Object) -设备对象。
-
命令—(字符串)—枚举命令:" Enumerate "
-
响应
-
美国线规-(对象)- AWG仪器对象。
-
numChans-(整数)- AWG通道数。
-
#—(整数)—AWG通道号。
-
signalTypes- (Array
) -支持的常规信号类型的数组。 -
signalFreqMin—(整数)—规则信号的最小频率,单位为mHz。
-
signalFreqMax—(整数)—规则信号的最大频率,单位为mHz。
-
数据类型- (String) -样本数据类型(ex. I16)。
-
bufferSizeMax-(整数)-采样中指定通道的最大缓冲区大小。
-
dacVpp-(整数)-数字到模拟转换器的峰值电压范围,单位为mV。
-
sampleFreqMin—(整数)—最小采样频率,单位为mHz。
-
sampleFreqMax—(整数)—最大采样频率,单位为mHz。
-
vOffsetMin—(整数)—支持的最小偏移电压,单位为mV。
-
vOffsetMax—(整数)—支持的最大偏移电压,单位为mV。
-
vOutMin—(整数)—支持的最小输出电压,单位为mV。
-
vOutMax—(整数)—支持的最大输出电压,单位为mV。
-
-
-
-
osc- (Object) - OSC仪器对象。
-
拉-注意:MSB优先,位是右对齐和连续的。
例子:
命令
{"device":[{"command":"enumerate"}]}
响应
{“设备”:[{“命令”:“列举”、“statusCode”:0,“等待”:0,“deviceMake”:“Digilent”、“deviceModel”:“OpenScope MZ”、“calibrationSource”:“闪电”、“firmwareVersion”:{“主要”:0,“小”:283年,“补丁”:0},“美国线规”:{" 1 ":{“signalTypes”:[“正弦”、“广场”,“锯齿”、“三角形”,“直流”),“signalFreqMin”:100年,“signalFreqMax”:1000000000, "dataType": "I16", "bufferSizeMax": 32640, "dacVpp": 3000, "sampleFreqMin": 1000000, "sampleFreqMax": 10000000000, "vOffsetMin": -1500, "vOffsetMax": 1500, "vOutMin": -3000, "vOutMax": 3000}, "numChans": 1}, "dc": {"1": {"voltageMin": -4000, "voltageMax": 4000, "voltageIncrement": 40, "currentMin": 0, "currentMax":50岁“currentIncrement”:0},“2”:{“voltageMin”:-4000年,“voltageMax”:4000年,“voltageIncrement”:40岁的“currentMin”:0,“currentMax”:50岁“currentIncrement”:0},“numChans”:2},“gpio”:{“numChans”:10“sourceCurrentMax”:7000年,“sinkCurrentMax”:12000},“拉”:{“numChans”:1、“1”:{“bufferDataType”:“U16”、“numDataBits”:10位掩码:1023年,“sampleFreqMin”:6000年,“sampleFreqMax”:6250000000,“bufferSizeMax”:32640}},“osc”:{" 1 ":{“effectiveBits”:“分辨率”:12日,11日,“bufferSizeMax”:32640年,“bufferDataType”:“I16”、“sampleFreqMin”:6000年,“sampleFreqMax”:6250000000,“delayMax”:4611686018427388000,“delayMin”:-32640000000000000,“adcVpp”:3000年,“inputVoltageMax”:20000年,“inputVoltageMin”:-20000年,“收益”:(0.25,0.125,0.075)},“2”:{“effectiveBits”:“分辨率”:12日,11日,“bufferSizeMax”:32640年,“bufferDataType”:“I16”、“sampleFreqMin”:6000年,“sampleFreqMax”:6250000000,“delayMax”:4611686018427388000,“delayMin”:-32640000000000000,“adcVpp”:3000年,“inputVoltageMax”:20000年,“inputVoltageMin”:-20000年,“收益”:(0.25,0.125,0.075)},“numChans”:2},“日志”:{"模拟":{" 1 ":{“effectiveBits”:“分辨率”:12日12日“bufferSizeMax”:32702年,“fileSamplesMax”:2147483136,“sampleDataType”:“I16”,“sampleFreqUnits”:0.000001,“sampleFreqMin”:1、“sampleFreqMax”:50000000000,“delayUnits”:1 e-12“delayMax”:9223372036854776000,“delayMin”:0,“voltageUnits”:0.001,“adcVpp”:3000年,“inputVoltageMax”:20000年,“inputVoltageMin”:-20000年,“收益”:(0.25,0.125,0.075)},“2”:{“effectiveBits”:“分辨率”:12日12日“bufferSizeMax”:32702年,“fileSamplesMax”:2147483136,“sampleDataType”:“I16”、“sampleFreqUnits”:0.000001,“sampleFreqMin”:1、"sampleFreqMax": 50000000000, "delayUnits": 1e-12, "delayMax": 9223372036854776000, "delayMin": 0, "voltageUnits": 0.001, "adcVpp": 3000, "inputVoltageMax": 20000, "inputVoltageMin": -20000, "增益":[1,0.25,0.125,0.075]},"fileFormat": 1, "fileRevision": 1, "numChans": 2}}}]}
进入引导装载程序
将设备放入引导加载程序中。
命令
-
设备- (Array
-
命令-(字符串)- Enter Bootloader命令:" enterBootloader "
-
响应
-
设备- (Array
-
命令-(字符串)- Enter Bootloader命令:" enterBootloader "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{"device":[{"command":"enterBootloader"}]}
响应
{"device":[{"command":"enterBootloader", "statusCode":0, "wait":1000}]}
校准-索取说明
获得用户校准说明。
命令
-
设备- (Array
-
命令-(字符串)-校准获取指令命令:" calibrationGetInstructions "
-
响应
-
设备- (Array
-
命令-(字符串)-校准获取指令命令:" calibrationGetInstructions "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
calibrationInstructions-(字符串)-用户校准说明。
-
例子:
命令
{"device":[{"command":"calibrationGetInstructions"}]}
响应
{"device":[{"command":"calibrationGetInstructions", "statusCode":0, "wait":0, "instructions":"Connect the Orange OSC1 lead to the Blue AWG1 lead . "}]}
校准-获取状态
获得校准状态。
命令
-
设备- (Array
-
命令—(字符串)—校准Get状态命令:" calibrationGetStatus "
-
响应
-
设备- (Array
-
命令—(字符串)—校准Get状态命令:" calibrationGetStatus "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
状态-(字符串)-校准进程状态:" idle ", " runningPretest ", " calibrating ", " calibrationFailed "。
-
例子:
命令
{"device":[{"command":"calibrationGetStatus"}]}
响应
{"device":[{"command":"calibrationGetStatus", "statusCode":0, "wait":500, "status": "idle"}]}
校准-获取存储类型
获取校准存储类型。
命令
-
设备- (Array
-
命令—(字符串)—获取校准存储类型命令:" calibrationGetStorageTypes "
-
响应
-
设备- (Array
-
命令—(字符串)—获取校准存储类型命令:" calibrationGetStorageTypes "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
storageTypes- (Array
) -校准存储类型的数组(例如:“闪电”、“sd”)。
-
例子:
命令
{"device":[{"command":"calibrationGetStorageTypes"}]}
响应
{"device":[{"command":"calibrationGetStorageTypes", "statusCode":0, "wait":0, "storageTypes":["flash", "sd"]}]}
校准——负载
将保存的校准数据装入工作寄存器。校准数据直到校准应用被称为。
命令
-
设备- (Array
-
命令-(字符串)-校准负载命令:" calibrationLoad "
-
的名字- (String) -校准数据加载(例如:" flash ", " sd ")。
-
响应
-
设备- (Array
-
命令-(字符串)-校准负载命令:" calibrationLoad "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{“设备”:[{“命令”:“calibrationLoad”、“类型”:“闪电”}]}
响应
{"device":[{"command":"calibrationLoad", "statusCode":0, "wait":0}]}
校准——读
从工作寄存器中读取校准数据。
命令
-
设备- (Array
-
命令—(字符串)—校准读命令:" calibrationRead "。
-
响应
-
设备- (Array
-
命令—(字符串)—校准读命令:" calibrationRead "。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
calibrationData- (Object) -表示为JSON对象的设备特定的校准数据。
-
例子:
命令
{"device":[{"command":"calibrationRead"}]}
响应
{"device":[{"command":"calibrationRead", "statusCode":0, "wait":0, "calibrationData":{<任意JSON校准数据>}}]}
校准——保存
保存校准数据到非易失性存储器。命令
-
设备- (Array
-
命令-(字符串)-校准保存命令:" calibrationSave "
-
类型- (String) -要保存的配置类型(例如" flash ", " sd ")。
-
响应
-
设备- (Array
-
命令-(字符串)-校准保存命令:" calibrationSave "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{“设备”:[{“命令”:“calibrationSave”、“类型”:“闪电”}]}
响应
{"device":[{"command":"calibrationSave", "statusCode":0, "wait":0}]}
校准——开始
开始校准过程。这个函数立即返回。如果校准过程成功完成,新的校准数据将保存在校准数据工作寄存器中。使用“校准保存”和“校准应用”功能保存或应用新的校准数据。
命令
-
设备- (Array
-
命令-(字符串)-校准开始命令:" calibrationStart "
-
响应
-
设备- (Array
-
命令-(字符串)-校准开始命令:" calibrationStart "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{"device":[{"command":"calibrationStart"}]}
响应
{"device":[{"command":"calibrationStart", "statusCode":0, "wait":45}]}
NIC -连接
使用指定的网络适配器连接到活动网络。
命令
-
设备- (Array
-
命令—(字符串)—网卡连接命令:" nicConnect "
-
适配器-(字符串)-要使用的网络适配器(例如" wlan0 ", " wlan1 ")。
-
parameterSet- (String) -网卡参数集的来源(例如" activeParameterSet ", " workingParameterSet ")
-
力- (Boolean) -如果指定的适配器已经连接并且" force "为true,则适配器将断开连接并尝试连接。如果适配器已连接并且“force”为假,则返回错误。如果适配器未连接,则忽略“force”。
-
响应
-
设备- (Array
-
命令—(字符串)—网卡连接命令:" nicConnect "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{"device":[{"command":"nicConnect", "adapter":"wlan0", "parameterSet":"activeParameterSet", "force":true}]}
响应
{“设备”:[{“命令”:“nicConnect”、“statusCode”:0,“等待”:1}]}
NIC -断开
从当前连接的网络断开指定的网络适配器。
命令
-
设备- (Array
-
命令—(字符串)—网卡断开命令:" nicDisconnect "
-
适配器- (String) -要使用的网络适配器(例如wlan0, wlan1)。
-
响应
-
设备- (Array
-
命令—(字符串)—网卡断开命令:" nicDisconnect "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{“设备”:[{“命令”:“nicDisconnect”、“适配器”:“wlan0”}]}
响应
{“设备”:[{“命令”:“nicDisconnect”、“statusCode”:0,“等待”:1}]}
NIC -获取状态
获取指定网口控制器的状态信息。
命令
-
设备- (Array
-
命令—(字符串)—Get网卡状态命令:" nicGetStatus "
-
适配器- (String) -要使用的网络适配器(例如eth0, eth1, wlan0, wlan1, workingParameterSet)。
-
注意:" workingParameterSet "将返回工作参数集中的值。状态将始终断开连接。
-
-
响应
-
设备- (Array
-
命令—(字符串)—Get网卡状态命令:" nicGetStatus "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
适配器—(字符串)—网卡(例如eth0, eth1, wlan0, wlan1)。
-
securityType—(字符串)—网络安全类型:" open ", " wep40 ", " wep104 ", " wpa ", " wpa2 "。
-
状态—(字符串)—网卡状态:“connected”,“disconnected”。
-
名称-(字符串)-指定的网络适配器的SSID或空字符串,如果现在设置了SSID。非空的SSID并不表示网络适配器已连接。
-
ipAddress—(字符串)—设备的IP地址(如果连接)。
-
例子:
命令
{“设备”:[{“命令”:“nicGetStatus”、“适配器”:“wlan0”}]}
响应
{"device":[{"command":"nicGetStatus", "statusCode":0, "wait":0, "adapter": "wlan0", "securityType": "wpa2", "status":"connected", "ssid": "HorseFeathers", "ipAddress": "192.168.1.127"}]}
NIC -列表
列出设备上的所有网卡。
命令
-
设备- (Array
-
命令—(字符串)—网卡列表命令:“nicList”。
-
响应
-
设备- (Array
-
命令-(字符串)- Enter Bootloader命令:" enterBootloader "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
网卡—(Array
)—设备上所有网卡的阵列。
-
例子:
命令
{"device":[{"command":"nicList"}]}
响应
{“设备”:[{“命令”:“nicList”、“statusCode”:0,“等待”:0,“网卡”:[" wlan0 "]}]}
重置仪器
重置设备上的所有仪器。
命令
-
设备- (Array
-
命令—(字符串)—Reset Instruments命令:" resetininstruments "。
-
响应
-
设备- (Array
-
命令—(字符串)—Reset Instruments命令:" resetininstruments "。
-
statusCode—(整数)—表示设备状态的数值。看到protocol-status-codes
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{"device":[{"command":" resetininstruments "}]}
响应
{"device": [{"command": "resetInstruments", "statusCode": 0, "wait": 1000}]}
存储-获取位置
获取所有非易失性存储位置的列表。
命令
-
设备- (Array
-
命令—(字符串)—Storage GetLocations命令:" storageGetLocations "。
-
响应
-
设备- (Array
-
命令—(字符串)—Storage GetLocations命令:" storageGetLocations "。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
storageLocations- (Array
) -设备存储位置(例如" flash ", " sd0 ", " /tmp/ ")
-
例子:
命令
{"device":[{"command":"storageGetLocations"}]}
响应
{"device":[{"command":"storageGetLocations", "statusCode":0, "wait":0, " storagelolocations ":["flash", "sd0"]}]}
Wifi -删除保存的参数
删除保存的指定Wifi网络。
命令
-
设备- (Array
-
命令—(字符串)—Wifi Delete Saved Parameters命令:" wifiDeleteParameters "。
-
storageLocation- (String) -从(例如" flash ", " sd ")中删除保存的网络参数的位置。
-
名称-(字符串)-要删除的网络SSID。
-
响应
-
设备- (Array
-
命令—(字符串)—Wifi Delete Saved Parameters命令:" wifiDeleteParameters "。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{"device":[{"command":"wifiDeleteParameters", "storageLocation":"flash", "ssid":"HorseFeathers"}]}
响应
{"device":[{"command":"wifiDeleteParameters", "statusCode": 0, "wait": 0}]}
Wifi -列表保存的参数
列出所有保存的网络参数。
命令
-
设备- (Array
-
命令—(字符串)—Wifi ListSavedParameters命令:“wifiListSavedParameters”。
-
storageLocation- (String) -读取保存的网络参数的位置(例如" flash ", " sd ")。
-
响应
-
设备- (Array
-
命令—(字符串)—Wifi ListSavedParameters命令:“wifiListSavedParameters”。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
parameterSets- (Object) -描述网络参数的对象。
-
名称- (String) -网络SSID。
-
securityType—(字符串)—网络安全类型:" open ", " wep40 ", " wep104 ", " wpa ", " wpa2 "。
-
符- (boolean) -如果设备应该在引导时自动连接到这个网络,则为True。
-
-
例子:
命令
{"device":[{"command":"wifiListSavedParameters", "storageLocation":"flash"}]}
响应
{"device":[{"command":"wifiListSavedParameters", "statusCode":0, "parameterSets":[{"ssid":"HorseFeathers", "securityType":"wpa2", "autoConnect":true}]}]}
Wifi -负载参数
将保存的网络参数加载到工作寄存器中。该命令不连接网络。加载完成后,使用Wifi Connect Network命令连接网络。
命令
-
设备- (Array
-
命令—(字符串)—Wifi加载参数命令:“wifiLoadParameters”。*
-
storageLocation- (String) -读取保存的网络参数的位置(例如" flash ", " sd ")。
-
名称—(String)—要加载的网络参数的SSID。
-
响应
-
设备- (Array
-
命令—(字符串)—Wifi加载参数命令:“wifiLoadParameters”。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{"device":[{"command":"wifiLoadParameters", "storageLocation":"flash", "ssid":"HorseFeathers"}]}
响应
{"device":[{"command":"wifiLoadParameters", "statusCode":0, "wait":0}]}
Wifi -阅读扫描网络
阅读之前Wifi扫描电话检测到的网络列表。扫描数据只有在成功扫描后才可用,并在下一次调用NIC或Wifi命令时丢失。
命令
-
设备- (Array
-
命令-(字符串)- Wifi读取扫描网络命令:" wifiReadScannedNetworks "。
-
适配器- (String) -要使用的网络适配器(例如wlan0, wlan1)。
-
响应
-
设备- (Array
-
命令-(字符串)- Wifi读取扫描网络命令:" wifiReadScannedNetworks "。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
适配器- (String) -要使用的网络适配器(例如wlan0, wlan1)。
-
网络- (Array
-
名称- (String) -网络SSID。
-
bssid- (String) -网络SSID。
-
securityType—(字符串)—网络安全类型:" open ", " wep40 ", " wep104 ", " wpa ", " wpa2 "。
-
通道—(整数)—网络通道。
-
signalStrength—(整数)—网络信号强度,从0(最低)到100(最高)的任意单位。
-
-
例子:
命令
{"device":[{"command":"wifiReadScannedNetworks", "adapter":"wlan0"}]}
响应
{"device":[{"command":"wifiReadScannedNetworks", "statusCode":0, "wait":0, "adapter":"wlan0", "networks":[{"ssid":"马羽毛","bssid":"马羽毛","securityType":"wpa2", "channel": 1, "signalStrength":100}]}]}
Wifi -保存参数
将工作参数设置中的参数保存到存储中。如果一个具有相同SSID的网络已经存在于非易失性存储中,这个函数将覆盖它。
命令
-
设备- (Array
-
命令—(字符串)—Wifi保存参数命令:“wifiSaveParameters”。
-
storageLocation- (String) -当前网络参数的保存位置。
注意,flash之外的位置可能不安全!看到storageGetLocations获取可用存储位置列表。
-
响应
-
设备- (Array
-
命令—(字符串)—Wifi保存参数命令:“wifiSaveParameters”。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{"device":[{"command":"wifiSaveParameters", "storageLocation":"flash"}]}
响应
{"device":[{"command":"wifiSaveParameters", "statusCode":0, "wait":0}]}
Wifi -扫描
扫描Wifi网络。这个函数立即返回,可以使用Wifi Read Available Networks命令收集结果。如果指定的适配器不能扫描(即如果它是连接的),返回一个错误。
命令
-
设备- (Array
-
命令—(字符串)—Wifi扫描命令:“wifiScan”。
-
适配器- (String) -要使用的网络适配器(例如wlan0, wlan1)。
-
响应
-
设备- (Array
-
命令—(字符串)—Wifi扫描命令:“wifiScan”。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{“设备”:[{“命令”:“wifiScan”、“适配器”:“wlan0”}]}
响应
{“设备”:[{“命令”:“wifiScan”、“statusCode”:0,“等待”:1}]}
Wifi -设置参数
设置主网络的一个或多个参数。更改仅应用于工作寄存器(活动网络)。
注意:目前只支持DHCP(不支持静态IP)
命令
-
设备- (Array
-
命令-(字符串)- Wifi设置参数命令:" wifiSetParameters "
-
名称- (String) -网络SSID
-
securityType—(字符串)—网络安全类型:" open ", " wep40 ", " wep104 ", " wpa ", " wpa2 "。
-
密码-(字符串)-可选-使用WPA或WPA2时的口令(如果没有使用WPA/WPA2则忽略)
-
键-(字符串)-可选-网络密钥。取决于安全类型。该键应该用十六进制值表示,用':'分隔(例如01:02:03:AA…)。
-
keyIndex—(数字)—可选—键索引。如果securityType不是'wep40'或'wep104',该字段将被忽略。
-
符- (Boolean) -如果为真,设备将尝试自动连接到这个网络,无论它在范围内
-
响应
-
设备- (Array
-
命令-(字符串)- Enter Bootloader命令:" enterBootloader "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
例子:
命令
{"device":[{"command":"wifiSetParameters", "ssid":"HorseFeathers", "securityType":"wpa2", "passphrase":"swordfish", "autoConnect":true}]}
响应
{"device":[{"command":"wifiSetParameters", "statusCode":0, "wait":0}]}
示波器
提供对示波器仪器数据和功能的访问的命令。
得到当前状态
获取仪器通道的当前状态
命令
-
osc-(对象)-示波器对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
-
响应
-
osc-(对象)-示波器对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
状态-(字符串)-仪器通道的状态:“武装”、“获取”、“空闲”或“触发”。
-
acqCount:—(整数)—通道获取计数。该值随着每次成功收购而增加。
-
actualVOffset-(整数)-实际电压偏移量,单位为mV。
-
actualSampleFreq—(整数)—实际采样频率,单位为mHz。
-
actualGain-(整数)-实际使用的增益。
-
actualBufferSize-(整数)-样本中实际使用的缓冲区大小。
-
triggerDelay-(整数)- pS中实际使用的触发延迟。
-
-
例子
命令
{" osc ":{" 1 ":[{“命令”:“getCurrentState”}]}}
响应
{"osc": {"1": [{"command": "getCurrentState", "statusCode": 0, "wait": 0, "state": "triggered", "acqCount": 10, "actualVOffset": 0, "actualSampleFreq": 1000000, "actualGain": 0.25, "actualBufferSize": 32000, "triggerDelay": 0}]}}
读
从设备中读取数据。如果设备的acqCount大于或等于命令acqCount,则返回数据。如果设备的acqCount小于命令acqCount,设备将响应它的触发器状态和可选的新缓冲区可用之前的估计时间。
数据以分块传输格式返回。第一个数据块是一个JSON对象,它描述了下面的二进制数据块。二进制数据类型和分辨率在设备枚举中定义,单位为mV。二进制数据中的第一个字节对应于缓冲区中的第一个样本(按时间顺序是最早的样本)。
命令
-
#- (美国信息交换标准代码十六进制)-块中的字节数美国信息交换标准代码十六进制,后面跟着' r\n'。
-
osc-(对象)-示波器对象。
-
#- (Array
-
命令—(字符串)—Read命令:“Read”。
-
-
响应
-
osc-(对象)-示波器对象。
-
#- (Array
-
命令—(字符串)—Read命令:“Read”。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
binaryOffset-(整数)-二进制数据块中缓冲区的第一个字节。
-
binaryLength-(整数)-以字节为单位的缓冲区大小。
-
acqCount- (Integer) -采集计数。
-
actualSampleFreq-(整数)-用于生成数据缓冲区的实际采样频率,单位为mHz。
-
pointOfInterest- (Integer) -缓冲区中感兴趣点的样本索引,如果感兴趣点不在缓冲区中则为-1。
-
triggerIndex-(整数)-触发器在缓冲区中发生的样本索引,如果触发器不在缓冲区中,则为-1。
-
triggerDelay-(整数)-兴趣点和触发器之间的时间,以pS为单位。负triggerDelay意味着感兴趣的点按时间顺序在触发器之前。
-
actualVOffset-(整数)-在获取以mV为单位的缓冲器时使用的电压偏移值。
-
actualGain- (Decimal) -获取数据缓冲区时使用的增益值。
-
例子:
命令
{" osc ":{" 1 ":[{“命令”:“读”、“acqCount”:101}]}}
响应
160 \ r \ n{“osc”:{" 1 ":[{“命令”:“读”、“statusCode”:0,“等待”:0,“binaryOffset”:0,“binaryLength”:1024年,“acqCount”:3,“actualSampleFreq”:6250000000,“pointOfInterest”:256年,“triggerIndex”:256年,“triggerDelay”:0“actualVOffset”:48岁“actualGain”:1}]}}\ r \ n \ r \ n 400 < 1024字节BLOB > 0 \ r \ n \ r \ n \ r \ n
设置参数
设置指定示波器通道的指定参数。
命令
-
osc-(对象)-示波器对象。
-
#- (Array
-
命令—(字符串)—设置参数命令:“setParameters”。
-
bufferSize-(整数)-样本中所需的缓冲区大小。
-
获得-(整数)-期望的增益。
-
vOffset-(整数)-所需的电压偏移量,单位为mV。
-
sampleFreq-(整数)-所需的采样频率,以mHz为单位。
-
triggerDelay-(整数)-所需的触发延迟,单位为pS。
-
-
响应
-
osc-(对象)-示波器对象。
-
#- (Array
-
命令—(字符串)—设置参数命令:" setParameters "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
actualVOffset-(整数)-实际电压偏移量,单位为mV。
-
actualSampleFreq—(整数)—实际采样频率,单位为mHz。
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
例子:
命令
{"osc":{"1":[{"command":"setParameters", "bufferSize": 32000, "增益":0.25,"vOffset":3000, "sampleFreq": 1000000, "triggerDelay": 100000}]}}
响应
{"osc":{"1":[{"command":"setParameters", "statusCode":0, "actualVOffset":3100, "actualSampleFreq": 1000000, "wait":0}]}}
波形发生器
提供访问的命令任意波形发生器数据和功能。
得到当前状态
获取仪器通道的当前状态
命令
-
美国线规- (Object) -任意波形发生器对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
-
响应
-
美国线规- (Object) -任意波形发生器对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
状态-(字符串)-仪器通道状态:“空闲”或“运行”。
-
waveType-(字符串)-波形类型:" sine ", " square ", " triangle ", " dc ", " sawtooth ", " arbitrary ",或" none "。
-
actualSignalFreq-(整数)-实际的波形频率,以mHz为单位。
-
actualVpp-(整数)-实际峰峰电压,单位为mV。
-
actualVOffset—(整数)—实际电压偏移量,单位为mV。
-
-
例子
命令
{" awg ":{" 1 ":[{“命令”:“getCurrentState”}]}}
响应
{"awg": {"1": [{"command": "getCurrentState", "statusCode": 0, "wait": 0, "state": "running", "waveType": "sine", "actualSignalFreq": 1000000, "actualVpp": 3000, "actualVOffset": 0}]}}
设置常规波形
设置任意波形发生器通道的参数以输出规则波形。
命令
-
美国线规- (Object) -任意波形发生器对象。
-
#- (Array
-
命令-(字符串)-设置规则波形命令:" setregular波形"
-
signalType-(字符串)-波形类型:" sine ", " square ", " triangle ", " dc ", " sawtooth ", " arbitrary ",或" none "。
-
signalFreq—(整数)—信号频率,单位为mHz。
-
vpp-(整数)-峰峰电压,单位为mV。
-
vOffset—(整数)—电压偏移量,单位为mV。
-
-
响应
-
美国线规- (Object) -任意波形发生器对象。
-
#- (Array
-
命令-(字符串)-设置规则波形命令:" setregular波形"
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
actualSignalFreq-(整数)-实际的波形频率,以mHz为单位。
-
actualVpp-(整数)-实际峰峰电压,单位为mV。
-
actualVOffset—(整数)—实际电压偏移量,单位为mV。
-
-
示例(波形)
命令
{"awg":{"1":[{"command":" setregular波形","signalType":"sine", "signalFreq":1000000, "vpp":3000, "vOffset":0}]}}
响应
{"awg":{"1":[{"command":" setregular波形","statusCode":0, "wait":0, "actualSignalFreq": 1000000, "actualVpp": 3000, "actualVOffset":0}]}}
运行
运行任意波形发生器通道。
命令
-
美国线规- (Object) -任意波形发生器对象。
-
#- (Array
-
命令—(字符串)—运行命令:“Run”
-
-
响应
-
美国线规- (Object) -任意波形发生器对象。
-
#- (Array
-
命令—(字符串)—运行命令:“Run”
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
例子:
命令
{"awg":{"1":[{"command":"run"}]}}
响应
{" awg ":{" 1 ":[{“命令”:“运行”,“statusCode”:0,“等待”:0}]}}
停止
停止任意波形发生器通道。
命令
-
美国线规- (Object) -任意波形发生器对象。
-
#- (Array
-
命令—(字符串)—停止命令:" Stop "
-
-
响应
-
美国线规- (Object) -任意波形发生器对象。
-
#- (Array
-
命令—(字符串)—停止命令:" Stop "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
例子:
命令
{"awg":{"1":[{"command":"stop"}]}}
响应
{" awg ":{" 1 ":[{“命令”:“停止”、“statusCode”:0,“等待”:0}]}}
逻辑分析仪
提供访问逻辑分析仪仪器数据和功能的命令。
得到当前状态
获取仪器通道的当前状态
-
状态:“武装”、“获取”、“闲置”或“触发”
-
acqCount:数字或空
-
模式:“la”或“gpio”
-
actualSampleFreq:数字或空
-
actualBufferSize:数字或空
-
triggerDelay:数字或空
例子
命令
{“la”:{" 1 ":[{“命令”:“getCurrentState”}]}}
响应
{"la": {"1": [{"command": "getCurrentState", "statusCode": 0, "state": "triggered", "acqCount": 10, "bitmask": 1023, "actualSampleFreq": 1000000, "actualBufferSize": 32000, "triggerDelay": 0, "wait": 0}]}}
设置参数
设置指定LA通道的指定参数。
sampleFreq- - - - - - mHzbufferSize——样品
例子:
命令
{"la":{"1":[{"command":"setParameters", "bitmask": 1023, "sampleFreq": 1000000, "bufferSize": 32000, "triggerDelay": 0}]}}
响应
{"la":{"1":[{"command":"setParameters", "statusCode":0, "actualSampleFreq": 62500000000, "actualTriggerDelay": 0, "wait":0}]}}
读
从设备中读取数据。如果设备的acqCount大于或等于命令acqCount,则返回数据。如果设备的acqCount小于命令acqCount,设备将响应它的触发器状态和可选的新缓冲区可用之前的估计时间。
数据以分块传输格式返回。第一个数据块是一个JSON对象,它描述了下面的二进制数据块。二进制块的数据类型信息定义在bufferDataType在仪器的设备枚举响应中。numDataBits定义可以包含LA数据的最大位数。数据位是正确的。例如,如果bufferDataType是u8, numDataBits是3,并且所有LA通道都是高的,那么结果的二进制数据将是0b00000111。位掩码定义二进制数据中哪些位是有效的LA通道。
命令
-
#- (美国信息交换标准代码十六进制)-块中的字节数美国信息交换标准代码十六进制,后面跟着' r\n'。
-
拉- (Object) -逻辑分析器对象。
-
#- (Array
-
命令—(字符串)—Read命令:“Read”。
-
-
响应
-
拉- (Object) - t逻辑分析器对象。
-
#- (Array
-
命令—(字符串)—Read命令:“Read”。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
binaryOffset-(整数)-二进制数据块中缓冲区的第一个字节。
-
binaryLength-(整数)-以字节为单位的缓冲区大小。
-
acqCount- (Integer) -采集计数。
-
actualSampleFreq-(整数)-用于生成数据缓冲区的实际采样频率,单位为mHz。
-
pointOfInterest- (Integer) -缓冲区中感兴趣点的样本索引,如果感兴趣点不在缓冲区中则为-1。
-
triggerIndex-(整数)-触发器在缓冲区中发生的样本索引,如果触发器不在缓冲区中,则为-1。
-
triggerDelay-(整数)-兴趣点和触发器之间的时间,以pS为单位。负triggerDelay意味着感兴趣的点按时间顺序在触发器之前。
-
例子:
命令
{“la”:{" 1 ":[{“命令”:“读”、“acqCount”:101}]}}
响应
160 \ r \ n{“la”:{" 1 ":[{“命令”:“读”、“statusCode”:0,“等待”:0,“binaryOffset”:0,“binaryLength”:1024年,“acqCount”:3,“位掩码”:1023年,“actualSampleFreq”:6250000000,“pointOfInterest”:256年,“triggerIndex”:256年,“actualTriggerDelay”:0}]}}\ r \ n \ r \ n 400 < 1024字节BLOB > 0 \ r \ n \ r \ n \ r \ n
GPIO
提供访问的命令GPIO数据和功能。
得到当前状态
获取仪器通道的当前状态
命令
-
gpio- (Object) - gpio对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
-
响应
-
gpio- (Object) - gpio对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
状态-(字符串)-GPIO通道状态:“空闲”或“运行中”。
-
模式-(字符串)-GPIO通道模式:“la”或“gpio”。
-
方向-(字符串)-GPIO通道方向:“输入”、“输出”或“三态”。
-
价值-(整数)- TheGPIO取值范围:0或1。
-
-
例子
命令
{" gpio ":{" 1 ":[{“命令”:“getCurrentState”}]}}
响应
{" gpio ":{" 1 ":[{“命令”:“getCurrentState”、“statusCode”:0,“等待”:0,“状态”:“闲置”,“模式”:“gpio”、“方向”:“输出”,“价值”:1}]}}
读
读取指定的GPIO通道(s)。
命令
-
gpio-(对象)-GPIO对象。
-
#- (Array
-
命令—(字符串)—Read命令:" Read "
-
-
响应
-
gpio-(对象)-GPIO对象。
-
#- (Array
-
命令—(字符串)—Read命令:" Read "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
方向-(字符串)-GPIO通道的方向(如“输入”,“输出”)。
-
价值-(整数)- TheGPIO通道的值(例如0,1)。
-
-
例子:
命令
{"gpio":{"1":[{"command":"read"}]}}
响应
{" gpio ":{" 1 ":[{“命令”:“读”、“statusCode”:0,“等待”:100年,“方向:“输入”“价值”:1}}}
设置参数
设置指定的参数(方向)GPIO通道(s)。
命令
-
gpio-(对象)-GPIO对象。
-
#- (Array
-
命令—(字符串)—设置参数命令:" setParameters "
-
方向-(字符串)-GPIO方向:“input”,“output”,“inputPullUp”,“inputPullDown”。
-
-
响应
-
gpio-(对象)-GPIO对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
例子:
命令
{" gpio ":{" 1 ":[{“命令”:“setParameters”、“方向”:“输入”}),“2”:[{“命令”:“setParameters”、“方向”:“输出”}]}}
响应
{" gpio ":{" 1 ":[{“命令”:“setParameters”、“statusCode”:0,“等待”:100}),“2”:[{“命令”:“setParameters”、“statusCode”:0,“等待”:100}]}}
写
写出指定的输出电压GPIO通道(s)。
命令
-
gpio-(对象)-GPIO对象。
-
#- (Array
-
命令—(字符串)—Write命令:" Write "
-
价值—(整数)—要写入的值GPIO通道(例如0表示逻辑低,1表示逻辑高)。
-
-
响应
-
gpio-(对象)-GPIO对象。
-
#- (Array
-
命令—(字符串)—Write命令:" Write "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
例子:
命令
{" gpio ":{" 1 ":[{“命令”:“写”,“价值”:1}]}}
响应
{" gpio ":{" 1 ":[{“命令”:“写”、“statusCode”:0,“等待”:500}]}}
电力供应
提供访问的命令直流电源数据和功能。
得到当前状态
获取仪器通道的当前状态
命令
-
直流—(对象)—直流电源对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
-
响应
-
gpio—(对象)—直流电源对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
状态—(字符串)—通道的当前状态:“空闲”或“运行”。
-
电压-(整数)-通道的电流测量值,单位为mV。
-
-
例子
命令
{“直流”:{" 1 ":[{“命令”:“getCurrentState”}]}}
响应
{“直流”:{" 1 ":[{“命令”:“getCurrentState”、“statusCode”:0,“等待”:0,“状态”:“空闲”、“电压”:3300}]}}
得到电压
获取指定直流电源通道的输出电压。
命令
-
直流—(对象)—直流电源对象。
-
#- (Array
-
命令-(字符串)- Get Voltage命令:" getVoltage "
-
-
响应
-
gpio—(对象)—直流电源对象。
-
#- (Array
-
命令-(字符串)- Get Voltage命令:" getVoltage "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
电压-(整数)-通道的电流测量值,单位为mV。
-
-
例子:
命令
{"dc":{"1":[{"command":"getVoltage"}]}}
响应
{“直流”:{" 1 ":[{“命令”:“getVoltage”、“statusCode”:0,“等待”:100年,“电压”:3300}]}}
设定电压
设置指定直流电源通道的输出电压。
命令
-
直流—(对象)—直流电源对象。
-
#- (Array
-
命令—(字符串)—设置当前状态命令:" setCurrentState "
-
电压-(整数)-期望的电压,单位为mV。
-
-
响应
-
gpio—(对象)—直流电源对象。
-
#- (Array
-
命令—(字符串)—设置当前状态命令:" setCurrentState "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
例子:
命令
{“直流”:{" 1 ":[{“命令”:“setVoltage”、“电压”:3300}]}}
响应
{“直流”:{" 1 ":[{“命令”:“setVoltage”、“statusCode”:0,“等待”:500}]}}
触发
提供访问触发器功能的命令。
得到当前状态
获取仪器通道的当前状态
命令
-
触发- (Object) -触发对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
-
响应
-
触发- (Object) -触发对象。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
acqCount- (Integer) -当前采集计数。每次获取完成时,该值都会增加。
-
源-(对象)-触发源和配置。
-
仪器-(弦)-要触发的乐器(如“osc”,“la”)。
-
通道-(整数)-要触发的仪器通道。
-
类型—(字符串)—触发类型:" risingEdge ", " fallingEdge "。
-
lowerThreshold—(整数)—触发门限下限,单位为mV。
-
upperThreshold—(整数)—触发门限上限,单位为mV。
-
risingEdgeMask—(整数)—上升沿触发掩码。
-
fallingEdgeMask—(整数)—下降沿触发掩码。
-
-
目标-(对象)-包含在采集期间使用的仪器通道的对象。
-
< >工具- (Array
) -在获取指定的 (例如“osc”,“la”)期间使用的信道数数组
-
-
状态-(字符串)-触发状态:“idle”、“armed”、“acquire”、“triggered”或“busy”
闲置-触发器未武装,未获取或未触发。
武装触发器已经武装,但尚未满足触发条件。
收购—已满足触发条件,正在采集数据。
触发-触发条件已经满足,但尚未开始获取数据(这通常是由于触发延迟)。
忙-触发器正在忙等待或正在做其他事情
-
-
例子
命令
{“触发”:{" 1 ":[{“命令”:“getCurrentState”}]}}
响应
{“触发”:{" 1 ":[{“命令”:“getCurrentState”、“statusCode”:0,“等待”:0,“acqCount”:10“源”:{“仪器”:“osc”,“渠道”:1、“类型”:“risingEdge”、“lowerThreshold”:0,“upperThreshold”:30,“risingEdgeMask”:0 x3ff,“fallingEdgeMask”:0 x3ff},“目标”:{“osc”:[1、2],“拉”:[1]},“状态”:“空闲”}]}}
力触发
在不等待触发条件的情况下强制立即获取。
命令
-
触发- (Object) -触发对象。
-
#- (Array
-
命令Force Trigger命令:" forceTrigger "
-
-
响应
-
触发- (Object) -触发对象。
-
#- (Array
-
命令Force Trigger命令:" forceTrigger "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
acqCount- (Integer) -当前采集计数。每次获取完成时,该值都会增加。
-
-
例子:
命令
{“触发”:{" 1 ":[{“命令”:“forceTrigger”}]}}
响应
{“触发”:{" 1 ":[{“命令”:“forceTrigger”、“statusCode”:0,“等待”:1、“acqCount”:27}]}}
设置参数
设置设备触发参数。
命令
-
触发- (Object) -触发对象。
-
#- (Array
-
命令—(字符串)—设置参数命令:" setParameters "
-
源-(对象)-触发源和配置。
-
仪器-(弦)-要触发的乐器(如“osc”,“la”)。
-
通道-(整数)-要触发的仪器通道。
-
类型—(字符串)—触发类型:" risingEdge ", " fallingEdge "。
-
lowerThreshold—(整数)—触发门限下限,单位为mV。
-
upperThreshold—(整数)—触发门限上限,单位为mV。
-
risingEdgeMask—(整数)—上升沿触发掩码。仅当触发源设置为LA时适用。
-
fallingEdgeMask—(整数)—下降沿触发掩码。仅当触发源设置为LA时适用。
-
-
*目标-(对象)-包含在采集期间使用的仪器通道的对象。
-
< >工具- (Array
) -在获取指定的 (例如“osc”,“la”)期间使用的信道数数组
-
-
-
响应
-
触发- (Object) -触发对象。
-
#- (Array
-
命令—(字符串)—TThe设置参数命令:" setParameters "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
例子:
命令
{“触发”:{" 1 ":[{“命令”:“setParameters”、“源”:{“仪器”:“osc”,“渠道”:1、“类型”:“risingEdge”、“lowerThreshold”:3300年,“upperThreshold”:4000年,“risingEdgeMask”:1、“fallingEdgeMask”:0},“目标”:{“osc”:[1、2],“拉”:[1 ] } } ] } }
响应
{“触发”:{" 1 ":[{“命令”:“setParameters”、“statusCode”:0,“等待”:0}]}}
运行
安装指定的触发器,并在成功采集后立即重新安装触发器。
命令
-
触发- (Object) -触发对象。
-
#- (Array
-
命令—(字符串)—运行命令:“Run”
-
-
响应
-
触发- (Object) -触发对象。
-
#- (Array
-
命令—(字符串)—运行命令:“Run”
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
acqCount- (Integer) -当前采集计数。每次获取完成时,该值都会增加。
-
-
例子:
命令
{"trigger":{"1":[{"command":"run"}]}}
响应
{“触发”:{" 1 ":[{“命令”:“运行”,“statusCode”:0,“等待”:1、“acqCount”:27}]}}
单
启动指定的触发器,在成功获取触发器后不要重新启动触发器。
命令
-
触发- (Object) -触发对象。
-
#- (Array
-
命令-(字符串)- Single命令:" Single "
-
-
响应
-
触发- (Object) -触发对象。
-
#- (Array
-
命令-(字符串)- Single命令:" Single "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
lastAcqCount- (Integer) -前一个采集计数值。
-
-
例子:
命令
{"trigger":{"1":[{"command":"single"}]}}
响应
{“触发”:{" 1 ":[{“命令”:“单身”,“statusCode”:0,“等待”:1、“lastAcqCount”:27}]}}
停止
解除指定的触发器。
命令
-
触发- (Object) -触发对象。
-
#- (Array
-
命令—(字符串)—停止命令:“Stop”。
-
-
响应
-
触发- (Object) -触发对象。
-
#- (Array
-
命令—(字符串)—停止命令:“Stop”。
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
例子:
命令
{"trigger":{"1":[{"command":"stop"}]}}
响应
{“触发”:{" 1 ":[{“命令”:“停止”、“statusCode”:0,“等待”:0}]}}
日志记录器
提供对记录仪数据和功能的访问的命令。
得到当前状态
获取仪器通道的当前状态
命令
-
日志记录器-(对象)-记录器
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
-
-
响应
-
日志记录器- (Object) -记录器对象。
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令-(字符串)- Get CurrentState命令:" getCurrentState "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
状态-(字符串)-仪器通道的状态:“空闲”、“停止”、“忙碌”或“运行”。
-
stopReason: -(字符串)-通道停止的原因:" NORMAL "或" OVERFLOW "。
-
startIndex—(整数)—所需数据的起始索引。
-
actualCount-(整数)-可用样本数。
-
maxSampleCount-(整数)-最大采样数。值为-1表示有无限个样本。
-
actualGain- (Double) -模拟通道的增益。
-
actualVOffset—(整数)—电压偏移量。
-
actualSampleFreq-(整数)-实际采样频率,单位为uHz。
-
actualStartDelay-(整数)-启动延迟,单位为ps。
-
溢出-(字符串)-实际溢出设置:" circular "或" stop "。
-
storageLocation- (String) -日志文件存储的位置。如果记录到ram(流),则为空字符串。
-
uri- (String) -日志文件的文件名。空字符串,如果没有设置或记录到ram(流)。
-
-
-
例子
命令
{"日志":{"模拟":{" 1 ":[{“命令”:“getCurrentState " }] } } }
响应
{"日志":{"模拟":{" 1 ":[{“命令”:“getCurrentState”、“statusCode”:0,“状态”:“停止”、“stopReason”:“正常”,“startIndex”:0,“actualCount”:0,“maxSampleCount”:1、“actualGain”:0.075,“actualVOffset”:0,“actualSampleFreq”:50000000,“actualStartDelay”:0,“溢出”:“圆”,“storageLocation”:“sd0”、“uri”:“ch1.bin”,“等待”:0}]}}}
设置参数
设置日志参数。
命令
-
日志记录器-(对象)-记录器
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令—(字符串)—设置参数命令:" setParameters "
-
maxSampleCount-(整数)-最大采样数。值为-1表示有无限个样本。
-
获得- (Double) -模拟通道的增益。
-
vOffset—(整数)—电压偏移量。
-
sampleFreq-(整数)-实际采样频率,单位为uHz。
-
startDelay-(整数)-启动延迟,单位为ps。
-
storageLocation- (String) -日志文件存储的位置。如果记录到ram(流),则为空字符串。
-
uri- (String) -日志文件的文件名。空字符串,如果没有设置或记录到ram(流)。
-
-
-
响应
-
日志记录器- (Object) -记录器对象。
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令—(字符串)—设置参数命令:" setParameters "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
maxSampleCount-(整数)-最大采样数。值为-1表示有无限个样本。
-
actualGain- (Double) -模拟通道的增益。
-
actualVOffset—(整数)—电压偏移量。
-
actualSampleFreq-(整数)-实际采样频率,单位为uHz。
-
actualStartDelay-(整数)-启动延迟,单位为ps。
-
storageLocation- (String) -日志文件存储的位置。如果记录到ram(流),则为空字符串。
-
uri- (String) -日志文件的文件名。空字符串,如果没有设置或记录到ram(流)。
-
-
-
例子
命令
{"日志":{"模拟":{" 1 ":[{“命令”:“setParameters”、“maxSampleCount”:1000年,“增益”:0.25,“vOffset”:0,“sampleFreq”:200000000,“startDelay”:0,“storageLocation”:“内存”,“uri ":"" }], " 2:[{“命令”:“setParameters”、“maxSampleCount”:1000年,“增益”:0.25,“vOffset”:0,“sampleFreq”:200000000,“startDelay”:0,“storageLocation”:“内存”,“uri ":"" }] } } }
响应
{"日志":{"模拟":{" 1 ":[{“命令”:“setParameters”、“statusCode”:0,“maxSampleCount”:1000年,“actualGain”:0.25,“actualVOffset”:-37年,“actualSampleFreq”:200000000,“actualStartDelay”:0,“storageLocation”:“内存”,“uri”:“”,“等待”:0}),“2”:[{“命令”:“setParameters”、“statusCode”:0,“maxSampleCount”:1000年,“actualGain”:0.25,“actualVOffset”:12,"actualSampleFreq":200000000, "actualStartDelay":0, "storageLocation":"ram", "uri":"", "wait":0}]}}}
运行
运行日志记录器
命令
-
日志记录器-(对象)-记录器
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令—(字符串)—运行命令:“Run”
-
-
-
响应
-
日志记录器- (Object) -记录器对象。
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令—(字符串)—运行命令:“Run”
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
-
例子
命令
{"日志":{"模拟":{" 1 ":[{“命令”:“运行 " }] } } }
响应
{"日志":{"模拟":{" 1 ":[{“命令”:“运行”,“statusCode”:0,“等待”:1}]}}}
读
在实时日志程序运行时读取它
命令
-
日志记录器-(对象)-记录器
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令—(字符串)—Read命令:" Read "
-
startIndex-(整数)-读取的起始索引
-
数-(整数)-要读取的点数
-
-
-
响应
-
日志记录器- (Object) -记录器对象。
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令—(字符串)—Read命令:" Read "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
binaryOffset-(整数)-二进制数据块中缓冲区的第一个字节。
-
binaryLength-(整数)-以字节为单位的缓冲区大小。
-
actualCount-(整数)-实际返回的数据点数。
-
startIndex-(整数)-返回点的实际开始索引。
-
maxSampleCount-(整数)-当前设置的最大样本计数参数。
-
actualGain- (Double) -当前设置的增益参数。
-
actualVOffset—(Integer)—当前设置的offset参数。
-
actualSampleFreq-(整数)-当前设置的实际采样频率。
-
actualStartDelay-(整数)-当前实际设置的启动延迟。
-
溢出- (String) -当前设置的实际溢出值。
-
storageLocation- (String) -数据的存储位置。
-
uri- (String) -日志文件名
-
-
-
例子
命令
{"日志":{"模拟":{" 1 ":[{“命令”:“读”、“startIndex”:0,“数”:0}]}}}
响应
12F\r\n {"log": {"analog": {"1":[{“命令”:“读”、“statusCode”:0,“binaryOffset”:0,“binaryLength”:2,“actualCount”:1、“startIndex”:0,“maxSampleCount”:1000年,“actualGain”:1、“actualVOffset”:-68年,“actualSampleFreq”:200000000,“actualStartDelay”:0,“溢出”:“圆”,“storageLocation”:“内存”,“uri”:“ch1.bin”,“等待”:0 }] } } }\ 2 r \ n \ r \ n <二进制数据> \ r \ n \ r \ n \ r \ n
停止
停止日志记录器
命令
-
日志记录器-(对象)-记录器
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令—(字符串)—停止命令:" Stop "
-
-
-
响应
-
日志记录器- (Object) -记录器对象。
-
渠道类型- (Object) -通道类型(模拟或数字)。
-
#- (Array
-
命令—(字符串)—停止命令:" Stop "
-
statusCode—(整数)—表示设备状态的数值。看到Digilent Instrumentation协议状态代码
-
等待-(整数)-在设备准备好处理另一个命令之前等待的毫秒数。
-
-
-
例子
命令
{"日志":{"模拟":{" 1 ":[{“命令”:“停止 " }] } } }
响应
{"日志":{"模拟":{" 1 ":[{“命令”:“停止”、“statusCode”:0,“等待”:0}]}}}