Προγραμματισμός

Γνώση Υπολογιστών >> Προγραμματισμός >  >> Προγραμματισμός Υπολογιστών Γλώσσες

Ποιο είναι το πρόγραμμα γλώσσας συναρμολόγησης για τη διασύνδεση 8085 του βηματικού κινητήρα για την περιστροφή του δεξιόστροφα και αριστερόστροφα χρησιμοποιώντας το 8255;

Πρόγραμμα διασύνδεσης 8085 του βηματικού κινητήρα για περιστροφή δεξιόστροφα και αριστερόστροφα χρησιμοποιώντας το 8255:

```

;Εκκινήστε το δείκτη στοίβας στο 0FFFH (32767)

LXI SP, 0FFFH

Ορίστε σταθερές για τον έλεγχο βηματικού κινητήρα:

MOV A,#10;Ορισμός τιμής καθυστέρησης για έλεγχο βηματικού κινητήρα (αυθαίρετο)

MOV B,A;Αντιγράψτε την τιμή καθυστέρησης στον καταχωρητή Β

MOV A,0;Ορίστε την αρχική κατεύθυνση (0 για δεξιόστροφα, 1 για αριστερόστροφα)

MOV C,A;Αντιγράψτε την κατεύθυνση για την εγγραφή C

;Διαμόρφωση θύρας I/O 8255:

MVI A,0FFH;Ρυθμίστε όλες τις γραμμές θυρών ως έξοδο (χρησιμοποιώντας τη λέξη ελέγχου PPI)

MOV M,A;Εγγραφή στον καταχωρητή ελέγχου (P1M)

;Ορίστε τη διεύθυνση θύρας I/O:

MOV A,#10H;Βασική διεύθυνση για 8255 PPI (8255-5)

MOV M,A;Αποθηκεύστε τη διεύθυνση βάσης στη θέση μνήμης

Κύριος βρόχος για έλεγχο βηματικού κινητήρα:

LOOP:;Ετικέτα που αντιπροσωπεύει την αρχή του κύριου βρόχου

;Βήμα 1:Περιστρέψτε τον κινητήρα δεξιόστροφα (κατεύθυνση =0)

MVI A,0;Ρυθμίστε τη φορά των δεικτών του ρολογιού

MOV C,A;Αντιγράψτε την κατεύθυνση για την εγγραφή C

;Δημιουργήστε ακολουθία σημάτων ελέγχου για την περιστροφή του κινητήρα

MVI A,#0B;Λέξη ελέγχου για να ορίσετε τις γραμμές Port B P1.1, P1.2, P1.3 ως εξόδους

MOV M,A;Εγγραφή στον καταχωρητή ελέγχου Θύρας Β

MVI A,#9BH;Λέξη ελέγχου για περιστροφή του κινητήρα δεξιόστροφα (P1.1=1, P1.2=0, P1.3=1)

MOV M,A;Εγγραφή στον καταχωρητή δεδομένων θύρας Β

Καθυστέρηση για την επιβράδυνση της περιστροφής του κινητήρα:

ΚΑΘΥΣΤΕΡΗΣΗ:Υπορουτίνα καθυστέρησης για τον έλεγχο της ταχύτητας περιστροφής του κινητήρα

DCR B;Μείωση τιμής καθυστέρησης στον καταχωρητή Β

JZ ENDD;Εάν η τιμή καθυστέρησης φτάσει στο μηδέν, η καθυστέρηση έχει ολοκληρωθεί

MOV A,B;Αντιγράψτε την τιμή καθυστέρησης από τον καταχωρητή Β στον καταχωρητή Α

JMP DELAY;Μετάβαση πίσω στον βρόχο DELAY μέχρι να ολοκληρωθεί η καθυστέρηση

ΤΕΛΟΣ:;Υπορουτίνα λήξης καθυστέρησης

;Βήμα 2:Περιστρέψτε τον κινητήρα αριστερόστροφα (κατεύθυνση =1)

MVI A,1;Ρυθμίστε την αριστερόστροφη φορά

MOV C,A;Αντιγράψτε την κατεύθυνση για την εγγραφή C

;Δημιουργήστε ακολουθία σημάτων ελέγχου για την περιστροφή του κινητήρα

MVI A,#0B;Λέξη ελέγχου για να ορίσετε τις γραμμές Port B P1.1, P1.2, P1.3 ως εξόδους

MOV M,A;Εγγραφή στον καταχωρητή ελέγχου Θύρας Β

MVI A,#6EH;Λέξη ελέγχου για την αριστερόστροφη περιστροφή του κινητήρα (P1.1=0, P1.2=1, P1.3=1)

MOV M,A;Εγγραφή στον καταχωρητή δεδομένων θύρας Β

Καθυστέρηση για την επιβράδυνση της περιστροφής του κινητήρα:

ΚΑΘΥΣΤΕΡΗΣΗ:;Υπορουτίνα καθυστέρησης

DCR B

JZ ΤΕΛΟΣ

MOV A,B

ΚΑΘΥΣΤΕΡΗΣΗ JMP

ΤΕΛΟΣ:

Επαναλάβετε τον κύριο βρόχο για να περιστρέφετε συνεχώς τον κινητήρα

JMP LOOP

```

Αυτό το πρόγραμμα χρησιμοποιεί το 8255 PPI για τον έλεγχο της κατεύθυνσης περιστροφής και της ταχύτητας του βηματικού κινητήρα. Ρυθμίζοντας και διαγράφοντας τα κατάλληλα bit στον καταχωρητή δεδομένων Port B του 8255, το πρόγραμμα δημιουργεί τα απαραίτητα σήματα ελέγχου για δεξιόστροφη ή αριστερόστροφη περιστροφή. Η υπορουτίνα καθυστέρησης διασφαλίζει τον έλεγχο της ταχύτητας περιστροφής του κινητήρα.

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα