我需要在非常基本的级别上与Android手机中的修改后的SD卡进行通信,只需要几个命令和响应。最初的通信是通过文件系统处理的,但是当android 4.4拒绝访问大部分SD卡时,这必须通过SPI完成,我希望这可以工作。我有使用Android的经验,但在SPI方面却没有那么多。任何人都可以提供一个关于如何解决这个问题的简要教程,或者指出一些资源,我找不到任何可以解决如何与Android中的SD卡通信的问题。
由于
答案 0 :(得分:1)
在安全设备上不允许直接访问物理存储设备,因为它现在是围绕现在属于安全模型的限制的明显终点。
在不安全(工程,root hacked等)设备上,如果你得到一个以root身份运行的帮助程序可执行文件,你可以像在android 4.4之前那样与文件系统或原始块设备进行交互,可能在关闭之后与之交谈的任何官方Android组件。
即使在不安全的设备上,您也需要难以获得SOC特定的外设寄存器编程信息,以便在SPI模式下与卡通信(或者可能通过GPIO模式中的引脚进行bit-banging),而不是通过几乎可以肯定使用更快的4位协议。
如果您想要安全设备支持的解决方法,那么如果该设备支持USB主机模式,您可以使用Android USB Host API获取适配器电缆和USB SD读取器并使用原始大容量存储命令。或者,如果USB大容量存储不能为您提供足够细粒度的控制,您可以使用FTDI USB串行芯片的SPI模式,或使用支持USB的微控制器进行定制。