Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МвСУ_16.11.2011.doc
Скачиваний:
12
Добавлен:
01.04.2025
Размер:
7 Мб
Скачать
☆

6.3. Микроконтроллерная сеть

Под МК сетью будем понимать отдельную линию связи (провод) и множество подключенных к ней устройств которые могут инициировать передачу сообщении и посылать соответствующий отклик на полученное сообщение.

В таких сетях имеется «ведущий» («master») – интеллектуальное устройство, которое может инициировать передачу данных. Устройства, которые отвечают на запросы, но не могут их инициировать, называются «ведомые» («slaves»). МК сеть может иметь несколько «ведущих» устройств.

6.3.1 Протокол i2c

Наиболее популярный протокол для сети МК – I2C, который предназначен для связи устройств в МПС. Этот стандарт был разработан компанией Philips в конце 70-х годов как метод реализации интерфейса между МП и периферийными устройствами, который не требует прокладки многочисленных линий для передачи между устройствами всех разрядов адреса, данных и сигналов управления. Протокол I2C позволяет разделять сетевые ресурсы между несколькими ведущими процессорами.

Протокол I2C находит применение в устройствах, предусматривающих простоту разработки и низкую себестоимость изготовления при относительно неплохой скорости работы. Список возможных применений: доступ к памяти EEPROM (AT24); доступ к низкоскоростным ЦАП/АЦП; регулировка контрастности, насыщенности и цветового баланса мониторов; регулировка звука в динамиках; управление светодиодами, в том числе в мобильных телефонах; чтение информации с датчиков мониторинга, диагностики оборудования, фотодатчик TSL256x и т.д.

Преимущества данного протокола I2C: необходим всего один МК для управления набором устройств; используется всего две линии ввода-вывода общего назначения; стандарт предусматривает «горячее» подключение и отключение устройств в процессе работы системы.

Шина I2C содержит две линии: линия SDA (Serial Data), которая служит для передачи данных, и линия SCL (Serial Clock), по которой передается синхросигнал, используемый для тактирования данных. Обе линии подключены через резисторы к шине питания напряжением +5 V или +3.3 V, однако допускаются и другие.

На рис. 42 представлен пример с одним МК (Master) и тремя подчинёнными (Slave) устройствами (АЦП, ЦАП и второй МК) с нагруженными резисторами по шине I2C.

Двухпроводная линия используется для определения начала передачи данных, а также для передачи самих данных.

Рис. 42. Схема организации I2C сети

Данные передаются синхронным способом, причем первым посылается старший бит. После передачи 8 бит ведущее устройство переводит линию данных в «плавающее» состояние, ожидая подтверждения приема данных от ведомого устройства. Существует две максимальные скорости передачи данных по шине I2С «стандартный режим» – до 100 Кбит/ с и «быстрый режим» – до 400 Кбит/с.

Формат команды, поступающей от ведущего устройства к ведомому, показан на рис. 43. Существует неутвержденный «свободный» стандарт, согласно которому четыре старших бита используются для указания типа устройства, а следующие три бита используются для выбора одного из восьми устройств этого типа или служат для более точного определения типа устройства.

Рис. 43. Формат передачи данных по шине I2С

R/W - Вид обмена (прием или передача), Ack - Бит подтверждения

Типы выбираемых устройств в соответствии со следующим соглашением:

- 0000 - Зарезервированный адрес;

- 0010 - Синтезатор голоса;

- 0011 - Аудио – интерфейс;

- 0100 - Звуковой генератор;

- 0111 - Жидкокристаллический или светодиодный дисплей;

- 1000 - Видео – интерфейс;

- 1001 - Аналого-цифровой и цифро-аналоговый интерфейсы;

- 1010 - Последовательная память;

- 1100 - Управление радиоприемником;

- 1101 - Часы/календарь;

- 1111 - Зарезервировано для использования 10-разрядного адреса.

На рис. 44 представлен пример подключения датчика температуры высокой точности DS7505S, который может работать как в составе измерительной системы по шине I2C с МК, так и автономно. Пороги срабатывания термостата хранятся в энергонезависимой памяти датчика. Термостат может работать в режиме срабатывания по порогу или с гистерезисом. Термостат может управлять внешними событиями через выход с открытым стоком.

Рис. 44. Схема подключения датчика температуры DS7505S

к микроконтроллеру по шине I2С

Для управления датчиком температуры DS7505S предназначены следующие выводы: А0, А1, А2 – вход управления адресом; SCK – последовательный тактовый сигнал; SDA – последовательный вход/выход данных; O.S. – выход на термостат.