aaarrr 69 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 10 minutes ago, xvr said: Странные задачи требуют странных решений, а для них нужны странные идеи :) Задача обыденная, решается одним транзистором. А тут изоляторы, компараторы (привет двунаправленности SCL) и прочие велосипеды с квадратными колесами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
quark 48 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 3 минуты назад, aaarrr сказал: А тут изоляторы, компараторы (привет двунаправленности SCL) и прочие велосипеды с квадратными колесами. Ничего этого не нужно, включая транзисторы. Все есть внутри почти любого МК. Надо уметь пользоваться, а не изобретать велосипеды. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 1 hour ago, quark said: Возьмите МК с двумя встроенными компараторами. "Клок" заведите им на внешние входы. .... Задержка, вносимая компараторами - несущественна, и на работу I2C не повлияеет. А если хоть одно из этих устройств использует clock stretch? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vasily_ 54 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба https://www.ti.com/lit/ds/symlink/pca9518.pdf?ts=1683711146138&ref_url=https%3A%2F%2Fwww.google.ru%2F Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
quark 48 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 30 минут назад, Allregia сказал: А если хоть одно из этих устройств использует clock stretch? Правильно выбрать скорость обмена для этого устройства, чтобы избежать конфликта. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 233 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 17 минут назад, quark сказал: Правильно выбрать скорость обмена для этого устройства, чтобы избежать конфликта. Это может быть невозможно, так как такая скорость может оказаться ниже необходимой задаче. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
quark 48 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 6 минут назад, jcxz сказал: Это может быть невозможно, так как такая скорость может оказаться ниже необходимой задаче. Для каких-то экзотических случаев - это решение может и не подойдет. Для них есть другие решения. А для большинства задач - будет работать. ТС свои требования в отношении clock stretch нее озвучивал. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 39 minutes ago, quark said: Правильно выбрать скорость обмена для этого устройства, чтобы избежать конфликта. Тоесть сделать не 100кгц и 100 герц? И это поможет для устройств, использующих стречт? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
siargy 6 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба On 4/20/2023 at 7:38 AM, Harbinger said: Взять МК, в котором I2C может ремапиться на разные пины. мне один раз попала в работу неправильно разведенная плата, ввиду невозможности использования аппаратного и2ц воспользовался програмным из библиотеки, дажэ и не заморачивался с кодом. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
quark 48 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 49 минут назад, Allregia сказал: Тоесть сделать не 100кгц и 100 герц? И это поможет для устройств, использующих стречт? А что, есть такие устройства, которые работают-работают на 100 кГц, а потом вдруг начинают "затягивать" процесс обмена до 100 Гц? По моему, это экзотика. Большинство нормальных устройств работают на заявленной у них в паспорте скорости без всяких "затягиваний". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 173 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба Вроде ж, ТС ясно указал, что 2 устройства повешены на 1 шину I2C и это надо разрулить. Ремапы МК и прочие физические расслоения - это же ведь не решение озвученной проблемы, не находите? Опять же, ТС не озвучил, в какой стадии работа - это разработка или сопляж-доработка уже сделанного. Адекватное решение зависит только от этого. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 233 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 24 минуты назад, quark сказал: А что, есть такие устройства, которые работают-работают на 100 кГц, а потом вдруг начинают "затягивать" процесс обмена до 100 Гц? По моему, это экзотика. Большинство нормальных устройств работают на заявленной у них в паспорте скорости без всяких "затягиваний". Это не "экзотика", а именно обычное применение clock stretching. Clock stretching используется в случаях когда слэйву нужно временно приостановить обмен: Например получил он какие-то данные на 400кГц, теперь ему надо их применить (установить внутренние регистры на основании принятых данных или ещё какие-то операции сделать) - вот он только в этот момент и притормаживает SCLK. Да хотя бы та же самая FLASH: получила данные на макс.скорости, а стирает/программирует флешь - столько времени, сколько нужно, притормаживая получение новых данных. Или вы предлагаете: раз например стирание сектора занимает 100 мсек, то и SCLK пусть будет не более 10 Гц? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 35 minutes ago, quark said: Большинство нормальных устройств работают на заявленной у них в паспорте скорости без всяких "затягиваний". Большинство да. Но в данном случае, переключать лучше не клок а дату, которая двунаправленная, и тут с компараторами будет проблема. 22 minutes ago, Arlleex said: Ремапы МК и прочие физические расслоения - это же ведь не решение озвученной проблемы, не находите? А без "физического расслоения" тут проблема и не решится. Ремап, транзиторы, компараторы и прочее - это лишь способы реализации. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 233 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 20 минут назад, Arlleex сказал: Вроде ж, ТС ясно указал, что 2 устройства повешены на 1 шину I2C Это где ТС такое писал??? Ткните носом, плиз. Вроде он писал, что просто нужно подключить 2 слэйва, у которых нет ни чип-селектов ни возможности задания адресов (т.е. - никаких способов выбора чипов). А то, что они "на одной шине" - этого не писал. А значит: ремап ног МК - вполне себе годное решение. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 173 10 мая, 2023 Опубликовано 10 мая, 2023 · Жалоба 1 минуту назад, jcxz сказал: Это где ТС такое писал??? Ткните носом, плиз. Там на схеме у него нарисовано. Да и будь оно подключено к разным шинам-пинам, никакого вопроса и не возникло бы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться