Спасибо Вам большое за интереснейшие, а главное понятные лекции, дай Бог Вам здоровья! Очень хотелось бы увидеть лекцию о UART и USART интерфейсе и рассмотрении их отличий. Заранее благодарен!
Спасибо за интересную и понятную лекцию! Крепкого здоровья и продуктивной деятельности! С уважением, робототехники Лондонского Миддлсекского университета!
А как мастер узнаёт адреса подчинённых устройств? Может перед стартом опрос какой, или в мастер заранее забиты адреса. Или если кто-то по адресу выставил (А), то адрес рабочий, начинаем передачу))?
Обычно адрес подчинённого устройства известен заранее главному устройству. Адрес Slave'а по-умолчанию должен быть указан производителем в документации к устройству. Если документацию не удалось найти, можно просто подключить одно это устройство к I2C шине (не подключать ничего, кроме него) и просканировать шину. В интернете есть примеры I2C сканера на Arduino - там программа примитивнейшая - цикл по всем адресам в диапазоне [8..127]. Диапазон адресов [0..7] обычно не сканируется, так как он зарезервирован для служебных целей. С какого адреса откликнется устройство, то и есть его адрес.
Для программирования микросхем памяти I2C программой PonyProg для сигнала SCL используется исходящий вывод 7 COM порта RTS. Нужно ли обязательно задействовать при этом для сигнала SCL входящий вывод 6 COM порта DSR ? Если нужно то зачем? Вывод микросхем памяти SCL является однонаправленным, однако в многочисленных схемах программаторов вывод 6 COM порта для SCL почему то задействован.
Да также не понял, может перед стартом опрос какой, или в мастер заранее забиты адреса. Или если кто-то по адресу выставил (А), то адрес рабочий, начинаем передачу.
чаще всего на slave-устройствах есть перемычки, которые позволяют либо полностью задать любой удобный адрес, либо позволяющие менять часть адреса, таким образом, если стандартный адрес устройства конфликтует с другим устройством на шине, то достаточно в одном из устройств замкнуть/разомкнуть одну или несколько перемычек. Например, на модуле реального времени DS3231 есть 3 пары контактов, которые можно замыкать (в данном случае напаять кусочек олова) для того, что бы поменять адрес, установленный производителем по-умолчанию. Адрес по-умолчанию должен быть указан производителем в документации к устройству. Если документацию не удалось найти, можно просто подключить одно это устройство к I2C шине (не подключать ничего, кроме него) и просканировать шину. В интернете есть примеры I2C сканера на Arduino - там программа примитивнейшая - цикл по всем адресам в диапазоне [8..127]. Диапазон адресов [0..7] обычно не сканируется, так как он зарезервирован для служебных целей. С какого адреса откликнется устройство, то и есть его адрес.
Заметил не стыковку на 19 минуте. В начале повествования Вы говорили, что SCL формирует ТОЛЬКО MASTER, в таком случае SLAVE не может влиять на линию SCL. А для "затягивания времени ответа" он просто не будет выставлять данные на SDL (уровень не меняется) и MASTER вынужден ждать ответа, и если его не получит в течении определенного времени, вывалиться в ошибку по Time Out завершив обращение выставив (Р). Думаю это логичнее, или заблуждаюсь?
Насколько мне известно (но это не точно), часть адресов по стандарту зарезервировано [0..7], использоваться могут только [8..127] и то есть ряд ограничений. Иногда производитель устройства не предоставляет возможности настроить устройство на любой адрес - приходится выбирать из ограниченного списка вариантов). Более того, есть ограничения, о которых сказал лектор (суммарная ёмкость и т.д.). На практике сложно достичь максимального количества в 119 устройств.
Божественные лекции, я бы заново поступил в универ, если бы так преподавали. Спасибо!
Спасибо Вам огромное. Вы замечательный преподаватель.
(Привет из СПбГУ)
InstaBlaster.
Тупа шок. Такого понятного объяснения даже не ожидал. Сердечно благодарю!
Чувствуются советские фундаментальные знания.
Лайк!
Здоровья и удачи!
Спасибо Вам большое за интереснейшие, а главное понятные лекции, дай Бог Вам здоровья! Очень хотелось бы увидеть лекцию о UART и USART интерфейсе и рассмотрении их отличий. Заранее благодарен!
Класс .Наконец то я понял как работает i2c.Лайк!
замечательные лекции, просто глатаю информацыю кусками. Очень благодарен автору за этот труд.
Шикарная лекция, отличный канал! Спасибо Вам за это!
Спасибо за интересную и понятную лекцию! Крепкого здоровья и продуктивной деятельности!
С уважением, робототехники Лондонского Миддлсекского университета!
Спасибо большое за Ваш труд! Вы - прекрасный преподаватель!
Преподаватель от Бога
Отличная лекция. Спасибо огромное, общедоступным языком рассказано. Благодарен.
Дай вам Бог здоровья! Очень полезная информация!
Отличная лекция! Все понятно и доступно! Спасибо большое. Нам бы в институт таких преподавателей
Спасибо) Очень полезная информация) При работе с Arduino!
Супер - самая лучшая лекция из Ютуб
Спасибо вам большое за лекции, давно искал подобные курсы, что бы восполнить нехватку знаний в стремительно развивающий век электроники.
Ура!!! Микрофон, у Вас самые лучшие лекции, спасибо Вам, удачи
Захотел пойти учится :)
Спасибо, все очень доступно и понятно. Подписываюсь!
Большое спасибо за ваши труды. Все просто и понятно.
Отличная подача, даже мне самоучки все понятно стало
Приятно слушать, жаль потраченного времени на самостоятельное изучение
Отличная лекция, поздравляю студентов.
Уважаемы лектор.
Очень классно! СПАСИБО ВАМ! Эх, поступить бы учиться... но староват наверное я уже... )))) Да и считать не умею..
Лучше чем мой препод в универе, спасибо)
Спасибо Вам большое за Вашу Работу!
Огромное спасибо за ваши лекции!
Спасибо.Интересная лекция.Вот если бы продолжение по работе с EEPROM
Спасибо вам огромное! Вы лучший!
Молодец. Чувствуется что любите свою работу Спасибо.
Очень грамотное объяснение. спасибо!
Благодарю 👍👍👍👍
Огромное спасибо!
Благодарю! Просто и доходчиво.
Всех благ вам. Спасибо.
Отличная лекция!!! СПАСИБО!
Супер! Всё понятно!
Низкий поклон.
Очень понятно обьяснили , спасибо .
Всё очень понятно, спасибо!
Спасибо, очень доступно.
Спасибо за знания!
Хороший дядька.
офигенно объясняете
сколько было на ней построено в своё время. тащился от неё в 90ые.
Ай-квадрат-си! Пора бы уже всем запомнить.
Огроменное спасибо!
А как мастер узнаёт адреса подчинённых устройств? Может перед стартом опрос какой, или в мастер заранее забиты адреса. Или если кто-то по адресу выставил (А), то адрес рабочий, начинаем передачу))?
Обычно адрес подчинённого устройства известен заранее главному устройству. Адрес Slave'а по-умолчанию должен быть указан производителем в документации к устройству. Если документацию не удалось найти, можно просто подключить одно это устройство к I2C шине (не подключать ничего, кроме него) и просканировать шину. В интернете есть примеры I2C сканера на Arduino - там программа примитивнейшая - цикл по всем адресам в диапазоне [8..127]. Диапазон адресов [0..7] обычно не сканируется, так как он зарезервирован для служебных целей. С какого адреса откликнется устройство, то и есть его адрес.
Борисыч, жжжоте!!! Куда проще чем мануал ковырять) Почему я на эту лекцию только сейчас попал?) на парах я такого не помню)) пришлось мануал грызть.
спасибо Вам!
Для программирования микросхем памяти I2C программой PonyProg для сигнала SCL используется исходящий вывод 7 COM порта RTS. Нужно ли обязательно задействовать при этом для сигнала SCL входящий вывод 6 COM порта DSR ? Если нужно то зачем? Вывод микросхем памяти SCL является однонаправленным, однако в многочисленных схемах программаторов вывод 6 COM порта для SCL почему то задействован.
Спасибо большое! Все понятно и доходчиво!👏
Спасибо.
!!! Спасибо.
Отличная лекция) Есть ли у вас лекция в текстовом варианте?
СПАСИБО БОЛЬШОЕ . А ЧТО МОЖНО СКАЗАТЬ О ПОМЕХОУСТОЙЧИВОСТИ ТАКОЙ ШИНЫ?
Спасибо за лекцию, а не подскажите где почитать про мульти мастер системы?
есть ли формула расчета резисторов? не хотелось бы брать значения сопротивления с потолка в курсовой
Круто, спасибо!
Но осталось неясным - откуда берутся адреса slave-устройств, кто их назначает? Тем более при замене slave'ов "на горячую".
Да также не понял, может перед стартом опрос какой, или в мастер заранее забиты адреса. Или если кто-то по адресу выставил (А), то адрес рабочий, начинаем передачу.
зашиты в устройстве при производстве. Программист их узнает из datasheet
чаще всего на slave-устройствах есть перемычки, которые позволяют либо полностью задать любой удобный адрес, либо позволяющие менять часть адреса, таким образом, если стандартный адрес устройства конфликтует с другим устройством на шине, то достаточно в одном из устройств замкнуть/разомкнуть одну или несколько перемычек. Например, на модуле реального времени DS3231 есть 3 пары контактов, которые можно замыкать (в данном случае напаять кусочек олова) для того, что бы поменять адрес, установленный производителем по-умолчанию. Адрес по-умолчанию должен быть указан производителем в документации к устройству. Если документацию не удалось найти, можно просто подключить одно это устройство к I2C шине (не подключать ничего, кроме него) и просканировать шину. В интернете есть примеры I2C сканера на Arduino - там программа примитивнейшая - цикл по всем адресам в диапазоне [8..127]. Диапазон адресов [0..7] обычно не сканируется, так как он зарезервирован для служебных целей. С какого адреса откликнется устройство, то и есть его адрес.
Действительно, хороший вопрос :)
Есть варианты, например на микросхеме вывод притягивается к плюсу или минусу и получает фиксированный адрес указанный в даташите..
Заметил не стыковку на 19 минуте. В начале повествования Вы говорили, что SCL формирует ТОЛЬКО MASTER, в таком случае SLAVE не может влиять на линию SCL. А для "затягивания времени ответа" он просто не будет выставлять данные на SDL (уровень не меняется) и MASTER вынужден ждать ответа, и если его не получит в течении определенного времени, вывалиться в ошибку по Time Out завершив обращение выставив (Р). Думаю это логичнее, или заблуждаюсь?
Как вы себе представляете "невыставление данных"?
Кроме того, задержка SCL может применяться ведомым и при приёме.
А про USB можно такую же?
Gut gemacht!
Спасибо!
Класс!!!!!
Что делать, если мастер Ack не получил?
посмотрю видосы, пересдам зачёт, если сдам, напишу) хахаха
А зачем нужны подтягивающие резисторы? Это разьве не мешает нормальной работе шины. Ведь там все время будет лог 1
1. для ограничения тока проходящего через выходные каскады устройств.
1000р. СПАСИБО.
Можете номер карты своей оставить в описании? Я бы закинул деньжат на развитие канала
кто эти шестеро?!
Супер! Спасибо за отличную подачу информации!
Но почему два в седьмой это "порядка ста", а не просто сто двадцать восемь?! )
Потому что дважды два четыре, ну пять, ну шесть, ну семь(в крайнем случае), но никак не восемь!)
Потому что некоторые slave устройства используют сразу 2 адреса
Насколько мне известно (но это не точно), часть адресов по стандарту зарезервировано [0..7], использоваться могут только [8..127] и то есть ряд ограничений. Иногда производитель устройства не предоставляет возможности настроить устройство на любой адрес - приходится выбирать из ограниченного списка вариантов). Более того, есть ограничения, о которых сказал лектор (суммарная ёмкость и т.д.). На практике сложно достичь максимального количества в 119 устройств.
Есть наглядный пример работы производного от I2C протокола - SMbus
ruclips.net/video/natf8NZOV2c/видео.html
Очень приятно слушать. Преподаватель супер. Много даже сейчас для себя освоил
Спасибо за работу. Буду изучать. Молодец Вы.
Классные лекции. Большое спасибо.
Очень понятно и толково .Спасибо !!!
Отличное объяснение! Спасибо
Большое спасибо.
Спасибо
Спасибо!
Спасибо!!!
Спасибо.
Спасибо, отличное объяснение!
Спасибо!
Спасибо!
Спасибо!
Спасибо!
Спасибо!