差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
openinstru_protocol [2021/02/22 21:45]
gongyusu
openinstru_protocol [2021/02/22 22:02] (当前版本)
gongyusu
行 1: 行 1:
 +## 命令格式
 +
 +----
 +  * 下面的JSON数据已扩展以提高可读性。在传输之前,应将所有JSON缩小(删除空白).
 +  * 除非另有说明,否则使用HTTP时,所有命令均使用POST方法发送.
 +  * 所有Digilent Instrumentation协议命令必须是JSON对象或分块传输:​
 +    * **JSON对象**
 +      * 必须以'​{'​字符开头,并以'​}'​字符结尾.
 +      * 可能后跟一个或多个'​\ r \ n'.
 +    *  **大块转移**
 +      * 由一个或多个块组成.
 +      * 每个块必须以ASCII十六进制格式的块中的字节数开头,后跟一个'​\ r \ n'​,二进制数据和一个'​\ r \ n'.
 +        * 块长度在块长度和数据之间不包含'​\ r \ n'.
 +        * 块长度不包含二进制数据后的尾随'​\ r \ n'.
 +      * 每个分块传输都以零长度的分块终止.
 +      * Ex.
 +<​code>​
 +6\r\n
 +chunk1\r\n
 +8\r\n
 +somedata\r\n
 +E\r\n
 + ​in\r\n\r\nchunks.\r\n
 +0\r\n
 +\r\n
 +</​code>​
 +
 +## 多命令
 +
 +----
 +可以使用多命令在单个事务中发送多个命令。
 +
 +### 举例:
 +<WRAP group>
 +<WRAP half column>
 +**Command**
 +<​code>​
 +{
 +   "​dc":​{
 +      "​1":​[
 +         {
 +            "​command":"​setVoltage",​
 +            "​voltage":​3300
 +         },
 +         {
 +            "​command":"​getVoltage"​
 +         }
 +      ],
 +      "​2":​[
 +         {
 +            "​command":"​setVoltage",​
 +            "​voltage":​5000
 +         }
 +      ]
 +   }
 +}
 +</​code>​
 +</​WRAP>​
 +<WRAP half column>​**Response**</​WRAP>​
 +<​code>​
 +{
 +   "​dc":​{
 +      "​1":​[
 +         {
 +            "​command":"​setVoltage",​
 +            "​statusCode":​0,​
 +            "​wait":​500
 +         },
 +         {
 +            "​command":"​getVoltage",​
 +            "​statusCode":​0,​
 +            "​wait":​100, ​           ​
 +            "​voltage":​3300
 +         }
 +      ],
 +      "​2":​[
 +         {
 +            "​command":"​setVoltage",​
 +            "​statusCode":​0,​
 +            "​wait":​500
 +         }
 +      ]
 +   }
 +}
 +</​code>​
 +</​WRAP>​
 +\\
 +\\
 +
 +
 +
 +
 ## 波形发生器部分 ## 波形发生器部分
 提供访问任意波形发生器的数据和功能的命令 提供访问任意波形发生器的数据和功能的命令