Arduino:Библиотеки/Wire
{{#setlogo:ArduinoCommunityLogo.png}}
Поддержать проект | Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Библиотека Wire[1]
Это библиотека позволяет плате Arduino коммуницировать с устройствами, работающими через интерфейс I2C/TWI. На Arduino версий R3 (т.е. с распиновкой 1.0) контакты SDA (линия данных) и SCL (тактовая линия) находятся на гребешке рядом с контактом AREF. Модель Arduino Due имеет два интерфейса I2C/TWI: SDA1 и SCL1, расположенные рядом с контактом AREF, а также еще один на 20-ом и 21-ом контактах.
Таблица ниже показывает, где TWI-контакты расположены на разных моделях Arduino:
Плата | Контакты I2C / TWI |
---|---|
Uno, Ethernet | A4 (SDA), A5 (SCL) |
Mega2560 | 20 (SDA), 21 (SCL) |
Leonardo | 2 (SDA), 3 (SCL) |
Due | 20 (SDA), 21 (SCL), SDA1, SCL1 |
Начиная с версии 1.0, эта библиотека наследует у функций Stream, благодаря чему совместима с другими библиотеками, где есть функционал для считывания и записи. По этой причине функции send() и receive() были заменены на read() и write().
Примечание
Есть 7-битные и 8-битные версии I2C-адресов. Первые семь бит идентифицируют девайс, а восьмой бит определяет, какая процедура происходит – запись или считывание. Библиотека Wire использует только 7-битные адреса. Если ваш «даташит» или код использует 8-битный адрес, вам нужно будет сдвинуть значение на один бит вправо, тем самым создав адрес в диапазоне от «0» до «127». Впрочем, адреса от «0» до «7» не используются, поскольку зарезервированы под другие цели, поэтому самый первый адрес, который можно использовать – это «8».
Примеры
- SFRRanger Reader – При помощи I2C-коммуникации считывает данные с ультразвукового дальномера Devantech SRFxx.
- Digital Potentiometer – Управление цифровым потенциометром AD5171 при помощи библиотеки Wire.
- Master Reader / Slave Writer – Настройка двух (или более) плат Arduino таким образом, чтобы они делились информацией по принципу «ведущая плата считывает/ведомая плата отсылает».
- Master Writer / Slave Reader – Настройка двух (или более) плат Arduino таким образом, чтобы они делились информацией по принципу «ведущая плата отсылает/ведомая плата считывает».
Функции
- begin()
- requestFrom()
- beginTransmission()
- endTransmission()
- write()
- available()
- read()
- onReceive()
- onRequest()
См.также
- Master Writer
- Master Reader
- SFR Ranger Reader
- Digital Potentiometer
Внешние ссылки
- Страницы, использующие повторяющиеся аргументы в вызовах шаблонов
- Справочник языка Arduino
- Arduino
- Перевод от Сubewriter
- Проверка:myagkij
- Оформление:myagkij
- Редактирование:myagkij
- Стандартные библиотеки
- Стандартная библиотека
- Стандартная библиотека Arduino
- Стандартные библиотеки Arduino
- Библиотека Wire
- Стандартная библиотека Wire
- Wire