mppppp Publish time 2022-11-1 14:47:15

汉泰6102be二次开发问题

请问这款示波器有没有c#的demo呢,如果有的话能不能发一份呢,如果没有的话,我现在遇到了一个问题,我在调用get数据的时候,程序会在这里卡死,没办法获取到数据。
/// <summary>
      /// 该函数用于从硬件读取数据。如果成功返回 0 ,否则返回1 。
      /// </summary>
      /// <param name="DeviceIndex">设备的索引</param>
      /// <param name="Ch1_Att"> Ch1 过滤器</param>
      /// <param name="Ch2_Att">Ch2 过滤器</param>
      /// <param name="ch1_data">从硬件中保存 ch1 数据</param>
      /// <param name="ch2_data">从硬件中保存 ch2 数据</param>
      /// <param name="Control_Data1">指向结构体ControlStruct的变量</param>
      /// <param name="FiltAndTrigger">指向结构体StateStruct的变量</param>
      /// <param name="levers">指向结构 LeversStruct 的arriable </param>
      /// <param name="level"></param>
      /// <param name="StartCapture">捕获数据标志。如果开始捕获为 1,否则为 0</param>
      /// <returns></returns>
      
      private static unsafe extern ushort sdGetData(ushort DeviceIndex, ushort Ch1_Att, ushort Ch2_Att, ushort* ch1_data, ushort* ch2_data, ControlStruct* Control_Data1,StateStruct* FiltAndTrigger, LeversStruct* levers, ushort* level, ushort StartCapture);

      /// <summary>
      /// 该函数用于从硬件读取数据。如果成功返回 0 ,否则返回1 。
      /// </summary>
      /// <param name="DeviceIndex">设备的索引</param>
      /// <param name="Ch1_Att"> Ch1 过滤器</param>
      /// <param name="Ch2_Att">Ch2 过滤器</param>
      /// <param name="ch1_data">从硬件中保存 ch1 数据</param>
      /// <param name="ch2_data">从硬件中保存 ch2 数据</param>
      /// <param name="Control_Data1">指向结构体ControlStruct的变量</param>
      /// <param name="FiltAndTrigger">指向结构体StateStruct的变量</param>
      /// <param name="levers">指向结构 LeversStruct 的arriable </param>
      /// <param name="level"></param>
      /// <param name="StartCapture">捕获数据标志。如果开始捕获为 1,否则为 0</param>
      /// <returns></returns>
      public static ushort GetDate(ushort DeviceIndex, ushort Ch1_Att, ushort Ch2_Att, out ushort[] ch1_data, out ushort[] ch2_data, out ControlStruct[] Control_Data1, out StateStruct[] FiltAndTrigger, out LeversStruct[] levers, out ushort[] level, ushort StartCapture)
      {
            ushort readSuccess = 0;

            ch1_data=new ushort;
            ch2_data=new ushort;
            Control_Data1=new ControlStruct;
            FiltAndTrigger=new StateStruct;
            levers=new LeversStruct;
            level = new ushort;
            unsafe
            {
               
                fixed (ushort* sdch1_data = ch1_data)
                fixed (ushort* sdch2_data = ch2_data)
                fixed (ControlStruct* sdControl_Data1 = Control_Data1)
                fixed (StateStruct* sdFiltAndTrigger = FiltAndTrigger)
                fixed (LeversStruct* sdlevers = levers)
                fixed (ushort* sdlevel = level)

                {
                  readSuccess = sdGetData(DeviceIndex, Ch1_Att, Ch2_Att, sdch1_data, sdch2_data, sdControl_Data1, sdFiltAndTrigger, sdlevers, sdlevel, StartCapture);
                }
            
            }

         

            return readSuccess;
      }
Pages: [1]
View full version: 汉泰6102be二次开发问题