agregat 0 19 сентября, 2016 Опубликовано 19 сентября, 2016 · Жалоба Есть еще I2C буферы с возможностью сброса и выдачей прерывания в случае подвисания на "той" стороне. Если каждый блок будет иметь такой на входе, а это нормально если мы говорим о системе где есть hotswap замена блоков, тогда каждый блок будет сам разбираться со своими тараканами, шина при этом зависать не будет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vladec 12 20 сентября, 2016 Опубликовано 20 сентября, 2016 · Жалоба Есть еще I2C буферы с возможностью сброса и выдачей прерывания в случае подвисания на "той" стороне. Это тогда надо тащить ресет на все слейвы. Кстати говоря. I2C изначально задумывался как внутри модульный, а не меж блочный интерфейс, да еще и с hotswap. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tridentxp 0 13 ноября, 2016 Опубликовано 13 ноября, 2016 (изменено) · Жалоба Че-то не понял, если устройство - слейв, как оно вообще что-то на клок выставляет?? В топку такие "умные" девайсы здрасте, как это не может? это не крутая SMBus. в стандарте филипка чотко заявлено, что ведомый может удерживать SCL в нуле до готовности получать данные. а посему и таймауты на шине - Ваша головная боль. прошу прощения, что на августовское сообщение отвечаю. Изменено 13 ноября, 2016 пользователем trientxp Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
axalay 0 26 апреля, 2017 Опубликовано 26 апреля, 2017 · Жалоба есть I2C свичи. И там даже если какой то канал выгорел, можно перестать к нему обращаться. Смотрите у техаса например Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ferrum 0 12 мая, 2017 Опубликовано 12 мая, 2017 · Жалоба Можно попробовать вот такую схему (в прикрепленном файле), копеечные 595 регистры и транзисторы BSS138 навряд ли сильно увеличат себестоимость устройства, правда понадобиться дополнительный интерфейс SPI для управления 595-ми, при необходимости схему можно переделать под другое управление. Соответственно при 5 вольтах на затворе шина I2C открыта для двухсторонней передачи информации между ведущим и ведомым, при 0 вольт на затворе - ведомый может получать от ведущего посылки, но передавать что-либо ведущему не может, то есть при проблемах, когда ведомый все время притягивает шину к земле - просто устанавливаем 0 на соответствующих затворах и отключаем глючное ведомое, при этом все остальные ведомые продолжают взаимодействовать с ведущим. А вообще нужно разбираться почему ведомое зависает, может есть смысл подключить дополнительно конденсатор 0.1-1 микрофарад по питанию рядом с каждым ведомым, чтобы предотвратить зависание от помех по питанию. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
krux 8 12 мая, 2017 Опубликовано 12 мая, 2017 · Жалоба стоит проверить поведение зависшей шины. по факту детектирования зависания мастер должен подёргать стоп-старт-стоп-старт-стоп несколько раз. далее, методом "деления пополам" на уровне схемы, вычислить, какой из чипов не соответствует спецификации I2C. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться