上位机软件(C/Python/Java等)
直播中

vitan

9年用户 354经验值
擅长:嵌入式技术
私信 关注
[经验]

USB转SDI-12总线上位机测试程序及相关资料

利用纬图的Ginkgo USB-SDI12适配器可以很容易的实现对SDI-12总线设备进行控制,下面就以实际程序来简单说明下。
C/C++程序如下:
  • // SDI12_Test.cpp : Defines the entry point for the console application.
  • //
  • #include "stdafx.h"
  • #include "ControlSDI.h"
  • int _tmain(int argc, _TCHAR* argv[])
  • {
  •         int ret,i;
  •         uint8_t        read_buffer[512]={0};
  •         uint8_t        respond_buffer[512]={0};
  •         //扫描已经连接的设备
  •         ret = SDI_ScanDevice(1);
  •         if(ret <= 0){
  •                 printf("No device connect!n");
  •                 return ret;
  •         }
  •     //打开设备
  •     ret = SDI_OpenDevice(SDI_USBSDI, 0, 0);
  •     if (ret != ERR_SUCCESS){
  •         printf("Open device error!n");
  •         return ret;
  •     }
  •         //初始化SDI12模块
  •         ret = SDI_InitSDI(SDI_USBSDI, 0, 1);
  •     if (ret != ERR_SUCCESS){
  •         printf("Initialize SDI-12 error!n");
  •         return ret;
  •     }
  •         //发送命令
  •         printf("Please input SDI-12 command(end of '!')!n");
  •         while(1){
  •                 memset(read_buffer,0,sizeof(read_buffer));
  •                 scanf("%s",read_buffer);
  •                 ret = SDI_SendCmd(SDI_USBSDI,0,1,read_buffer,respond_buffer);
  •                 if(ret == ERR_SUCCESS){
  •                         printf("%s",(char *)respond_buffer);
  •                 }else{
  •                         printf("Excute command error!n");
  •                 }
  •         }
  •         return 0;
  • }



复制代码
使用Ginkgo USB-SDI12适配器基本步骤为:
扫描设备->打开设备->初始化设备->读写数据

程序运行效果如下:

其中以‘!’结尾的是我们输入的控制命令字符串,下面一行是设备返回的字符串。

程序工程源码(vs2010):
VC_USB_SDI12_Test.rar (884.52 KB, 下载次数: 34)
SDI-12总线协议英文版:
SDI-12_version1_3_January_12_2009.pdf (528.49 KB, 下载次数: 11)
SDI-12总线协议中文版:
SDI12_V1.3_中文版.pdf (276.92 KB, 下载次数: 21)


回帖(1)

jf_03902764

2024-8-12 13:29:24
谢谢分析~~~~
举报

更多回帖

发帖
×
20
完善资料,
赚取积分