8051 Interrupt Ports. Name Alternate Function

Σχετικά έγγραφα
Σκοπόςτης Διάλεξης. Εφαρμογή των χρονιστών για την ακριβή μέτρηση του χρόνου με την υλοποίηση του προγράμματος Real_Time_Clock.

Οδηγώντας μια οθόνη υγρών κρυστάλλων Liquid Crystal Display

Αυτή η άσκηση έχει σαν σκοπό, να δείξει τον τρόπο με τον οποίο τίθεται σε λειτουργία η οθόνη LCD του αναπτυξιακού.

Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ ΠΑΡΑΡΤΗΜΑ ΚΑΣΤΟΡΙΑΣ ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα εκτέλεσης εργαστηριακής άσκησης 5: Εξωτερικές διακοπές του 8051

Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ. ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ

ΜΑΘΗΜΑ: ΜΙΚΡΟΕΛΕΓΚΤΕΣ

10. Πληκτρολόγιο matrix 4x4

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας,

10. Πληκτρολόγιο matrix 4x4

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

ΑΣΚΗΣΗ 3 ΑΣΚΗΣΗ 3. Μηχανικοί ιακόπτες. Αρχιτεκτονική Η/Υ ΗΜΟΣ ΜΠΟΛΑΝΑΚΗΣ

Συστήματα Μικροϋπολογιστών

Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή

Εφαρμογές Σειριακής Επικοινωνίας

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα για την εργαστηριακή άσκηση 8: Διακοπές του 8051 οφειλόμενες στους απαριθμητές του

Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access)

12. Διακοπές Interrupts (IRQ)

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

ΑΣΚΗΣΗ 2 (29 Νοεμβρίου 2016)

ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017)

Σειριακό Τερματικό Serial Terminal (Dumb Terminal)

Καταχωρητής STATUS. IRP: Bit επιλογής περιοχής μνήμης (Bank) για την έμμεση διευθυνσιοδότηση 1= Bank2, Bank3 0= Bank0, Bank1

Εφαρμογέσ Μικροχπολογιςτών ςτισ Τηλεπικοινωνίεσ. Έλεγχοσ ςειριακήσ θφρασ του 8051 (Serial Port)

ΜΙΚΡΟΕΛΕΓΚΤΕΣ ΘΕΜΑΤΑ ΦΕΒ Ημ/νία:

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ. Σηµειώσεις στο µάθηµα ΜΙΚΡΟΕΛΕΓΚΤΕΣ

Προηγμένοι Μικροεπεξεργαστές. Φροντιστήριο 4 Real Mode Interrupts

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Μαθαίνοντας το hardware του αναπτυξιακού

Οργάνωση και Αρχιτεκτονική Υπολογιστών. Κεφάλαιο 7.4

ΕΡΓΑΣΤΗΡΙΟ 4 ΕΙΣΑΓΩΓΗ ΣΤΟN ARDUINO: ΨΗΦΙΑΚΗ ΕΙΣΟΔΟΣ/ΕΞΟΔΟΣ

Περιεχόµενα. I Βασικές Γνώσεις 1

ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ ΛΥΣΕΙΣ ΘΕΜΑΤΩΝ ΦΕΒ 2014 Καθηγητής: Νικολαΐδης Νικ. Ημ/νία εξέτασης:

ΑΣΚΗΣΗ 5 ΑΣΚΗΣΗ 5. Πληκτρολόγιο Matrix. Αρχιτεκτονική Η/Υ ΗΜΟΣ ΜΠΟΛΑΝΑΚΗΣ

Οδηγίες χρήσεως για τον ηλεκτρονικό συνδυασμό Selo-B της SECU

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα εκτέλεσης εργαστηριακής άσκησης 4: Ρουτίνες καθυστέρησης. [Συγγραφή ρουτίνας καθυστέρησης]

Ενσωματωμένα Συστήματα

Keyboard. Ασσιούρας Ιωάννης 5593 Βούκας Ιωάννης 5001 Πρωτονοτάριος Ιωάννης 6072

ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ

Ερωτήσεις θεωρίας MY. Μέρος Α. Υλικό.

ΑΣΚΗΣΗ 4 ΑΣΚΗΣΗ 4. Ενδείκτης 7 τοµέων. Αρχιτεκτονική Η/Υ ΗΜΟΣ ΜΠΟΛΑΝΑΚΗΣ

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

ΠΕΡΙΕΧΟΜΕΝΑ 1. Υπορουτίνες Μαθηµατικών Πράξεων 1.1. Προσηµασµένοι και απροσήµαστοι αριθµοί 1.2. Μετατροπές προσηµασµένων και απροσήµαστων αριθµών

