i2c-μικρό-USB είναι ένα open source project / ανοικτό hardware.
Συνδέστε κάθε τσιπ πελάτη I2C (Thermo αισθητήρες, μετατροπέα AD, οθόνες, οδηγός Relais, ...) στον υπολογιστή σας μέσω USB ... γρήγορη, εύκολη και φθηνή! Οδηγούς για Linux, Windows και το MacOS διαθέσιμα.
Το έργο I2C-μικρό-USB είναι ένα open source project / ανοικτό hardware. Ο στόχος του I2C-μικρό-usb είναι να παρέχει μια φτηνή γενική διασύνδεση I2C να συνδέεται με το usb. Έχει ως στόχο ως υποκατάστατο για όσους απλή και φθηνή θύρα εκτυπωτή για προσαρμογείς I2C. Μια λύση USB έχει πολλά πλεονεκτήματα incl. το ενσωματωμένο τροφοδοτικό και μια πιο μέλλον απόδειξη διασύνδεσης.
Επιπλέον, δεν cpu έντονη bitbanging απαιτείται από την πλευρά της υποδοχής. Αυτή η λύση USB απαιτεί ακόμα λιγότερα τμήματα από ορισμένες θύρα εκτυπωτή λύσεις.
Ενώ το I2C-μικρό-usb αναπτύχθηκε στο πλαίσιο και για το Linux λειτουργεί επίσης κάτω από τα Windows και το MacOS X. Ένας οδηγός παράθυρα επίδειξης και πιλοτικής εφαρμογής περιλαμβάνεται για να ξεκινήσετε αμέσως.
Το έργο I2C-μικρό-usb βασίζεται σε:
Το έργο USB Linux και το I2C εφαρμογή Linux
Ο οδηγός παράθυρα και δοκιμαστική εφαρμογή βασίζονται στην libusb-win32
AVR-USB, μια καθαρή εφαρμογή του λογισμικού USB για την πλατφόρμα AVR
USBtiny, μια άλλη εφαρμογή usb λογισμικό για την AVR
Το υλικό της διεπαφής I2C-μικροσκοπικά-USB αποτελείται από το Atmel AVR ATtiny45 CPU, ένα φτηνό και εύκολο να επιτευχθεί μικροελεγκτή με 4 KBytes φλας (εκ των οποίων ~ 2k χρησιμοποιούνται σε αυτή την αίτηση) και 256 Bytes RAM. Ο επεξεργαστής είναι περιτριγυρισμένο από μερικά άλλα μέρη.
Η διεπαφή USB
Η διασύνδεση USB της διασύνδεσης I2C-μικρό-usb βασίζεται σε μια καθαρή εφαρμογή του λογισμικού και χρησιμοποιεί δύο ακροδέκτες του AVR (PB0 και ΡΒ2). Αυτή η εφαρμογή λογισμικού υποστηρίζει μόνο χαμηλή ταχύτητα USB που σηματοδοτείται με τον υπολογιστή μέσω της αντίστασης R1.
Η διεπαφή I2C υλοποιείται χρησιμοποιώντας μια προσέγγιση bitbanging. Το υλικό που υποστηρίζεται διασύνδεση TWI του attiny45 είναι βέβαιο ότι θα καρφίτσες υλικού στο τσιπ που απαιτούνται για τη λειτουργία USB και ως εκ τούτου δεν μπορεί να χρησιμοποιηθεί για I2C. Η bitbanging διασύνδεσης I2C που χρησιμοποιείται αντί ενδέχεται να μην είναι πλήρως συμβατές I2C και ως εκ τούτου δεν είναι κάθε I2C chip πελάτης μπορεί να λειτουργεί σωστά σε αυτό το λεωφορείο. Δεν παρατηρήθηκαν ασυμβατότητες έχουν αναφερθεί μέχρι στιγμής. Η I2C-μικρό-USB παρέχει ένα λογισμικό ρυθμιζόμενη καθυστέρηση ρολόι I2C επιτρέποντας να ρυθμίσετε το ρολόι I2C. Η προεπιλεγμένη καθυστέρηση είναι 10us. Λόγω επιπλέον καθυστερήσεις στον κώδικα I2C bitbanging αυτό οδηγεί σε ένα ρολόι I2C περίπου 50kHz.
Για λόγους απλότητας όλες οι μεταφορές USB γίνεται μέσω της παραμέτρου ελέγχου. Δεδομένου ότι η βιβλιοθήκη AVR USB δεν υποστηρίζει μόνο συσκευές χαμηλής ταχύτητας δεν μπορεί να χρησιμοποιήσει μαζικές μεταφορές οι οποίες προσδιορίζονται μόνο για συσκευές υψηλής και πλήρη ταχύτητα. συσκευές χαμηλής ταχύτητας υποστηρίζουν λεγόμενη μεταφορές διακοπής που περιορίζονται σε ένα προκαθορισμένο εύρος ζώνης, ενώ οι μεταφορές ελέγχου μπορεί να χρησιμοποιήσει οποιοδήποτε ελεύθερο εύρος ζώνης (αν υπάρχει και καθόλου).
Ως εκ τούτου, η συσκευή χρησιμοποιεί μεταφορές ελέγχου για το σύνολο της επικοινωνίας της. Αυτό απαιτεί κάποια επιπλέον περιορισμό για την αποτροπή πολλαπλές λογισμικού προγράμματος οδήγησης (π.χ. ο οδηγός του πυρήνα και η libusb δοκιμαστική εφαρμογή based) για να αποκτήσετε πρόσβαση στη συσκευή ταυτόχρονα. Κάτω από το Linux, αυτό μπορεί να επιτευχθεί με την επιλογή ορισμένων τύπων αίτημα πρόσβασης. Αυτό το είδος του ελέγχου πρόσβασης μπορεί να μην είναι δυνατή σε άλλα λειτουργικά συστήματα.
Κατανάλωση ενέργειας
Η όλη συσκευή είναι ένα λεγόμενο λεωφορείο ελέγχεται συσκευή. Αυτό σημαίνει ότι η πλήρης συσκευή τροφοδοτείται απευθείας από USB. Ως εκ τούτου, η AVR και μία ή περισσότερες μάρκες πελάτη I2C τροφοδοτούνται από το σήμα VBUS USB.
Η ίδια η προσαρμογέας αντλεί λιγότερο από 10mA και εκθέσεις αυτό στον κεντρικό υπολογιστή μέσω USB περιγραφέων του. Η συσκευή είναι σε θέση να chips πελάτη I2C δύναμη, καθώς και. Όμως, δεδομένου ότι αυτά τα τσιπ ποικίλουν σε κατανάλωση ενέργειας δεν είναι δυνατόν να συμπεριληφθούν σωστά τις απαιτήσεις τους στα περιγραφικούς συσκευή. Είναι δική σας ευθύνη να κρατήσει ένα μάτι για τη συνολική παροχή ρεύματος και ιδιαίτερα για να βεβαιωθείτε ότι ολόκληρη η συσκευή δεν υπερβαίνει το συνολικό όριο USB του 500mA.
Έχει προγραμματιστεί για τις μελλοντικές εκδόσεις firmware για να κάνει το ανέφερε λογισμικό κατανάλωση ενέργειας ρύθμισης έτσι ώστε η τιμή μπορεί εύκολα να υιοθετηθεί με τις πραγματικές απαιτήσεις ισχύος ολόκληρης της συσκευής.
driver του πυρήνα
Η I2C-μικρό-USB προορίζεται να χρησιμοποιηθεί με το Linux. Έρχεται με ένα πρόγραμμα οδήγησης πυρήνα του Linux που γεφυρώνει μεταξύ των USB και I2C υποσυστήματα στον πυρήνα του Linux. Ο οδηγός στη συνέχεια συνδέεται με τη συσκευή USB και να κάνει το λεωφορείο I2C διαθέσιμη στο υποσύστημα I2C. Έτσι, το σύνολο της εγκατάστασης είναι διαφανείς για εφαρμογές πελάτη, όπως το πλαίσιο lm_sensors και δεν ειδικά προγράμματα οδήγησης chip πελάτη απαιτείται. Αντ 'αυτού οι οδηγοί που ήδη υπάρχουν στο πυρήνα του Linux που χρησιμοποιείται με το I2C-μικρό-USB, καθώς και. Με π.χ. Οι αισθητήρες θερμοκρασίας ds1621 χρησιμοποιείται στο πρωτότυπο η έξοδος των αισθητήρων μπορεί π.χ. μοιάζει με αυτό:
ds1621-I2C-2-48
Προσαρμογέας: I2C-μικρό-usb στο λεωφορείο 003 της συσκευής 017
Θερμοκρασία: 21.50
Στοιχεία Λογισμικού:
Εκδοχή: 2009-02-10 επικαιροποιημένο
Ανεβάστε ημερομηνία: 7 Mar 16
Άδεια: Δωρεάν
Δημοτικότητα: 114
Τα σχόλια δεν βρέθηκε