【问题标题】:Connecting FTDI device to Android as VCP将 FTDI 设备作为 VCP 连接到 Android
【发布时间】:2018-11-13 00:17:20
【问题描述】:

我正在尝试使用 FTDI 提供的 Java 类库将 FTDI FT2232H 连接到 Android 应用程序,该类库不需要 root 访问权限。

有没有办法通过这个包来使用VCP,而不是旧式的原生驱动路由?或者,如果没有,有没有办法通过它模拟 VCP 接口(或者是否有可能推出我自己的解决方案?)我发现官方文档有点缺乏,因为他们鼓励使用 Java 库而不是原生的,但不要解释它是否提供完整的功能。

【问题讨论】:

    标签: java android serial-port ftdi d2xx


    【解决方案1】:

    是的,您可以通过D2XX 驱动程序使用 VCP。看看Java D2xx for Android API User Manual(也在C/C++Software Application Development D2XX Programmer's GuideFTD2XX Programmer’s Guide Version 2.01文档),Official Android D2XX Example Source code尤其是FT2232HTestFragment.java类:

    public void SendMessage(View view) {
        // Do something in response to button
        FT_Device ftDev;
        if( uart_configured_0 == false ) {
              Toast.makeText(DeviceFT2232HTestContext, "UART Port 0 not configured yet...", Toast.LENGTH_SHORT).show();
              return;
          }
          ftDev = ft_device_0;
    
          if(ftDev.isOpen() == false) {
              Log.e(">>@@","SendMessage: ftDev not open!!!!!!  index: 0");
          } else {
              Log.e(">>@@","SendMessage: ftDev open, index: 0");
    
    /*            Log.e(">>@@","port 0 isn:" + ftDev.deviceInfoNode.iSerialNumber
                      + " bcd:" + ftDev.deviceInfoNode.bcdDevice
                      + " id:" + ftDev.deviceInfoNode.id
                      + " loc:" + ftDev.deviceInfoNode.location
                      + " sn:" + ftDev.deviceInfoNode.serialNumber);
    */        
        }
    
      ftDev.setLatencyTimer((byte) 16);
    
      // ftDev.Purge(true, true);
    
      String writeData = writeText_0.getText().toString();
      byte[] OutData = writeData.getBytes();
      int iLen = ftDev.write(OutData, writeData.length());
      Log.e(">>@@", "Port 0 write Len:" + iLen + " s:" + writeData);
      Toast.makeText(DeviceFT2232HTestContext,
              "Port 0 write Len:" + iLen + " s:" + writeData,
              Toast.LENGTH_SHORT).show();
    }
    

    还有像thatKeisuke SUZUKI)这样的例子。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多