Android ofrece 2 formas populares (y fáciles) de lograr lo que está intentando, pero no sin hardware adicional.
- ADK (Kit de desarrollo de accesorios): es una API y un estándar de conectividad donde los dispositivos Android Honeycomb ‘3.0’ y superiores con puerto host USB pueden comunicarse con un dispositivo compatible con ADK para controlarlo mediante programación. El dispositivo compatible con ADK tiene los puertos de hardware necesarios (pines GPIO, SPI, pines I2C, etc.) para el control del hardware.
- IOIO: también funciona con dispositivos pre Honeycomb, y es el método significativamente menos costoso (en cuanto al dinero). IOIO en sí tiene los puertos / pines para usar. Tenga en cuenta que IOIO actúa como el host USB y, por lo tanto, funcionará con teléfonos / tabletas Android que tengan un puerto de dispositivo USB.
Hay otras formas de explorar:
- Controle el hardware externo a través de Bluetooth (o incluso WiFi). El hardware externo debe ser compatible con Bluetooth y exponer el microprocesador programable con acceso a puertos / pines GPIO, I2C, TWI, SPI.
- Controle el hardware externo a través de la entrada / salida de audio (toma de auriculares) utilizando la “modulación de audio” (forma similar a la que utilizan los módems de línea fija / fija para trabajar). Hay varios dispositivos comerciales para iPhone (y creo que algunos para dispositivos Android) que utilizan este método. El más común es el lector de tarjetas de crédito SquareUp (banda magnética).
Finalmente, otro enfoque podría ser usar NDK y controladores nativos para GPIO, SPI, I2C, etc. para modificar el hardware existente del teléfono / tableta (y esto está muy lejos de ser trivial, especialmente para alguien que hace esta pregunta, o incluso de otro modo), o use tableros especializados como Cubieboard, Beagleboard, Beaglebone, IGEPv2, etc.
- ¿Cómo puedo escribir una función C de retardo de software para Microchip PIC32 MCU? Estoy usando el microcontrolador PIC32MX795F512L con el compilador MPLAB C32 C para MCU PIC32, y me gustaría que una función se retrase en milisegundos.
- Cómo hacer una función segura en C sin usar la palabra clave estática
- ¿Debería unirme al entrenamiento de verano para sistemas integrados o debería comenzar a aprender solo?
- Cómo prepararse para la entrada de CDAC para el sistema embebido
- ¿Qué debería leer un estudiante universitario para mantenerse al día con el mundo de los sistemas integrados?