i2cdetect показывает все возможные адреса


13

Я пытался включить I2C, следуя этому руководству http://www.raspberrypi-spy.co.uk/2014/11/enabling-the-i2c-interface-on-the-raspberry-pi/

Но у меня есть проблема, которую я не могу решить. Команда i2cdetect -y 1возвращает

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
10: 10 11 12 13 14 15 16 17 18 19 1a UU 1c 1d 1e 1f
20: 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f
30: 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f
40: 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f
50: 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f
60: 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f
70: 70 71 72 73 74 75 76 77

Я не знаю, почему он показывает все адреса и как я могу это исправить. Я ничего не подключал к своему Raspberry Pi. Я только что положил SD-карту и установил ОС по умолчанию с помощью NOOBS. Но когда появилась проблема, я подключил свой RTC DS1307, но это не повлияло на вывод i2cdetect.


Контакт 3 был ответом для меня. У меня был светодиод на контакте 3, и когда я переместил его, интерфейс очистился.
SaintMulligan

Ответы:


16

Как правило, это происходит потому, что что-то тянет SDA (контакт 3) на низком уровне.

Программа i2cdetect проверяет наличие устройства, отправляя его адрес, затем позволяя SDA иметь высокий уровень. Если устройство существует, оно должно вывести SDA на низкий уровень, чтобы сигнализировать о его наличии.

Проверьте проводку, чтобы убедиться, что SDA не был случайно подключен к земле.


Я использовал мультиметр, помещая первый измерительный провод на SDA и второй измерительный провод на GND. Я обнаружил, что между ними есть связь. Это неправильно?
WJA

Проверьте напряжение между контактом 3 и контактом 6 (масса). Следует читать 3V3. Если это не так, то что-то не так. У вас есть что-нибудь подключенное к разъему расширения, например, ленточный кабель?
Джоан

Между контактами 3 и 6 это 0,06 В. У меня ничего нет к моему устройству.
Wja

Я бы исследовал дорожки печатной платы, чтобы увидеть, есть ли паяный мост. У вас установлена ​​библиотека gpio? Вывод 3 будет показывать низкий уровень, если он активно находится на низком уровне, но по умолчанию он должен быть высоким.
Джоан

Печатная плата выглядит хорошо. У меня свежий Raspbian с обновлениями. Я думал, что библиотека gpio требуется, только если я хочу написать код на Python. Должен ли я установить python-rpi.gpio? А может, есть другая библиотека gpio?
Wja

1

Исправил мой PI-ноль ... Рядом с SDA (контакт 3) и слотом для SD-карты есть два резистора, дотронулся до соединений паяльником и теперь работает.


0

В моем случае это произошло из-за того, что было сломано устройство i2c (я случайно подключил его обратно к напряжению / заземлению)

Попробуйте использовать другое устройство i2c

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.