i2c-tiny-usb

Скріншот програми:
i2c-tiny-usb
Дані програми:
Версія: 2009-02-10 оновлений
Дата завантаження: 7 Mar 16
Розробник: Till Harbaum
Ліцензія: Безкоштовно
Популярність: 46

Rating: 5.0/5 (Total Votes: 1)

i2c-крихітна-USB є / відкрите апаратне забезпечення проекту з відкритим вихідним кодом.
Прикріпіть будь-який клієнт I2C чіп (Thermo датчики, аналого-цифровий перетворювач, дисплеї, драйвера Реле, ...) до комп'ютера через USB ... швидко, легко і дешево! Драйвери для Linux, Windows і MacOS доступні.
Проект i2c-крихітна-USB є / відкрита апаратна проект з відкритим вихідним кодом. Метою i2c-крихітного-USB є забезпечення недорогий універсальний інтерфейс I2C, щоб бути прикріплений до накопичувача. Він призначений в якості заміни для тих простих і дешевих порт принтера до I2C адаптерів. Рішення USB має кілька переваг вкл. вбудований блок живлення і доказ інтерфейс більш майбутнє.
Крім того немає центрального процесора інтенсивні bitbanging не потрібно на стороні хоста. Це рішення USB навіть вимагає менше деталей, ніж у деяких рішеннях порт принтера.
У той час як i2c-крихітна-USB був розроблений під Linux і він також працює під управлінням ОС Windows і MacOS X. А вікна демо-драйвера і демо-додаток включені, щоб ви почали негайно.
Проект i2c-крихітна-USB заснований на:
Проект Linux USB і реалізація Linux i2c
Драйвер вікна і тестування програми засновані на libusb-win32
AVR-USB, чисто програмна реалізація USB для платформи AVR
USBtiny, іншої реалізації USB програмне забезпечення для AVR
Апаратне забезпечення інтерфейсу i2c-крихітна-USB складається з Atmel AVR Attiny45 CPU, дешевий і легко отримати мікроконтролер з 4 КБ спалахом (з яких ~ 2k використовуються в цьому додатку) та 256 байт RAM. Процесор оточений кількома іншими частинами.
інтерфейс USB
Інтерфейс USB інтерфейсу i2c-крихітна-USB заснований на чисто програмної реалізації і використовує два штиря на AVR (PB0 і PB2). Ця програмна реалізація підтримує низьку швидкість USB щойно сигнализируется до ПК за допомогою резистора R1.
Інтерфейс I 2 C реалізується з використанням bitbanging підходу. Устаткування підтримується Twi інтерфейс Attiny45 пов'язаний з апаратними штифтами на чіпі, які необхідні для роботи USB і не може, таким чином, бути використані для I2C. Bitbanging інтерфейс I2C використовується замість того, щоб може бути неповністю сумісними I2C і, таким чином, не кожен клієнт чіп I2C може правильно працювати на цьому автобусі. Ні несумісності не надходило досі. I2c-крихітна-USB забезпечує програмне забезпечення регульованої затримкою i2c годин, що дозволяє налаштувати i2c годинник. Затримка за замовчуванням є 10us. Через додаткових затримок в коді I2C bitbanging це призводить до i2c годин близько 50 кГц.
З міркувань простоти всі передачі USB виконуються за допомогою контрольної точки. Так як бібліотека Арн USB підтримує тільки низькі швидкісні пристрої не можуть використовувати об'ємні переклади, які вказані тільки для пристроїв з високим і повній швидкості. Низькі швидкісні пристрої підтримують так звані переклади переривань які обмежені заданої пропускною здатністю в той час як управління передається може використовувати будь-яку вільну пропускну здатність (якщо є будь-яка взагалі).
Таким чином, пристрій використовує передає управління для всіх його комунікації. Для цього потрібен якийсь додатковий обмеження для запобігання багаторазового програмного забезпечення драйвера (наприклад, драйвер ядра і libusb тестового додатка на основі), щоб отримати доступ до пристрою одночасно. У Linux це може бути досягнуто шляхом вибору певних типів запитів доступу. Цей вид контролю доступу може виявитися неможливим при інших операційних системах.
Споживання енергії
Всі пристрій являє собою так званий харчування від шини пристрої. Це означає, що повне пристрій живиться безпосередньо від USB. Тому Арн і один або більше клієнтів чіпи I2C харчуються від сигналу USB VBUS.
Сам адаптер споживає менше 10 мА і повідомляє про це господареві через його USB-дескрипторів. Пристрій здатний до клієнтських чіпами потужність шини I2C, а також. Але так як ці чіпи розрізняються по споживаної потужності не представляється можливим правильно включати свої вимоги в дескриптори пристрою. Це ваша відповідальність, щоб стежити за загальною джерелом харчування, і особливо, щоб переконатися, що все пристрій не перевищує загальний ліміт USB 500 мА.
Планується в майбутніх версіях прошивки, щоб зробити програмне забезпечення повідомила енергоспоживання налаштовується таким чином, значення легко може бути прийнятий до реального користування потужності всього пристрою.
драйвер ядра
I2c-крихітна-USB призначений для використання з Linux. Він поставляється з драйвером ядра Linux, що мости між USB і I2C підсистем в ядрі Linux. Драйвер потім прикріплюється до пристрою USB і зробити шини I2C доступною для підсистеми I2C. Таким чином, вся установка прозоро для клієнтських додатків, таких як рамки lm_sensors і ніяких спеціальних драйверів чіп-клієнт не потрібно. Замість того, щоб водії вже присутні в ядрі ОС Linux використовуються з i2c-крихітна-USB, а також. За допомогою, наприклад, Датчики температури DS1621, використовувані в прототипі, вихід датчиків, наприклад, може виглядати наступним чином:
DS1621-i2c-2-48
Адаптер: i2c-крихітна-USB на шині 003 пристрої 017
Температура: 21,50

Схожі програми

Інші програми розробника Till Harbaum

NanoVM
NanoVM

2 Jun 15

i2c-tiny-usb

Коментар не знайдено
додати коментар
Включіть картинки!
Пошук за категоріями