i2c-tiny-usb

Screenshot Software:
i2c-tiny-usb
Mga detalye ng Software:
Bersyon: 2009-02-10 Na-update
I-upload ang petsa: 7 Mar 16
Nag-develop: Till Harbaum
Lisensya: Libre
Katanyagan: 114

Rating: 3.0/5 (Total Votes: 2)

i2c-maliit na maliit-usb ay isang open source / open hardware proyekto.
Maglakip ng anumang I2C client chip (thermo sensors, AD converter, nagpapakita, relais driver, ...) sa iyong PC sa pamamagitan ng USB ... mabilis, madali at murang! Driver para sa Linux, Windows at MacOS magagamit.
Ang i2c-maliit na maliit-usb proyekto ay isang open source / open hardware proyekto. Ang layunin ng i2c-maliit na maliit-usb ay upang magbigay ng isang murang generic i2c interface na naka-attach sa usb. Ito ay sinadya bilang isang kapalit para sa mga simple at murang printer port sa i2c adapters. A USB solusyon ay may ilang mga pakinabang incl. ang built-in power supply at isang mas hinaharap patunay interface.
Higit pa rito walang cpu matinding bitbanging ay kinakailangan sa host side. Ito USB solusyon kahit nangangailangan ng mas kaunting kaysa sa ilang mga solusyon printer port bahagi.
Habang ang i2c-maliit na maliit-usb ay binuo sa ilalim at para sa Linux ito rin ay gumagana sa ilalim ng Windows at MacOS X. A windows demo driver at demo application ay kasama upang makapagsimula ka kaagad.
Ang i2c-maliit na maliit-usb proyekto ay batay sa:
Ang Linux USB proyekto at ang Linux i2c pagpapatupad
Ang bintana ng driver at pagsubok application ay batay sa mga libusb-win32
AVR-USB, isang purong software pagpapatupad ng USB para sa AVR platform
USBtiny, isa pang software usb pagpapatupad para sa AVR
Ang hardware ng i2c-maliit na maliit-usb interface ay binubuo ng mga Atmel AVR ATtiny45 CPU, isang murang at madaling makuha microcontroller na may 4 na KBytes flash (kung saan ~ 2k ay ginagamit sa application na ito) at 256 Bytes RAM. processor ay napapalibutan ng ilang mga iba pang mga bahagi.
Ang USB interface
Ang USB interface ng i2c-maliit na maliit-usb interface ay batay sa isang purong software pagpapatupad at ay gumagamit ng dalawang mga tulos ng AVR (PB0 at Pb2). Ang software na ito pagpapatupad sinusuportahan mababang bilis USB lamang na kung saan ay signaled sa PC sa pamamagitan ng risistor R1.
Ang I2C interface ay ipinatupad gamit ang isang bitbanging diskarte. Ang hardware na suportado twi interface ng attiny45 ay nakasalalay sa hardware pins sa chip na kinakailangan para sa USB operation at hindi kaya gamitin para sa I2C. Ang bitbanging I2C interface na ginagamit sa halip ay maaaring hindi ganap na I2C compatible at sa gayon ay hindi lahat ng I2C client chip maaaring hindi gumana nang tama sa bus na ito. No incompatibilities naiulat sa ngayon. Ang i2c-maliit na maliit-usb ay nagbibigay ng isang software adjustable i2c orasan pagkaantala nagbibigay-daan upang i-configure ang i2c orasan. Ang default na pagkaantala ay 10us. Dahil sa karagdagang pagkaantala sa i2c bitbanging code ito resulta sa isang i2c orasan ng tungkol sa 50kHz.
Para simple dahilan lahat ng USB transfer ay tapos na sa pamamagitan ng control endpoint. Dahil ang avr usb library ay sinusuportahan lamang ang mababang bilis ng mga aparato hindi ito maaaring gamitin bulk transfers kung saan ay tinukoy para sa mga aparatong mataas at buong bilis lamang. Mababang bilis ng mga aparato suporta sa gayon tinatawag na matakpan transfers kung saan ay limitado sa isang preset na bandwidth habang control transfers ay maaaring gumamit ng anumang mga libreng bandwidth (kung mayroong anumang sa lahat).
Ang aparato ay samakatuwid ay gumagamit ng control transfers para sa lahat ng kanyang komunikasyon. Ito ay nangangailangan ng ilang karagdagang limitasyon upang maiwasan ang maramihang driver software (halimbawa ang kernel driver at ang libusb batay test application) upang ma-access ang aparato sa parehong oras. Sa ilalim ng Linux ito ay maaaring nakakamit sa pamamagitan ng pagpili ng ilang mga uri access kahilingan. Ang ganitong uri ng access control ay maaaring hindi posible sa ilalim ng ibang operating system.
Konsumo sa enerhiya
Ang buong aparato ay isang gayon tinatawag na bus na pinapatakbo aparato. Nangangahulugan ito na ang kumpletong kagamitan ay pinatatakbo nang direkta mula sa USB. Kaya't ang AVR at isa o higit I2C client chips ay pinapatakbo mula sa USB VBUS signal.
Ang adaptor mismo kumukuha ng mas mababa sa 10mA at mga ulat na ito sa mga host sa pamamagitan ng kanyang USB descriptors. Ang aparato ay may kakayahan upang kapangyarihan I2C chips client pati na rin. Ngunit dahil ang mga chips ay nag-iiba sa kapangyarihan consumption ito ay hindi posible upang tamang isama ang kanilang mga pangangailangan sa descriptors aparato. Ito ay ang iyong pananagutan upang panatilihin ang isang mata sa ang kabuuang supply ng kapangyarihan at lalo na upang matiyak na ang buong aparato ay hindi hihigit sa ang kabuuang USB limitasyon ng 500mA.
Ito ay binalak para sa hinaharap na mga bersyon ng firmware upang gawin ang iniulat power consumption software configurable kaya ang halaga ay madaling ay pinagtibay upang ang tunay na pangangailangan ng kapangyarihan ng buong aparato.
kernel driver
Ang i2c-maliit na maliit-usb ay sinadya upang magamit sa Linux. Ito ay may isang Linux kernel driver na tulay sa pagitan ng USB at I2C subsystems sa Linux kernel. driver at pagkatapos attaches sa USB device at gawin ang i2c bus na makukuha ng i2c subsystem. Kaya ang buong setup ay transparent sa mga aplikasyon ng client tulad ng mga lm_sensors framework at walang espesyal na client chip driver ay kinakailangan. Sa halip ang mga driver mayroon na sa linux kernel ay ginagamit sa i2c-maliit na maliit-usb pati na rin. Sa halimbawa ang ds1621 temperatura sensors na ginagamit sa mga prototype ang output ng sensors ay maaaring halimbawa ganito ang hitsura:
ds1621-i2c-2-48
Adapter: i2c-maliit na maliit-usb sa bus 003 aparato 017
temp: 21.50

Katulad na software

Iba pang mga software developer ng Till Harbaum

NanoVM
NanoVM

2 Jun 15

Mga komento sa i2c-tiny-usb

Mga Komento hindi natagpuan
Magdagdag ng komento
I-sa mga imahe!