Προηγμένοι Μικροεπεξεργαστές. Εργαστήριο 5 - Editor

ΗΜΥ Εργαστήριο Οργάνωσης Υπολογιστών και Μικροεπεξεργαστών

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FHM-3 (FHM-2/1D, FH-11/1D, FE-3) (για ΥΔΡΑΥΛΙΚΗ ΠΟΛΥΣΠΑΣΤΗ ΠΟΡΤΑ HSD)

Προηγμένοι Μικροεπεξεργαστές. Εργαστήριο 4 - Editor

ΗΜΥ 213. Εργαστήριο Οργάνωσης Η.Y. και Μικροεπεξεργαστών week 5. Διδάσκων: Δρ. Γιώργος Ζάγγουλος

WDT και Power Up timer

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 1

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή

Ενσωματωμένα Συστήματα

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FHM-4 (FHM-2/2D, FH-4, FE-3) (για 2 ΥΔΡΑΥΛΙΚΕΣ ΠΟΛΥΣΠΑΣΤΕΣ ΠΟΡΤΕΣ )

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΥΓΧΡΟΝΟΙ ΜΕΤΡΗΤΕΣ

ΑΣΚΗΣΗ 9 ΑΣΥΓΧΡΟΝΟΙ ΜΕΤΡΗΤΕΣ (COUNTERS)

ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO. Υποψήφιος Διδάκτωρ

ΑΠΟ ΤΑ ΘΕΜΑΤΑ ΤΩΝ ΠΑΝΕΛΛΗΝΙΩΝ ΕΞΕΤΑΣΕΩΝ ΚΕΦΑΛΑΙΟ 7-8 (ΚΑΤΑΧΩΡΗΤΕΣ & ΑΠΑΡΙΘΜΗΤΕΣ)

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014

Είναι το πρωτόκολλο RS232 που χρησιμοποιείται στις σειριακές θύρες COM με τη διαφορά ότι εκτελείται σε επίπεδο τάσεων TTL. 2

ΑΝΑLOG TO DIGITAL CONVERTER (ADC)

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Γ ΕΠΑΛ 14 / 04 / 2019

Ενσωµατωµένα Συστήµατα

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα εκτέλεσης εργαστηριακής άσκησης 3: Εντολές λογικών πράξεων και εντολές κλήσης ρουτινών

ΕΙΣΑΓΩΓΗ. Αρχιτεκτονική Η/Υ ΗΜΟΣ ΜΠΟΛΑΝΑΚΗΣ

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)

; Οι HL δείχνουν την επόµενη θέση µνήµης MVI A, 38H CMP H JNZ DO_FLMEM ; POP B. ; Ανάκτηση καταχωρητών απο το σωρό.

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FSM-1 (FSM-1, FBMulti-1/S) (για ΤΑΧΥΚΙΝΗΤΗ ΠΟΡΤΑ RD)

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ. ΜΑΘΗΜΑ 4 ο ΟΡΓΑΝΩΣΗ ΤΗΣ ΜΝΗΜΗΣ ΠΕΡΙΦΕΡΕΙΑΚΗ ΜΝΗΜΗ

ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ... 11

Προγραμματισμο ς σε Arduino

ΑΣΚΗΣΗ 7 FLIP - FLOP

Μάθημα 4.7 Θύρες περιφερειακών

ΜΑΘΗΜΑ: ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ ΘΕΜΑΤΑ ΙΟΥΝΙΟΥ 2014

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα για την εργαστηριακή άσκηση 10: Εφαρμογές των χρονιστών και των διακοπών

Έλεγχος της Σειριακής Θύρας

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FK-20 (για συρόμενες πόρτες & μπάρες)

Συστήματα Μικροϋπολογιστών

Συστήματα Μικροϋπολογιστών

Λύσεις 2 ης Ενδιάμεσης Εξέτασης στο ΗΜΥ213

ΕΓΧΕΙΡΙΔΙΟ ΠΙΝΑΚΑ ΕΛΕΓΧΟΥ FHM-2 (FHM-2, FH-3, FE-3) (για ΥΔΡΑΥΛΙΚΗ ΡΑΜΠΑ HDL με ΥΔΡΑΥΛΙΚΗ ΠΟΛΥΣΠΑΣΤΗ ΠΟΡΤΑ HSD)

2. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΤΩΝ ΘΥΡΩΝ ΕΙΣΟ ΟΥ/ΕΞΟ ΟΥ ΤΟΥ PIC16F877-ΑΡΙΘΜΗΤΙΚΕΣ ΕΝΤΟΛΕΣ

ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ...σελ 2 Ο ΜΙΚΡΟΕΛΕΓΚΤΗΣ DS89C σελ 3 Ο TRANSCEIVER AD σελ 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΤΟΥ AD σελ 11 AD9831 EVALUATION BO

ΔΙΑΚΟΠΤΗΣ ΛΑΜΠΑΣ ΜΕ ΜΙΚΡΟΕΛΕΓΚΤΗ AVR AT90S2313

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική Η/Υ-Εργαστήριο. Δημοσθένης Μπολανάκης. Ρήγας Γεώργιος

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

Οργάνωση Υπολογιστών (Ι)

Πανεπιστήμιο Θεσσαλίας- Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΥ430- Εργαστήριο Ψηφιακών Κυκλωμάτων

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»


ΚΕΦΑΛΑΙ0 V ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΟΣ ΕΙΣΟΔΟΥ-ΕΞΟΔΟΥ

Συστήματα Μικροεπεξεργαστών

Οδηγίες EQL Desktop (rev ) ΣΥΝ ΕΣΗ S-710 ΜΕ ΚΑΛΩ ΙΟ USB ΠΡΟΚΑΤΑΡΚΤΙΚΕΣ ΕΡΓΑΣΙΕΣ

Τι είναι το HARDWARE στην σημερινή εποχή; Σελίδα 3 Το καθένα από αυτά σε τι χρησιμεύει; Σελίδα 4

για τις ρυθμίσεις LabView μέσα από το κανάλι και του καλωδίου USB.

Electronics μαζί με τα συνοδευτικά καλώδια και το αισθητήριο θερμοκρασίας LM335 που περιέχονται

Transcript:

Σκοπόςτης Διάλεξης Εισαγωγήστις πηγές διακοπών (interrupts) και στον τρόπο που αυτές είναι διαχειρίσιμες από την αρχιτεκτονική 8051 Πώς συνδέονται οι διακόπτες και τα πληκτρολόγια σε ένα μικροϋπολογιστή αρχιτεκτονικής 8051 Πώς προγραμματίζεται ο μικροελεγκτής DS89C4x0 για την είσοδο δεδομένων από διακόπτες και πληκτρολόγια.

8051 Interrupt Ports Port Bit Name Alternate Function P3.0 RxD Receive data for serial port P3.1 TxD Transmit data for serial port P3.2 INT0 External interrupt 0 P3.3 INT1 External interrupt 1 P3.4 T0 Timer / counter 0 external input P3.5 T1 Timer / counter 1 external input P3.6 WR External data memory write strobe P3.7 RD External data memory read strobe

Διακοπές στην εκτέλεση κώδικα του 8051 προκαλούνται: αν οδηγήσουμε τον ακροδέκτη RESETαυτού σε λογικό 1 για τουλάχιστον δύο κύκλους μηχανής (24 περιόδους ρολογιού), αν οδηγήσουμε σε λογικό 0 κάποιον από τους ακροδέκτες P3.2,P3.3ή του στείλουμε αρνητικό μέτωπο τάσης, αν κάποιος από τους μετρητές / χρονιστές Τ0και Τ1, που έχουμε θέσει να μετράνε, υπερχειλίσει. από τη λειτουργία της σειριακής πόρτας του 8051.

Ανύσματα Διακοπών (Θέσεις Μνήμης ROM)

Καταχωρητής Ενεργοποίησης Διακοπών IE O βασικός καταχωρητής των διακοπώνieέχει την ακόλουθη μορφή και το κάθε bit αυτού αν τεθεί HIGH τότε ενεργοποιεί κάποια πηγή διακοπής. Tο bit ΙΕ.0 (EX0) είναι υπεύθυνο για την ενεργοποίηση της εξωτερικής διακοπής INT0 Tο bit ΙΕ.0 (EX0) είναι υπεύθυνο για την ενεργοποίηση της εξωτερικής διακοπής INT0 Το bitιε.1 (ET0) είναι υπεύθυνο για την ενεργοποίηση διακοπής λόγω υπερχείλισης του χρονιστή 0 (T0) Το bit ΙΕ.2 (EX1) είναι υπεύθυνο για την ενεργοποίηση της εξωτερικής διακοπής ΙΝΤ1 Το bitιε.3 (ET1)είναι υπεύθυνο για την ενεργοποίηση διακοπής λόγω υπερχείλισης του χρονιστή 1 (Τ1) To bit ΙΕ.4 (ES)είναι υπεύθυνο για την ενεργοποίηση διακοπής λόγω χρήσης της σειριακής θύρας Τα bits ΙΕ.5&ΙΕ.6 είναι υπεύθυνα για χρήση διακοπής άλλων 2 χρονιστών αλλά για τον µικροϋπολογιστή 8052 Το bitιε.7 (ΕΑ) είναι υπεύθυνο για την ενεργοποίηση όλων των διακοπών. Αν αυτό το bit δεν είναι high, τότεδεν λειτουργούν οι διακοπές.

