在 Linu 上与 SRF02 测距传感器通信

在 Linu 上与 SRF02 测距传感器通信

我有一个 SRF02 超声波测距仪,通过 USB-I2C 通信模块连接到我的 Debian 8 笔记本电脑。我的问题是我无法从设备取回任何数据。 (我知道该设备可以工作,因为我可以在 Windows 上访问它)。

USB-I2C 文档规定您必须直接向设备发送字节并提供有关如何执行此操作的信息。以下是字节顺序:

  • 1) I2C_AD1命令
  • 2)设备i2c地址
  • 3) 器件内部寄存器地址
  • 4)我们正在读取的字节数

以下字节串应输出软件版本:

0x55 0xE1 0x00 0x01 

为此,我运行这两个命令:

$ printf '\x55\xE1\x00\x01' > /dev/ttyUSB0
$ hexdump -n 1 -e '"%02x \n"' < /dev/ttyUSB0

printf 似乎可以工作,但是我没有从 hexdump 得到任何输出,它会挂起,直到我终止该命令。

我应该如何解决这个问题?

$tty返回/dev/pts/0 当设备插入时,ttyUSB0 已创建并设置没有错误。我已断开模式插头,确保 SRF02 处于 i2c 模式。

USB-I2C 文档:http://www.robot- electronics.co.uk/htm/usb_i2c_tech.htm SRF02 文档:https://www.robot- electronics .co.uk/htm/srf02techI2C.htm

提前致谢!!最大限度

相关内容