Leer y grabar datos a través del puerto USB en Android 3.1
Estoy tratando de escribir una aplicación para Android para leer y escribir datos de la tableta Android a nuestro dispositivo incrustado. La tableta y el dispositivo embebido se conectan vía el convertidor del usb al serial. ¿Es posible leer datos del dispositivo incrustado en nuestra tableta android? Cualquier código de ejemplo que pueda echar un vistazo?
- Redistribución de Android ADB
- Transferencia de datos isocrónica USB Android
- Android 3.1 USB-Host - BroadcastReceiver no recibe USB_DEVICE_ATTACHED
- Comuníquese con el lector de tarjetas inteligentes a través del host USB de Android
- ¿Es posible transferir archivos al teléfono inteligente durante la conexión?
- Android: Comunicación USB Android <-> Dispositivo externo
- Android: Comunicación con un dispositivo USB que actúa como host
- Windows se niega a instalar el controlador ADB de Android
- ¿Cómo leer / escribir almacenamiento externo USB en Android?
- Android: habilita la conexión de USB mediante programación: hay una aplicación que lo hizo por 2,3
- Lectura / escritura de USB de Android a PC
- Android adb velocidad usb
- ¿Conectar el dispositivo USB al emulador de Android?
Como un convertidor de serie es un dispositivo USB, la tableta de Android tiene que actuar como un host USB. Esta función está disponible desde Android 3.1. La documentación del API está disponible en la página de desarrollo de Android e incluye ejemplos de código.
Para comunicarse realmente con el convertidor tendrá que averiguar un poco más acerca de su interior: Hay muchos dispositivos diferentes en el mercado, algunos utilizan HID USB, otros están usando la clase de dispositivos USB CDC o incluso no cumplen con ninguna clase. El comando linux lsusb puede ser útil para obtener los descriptores del dispositivo / interfaz.
En un dispositivo CDC típico tendrá que interactuar con dos extremos de extremo y probablemente utilizar algunas solicitudes relacionadas con la interfaz para configurar la velocidad en baudios, etc. Consulte la especificación Clase de dispositivo de comunicación en el foro de implementadores USB.
Si su dispositivo tiene sólo un punto final en blanco ENTRADA y SALIDA (al lado del punto final de control), puede intentar usar el método UsbDeviceConnection.bulkTransfer () en el punto final de SALIDA para escribir algunos bytes en la línea serie. Hay una buena probabilidad de que esto sólo funcione, sin embargo, para una implementación limpia debe atenerse a la especificación de la clase.
Sugiero usar el portado usb-for-android lib, que tiene el controlador PL2303 ya implementado: https://code.google.com/r/felixhaedicke-usb-serial-for-android
Lo he usado con éxito.
- ArrayAdapter de Listview Arregla () redibujo muy lento de notificydatasetchanged
- ¿Cómo estática clase interna con una WeakReference a la clase externa puede evitar fugas de memoria de Android? Necesito un ejemplo