Καταχωρητής ΙP(Interrupt Priority) ΡΧ0= bit προτεραιότητας της εξωτερικής διακοπής ΡΤ0= bit προτεραιότητας της διακοπής από υπερχείλιση του μετρητή / χρονιστή Τ0 ΡΧ1= bit προτεραιότητας της εξωτερικής διακοπής ΡΤ1= bit προτεραιότητας της διακοπής από υπερχείλιση του μετρητή / χρονιστή Τ1 ΡS= bit προτεραιότητας της διακοπής από τη λειτουργία της σειριακής πόρτας Χ= αφορούν στον 8052

Χρήση του Καταχωρητή IP Μεταξύ διακοπών ίσης προτεραιότητας υπάρχει μια «εσωτερική» προτεραιότητα ώστε αν δύοσήματα διακοπών φθάσουν «ταυτόχρονα» στον 8051, να εξυπηρετηθεί αυτό με την μεγαλύτερη «εσωτερική» προτεραιότητα. Τα σήματα διακοπών του 8051 κατατάσσονται ως εξής σε σειρά φθίνουσας «εσωτερικής» προτεραιότητας: ΙΝΤ0, Τ0, ΙΝΤ1, Τ1 και διακοπή από σειριακή πόρτα. Για να αποκτήσει μια διακοπή υψηλή προτεραιότητα πρέπει να γίνει 1 το αντίστοιχο bit του καταχωρητή ΙΡ. Π.χ. για να δώσουμε υψηλή προτεραιότητα στην εξωτερική διακοπή πρέπει να κάνουμε 1 το bit 0του ΙΡ(ΡΧ0).

Oκαταχωρητής TCON

Oκαταχωρητής TCON

ΔιακόπτεςPush Buttons Ένας διακόπτης τύπου Push Button μπορεί να συνδεθεί σε ένα dcτροφοδοτικό και να δώσει ένα συγκεκριμένο λογικό επίπεδο 0 ή 1. Το παραπάνω σχήμα δείχνει τυπικές συνδεσμολογίες για διακόπτες push buttons για λογικό 0 και λογικό 1 με τον διακόπτη ανοικτό (όχι πατημένο). To σύντομο πρόγραμμα σε γλώσσα assemblyδείχνει με ποιο τρόπο μπορεί να ελέγχεται μια συγκεκριμένη ακίδα εισόδου του μικροελεγκτή που συνδέεται στην έξοδο ενός διακόπτη τύπου push-button. Το συγκεκριμένο πρόγραμμα περιμένει σε ένα συνεχή βρόχομέχρι να κλείσει ένας διακόπτης του οποίου η έξοδος συνδέεται στην ακίδα P1.0. Η έξοδος του διακόπτη υποτίθεται ότι είναι σε λογικό 0 όταν αυτός είναι ανοικτός.

Πληκτρολόγιο (Keypad) software-debounce Οι διακόπτες ενός πληκτρολογίου είναι τύπου push-buttonσε κατάσταση normally open. Το σχήμα δείχνει το αποτέλεσμα της αναπήδησης (bounce-effect) κατά το χρονικό διάστημα που ακολουθεί το κλείσιμο ή το άνοιγμα ενός διακόπτη. Για ελαχιστοποίηση των προβλημάτων από την αναπήδηση ενός διακόπτη συνήθως εισάγουμε μια χρονοκαθυστέρηση. Συνήθως αναμονή 10-15ms μετά το κλείσιμο ή το άνοιγμα του διακόπτη είναι αρκετή ώστε να έχει αποσβεστεί το φαινόμενο της αναπήδησης και να έχει περιέλθει ο διακόπτης σταθερά στην τελική του κατάσταση. Ο κώδικας Assembly κάνει softwaredebounce ενός διακόπτη συνδεδεμένου στην ακίδα P1.0. Επίσης, υποτίθεται ότι αρχικά ο διακόπτης είναι normally-openσε κατάσταση λογικού 1 και όταν κλείνει δίνει στην ακίδα λογικό 0.

