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转串口项目

android usb转串及串口通信相关推荐

  1. Android模拟器实现windows虚拟串口通信调试

    1. 下载  Virtual Serial Port Driver ,安装后好后,创建一对虚拟串口 2.打开计算机管理 查看设备管理->端口 查看是否生成虚拟端口.(如果没有生成 重启试下) 3 ...

  2. Android 开源USB读写demo,实现串口通信

    CSDN 下载链接https://download.csdn.net/download/gao511147456/87226599(可0积分免费下载) 如果你不想下载可以阅读下面教程并复制代码到自己的 ...

  3. 嵌入式STM32入门之STM32基础串口通信

    STM32基础串口通信 一.前言 二.串口协议 (1)浅谈设备通信方式 (2)具体串口协议 (3)STM32的串口通信 (4)RS-232通信协议 (5)USB To TTL(CH340) 5.1 C ...

  4. Android USB 串口通信

    公司要求安卓PAD对接一台Windows的设备,实现双向数据传输. 是通过Windows设备的一根数据线进行数据传输的,涉及到的技术就是USB转串口通信,网上讲原理的一大堆,我就不讲了,直接上demo ...

  5. android usb通讯波特率,USB串口的特殊波特率通信

    USB串口的特殊波特率通信是指波特率为非标准数值的任意波特率.由于这些波特率是非标的,所以从硬件到软件都有特殊要求和方法才可以实现.本文以最新2015款的波仕USB232ET转换器为例从硬件和软件两方 ...

  6. android串口通信——android-serialport-api

    一.串口通信原理 串口通信(Serial Communications)的概念非常简单,串口按位(bit)发送和接收字节.尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用 ...

  7. Android 串口通信开发总结和实例解析

    文章目录 前言 一.串口通信是什么? 1.概念 2.通讯方式 3.接口外观 二.使用步骤 1.准备 2.使用 2.解析案例 总结 前言 之前遇到的关于硬件需求的厂家一般会提供jar包调用.一直没搞过直 ...

  8. 51单片机C语言波特率十六进制,理解51单片机串口通信的波特率与USB转串口通信...

    RS232 在我们电脑上,一般都会有一个9针的串行接口,这个串行接口叫做RS232接口,它和UART通信有关联,但是由于现在笔记本电脑不带9针串口,所以和单片机通信越来越趋于使用USB虚拟串口. 九针 ...

  9. Android USB串口打印结账单小票

    最近在做打印小票的功能,需要通过USB串口连接打印机打印出订单的小票,自己也是在网上查了一些相关的资料,也踩了一些坑,最后把总结的代码分享出来,给有需要的朋友做个参考,废话不多说了,先看打印出来的效果 ...

最新文章

  1. 【Android 插件化】Hook 插件化框架 ( hook 插件化原理 | 插件包管理 )
  2. 【视频课】图像分类最新内容来了(言有三录制6大理论部分讲解)
  3. 后端接口的幂等性(转)
  4. 树型列表结构宽度调整_如何用Axure画出Web产品的列表组件:基础画法
  5. 采用redis+ThreadLocal获取全局的登录用户信息(一)
  6. 洛谷P4463:calc(dp、拉格朗日插值)
  7. Ubuntu 11.04下最流行的17款应用(linux在中国市场的占有率好像只有0.1几%)
  8. [erlang] mnesia
  9. Luogu1515 青蛙的约会
  10. 图片md5值不一样_夏天宅家,拍点不一样的宝骏530车模图片!
  11. grep命令--文件过滤分割与合并
  12. SpringMVC中解决POST和GET请求中文乱码问题
  13. 《软件开发工具》(第二章)
  14. 小白也能看懂的零信任SDP介绍
  15. 嵌入式静态显示与动态显示
  16. linux 磁盘分区 挂载 卸载 常用命令
  17. 软件界面交互设计体验
  18. 如何给PDF文件添加自定义图章的方法
  19. web项目常见报错解决方法
  20. NVIDIA 7th SkyHackathon(四)Nemo ASR 模型训练与评估

热门文章

  1. 夏驰和徐策的解决数学问题思路——反证法
  2. 针对商城难推广提出6大方法,一切如此简单!
  3. Unity3d入门—模拟刚体碰撞
  4. 论文神器teXWorks安装与使用记录
  5. 24路舵机控制板板使用说明
  6. 通信线路工程验收规范_弱电施工规范与工艺标准
  7. 华为服务器上传文件,服务器上传文件的方式
  8. 人一生平均900个月
  9. 【一建、一造经验分享】一建挺难的,要坚持才能得到
  10. 铜川焊接机器人效率_abb焊接机器人-铜川焊接机器人-森达焊接(查看)