Λύσεις — Άσκηση 11η · Κωδικοποιητές (σελ. 33-34)
Κωδικοποιητής προτεραιότητας δεκαδικό→BCD με το Ο.Κ. 74HC147 (ενεργές-LOW), προτεραιότητα στην υψηλότερη ενεργή είσοδο, εφαρμογή σε συστήματα διακοπών.
Πίνακας αληθείας 74HC147
Ζητούμενο: 3. Να δώσετε όλες τις δυνατές λογικές καταστάσεις στις εισόδους και παρατηρώντας κάθε φορά την κατάσταση των εξόδων να συμπληρώσετε τον Πίνακα Ε.11.1. που είναι ο Πίνακας Αληθείας του κυκλώματος (είσοδοι \(I_1\)–\(I_9\), έξοδοι D, C, Β, A). 4. Να ελέγξετε, χρησιμοποιώντας τα φύλλα δεδομένων (data sheets), αν ο κωδικοποιητής λειτουργεί σωστά συγκρίνοντας τον παραπάνω πίνακα αληθείας του κυκλώματος με τον πίνακα αληθείας του ολοκληρωμένου κυκλώματος 74HC147.
Πώς σκεφτόμαστε: Η ενεργή είσοδος είναι «0». Ο κωδικοποιητής δίνει τον BCD κωδικό της υψηλότερης ενεργής εισόδου· επειδή έξοδοι ενεργές-LOW, ο κωδικός εμφανίζεται συμπληρωμένος.
Λύση:
- Καμία ενεργή (όλες «1») → τιμή 0 (έξοδοι DCBA=1111).
- \(I_9=0\) (ανεξ. των άλλων, X) → τιμή 9 (BCD 1001, έξοδοι 0110).
- \(I_8=0, I_9=1\) → τιμή 8· \(I_7=0\) (I8,I9=1) → 7· … · \(I_1=0\) (οι μεγαλύτερες ανενεργές) → 1.
- Πλήρεις έξοδοι DCBA ανά γραμμή του Πίνακα Ε.11.1 (από πάνω προς τα κάτω): όλες «1» → 1111· \(I_9=0\) → 0110· \(I_8=0\) → 0111· \(I_7=0\) → 1000· \(I_6=0\) → 1001· \(I_5=0\) → 1010· \(I_4=0\) → 1011· \(I_3=0\) → 1100· \(I_2=0\) → 1101· \(I_1=0\) → 1110 (το συμπλήρωμα του BCD κωδικού 0, 9, 8, …, 1).
- Δηλαδή σε κάθε γραμμή η έξοδος αντιστοιχεί στην ΥΨΗΛΟΤΕΡΗ ενεργή είσοδο (τα X δηλώνουν αδιαφορία για τις χαμηλότερες).
Απάντηση: Η έξοδος αντιστοιχεί στην υψηλότερη ενεργή είσοδο (0 όταν καμία). Έξοδοι σε ενεργή-LOW μορφή (συμπληρωμένος BCD). Ταυτίζεται με το data sheet του 74HC147.
Πρόσεξε:
- Ενεργή είσοδος = «0» (ενεργή-LOW).
-
Δεν υπάρχει I0: η απουσία ενεργής εισόδου αντιστοιχεί στο 0.
Ταυτόχρονη ενεργοποίηση δύο εισόδων
Ζητούμενο: 5. Να ενεργοποιήσετε ταυτόχρονα δύο εισόδους. Σε ποια από τις δύο αντιστοιχεί ο κωδικός που εμφανίζεται στις εξόδους; Γιατί συμβαίνει αυτό;
Πώς σκεφτόμαστε: Ο 74HC147 είναι κωδικοποιητής ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ: όταν ενεργές πολλές είσοδοι, υπερισχύει η μεγαλύτερη.
Λύση:
- Ο κωδικός εξόδου αντιστοιχεί στην υψηλότερη (μεγαλύτερη) από τις δύο ενεργές εισόδους.
- Συμβαίνει γιατί το Ο.Κ. είναι κωδικοποιητής προτεραιότητας — η εσωτερική λογική δίνει προτεραιότητα στη μεγαλύτερη είσοδο, αγνοώντας τις χαμηλότερες.
Απάντηση: Ο κωδικός αντιστοιχεί στην ΥΨΗΛΟΤΕΡΗ από τις δύο ενεργές εισόδους — γιατί ο 74HC147 είναι κωδικοποιητής προτεραιότητας.
Πρόσεξε:
- Χωρίς προτεραιότητα, δύο ταυτόχρονες ενεργές είσοδοι θα έδιναν αμφίβολο/λάθος αποτέλεσμα.
-
Εφαρμογή: συστήματα διακοπών — εξυπηρετείται η υψηλότερης προτεραιότητας συσκευή.
Συμπεράσματα
Ζητούμενο: 6. Να διατυπώσετε τα συμπεράσματά σας.
Πώς σκεφτόμαστε: Συνοψίζουμε: κωδικοποίηση (γραμμή→κωδικός), προτεραιότητα, ενεργές-LOW.
Λύση:
- Ο κωδικοποιητής μετατρέπει μία ενεργή γραμμή εισόδου σε δυαδικό κωδικό (αντίστροφο του αποκωδικοποιητή).
- Η προτεραιότητα εξασφαλίζει σαφές αποτέλεσμα όταν ενεργοποιούνται πολλές είσοδοι (υπερισχύει η μεγαλύτερη).
- Οι ενεργές-LOW είσοδοι/έξοδοι απαιτούν προσοχή στην ανάγνωση (ενεργή = «0»).
Απάντηση: Ο 74HC147 κωδικοποιεί δεκαδικό→BCD με προτεραιότητα στη μεγαλύτερη ενεργή είσοδο, με ενεργές-LOW εισόδους/εξόδους.
Πρόσεξε:
- Οι κωδικοποιητές χρησιμοποιούνται σε πληκτρολόγια, συστήματα διακοπών, συμπίεση γραμμών.
-
Ο 74HC147 έχει 9 εισόδους (όχι 10): το «0» προκύπτει από απουσία ενεργής εισόδου.