|
Ο δίαυλος I2C αποτελείται από δύο γραμμές. Η μία είναι
γραμμή ρολογιού (SCL) και η άλλη γραμμή δεδομένων (SDA). Κάθε bit δεδομένων που
μεταφέρεται στη γραμμή SDA συνοδεύεται και από έναν παλμό ρολογιού στη γραμμή SCL. Η μέγιστη συχνότητα λειτουργίας μπορεί να
φτάσει τα 400kHz. Στο δίαυλο μπορούν να συνδεθούν μέχρι 128 συσκευές και να
λαμβάνουν ή να αποστέλλουν δεδομένα. Οι μοναδικοί περιορισμοί στον αριθμό των
συσκευών που μπορούν να συνδεθούν, προκύπτουν από τη συνολική χωρητικότητα που
μπορεί να αποκτήσει ο δίαυλος, η οποία δεν μπορεί να ξεπεράσει τα 400pF και από
τον περιορισμό των διευθύνσεων, ο οποίος περιορίζεται στα 7 bits. Οι συσκευές
που είναι συνδεδεμένες στο δίαυλο είναι ανοιχτού συλλέκτη και όταν είναι σε
αδράνεια βρίσκονται σε κατάσταση υψηλής σύνθετης αντίστασης. Όταν όλες οι
συσκευές είναι σε αδράνεια οι δύο γραμμές του διαύλου βρίσκονται σε υψηλή
στάθμη, λόγω αντιστάσεων πρόσδεσης που υπάρχουν σε αυτές.
Οι συσκευές που συνδέονται στο δίαυλο μπορούν να
χαρακτηριστούν ως κύριοι (master) ή ως σκλάβοι
(slave). Οι masters έχουν την ευθύνη διαχείρισης του διαύλου, ενώ οι slave
αποκρίνονται στις αιτήσεις των masters. Όταν ένας master θέλει να στείλει
δεδομένα σε κάποια συσκευή, αφού ελέγξει πρώτα ότι ο δίαυλος είναι ελεύθερος,
ξεκινάει την αποστολή τοποθετώντας την SDA σε χαμηλή στάθμη και αποστέλλει
παλμούς ρολογιού στην SCL. Στη συνέχεια στέλνει τη διεύθυνση του παραλήπτη, η
οποία αποτελείται από 7 bits, ένα bit ελέγχου εγγραφής/ανάγνωσης (R/W) και ένα bitαπόκρισης (ACK).
Όταν ο παραλήπτης αναγνωρίσει ότι διευθυνσιοδοτείται, απαντάει τοποθετώντας την SDA σε χαμηλή στάθμη κατά τη διάρκεια του ACK. Η απάντηση
αναγνωρίζεται από τον master και στη συνέχεια αυτός στέλνει τα δεδομένα που
θέλει, μέχρι να τερματίσει ο ίδιος τη μετάδοση, τοποθετώντας και τις δύο
γραμμές σε υψηλή στάθμη. Αν κάποιος παραλήπτης δεν προλαβαίνει να δεχτεί τα
δεδομένα που του αποστέλλονται, τοποθετεί την SCL σε χαμηλή στάθμη, μέχρι να
είναι έτοιμος να δεχτεί πάλι δεδομένα, οπότε και την απελευθερώνει. Αυτό
γίνεται αντιληπτό από τον master και διακόπτει προσωρινά τη μετάδοση. Η
προσωρινή διακοπή δεν επηρεάζει την περίοδο του ρολογιού, η οποία συνεχίζει
αμετάβλητη, όταν επιτραπεί η αποστολή δεδομένων. Στο σχήμα που ακολουθεί παρουσιάζονται
πληροφορίες σχετικά με τη σύνδεση συσκευών στο δίαυλο και τον τρόπο που
αποστέλλονται δεδομένα.
|
|