Перейти к содержанию
    

Сегодня почти все датчики имеют один-два адреса. Два адреса если есть дополнительный пин который можно посадить на землю или питание, а так один адрес.

А если мне нужно посадить 10 датчиков на шину?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Либо коммутировать подручными средствами, либо 10 микроконтроллеров.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 minutes ago, jenya7 said:

А если мне нужно посадить 10 датчиков на шину?

Похоже, что датчики не подразумевались для создания систем телеметрии. Чтобы померить температуру внутри прибора двух - трёх датчиков обычно достаточно. Тут где0-то недавно как раз обсуждали эту проблему. Именно для её решения и предназначена шина 1-Wire. Если уж сильно хочется i2c, то можно наделать до бесконечности программных шин на каждой паре пинов микроконтроллера. Либо коммутировать аппаратную мультиплексорами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 minutes ago, haker_fox said:

Похоже, что датчики не подразумевались для создания систем телеметрии. Чтобы померить температуру внутри прибора двух - трёх датчиков обычно достаточно. Тут где0-то недавно как раз обсуждали эту проблему. Именно для её решения и предназначена шина 1-Wire. Если уж сильно хочется i2c, то можно наделать до бесконечности программных шин на каждой паре пинов микроконтроллера. Либо коммутировать аппаратную мультиплексорами.

Если мы возьмём довольно популярные - HTS221, BME280, BMP085 - все они 1-2 адреса. То есть нужно специально искать датчики с расширенной адресацией?

Програмный I2C это извращение, к тому же где я столько пинов наберусь. Мультиплексор тоже не радостное решение.

Вот я всегда не любил этот протокол, проблема что большинство датчиков делают именно под него.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, jenya7 said:

Програмный I2C это извращение

Ну я занимался таким извращением) Поверьте, иногда это просто необходимо.

1 minute ago, jenya7 said:

к тому же где я столько пинов наберусь

Расширители портов: pca9534, какие-нибудь сдвиговые регистры на SPI-шину.

1 minute ago, jenya7 said:

Мультиплексор тоже не радостное решение.

Ну...

2 minutes ago, jenya7 said:

Вот я всегда не любил этот протокол, проблема что большинство датчиков делают именно под него.

Протокол не создавался для телеметрии, а у меня есть ощущение, что для неё вы и что-то делаете. Если так, то берите специальные термодатчики для промышленности.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, haker_fox said:

Протокол не создавался для телеметрии, а у меня есть ощущение, что для неё вы и что-то делаете. Если так, то берите специальные термодатчики для промышленности.

ну а если нужно обвесить большое помещение датчиками. я думал взять I2C extender он позволяет удлинить шину до пары сот метров.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 minutes ago, jenya7 said:

ну а если нужно обвесить большое помещение датчиками

Шина, как и приёмопередатчики для неё, создавались всё-таки не для помещения, а для внутриборного использования. Чем DS18B20 не устраивает? Как раз для подобных целей и используется. Если мне память не изменяет, то, используя паразитное питание, можно обойтись двумя проводниками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, haker_fox said:

Шина, как и приёмопередатчики для неё, создавались всё-таки не для помещения, а для внутриборного использования. Чем DS18B20 не устраивает? Как раз для подобных целей и используется. Если мне память не изменяет, то, используя паразитное питание, можно обойтись двумя проводниками.

я не хотел ограничивать пользователя в выборе датчиков. а так как большинство из них делается почему то под I2C я включил эту шину в проект.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

44 минуты назад, haker_fox сказал:

можно наделать до бесконечности программных шин на каждой паре пинов микроконтроллера.

Можно обойтись одной линией I2C на один датчик. Вторую линию - развести на все. Тогда нужно почти в 2 раза меньше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

23 минуты назад, jenya7 сказал:

I2C extender он позволяет удлинить шину до пары сот метров

Тогда Вы тому пользователю отпишите прикручивать к каждому датчику и по такому же усилителю, потому что I2C придумала Philips исключительно для соединения микросхем на одной плате телевизора, т.е. 40 см, никаких статических разрядов и т.п.

 

37 минут назад, jenya7 сказал:

возьмём довольно популярные - HTS221, BME280, BMP085 - все они 1-2 адреса

У первых двух интерфейс SPI — Вы вообще о чём?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

45 минут назад, jenya7 сказал:

Вот я всегда не любил этот протокол, проблема что большинство датчиков делают именно под него.

А вы искали?  :umnik2: Ищите и обрящете.

Например MLX90614 позволяет обойтись всего одним пином на датчик. Причём - однонаправленным (легко мультиплексируется при необходимости). И шина - не с ОК, а значит - устойчивее к помехам и длинным линиям сигнала.

5 минут назад, arhiv6 сказал:

Ищите "I2C hub IC" или "I2C bus multiplexer". PCA9547/PCA9548 и т.п.

Если есть лишние выводы МК, а на I2C-слэйве есть хотя бы одна нога выбора чипа (или адреса), то можно сделать мультиплексирование без дополнительных чипов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 minutes ago, Plain said:

У первых двух интерфейс SPI — Вы вообще о чём?

SPI опциональный. ту все дело в свободе выбора.

9 minutes ago, jcxz said:

Можно обойтись одной линией I2C на один датчик. Вторую линию - развести на все. Тогда нужно почти в 2 раза меньше.

это как?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 минут назад, jenya7 сказал:

это как?

Посмотрите на осциллограммы I2C и подумайте:  http://easyelectronics.ru/interface-bus-iic-i2c.html

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...