我可以通过USB端口将一系列数据(非文件)从Android设备传输到FPGA板上吗? Android是否使用一些API顺序支持这种传输?通过USB端口传输数据
回答
这取决于你的Android设备。 Sinvce API级别12,Android开发者已有USB Host and USB accessory support。 USB附件是有点古怪,据我可以告诉,它被设计成只承认一个Android专有扩展USB标准"Android Open Accessory protocol",
看看由Nexus Computing guys in Switzerland
在做的工作特别你会发现关于他们的osciprime open source oscilloscope的博客文章,其中包括硬件与XiLinx CPLD的接口,这至少接近你正在尝试做的事情。
根据您的Android硬件,最多有三种不同的方式来完成此操作。从广泛支持到最少,它们是ADB协议,USB配件模式和USB主机模式。 ADB协议实际上是为调试Android设备而设计的,但Android支持通过它连接隧道TCP连接,并且各种项目(如microbridge)都使用它来在Android应用程序和外部硬件之间传输数据。其他人已经将其他两个文档链接起来。
您可以使用哪些实际使用哪种FPGA板取决于您使用的FPGA板类型以及它具有哪种USB硬件。 (我假设你现在使用的是现成的电路板。)有些电路板只有一个USB-to-JTAG接口,通常是专有的和没有记录的,在这种情况下,USB Host是唯一的方式与它连接,你需要在Android端有一些非常难看的代码。其他人,如OsciPrime和Ztex的电路板,使用赛普拉斯FX2微控制器,该微控制器再次需要USB主机支持,但允许您在两者之间定义自己的USB协议。少数拥有飞利浦ISP1362芯片并支持USB主机模式,在这种情况下,您可以使用ADB或开放式附件协议 - 您甚至可以使用boot ucLinux on it and connect to your phone with libusb。
如果您正在开发自己的硬件,显然取决于个人品味,性能要求,BOM成本和开发时间之间的权衡,以及您需要支持多大范围的Android设备。例如,TUSB110x系列USB收发器便宜且可以支持USB Host模式,因此理论上可以基本上与所有Android硬件接口,但它们在FPGA方面需要大量工作。
(这个答案有一些超链接被淘汰,因为新用户的超级链接限制。道歉。)
- 1. 通过串行端口传输数据
- 2. 通过USB端口发送数据
- 3. 通过USB实时数据传输
- 4. 从USB端口输出数据? (Windows)
- 5. 如何通过MATLAB通信USB端口?
- 6. 传输数据USB
- 7. USB通信端口
- 8. C++ windows通过USB串口获取USB端口和集线器
- 9. 如何通过Android C#中的USB端口发送数据?
- 10. 通过USB的Android传感器数据
- 11. 通过USB输入模拟数据
- 12. USB数据传输到外部USB 3
- 13. USB数据传输到iPhone
- 14. 如何通过USB高速传输数据?
- 15. 通过USB CDC将数据从STM32F407传输到libusb
- 16. 如何通过USB传输数据与iPad
- 17. 当超级终端连接时,C++无法通过COM端口传输数据
- 18. Basys3开发板的USB端口上的数据输入/输出
- 19. 与USB端口通信
- 20. 通过USB进行Android文件传输
- 21. 在我的项目中通过USB通过USB连接一个arduino到一个ANDROID手机通过USB端口
- 22. 通过JFrames传输数据
- 23. 通过串口传输数据时出现数据损坏
- 24. Erlang端口数据传输长度
- 25. wireshark通过端口计数数据包
- 26. 我们可以通过USB电缆将数据通过USB Host API传输到PC吗?
- 27. 从USB端口读取数据
- 28. 如何从USB端口读取数据?
- 29. 从USB端口读取数据
- 30. 当捕获数据时,USB端口嗅探和USB端口触发