如何在linux下获取蓝牙串口状态



通过linux终端获取串行端口(ttyS*)的状态很简单:

sudo cat /proc/tty/driver/serial

然后它显示serinfo,其中包含所有uart的列表,其中包含有关状态和缓冲区的信息。当我呼叫时

sudo cat /proc/tty/drivers

然后我可以看到rfcomm驱动程序可用:

rfcomm   /dev/rfcomm   216 0-255 serial

当然,从配对的蓝牙设备中读取数据并不是问题。

问题是:如何获取rfcomm串行端口(例如Blueotooth SPP设备)的状态?这些信息在/proc目录中的某个位置(如ttyS*)可用吗?或者我可以使用完全不同的方式吗?

这取决于您要查找的状态。bluez附带的"rfcomm"命令确实有一些状态信息。这取决于这对你来说是否足够。

% rfcomm -h
RFCOMM configuration utility ver 4.101
Usage:
        rfcomm [options] <command> <dev>
Options:
        -i [hciX|bdaddr]      Local HCI device or BD Address
        -h, --help            Display help
        -r, --raw             Switch TTY into raw mode
        -A, --auth            Enable authentication
        -E, --encrypt         Enable encryption
        -S, --secure          Secure connection
        -M, --master          Become the master of a piconet
        -f, --config [file]   Specify alternate config file
        -a                    Show all devices (default)
Commands:
        bind     <dev> <bdaddr> [channel]       Bind device
        release  <dev>                          Release device
        show     <dev>                          Show device
        connect  <dev> <bdaddr> [channel]       Connect device
        listen   <dev> [channel [cmd]]          Listen
        watch    <dev> [channel [cmd]]          Watch

相关内容

  • 没有找到相关文章

最新更新