我想在Linux Android上开发一个通过usb控制串行设备的应用程序 Android操作系统是支持USB主机的3.1。
Q1:请告诉我如何安装串口设备的端口。
当我在Dalvik Debug Monitor上获得“转储设备状态”时,我可能会收到USB设备信息 并且,我使用adb检查了android设备上的/ dev / tty * 我不知道串口设备是哪一个(/ dev / tty ??)。
adb shell
$ ls / dev / tty *
的/ dev / TTY
的/ dev / ttyFIQ0
的/ dev / ttyHS0
的/ dev / ttyHS2
的/ dev / ttyHS3
的/ dev / ttyHS4
的/ dev / ttyS0来
的/ dev /就是ttyS1
的/ dev / ttyS2
的/ dev / ttyS3
Q2:请告诉我如何在没有root权限的情况下控制Android上的串行设备。
我有一个可以控制linux上串行设备的应用程序(exe)
我试图在Android上做,但是我不能拒绝许可。
并且,我尝试重定向到串口(可能)
$ ls>的/ dev / ttyS0来
但我不能。
无法创建/ dev / ttyS0:权限被拒绝。
请让我知道如何控制和访问串行设备。
答案 0 :(得分:3)
在XDA论坛帖子中有一个很好的评论:
How to talk to the Modem with AT commands
该主题向您展示如何使用远程终端(USB连接到您的PC)发送AT命令(ATC),但它还没有解决如何使用本地(电话)终端与电话通话的问题调制解调器。
顺便说一句。你需要一个终端应用程序/程序来与调制解调器进行任何对话(记住,它是一种双向通信)。这就是为什么你需要一个root设备,因为root kit通常带有 Busybox (包括一个 microcom 终端程序)。否则你必须编写自己的程序。
答案 1 :(得分:2)
在下一步中,您可以通过几个命令测试tty * port: $ cat / dev / tty * /用于接收来自tty的字符 和 $ echo'text string'> / dev / tty * /用于将字符发送到tty
祝你好运!答案 2 :(得分:0)
尝试使用root设备?在研究同样的事情时,我读过只有少数3.1 / 2.3.4设备允许非root用户访问usb端口。
这是我对HTC Desire无根据的结果,2.2:
$ ls /dev/tty*
ls /dev/tty*
/dev/tty
/dev/ttyHS0
/dev/ttyHSUSB0
/dev/ttyHSUSB1
/dev/ttyHSUSB2
/dev/ttyMSM0
My asus Transformer,无根,3.2:
$ ls /dev/tty*
ls /dev/tty*
/dev/tty
/dev/ttyHS1
/dev/ttyHS2
/dev/ttyS0
/dev/ttyS1
/dev/ttyS2
/dev/ttyS3
安装键盘底座时,我得到完全相同的列表(它作为2个USB端口)。
希望它有所帮助,请让我知道我希望能够做到这一点。