СВД Встраиваемые Системы 1974eebdd1 | ||
---|---|---|
.. | ||
nto | ||
Makefile | ||
README.md | ||
common.mk | ||
i2c-scan.use | ||
main.c |
README.md
i2c-scan
Сканер шины I2C и чтение/запись произвольного регистра I2C устройства.
Синтаксис
i2c-scan [-d устройство] [-f] [-s] [-a адрес] [-r смещение] [-w значение] [-c количество]
Опции
-
-d устройство
Устройство I2C. Например: /dev/i2c1. По умолчанию: /dev/i2c0
-
-f
Сканировать шину. Задано по умолчанию.
-
-a адрес
Адрес I2C устройства на шине, например, 0x60.
-
-r смещение
Смещение регистра I2C устройства. По умолчанию: 0.
-
-w значение
Значение для записи в регистр устройства.
-
-c количество
Количество регистров для чтения/записи. По умолчанию: 1.
-
-s
Не пропускать сканирование специального адреса 0 (general call address).
Описание
Утилита i2c-scan сканирует шину I2C, последовательно перебирая доступные адреса (1-127), и выводит таблицу с присутствующими на шине устройствами.
При задании адреса устройства на шине (опция -a) считывает указанное количество регистров (опция -c) со смещением, заданным опцией -r.
Пример работы сканера для шин I2C0 и I2C1:
# i2c-scan
Scanning I2C device /dev/i2c0 for I2C devices...
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: xx -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 6f
70: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Scanning done
#
# i2c-scan -d /dev/i2c1
Scanning I2C device /dev/i2c1 for I2C devices...
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: xx -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- 18 19 -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Scanning done
Предостережения
I2C устройства, требующие первичной инициализации/включения и/или специфичных многобайтовых транзакций, могут не отображаться сканером шины или не выполнять запросы чтения/записи регистров.
Примеры
Сканировать шину I2C0:
i2c-scan
Сканировать шину I2C1:
i2c-scan -d /dev/i2c1
Считать регистр со смещением 0x50 устройства с адресом 0x60 на шине I2C0
i2c-scan -a 0x60 -r 0x50