手机otg连接扫瞄头方案

目标:手机通过USB OTG连接扫瞄头,手机端通过演示程序演示控制读写扫瞄头


 1. 硬件要求

1) 手机端具备OTG功能芯片,有micro-AB类connector (母头接口)

2) USB OTG连接线,一端为特殊的micro-A类plug(A类公头),另一端为普通常用的micro-B类plug

micro-A类plug的第5个pin脚(ID-pin)与micro-AB类connector的一个接地pin脚连接,这样手机才具备HCD(host)功能


2. 驱动要求

我的扫描头有两种模式,即串口模式和键盘模式,Linux驱动分别对应USB-CDC-ACM和USB-HID

以CDC-ACM为例,编译Linux内核,静态加载CDC-ACM驱动,烧录内核镜像,

启动系统之后便能热插拔识别扫瞄头设备,可以找到 /dev/ttyACM0


3 系统要求

对Android系统没有特别要求,只要在init.rc中放大对/dev/ttyACM0设备节点的权限

chmod 0766 /dev/ttyACM0

或者在其他系统服务里添加 chmod("/dev/ttyACM0", 0766);

adb push进去之后,必须在系统开机启动之前,预先连接扫瞄头,

这样设备节点才能获得普通用户读写权限,并不支持实时热插拔


4 演示程序

NDK开发本地代码,访问读写设备节点

char command[] = {0x16, 'T', 0x0D}

int fd = open("/dev/ttyACM0", O_RDWR);

write(fd, command, sizeof(command));

read(fd, buf, sizeof(buf));


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值