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