【亲测免费】 安装与设置向导:安卓USB串口驱动库(usb-serial-for-android)

[复制链接]
发表于 2025-11-7 02:42:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
安装与设置向导:安卓USB串口驱动库(usb-serial-for-android)

    【免费下载链接】usb-serial-for-android Android USB host serial driver library for CDC, FTDI, Arduino and other devices.  
项目地点: https://gitcode.com/gh_mirrors/us/usb-serial-for-android   
项目底子先容及编程语言

usb-serial-for-android 是一个专为Android平台计划的开源驱动库,它允许开发者通过Android USB主机模式(OTG)与Arduino、FTDI芯片、Silabs CP2102等USB串行装备举行通讯,自Android 3.1版本起被支持,并从Android 4.2稳固工作。该库无需root权限,不依靠ADK或特殊内核驱动,完全由Java实现。项目接纳MIT允许证分发,使得它在开源社区中易于使用和二次开发。
重要编程语言: Java
关键技能和框架



  • USB Host API: 使用Android提供的USB主机API来直接与毗连的USB装备交互。
  • CDC/ACM Protocol Support: 支持通用串行总线通讯控制与数据传输(CDC/ACM)协议,实用于如Arduino的装备。
  • 自界说驱动探测: 提供了UsbSerialProber类以支持未知但兼容的装备,允许添加自界说规则辨认装备。
  • 变乱驱动读取: 实现了一种基于变乱的读取机制,通过SerialInputOutputManager处理处罚输入数据流,增强应用相应性。
准备工作与详细安装步调

步调一:获取项目代码

起首,访问项目主页https://github.com/mik3y/usb-serial-for-android,点击“Code”按钮选择ZIP下载大概通过Git克隆堆栈到当地:
  1. git clone https://github.com/mik3y/usb-serial-for-android.git
复制代码
步调二:情况设置

确保您已安装:


  • Android Studio: 最新版本,用于Android应用的开发情况。
  • Android SDK: 包罗对应于目标装备的API级别。
  • JDK: 至少Java 8以上版本。
步调三:集成库到您的项目

添加JitPack堆栈(对于Gradle项目)


  • 打开项目标根目次下的build.gradle(Project)文件。
  • 在allprojects块中的repositories添加JitPack堆栈地点:
    1. allprojects {
    2.     repositories {
    3.         ...
    4.         maven { url 'https://jitpack.io' }
    5.     }
    6. }
    复制代码
    大概,如果你使用的是较新版的Gradle而且喜幸亏settings.gradle中管理:
    1. dependencyResolutionManagement {
    2.     repositories {
    3.         maven { url 'https://jitpack.io' }
    4.     }
    5. }
    复制代码
添加依靠

在您的应用模块的build.gradle(Module)文件中参加以下依靠:
  1. dependencies {
  2.     implementation 'com.github.mik3y:usb-serial-for-android:3.8.0'
  3. }
复制代码
步调四:设置装备过滤器(可选)

为了当装备插入时吸取关照,在应用的res/xml目次下创建device_filter.xml文件,并在AndroidManifest.xml中指定它。
device_filter.xml示例
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3.     <usb-device vendor-id="1234" product-id="5678"/>
  4. </resources>
复制代码
在AndroidManifest.xml中关联此过滤器:
  1. <activity android:name=".YourActivity">
  2.     <intent-filter>
  3.         <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
  4.     </intent-filter>
  5.     <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
  6.                android:resource="@xml/device_filter" />
  7. </activity>
复制代码
步调五:使用驱动举行装备通讯


  • 获取可用驱动并打开毗连:
    1. UsbManager manager = (UsbManager) getSystemService(Context.USB_SERVICE);
    2. List<UsbSerialDriver> availableDrivers = UsbSerialProber.getDefaultProber().findAllDrivers(manager);
    3. UsbSerialDriver driver = availableDrivers.get(0);
    4. UsbDeviceConnection connection = manager.openDevice(driver.getDevice());
    5. UsbSerialPort port = driver.getPorts().get(0);
    6. port.open(connection);
    7. port.setParameters(115200, 8, UsbSerialPort.STOPBITS_1, UsbSerialPort.PARITY_NONE);
    复制代码
  • 举行数据读写使用:
    1. byte[] request = {...}; // 准备发送的数据
    2. port.write(request, WRITE_WAIT_MILLIS);
    3. int len;
    4. byte[] response = new byte[1024];
    5. len = port.read(response, READ_WAIT_MILLIS);
    复制代码
  • 实现变乱驱动的读取(使用SerialInputOutputManager):
    1. SerialInputOutputManager ioManager = new SerialInputOutputManager(port, YourActivity.this);
    2. ioManager.start();
    3. @Override
    4. public void onNewData(byte[] data) {
    5.     runOnUiThread(() -> textView.append(new String(data)));
    6. }
    7. // 记得在适当的时候关闭端口
    8. port.close();
    复制代码
至此,您已经乐成将usb-serial-for-android集成至您的项目中,并可以开始举行USB串行通讯的开发工作了。记得测试差别场景以包管兼容性和稳固性。
    【免费下载链接】usb-serial-for-android Android USB host serial driver library for CDC, FTDI, Arduino and other devices.  
项目地点: https://gitcode.com/gh_mirrors/us/usb-serial-for-android   
                                                  创作声明:本文部分内容由AI辅助天生(AIGC),仅供参考
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表