android usb转串及串口通信

1.串口USB转串口 这两种方式都可以实现android下软件与硬件的通信,串口要早于usb出现,在行业应用范围广,不过传输速度及便携性要逊于usb;

2.android 下与串口通信不需要或者很少需要驱动,使用jni调用linux 方法读写硬件设备;

3.而usb转串口则实现了串口与usb之间的转化,这种方式为没有串口的计算机提供快速的通道,并且将传统的串口设备变成了即插即用的usb设备;串口转换为usb(或者说通过usb的方式来操控串口设备)一般都需要驱动,常见的驱动程序有PL23xx, CP21xx, FTD, CDC_ACM, CH34XX, 驱动程序一般都被植入到硬件设备中,作为一块驱动芯片存在,如果没有内植驱动芯片想要转换为usb,也可以购买usb转串接口实现外部转换;每种驱动都有一套自己的操作方式,因此在android 上操作usb转串设备,先要区分驱动类型,根据不同驱动来读写设备,如果不按驱动类型来操作,一般软件上会报错或设备读写没有反应或接收的字节异常;android UsbDevice 就是linux下的usb设备反应到android上的对象,操控UsbDevice即可实现对usb设备的读写;

4.通过android API查询当前系统下挂载的usb设备,android 的实现则是遍历linux下节点设备,并转化为android UsbDevice,usb 设备因为其热插拨的特性,因此不能被固定的方式识别即UsbDevice并不是唯一性的,不过被固化在andrid 主板上的串口接口却是不变的;

我用kotlin写了一个usb转串及串口通信的框架usb-with-serial-port,查看源码应当会对android usb转串及串口通信方式有更多的理解,项目有其他问题也欢迎指出,另外也可以参考串口通信官方usb转串口项目

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值