找回密码
 立即注册
楼主: ercircle

手机APP工具开发指南--安卓篇,手机的USB-OTG 和 Ai8051U 通信

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:162
  • 最近打卡:2025-05-01 06:56:44
已绑定手机

56

主题

1319

回帖

2938

积分

荣誉版主

无情的代码机器

积分
2938
发表于 2025-3-21 15:46:06 | 显示全部楼层
安卓App与Ai8051U擎天柱开发板通讯:


功能说明:
1. 初始化界面时,绑定UI控件各自事件
2. 点击刷新按钮,重新加载所有USB设备并更新spinner组件
3. 选择一个设备后点击连接按钮,建立与设备的通信链接
4. 在发送报文输入框中输入要发送的报文内容,点击发送按钮
5. 报文经过C++底层库,添加“Hello,”前缀后发送给设备
6. 设备接收到报文后返回原文,在底部显示区域展示
7. 软件打印的消息也在底部显示区域展示
8. 断开设备和软件退出时释放资源


构建界面布局:
截图202503211536505815.jpg

左上角使用spinner组件显示USB-设备下拉列表
一个刷新用的按钮
一个连接设备用的按钮
一个发送报文用的输入框及按钮
一个清空日志按钮
底部ScrollView+TextView组合用于显示接收到的报文信息及软件打印消息


开发关键点:
1.注册安卓USB权限
截图202503211537321681.jpg

2.注册设备vid+pid过滤器,这样插入设备会提示用户用此APP打开
截图202503211537552567.jpg
截图202503211538051797.jpg
3.加载三方usb-serial库(基于MIT协议)
截图202503211538203278.jpg

4.待连接的设备烧录USB-CDC固件,并支持echo模式,即发送什么返回什么

最终效果截图:
截图202503211539001985.jpg
完整代码见附件
1 喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
三天不学习,赶不上刘少奇~
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:520
  • 最近打卡:2025-05-01 08:06:21

109

主题

1897

回帖

5204

积分

论坛元老

积分
5204
发表于 2025-4-11 13:52:55 | 显示全部楼层
求教:手机还能 通过OTG与ai8051通讯,这是什么原理?

点评

Ai解释:OTG 原理OTG(On-The-Go)技术允许设备在没有主机(如电脑)的情况下,直接进行设备间的数据传输。 它通过一个 OTG 转接线或转接头,将手机的 USB 接口与USB从设备连接起来。 这样就可以使手机从原来的 USB  详情 回复 发表于 2025-4-11 14:25
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:162
  • 最近打卡:2025-05-01 06:56:44
已绑定手机

56

主题

1319

回帖

2938

积分

荣誉版主

无情的代码机器

积分
2938
发表于 2025-4-11 14:25:30 | 显示全部楼层
xxkj*** 发表于 2025-4-11 13:52
求教:手机还能 通过OTG与ai8051通讯,这是什么原理?

Ai解释:
OTG 原理
OTG(On-The-Go)技术允许设备在没有主机(如电脑)的情况下,直接进行设备间的数据传输。
它通过一个 OTG 转接线或转接头,将手机的 USB 接口与USB从设备连接起来。
这样就可以使手机从原来的 USB 从设备角色转变为主设备角色,能够为外部设备提供电源和进行数据通信控制。


三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:520
  • 最近打卡:2025-05-01 08:06:21

109

主题

1897

回帖

5204

积分

论坛元老

积分
5204
发表于 2025-4-11 19:46:47 | 显示全部楼层
erci*** 发表于 2025-4-11 14:25
Ai解释:
OTG 原理
OTG(On-The-Go)技术允许设备在没有主机(如电脑)的情况下,直接进行设备间的数据传 ...

我以为手机的OTG接口只能读写外接U盘而已,而不能与单片机这种虚拟的USB设备通讯

点评

U盘也是单片机开发的嘛。 话说老哥你的键盘和HID通讯共存问题解决了吗? 最近搞了个拓展库可以试用下提点建议 https://www.stcaimcu.com/thread-16791-1-1.html  详情 回复 发表于 2025-4-11 20:52
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:162
  • 最近打卡:2025-05-01 06:56:44
已绑定手机

56

主题

1319

回帖

2938

积分

荣誉版主

无情的代码机器

积分
2938
发表于 2025-4-11 20:52:54 | 显示全部楼层
xxkj*** 发表于 2025-4-11 19:46
我以为手机的OTG接口只能读写外接U盘而已,而不能与单片机这种虚拟的USB设备通讯 ...

U盘也是单片机开发的嘛。
话说老哥你的键盘和HID通讯共存问题解决了吗?
最近搞了个拓展库可以试用下提点建议
https://www.stcaimcu.com/thread-16791-1-1.html
三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:520
  • 最近打卡:2025-05-01 08:06:21

109

主题

1897

回帖

5204

积分

论坛元老

积分
5204
发表于 2025-4-12 09:54:36 | 显示全部楼层
erci*** 发表于 2025-4-11 20:52
U盘也是单片机开发的嘛。
话说老哥你的键盘和HID通讯共存问题解决了吗?
最近搞了个拓展库可以试用下提点 ...

你好!多谢关注!键盘和HID通讯共存问题解决了,是参考你的程序弄的。下一步有时间的话,准备折腾一下虚拟键盘鼠标+普通HID,看行不行
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:520
  • 最近打卡:2025-05-01 08:06:21

109

主题

1897

回帖

5204

积分

论坛元老

积分
5204
发表于 2025-4-12 09:57:03 | 显示全部楼层
erci*** 发表于 2025-4-11 20:52
U盘也是单片机开发的嘛。
话说老哥你的键盘和HID通讯共存问题解决了吗?
最近搞了个拓展库可以试用下提点 ...

你的那个拓展库是用官方lib的吗?

点评

嗯,在那个基础上改的  详情 回复 发表于 2025-4-12 10:18
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:162
  • 最近打卡:2025-05-01 06:56:44
已绑定手机

56

主题

1319

回帖

2938

积分

荣誉版主

无情的代码机器

积分
2938
发表于 2025-4-12 10:18:20 | 显示全部楼层
xxkj*** 发表于 2025-4-12 09:57
你的那个拓展库是用官方lib的吗?

嗯,在那个基础上改的
三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:520
  • 最近打卡:2025-05-01 08:06:21

109

主题

1897

回帖

5204

积分

论坛元老

积分
5204
发表于 2025-4-12 13:03:25 | 显示全部楼层
erci*** 发表于 2025-4-12 10:18
嗯,在那个基础上改的

lib文件不是打包的用户无法修改,而只能用官方提供的函数吗?

点评

改的官方提供的代码不是lib  详情 回复 发表于 2025-4-12 13:12
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:162
  • 最近打卡:2025-05-01 06:56:44
已绑定手机

56

主题

1319

回帖

2938

积分

荣誉版主

无情的代码机器

积分
2938
发表于 2025-4-12 13:12:01 | 显示全部楼层
xxkj*** 发表于 2025-4-12 13:03
lib文件不是打包的用户无法修改,而只能用官方提供的函数吗?

改的官方提供的代码不是lib
三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-1 21:21 , Processed in 0.190113 second(s), 113 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表