Могу ли я использовать файловую систему One Wire через GPIO?

14

Я установил owfs (под debian), чтобы понять, что первоначальная настройка (1wire) работает только через порт USB. owfs - это сокращение от One Wire File System . Это стандарт для низкочастотных датчиков, но я специально пытаюсь подключить DS18B20 через GPIO.

Могу ли я заставить функцию 1-wire работать через GPIO? И если да, то как мне это сделать?

Сначала я не понимал, что owfs часто хочет иметь «IC Master Bus», которую он может использовать для связи с однопроводными датчиками. Я думал, что могу легко изменить настройки, чтобы использовать GPIO без мастера шины.

Кристиан
источник
без хозяина автобуса ..
Кристиан
3
Привет, Кристиан, чтобы получить ответ на этот вопрос, я думаю, тебе нужно будет немного расширить вопрос, чтобы объяснить, что такое на самом деле. Любые ссылки на это работает на RPi?
Алекс Чемберлен
1
owfs - это сокращение от One Wire File System. И это стандарт для низкочастотных датчиков - больше информации на owfs.org
Мария Зверина
1
Я изменил ваш заголовок на основе этих комментариев. Дайте мне знать, если это не хорошо.
Jivings
1
Спасибо за ваш вопрос, Кристиан, и спасибо, что обновили его, добавив немного больше информации. Я немного прибрался и добавил некоторую другую информацию из комментариев.
Марк Бут

Ответы:

8

Я провел некоторое исследование по этому вопросу и пришел к следующим результатам:

  • Модуль ядра w1 и OWFS не совместимы в данный момент,
  • Как вы, наверное, знаете, OWFS работает со многими аппаратными устройствами (1-проводными мостами от USB / I2C / Serial / TCP и т. Д.), Которые превосходят любое решение, использующее битовую обработку,
  • В исходном коде OWFS (особенно в части owlib) полностью переписан этот модуль ядра w1 (на основе кода от Евгения Полякова, автора модуля ядра w1), также есть информационная страница об этом. Но это выглядит как на стадии разработки / разработки: OWFS w1 info . Они также утверждают, что доступ к этому модулю осуществляется через соединение netlink ( таблица Busmaster), и сообщает о себе в OWFS, используя avahi. (проверьте исходные файлы в каталоге owlib / src / c, начиная с ow_w1_ *)
  • Параметр командной строки --w1 используется многими инструментами, чтобы указать процессу использовать модуль ядра w1, как вы на самом деле отображаете контакты GPIO, которые будут использоваться для связи 1wire, на данный момент я понятия не имею.
  • И последнее, но не менее важное: в списке Todo OWFS есть записи для добавления GPIO и «нормального» модуля ядра w1, как вы можете видеть здесь: OWFS Todo

У меня нет материала 1wire, чтобы проверить, действительно ли работает эта «перезапись», как указано в пункте 3. И особенно, как это должно работать, но на информационной странице они говорят об отключении модуля ядра w1 или запуске OWFS от имени root, чтобы он мог выгрузить модуль ядра w1, но если это уже реализовано и работает, я понятия не имею.

Я надеюсь, что эта информация поможет вам немного продвинуться, и, пожалуйста, сообщите нам о некоторых результатах.

Икку
источник
Я написал примерно половину этого в другом ответе, увидев tanzilli.com/1wire и осмотревшись вокруг, а затем заметил, что в основном нашел то же самое, что и здесь :)
XTL
1

Возможно, вы захотите взглянуть на этот вопрос . У западного дистрибутива есть 1-проводная поддержка на контактах GPIO.

speshak
источник
1
Я все готов сделать это! Но вопрос был о совах! Приветствия
Кристиан
Этот модуль ядра имеет пару серьезных ограничений. Читайте о них здесь: kernel.org/doc/Documentation/w1/slaves/w1_therm
notlesh