将原始数据写入Android串行端口(USB)

时间:2011-05-04 08:28:29

标签: android android-ndk serial-port usb libusb

我需要将一些“原始”数据写入我的项目的usb端口(如果需要root则没有问题)。

我找到了port of libusb for Android并设法用NDK编译它。我将库链接到我的可执行文件(以root身份执行),但函数“libusb_init”始终返回错误(LIBUSB_ERROR_OTHER)。

我发现问题(现在......)在文件“linux_usbfs.c”中,更确切地说是在这个函数中:

static const char *find_usbfs_path(void)
{
    const char *path = "/dev/bus/usb";
    const char *ret = NULL;

    if (check_usb_vfs(path)) {
        ret = path;
    } else {
        path = "/proc/bus/usb";
        if (check_usb_vfs(path))
            ret = path;
    }

    usbi_dbg("found usbfs at %s", ret);
    return ret;
}
我的N1上显然不存在

/dev/bus/usb

1 个答案:

答案 0 :(得分:1)

为什么不尝试pyserial? python对我来说似乎更简单。您需要具有USB主机模式的内核,或者您的手机本身支持ttyMSM0上的串行,您需要找到它。一旦你确定你的手机上有一个串口,看看这个用于huawei ideos U8150的link,但使用python for android完成的pyserial东西是我建议的替代品。