Η θύρα COM ή η σειριακή θύρα αντιπροσωπεύειείναι μια αμφίδρομη σειριακή διεπαφή που έχει σχεδιαστεί για την ανταλλαγή δεδομένων byte. Αρχικά, αυτή η θύρα χρησιμοποιήθηκε για τη σύνδεση ενός τερματικού και στη συνέχεια για ένα μόντεμ και ένα ποντίκι. Τώρα συνηθίζεται να χρησιμοποιείται για τη σύνδεση μιας αδιάλειπτης παροχής ρεύματος, καθώς και για την επικοινωνία με το υλικό επεξεργασίας για ενσωματωμένα συστήματα υπολογιστών.
Έτσι, πριν μιλήσουμε λεπτομερέστερα για το πώςτι είναι μια θύρα COM, πρέπει να κοιτάξετε πίσω για να κατανοήσετε τη σημασία της. Κυριολεκτικά πριν από 15 χρόνια, χρησιμοποιήθηκε μια μέθοδος για τη σύνδεση συσκευών σε υπολογιστή μέσω μιας ειδικής τυπικής υποδοχής που βρίσκεται στον πίσω πίνακα της μονάδας συστήματος χρησιμοποιώντας ένα ειδικό σειριακό καλώδιο RS-232. Αυτή η μέθοδος έχει πολλά μειονεκτήματα. Ένα τέτοιο καλώδιο, σύμφωνα με τα σύγχρονα πρότυπα, παρέχει εξαιρετικά χαμηλό ρυθμό μεταφοράς δεδομένων - περίπου εκατό kilobits ανά δευτερόλεπτο. Επιπλέον, όταν έγινε η φυσική σύνδεση των συνδετήρων, ήταν απαραίτητο να απενεργοποιηθεί ο εξοπλισμός και οι ίδιοι στερεώθηκαν μεταξύ τους με βίδες που εξασφαλίζουν αξιοπιστία, ενώ οι διαστάσεις τους δεν ήταν ασήμαντες.
Η θύρα COM σε υπολογιστές εκείνης της εποχής είναι παραδοσιακάφορούσε το νούμερο 1 ή 2, αφού συνήθως δεν ήταν περισσότεροι από δύο. Θα μπορούσαν να εγκατασταθούν πρόσθετες θύρες εάν παραστεί ανάγκη. Όταν ο χρήστης έφτιαχνε το λογισμικό, έπρεπε να μην συγχέει και να εγκαταστήσει σωστά αυτό στο οποίο ήταν συνδεδεμένος ο απαραίτητος εξοπλισμός. Κάθε θύρα COM απαιτούσε τη σωστή ρύθμιση του ρυθμού baud, καθώς και μια σειρά από άλλες μυστηριώδεις παραμέτρους, που ήταν γνωστές μόνο σε έναν στενό κύκλο ειδικών. Για να συνδεθεί επιτυχώς ο εξοπλισμός έπρεπε από κάπου να μάθουν όλες τις απαραίτητες παραμέτρους ή να επιλεγούν πειραματικά, αφού σε αυτή την περίπτωση δεν υπήρχε αυτόματη διαμόρφωση. Επιπλέον, η σύνδεση μέσω της θύρας COM επέτρεψε τη σύνδεση οποιουδήποτε λογισμικού με αυθαίρετο εξωτερικό εξοπλισμό, ακόμη και εντελώς ασυμβίβαστο, γι' αυτό και παρουσιάστηκε τεράστιος αριθμός σφαλμάτων κατά τη διαδικασία εγκατάστασης.
Τώρα η σύνδεση της θύρας COM έχει ολοκληρωθείαντικαταστάθηκε από μια πιο σύγχρονη μέθοδο που δεν απαιτεί ειδικές γνώσεις για την εφαρμογή, δηλαδή μέσω μιας θύρας USB. Αυτή η μέθοδος στερείται όλων των μειονεκτημάτων που αναφέρθηκαν προηγουμένως. Ωστόσο, τα σύγχρονα πρότυπα συμβατότητας για τη σύνδεση όλων των ειδών εξοπλισμού GPS και πολύ ετερογενούς λογισμικού έχουν διαμορφωθεί εδώ και πολύ καιρό γύρω από την έννοια των θυρών COM, οι οποίες έχουν γίνει πλέον αρχαϊκές.
Αυτό οφείλεται στο γεγονός ότι αρχικά πρακτικάοποιοσδήποτε εξοπλισμός, συμπεριλαμβανομένου του GPS, ήταν εξωτερικός και η σύνδεσή του με τον υπολογιστή γινόταν μέσω σειριακού καλωδίου συνδεδεμένου σε μία από τις θύρες υλικού. Κατά τη διαδικασία διαμόρφωσης, ο χρήστης έπρεπε να επιλέξει τον σωστό αριθμό θύρας και την ταχύτητα μετάδοσης δεδομένων πάνω από αυτήν. Εκείνη την εποχή, προέκυψε το κύριο πρότυπο για τη μεταφορά δεδομένων από έναν δέκτη GPS σε ένα πρόγραμμα, το οποίο τώρα ονομάζεται NMEA-0183. Στην πραγματικότητα, αυτό το πρότυπο προβλέπει ότι όλοι οι προγραμματιστές ακόμη και του πιο σύγχρονου υλικού και λογισμικού να ανταλλάσσουν δεδομένα μέσω θυρών COM. Και όλα αυτά υπό τις συνθήκες του γεγονότος ότι στους σύγχρονους υπολογιστές, καθώς και σε PDA, το πρότυπο USB είναι από καιρό το κύριο. Και ένα άλλο χαρακτηριστικό είναι ότι πρόσφατα οι δέκτες GPS άρχισαν όλο και περισσότερο να εγκαθίστανται απευθείας στο εσωτερικό της θήκης της συσκευής, δηλαδή δεν υπάρχει καλώδιο σύνδεσης μεταξύ αυτής και της κύριας συσκευής.
Επινοήθηκε μια διέξοδος από την κατάσταση, δηλαδήανέπτυξε "εικονικές" θύρες COM. Αποδεικνύεται ότι η εσωτερική συσκευή του PDA, για παράδειγμα, ένας δέκτης GPS, προσομοιώνεται από λογισμικό με τη μορφή θύρας COM, ενώ δεν είναι τέτοια σε υλικό. Ταυτόχρονα, ένα πρόγραμμα που έχει σχεδιαστεί για διασύνδεση μέσω ενός τέτοιου προτύπου δεν έχει καμία διαφορά πώς υλοποιείται. Εδώ επιτρέπεται η παρουσία εικονικής μίμησης και όχι η υποχρεωτική παρουσία υλοποίησης υλικού. Έτσι, είναι δυνατό να διασφαλιστεί η συμβατότητα παλαιού τύπου προγραμμάτων GPS με σύγχρονο εξοπλισμό.
Ταυτόχρονα, ο έλεγχος της θύρας COM δεν είναι σημαντικόςάλλαξε. Ο χρήστης με τον παλιό τρόπο πρέπει να κάνει πολύπλοκες ρυθμίσεις σχεδόν χειροκίνητα. Ωστόσο, μια σύγχρονη θύρα COM δεν είναι πλέον αυτή η ογκώδης συσκευή που βρίσκεται στο πίσω μέρος της μονάδας συστήματος, αλλά μια εντελώς διαφορετική συσκευή. Και εδώ το όλο θέμα είναι ότι από πλευράς λογισμικού όλες οι υλοποιήσεις τους φαίνονται απρόσωπες, δηλαδή δεν υπάρχει διαφορά μεταξύ εικονικών και πραγματικών θυρών. Για το λογισμικό, οι θύρες διαφέρουν μόνο ως προς τους αριθμούς που τους έχουν εκχωρηθεί από τους κατασκευαστές PDA σε εντελώς τυχαία βάση. Για παράδειγμα, ένας δέκτης από την ASUS βρίσκεται συνήθως στο COM5 και το PocketLOOX 560 εμφανίζει έναν δέκτη στο COM8. Αποδεικνύεται ότι το πρόγραμμα, το οποίο θέλει να λαμβάνει δεδομένα από τον δέκτη GPS, δεν έχει αρχικά αξιόπιστες πληροφορίες σχετικά με τον αριθμό υπό όρους, κάτω από τον οποίο εμφανίζεται η θύρα που προδιαγράφεται για τον δέκτη σε αυτό το PDA.
Παρά το γεγονός ότι ανάμεσα σε όλες τις διαθέσιμες θύρες COMείναι δυνατό να διεξαχθεί μια αυτόματη αναζήτηση για ένα κατάλληλο· η διαδικασία για μια τέτοια έρευνα είναι μάλλον αναξιόπιστη και μάλλον επαχθής. Αυτό οφείλεται στο γεγονός ότι οι συσκευές που εμφανίζονται στο σύστημα ως θύρες COM μπορεί να είναι αρκετά διαφορετικές και να μην σχετίζονται με το GPS, μπορούν να ανταποκριθούν εντελώς απρόβλεπτα σε μια τέτοια έρευνα. Για παράδειγμα, υπάρχουν θύρες σε ένα PDA που συνδυάζονται με εσωτερικό κυψελοειδές μόντεμ, με USB, με θύρα υπέρυθρων, καθώς και με άλλα στοιχεία. Ονομάζοντάς τους ένα πρόγραμμα σχεδιασμένο να λειτουργεί με μια συγκεκριμένη συσκευή μπορεί να οδηγήσει σε μια εντελώς απρόβλεπτη αντίδραση, καθώς και σε διάφορες δυσλειτουργίες, που συχνά προκαλούν το πάγωμα του PDA. Αυτός είναι ο λόγος για τον οποίο μια προσπάθεια ανοίγματος μιας θύρας COM μπορεί να οδηγήσει σε απροσδόκητες καταστάσεις, συμπεριλαμβανομένης της ενεργοποίησης της θύρας Bluetooth ή υπέρυθρων. Και μπορεί να υπάρχουν και πιο ακατανόητες περιπτώσεις.
Για τις θύρες COM, η βάση είναιασύγχρονο μικροκύκλωμα πομποδέκτη γενικής χρήσης. Αυτό το μικροκύκλωμα υπάρχει σε διάφορες ποικιλίες: Intel 16550A, 16550, 16450, 8250. Για κάθε θύρα COM, περιέχει τους καταχωρητές δέκτη και πομπού, καθώς και έναν αριθμό καταχωρητών ελέγχου, στους οποίους μπορείτε να έχετε πρόσβαση μέσω του BIOS, των Windows και του MS DOS προγράμματα. Οι πιο πρόσφατες εκδόσεις του μικροκυκλώματος διαθέτουν ένα σύνολο buffer για προσωρινή αποθήκευση δεδομένων που μεταδίδονται και λαμβάνονται. Χάρη σε αυτό το χαρακτηριστικό, είναι δυνατό να διακόπτεται η εργασία του κεντρικού επεξεργαστή λιγότερο συχνά, καθώς και να συμφωνείται η ταχύτητα μετάδοσης δεδομένων.
Η συσκευή θύρας COM έχει τα ακόλουθα χαρακτηριστικά γνωρίσματα:
- διεύθυνση βάσης της θύρας για εισαγωγή και έξοδο πληροφοριών.
- Αριθμοί διακοπής υλικού.
- το μέγεθος ενός μπλοκ πληροφοριών.
- την ταχύτητα με την οποία μεταδίδονται τα δεδομένα·
- λειτουργία ανίχνευσης ειλικρίνειας.
- ένας τρόπος ελέγχου των ροών πληροφοριών.
- τον αριθμό των bit διακοπής.
Όπως αναφέρθηκε προηγουμένως, αυτός ο τύπος λιμέναείναι μια διεπαφή διπλής κατεύθυνσης για τη μετάδοση πληροφοριών σε επίπεδο bit με σειριακό τρόπο. Ένα χαρακτηριστικό γνώρισμα σε σύγκριση με την παράλληλη θύρα εδώ είναι η μεταφορά δεδομένων bit-bit. Η ανατομία μιας θύρας COM είναι τέτοια που δεν είναι η μόνη σε έναν υπολογιστή που χρησιμοποιεί μια σειριακή μέθοδο μεταφοράς δεδομένων. Για παράδειγμα, διεπαφές όπως το Ethernet ή το USB χρησιμοποιούν επίσης μια παρόμοια αρχή, αλλά συνέβη ιστορικά ότι είναι η τυπική θύρα RS232 που συνήθως ονομάζεται σειριακή.
Πολύ συχνά απαιτείται να ανοίξετε μια θύρα COM γιαεπισκευή και διαγνωστικά του υπολογιστή, ενώ χρειάζεται και έλεγχος λειτουργικότητας. Είναι πολύ εύκολο να κάψετε ένα στοιχείο. Τις περισσότερες φορές αυτό συμβαίνει λόγω υπαιτιότητας του χρήστη, ο οποίος αποσυνδέει τη συσκευή εσφαλμένα, τραβώντας έξω την υποδοχή όταν είναι συνδεδεμένη η διεπαφή. Ο απλούστερος τρόπος για να ελέγξετε τη λειτουργικότητα μιας διεπαφής είναι να συνδέσετε ένα ποντίκι σε αυτήν. Ωστόσο, είναι τόσο δύσκολο να αποκτήσετε την πλήρη εικόνα, καθώς ο χειριστής χρησιμοποιεί μόνο τις μισές από τις γραμμές σήματος από τις οκτώ διαθέσιμες. Μόνο η χρήση ειδικού βύσματος και προγράμματος θα επιτρέψει τον λειτουργικό έλεγχο. Υπάρχει ήδη ειδικά αναπτυγμένο λογισμικό για αυτούς τους σκοπούς.