Πληκτρολόγιο (Keypad) hardware-debounce Ένα απλό κύκλωμα απόσβεσης των αναπηδήσεων για διακόπτη κανονικά ανοικτό (normally open), χρησιμοποιεί τέτοιες τιμές R και C ώστε η σταθερά χρόνου RCνα είναι μεγαλύτερη από τον χρόνο αναπηδήσεων του διακόπτη. Μια τυπική τιμή είναι RC =100ms. Ένα άλλο κύκλωμα απόσβεσης των αναπηδήσεων με χρήση υλικού είναι ο μανδαλωτής. Χρησιμοποιεί ένα κύκλωμα μανδάλωσης διασταυρωμένων συνδέσεων φτιαγμένο από ένα ζευγάρι λογικών πυλών NAND. Το πλεονέκτημα χρήσης του μανδαλωτή είναι μια καθαρή απόσβεση χωρίς περιορισμούς καθυστέρησης. Ο διακόπτης αποκρίνεται τόσο γρήγορα όσο γρήγορα μπορούν να ανοίγουν και να κλείνουν οι επαφές.

Πληκτρολόγιο Αναπτυξιακού Στο αναπτυξιακό του 8051 έχουμε συνδέσει ένα πληκτρολόγιο με διακόπτες τύπου Push-Button. Το πάτημα οποιουδήποτε πλήκτρου προκαλεί διακοπή. Το πληκτρολόγιο έχει την ακόλουθη διάταξη διεπαφή με τον DS89C4X0:

Απαιτήσεις ΚΩΔΙΚΑ ΠΛΗΚΤΡΟΛΟΓΙΟΥ Με τον κώδικα του πληκτρολογίου (Keypad) θέλουμε να εμφανίζεται στο LCDένας δεκαεξαδικός αριθμός που να αντιστοιχεί στο πλήκτρο που πατήθηκε. Για παράδειγμα, εάν θέλουμε να εμφανιστεί στο LCDτο Για παράδειγμα, εάν θέλουμε να εμφανιστεί στο LCDτο 0, πρέπει να πιέσουμε το πλήκτρο της πρώτης στήλης & της πρώτης γραμμής, ενώ αν θέλουμε να εμφανιστεί το F πρέπει να πιέσουμε το πλήκτρο της τελευταίας στήλης & της τελευταίας γραμμής.

Κώδικας Keypad: ROW1 equ P1.0 ROW2 equ P1.1 ROW3 equ P1.2 ROW4 equ P1.3 COL1 equ P1.4 COL2 equ P1.5 COL3 equ P1.6 COL4 equ P1.7 Μain: 1. ACALL INITLCD 2. SETB EX0 3. SETB EA 4. MOV P1,#0F0h 5. SJMP$ Στην 1η γραμμή καλούμε την ρουτίνα αρχικοποίησης του LCDτης αναπτυξιακής μας πλακέτας. Στις γραμμές 2&3ενεργοποιούμε την εξωτερική διακοπή ΙΝΤ0 µέσω IE. Στην γραμμή 4 αρχικοποιούμε την θύρα P1, ώστε οι 4 σημαντικές ακίδες να λειτουργούν ως είσοδοι & οι 4 λιγότερο σημαντικές ακίδες να λειτουργούν ως έξοδοι. Στην γραμμή 5 με την εντολή υλοποίησης αέναου βρόχου sjmp$περιμένουμε μέχρι να προκληθεί διακοπή από το πληκτρολόγιο στο κύριο πρόγραμμα του 8051.

Κώδικας Keypad: KEYPAD: MOV P1,#0FFH ;#11111111b CLR ROW1 ACALL KEY_DEL;Short delay every time JB COL1, L1;there is a line change MOV A, #'0 ACALL DATUM L1: JB COL2, L2 L1: JB COL2, L2 MOV A, #'1' ACALL DATUM L2: JB COL3, L3 MOV A, #'2' ACALL DATUM L3: JB COL4, L4 MOV A, #'3' ACALL DATUM L4: SETB ROW1 CLR ROW2

Κώδικας Keypad: L4: SETB ROW1 CLR ROW2 ACALL KEY_DEL JB COL1, L5 MOV A, #'4... L12: SETB ROW3 CLR ROW4... JB COL4, L16 MOV A, #'F' ACALL DATUM L16: MOV P1, #0F0H ACALL DELAYA ACALL DELAYA ACALL DELAYA ACALL DELAYA RETI

Άσκηση 1/2

Άσκηση 2/2