DS2413 One Wire IC считывает и сохраняет адреса отдельных ИС

c++

Привет, Здесь я использую 10 DS2413 для управления gpios, он очень хорошо работает с arduino, я считываю адрес 10 ic и сохраняю его в 2D-массиве, я хочу управлять отдельными IC, используя их адрес. Здесь все работает хорошо. Моя проблема в том, что адрес Ic не хранится надлежащим образом. Например, у меня есть 10 IC, каждый IC имеет уникальный адрес, адрес первого IC1 хранится в arr1, адрес ic2 - это arr2, а адрес ic3 - в arr3 ..... что мне нужно, если я поменяю местами IC1 и IC2 адрес IC2 хранится в arr1, а адрес IC1 хранится в arr2.

, 👍0

Обсуждение

Можете ли вы показать нам скетч, который вы используете?, @VE7JRO

1-wire не имеет понятия о положении шины, только о логическом порядке адресов ПЗУ., @Majenko


1 ответ


1

В системе OneWire нет концепции расположения шины. Все, что ему известно, это адреса, и он всегда ищет эти адреса в заранее определенном порядке.

Независимо от того, какое расположение у вас на шине, устройства всегда будут найдены в одном и том же порядке.

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

Подробнее о том, как осуществляется поиск адресов, можно прочитать здесь< /а>.

,