PostHeaderIcon Διασύνδεση της τυποποιημένης παράλληλης θύρας - Διευθύνσεις θυρών

Article Index
Διασύνδεση της τυποποιημένης παράλληλης θύρας
Ιδιότητες υλικού
Centronics
Διευθύνσεις θυρών
καταχωρητες λογισμικού· -· τυποποιημένης παράλληλης θύρας (SSP)
Αμφίδρομες θύρες
Χρησιμοποίηση της παράλληλης θύρας για την εισαγωγή· 8· μπιτ
Nibble Mode
Χρησιμοποιώντας την διακοπή της παράλληλης θύρας (IRQ)
Επιλογή λειτουργίας(mode) από το BIOS
Χαρακτηριστικά επιλογής λειτουργίας
All Pages

Διευθύνσεις θυρών

Η παράλληλη θύρα έχει συνήθως τρεις χρησιμοποιούμενες διευθύνσεις. Αυτές παρατίθενται στον πίνακα 2, παρακάτω. Η διεύθυνση 3BCh εισήχθη αρχικά χρησιμοποιημένη για τις παράλληλες θύρες στις παλαιότερες κάρτες βίντεο. Αυτή η διεύθυνση εξαφανίστηκε έπειτα για μια στιγμή, όταν αφαιρέθηκαν οι παράλληλες θύρες από τις κάρτες βίντεο. Έχουν επανεμφανιστεί τώρα ως επιλογή για τις παράλληλες θύρες που ενσωματώνονται επάνω στις μητρικές κάρτες, στις οποίες η διαμόρφωσή τους μπορεί να αλλάξει χρησιμοποιώντας το BIOS.

 

LPT1 ορίζεται κανονικά η διεύθυνση βάσεων 378h, ενώ LPT2 ορίζεται η 278h. Εντούτοις αυτό μπορεί να μην συμβαίνει πάντα όπως εξηγείται αργότερα. Η 378h & 278h  χρησιμοποιούνται συνήθως για τις παράλληλες θύρες. Ο δείκτης h δείχνει ότι είναι σε δεκαεξαδικό σύστημα. Αυτές οι διευθύνσεις μπορούν να αλλάξουν από μηχάνημα σε μηχάνημα.

 

Port addresses

 

Όταν ο υπολογιστής ανοίγεται αρχικά, το BIOS (Basic System Input/Output) θα καθορίσει τον αριθμό θυρών που έχετε και ορίζει τις ετικέτες των συσκευών σε LPT1, LPT2 & LPT3. Το BIOS εξετάζει αρχικά τη διεύθυνση 3BCh. Εάν μια παράλληλη θύρα βρίσκεται εκεί, ορίζεται ως LPT1, έπειτα ψάχνει στη θέση 378h. Εάν μια παράλληλη κάρτα βρεθεί εκεί παίρνει το αμέσως επόμενο διαθέσιμο όνομα. Αυτό ορίζεται σε LPT1 εάν δε βρεθεί κάρτα στην 3BCh , στη συνέχεια συμβαίνει το ίδιο και για την 278h . Επομένως είναι δυνατό να υπάρχει LPT2 στην 378h και όχι στην αναμενόμενη διεύθυνση 278h.
Αυτό που μπορεί να κάνει αυτήν την διαδικασία ακόμη πιο πολύπλοκη, είναι ότι μερικοί κατασκευαστές των παράλληλων καρτών, έχουν jumpers που επιτρέπουν σε σας να θέσετε τη θύρα σε LPT1, LPT2, LPT3. Τώρα ποια διεύθυνση είναι LPT1; -  Στην πλειοψηφία των καρτών η LPT1 είναι η 378h, και LPT2 η 278h, αλλά μερικοί θα χρησιμοποιήσουν την 3BCh ως LPT1, 378h ως LPT2 και 278h σαν LPT3.

Η ανάθεση των ονομασιών LPT1, LPT2 & LPT3 δεν πρέπει να ανησυχούν αυτούς που επιθυμούν να διασυνδέσουν τις συσκευές στα PC τους. Τις περισσότερες φορές η διεύθυνση βάσης χρησιμοποιείται για να διασυνδέσει τη θύρα, παρά το όνομα LPT1 κ.λπ.. Εντούτοις εάν θελήσετε να βρείτε τη διεύθυνση LPT1 ή οποιεσδήποτε από τις  συσκευές, μπορείτε να χρησιμοποιήσετε έναν πίνακα αντιστοίχισης που παρέχεται από το BIOS. Όταν το BIOS ορίζει τις διευθύνσεις στις συσκευές εκτυπωτών σας, αποθηκεύει τη διεύθυνση στις συγκεκριμένες θέσεις στη μνήμη, έτσι μπορούμε να τους βρούμε.

LPT addresses in the BIOS
Note  1 : Address 0000:040E in the BIOS Data Area may be used as the Extended Bios Data Area in  PS/2 and newer Bioses, and thus this field may be invalid.

Ο ανωτέρω πίνακας,, πίνακας 3, παρουσιάζει τη διεύθυνση στην οποία μπορούμε να βρούμε τις διευθύνσεις της θύρας των εκτυπωτών στην περιοχή δεδομένων του BIOS. Κάθε διεύθυνση θα καταλάβει 2 byte. Το ακόλουθο πρόγραμμα σε C, επιδεικνύει πώς μπορείτε να διαβάσετε αυτές τις θέσεις για να λάβετε τις διευθύνσεις θυρών των εκτυπωτών σας.

#include <stdio.h>
#include <dos.h>
void main(void) 
unsigned int far *ptraddr;      /* Pointer to location of Port Addresses  */
unsigned int address;          /* Address of Port  */
int a;
ptraddr=(unsigned int far *)0x00000408;
for   (a = 0;  a  < 3;  a++) 
address  = *ptraddr;
if   (address == 0)
printf("No port found for LPT%d ",a+1);
else
printf("Address assigned to LPT%d is  %Xh",a+1,address); *ptraddr++;



 

You must login first to make comments.