Вот схема девайса http://www.changhongglobal.com/egdch/fi ... ual(A).pdf
Вопрос об общении двух устройств по шине I2C
- Сообщения: 109
- Зарегистрирован: Пн авг 29, 2011 11:37:21
ДОброго времени, поясните пожалуйста мне, одно устройство в частности TDA9886st посылает определенные команды по шине I2C на устройство PA2314e ( звуковой процессор) , как они др др понимают? Ведь они должны общаться на одном "языке", у их обоих есть общая прошивка?
Вот схема девайса http://www.changhongglobal.com/egdch/fi ... ual(A).pdf
Вот схема девайса http://www.changhongglobal.com/egdch/fi ... ual(A).pdf
- Реклама
вопрос из серии - почти все сервера на линуксе а как же я с виндовса открываю странцы
Скорее даже "Я говорю по-русски, он говорит по-русски, мы друг друга понимаем - у нас с ним общая прошивка?
"
Если серьёзно, то I2C - это по сути своей тоже язык общения между устройствами, как UART, SPI и т.д. То есть если вся куча устройств, сидящих на шине понимает этот язык (то есть отвечает стандартам по электрическим характеристикам и по формату посылок в сигнальных линиях) [а иначе как устройство будет на линии сидеть!], то все устройства этой кучи будут друг друга понимать. А общая прошивка - это противоестественная и глупая мысль! Гоните от себя такие
Если серьёзно, то I2C - это по сути своей тоже язык общения между устройствами, как UART, SPI и т.д. То есть если вся куча устройств, сидящих на шине понимает этот язык (то есть отвечает стандартам по электрическим характеристикам и по формату посылок в сигнальных линиях) [а иначе как устройство будет на линии сидеть!], то все устройства этой кучи будут друг друга понимать. А общая прошивка - это противоестественная и глупая мысль! Гоните от себя такие
- Сообщения: 109
- Зарегистрирован: Пн авг 29, 2011 11:37:21
Ок, т.е допустим по стандарту I2C все производимые звуковые процессоры должны "понимать" что если на них приходит информация (к примеру) 101 то они должны понизить громкость ретранслируемого сигнала, а если 100 то повысить? С адресацией устройства на шине тоже самое? - к примеру все производимые EEPROM имеют адрес 11, все дисплеи 110 и т.д?
- Сообщения: 109
- Зарегистрирован: Пн авг 29, 2011 11:37:21
Вот что за смысл у написанного? Показать что вопрос глупый или что я не знаю этой темы? Не понимаю таких людей.... Ты или пиши по теме или не пиши вовсе, не тот раздел форума чтобы сарказм использоватьвопрос из серии - почти все сервера на линуксе а как же я с виндовса открываю странцы
Последний раз редактировалось AlekseyEnergo Пт янв 02, 2015 22:57:55, всего редактировалось 1 раз.
Причина: Нарушение пункта 2.2 правил форума. Предупредил!!
Причина: Нарушение пункта 2.2 правил форума. Предупредил!!
- Реклама
Я тоже не совсем понимаю: что мешает скачать документацию на TDA9886 и изучить как с ней "общаться" по I2C?
Если не понятен I2C - в любом поисковике набираете "I2C протокол".
Вряд ли здесь у кого то будет желание перепечатывать статьи из Internet-а.
Если не понятен I2C - в любом поисковике набираете "I2C протокол".
Вряд ли здесь у кого то будет желание перепечатывать статьи из Internet-а.
С Уважением, Альберт (Albert_V).
- Сообщения: 109
- Зарегистрирован: Пн авг 29, 2011 11:37:21
В том то и дело что рассчитывал на тех у кого эта информация есть в голове , кто сможет 2-3 фразами на пальцах объяснить
"2-3 фразами на пальцах" объяснить это сложно.
P.S. На шине I2C всегда есть Master и Slave. Один опрашивает устройства, другие отвечают.
Хоть и предусмотрен в стандарте I2C режим Multi Master - в "реальной жизни" никогда с такой реализацией не сталкивался.
P.S. На шине I2C всегда есть Master и Slave. Один опрашивает устройства, другие отвечают.
Хоть и предусмотрен в стандарте I2C режим Multi Master - в "реальной жизни" никогда с такой реализацией не сталкивался.
Последний раз редактировалось Albert_V Пт дек 26, 2014 11:02:01, всего редактировалось 1 раз.
С Уважением, Альберт (Albert_V).
- Сообщения: 109
- Зарегистрирован: Пн авг 29, 2011 11:37:21
Скажите хотя бы как после включения два устройства определяют кто ведомый из них а кто ведущий, и еще, как ведущий потом определяет адрес устройства( ведь изначально он не знает что за тип устройства к шине подключен) , кто делает первый шаг к "общению" ?
Везде написана общая информация о том что ведущий отсылает первую посылку в которой забит адрес устройства , откуда он знает какие устройства подключены? Есть общая команда опроса шины?
Минимальное общее представление работы шины есть у меня в голове, я не понимаю как происходит инициализация устройств и распределение ролей на шине.
Везде написана общая информация о том что ведущий отсылает первую посылку в которой забит адрес устройства , откуда он знает какие устройства подключены? Есть общая команда опроса шины?
Минимальное общее представление работы шины есть у меня в голове, я не понимаю как происходит инициализация устройств и распределение ролей на шине.
Последний раз редактировалось AlekseyEnergo Пт янв 02, 2015 22:59:14, всего редактировалось 1 раз.
Причина: Нарушение пункта 2.2 правил форума. Подредактировал.
Причина: Нарушение пункта 2.2 правил форума. Подредактировал.
В I2C всегда есть Master, который "точно знает какие микросхемы должны быть в системе" и какие у них адреса.
P.S.
Общей команды опроса шины и "распределения ролей" в I2C нет. Читайте документацию.
P.S.
Общей команды опроса шины и "распределения ролей" в I2C нет. Читайте документацию.
С Уважением, Альберт (Albert_V).
- Сообщения: 109
- Зарегистрирован: Пн авг 29, 2011 11:37:21
Кто это определяет? - Завод изготовитель микросхемы ?В I2C всегда есть Master, который "точно знает какие микросхемы должны быть в системе" и какие у них адреса.
Адреса Slave-ов - ДА.Le0n35 писал(а):Кто это определяет? - Завод изготовитель микросхемы ?
Адреса, по которым обращается Master - программист.
_____
Читайте документацию.
С Уважением, Альберт (Albert_V).
- Сообщения: 109
- Зарегистрирован: Пн авг 29, 2011 11:37:21
Вот становиться понятнее.Спс.
Далее..
В микросхеме мастера все же есть какая то прошивка, ну или набор начальных команд которые определяют режим работы микросхемы? А иначе как же она начинает отправлять байт адресации, если она сама не знает что она такое?
Далее..
В микросхеме мастера все же есть какая то прошивка, ну или набор начальных команд которые определяют режим работы микросхемы? А иначе как же она начинает отправлять байт адресации, если она сама не знает что она такое?
Правильно.
_____
Читайте документацию!
_____
Читайте документацию!
С Уважением, Альберт (Albert_V).
- Сообщения: 109
- Зарегистрирован: Пн авг 29, 2011 11:37:21
Есть ещё варианты, когда изготовителем задаётся только некоторый диапазон адресов, а конкретный адрес устанавливается логическими уровнями на специально выделенных под это пинах.Albert_V писал(а):Адреса Slave-ов - ДА
Не обязательно.Le0n35 писал(а):все производимые звуковые процессоры должны "понимать" что если на них приходит информация (к примеру) 101 то они должны понизить громкость
Это - уже верхний уровень протокола, который стандартом I2C не оговаривается, и каждый производитель может ваять своё.
Конкретное описание команд должно быть в даташите на чип.
Smen, знаю. Просто, не хотелось "грузить" ТС доп. информацией...
С Уважением, Альберт (Albert_V).
- Сообщения: 7518
- Зарегистрирован: Вс мар 29, 2009 22:09:05
Как происходит инициализация устройств - это вам к документации на конкретные устройства.я не понимаю как происходит инициализация устройств и распределение ролей на шине.
Распределения ролей нет. Ведущее устройство всегда ведущее, ведомое всегда ведомое (multi-master I2C, как уже отметили, в природе встречается редко). Ведущий обычно контроллер, ведомые - датчики, микросхемы памяти и т.п. Список и адреса ведомых и логику поведения ведущего определяет разработчик на этапе проектирования. Это не USB, автоматического определения тут нет (хотя теоретически можно заморочиться и попытаться реализовать что-то похожее).
Разница между теорией и практикой на практике гораздо больше, чем в теории.


