Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Aký je program v jazyku symbolických inštrukcií pre rozhranie 8085 krokového motora na otáčanie v smere a proti smeru hodinových ručičiek pomocou 8255?

Program na prepojenie krokového motora 8085 na jeho otáčanie v smere a proti smeru hodinových ručičiek pomocou 8255:

```

;Inicializujte ukazovateľ zásobníka na 0FFFH (32767)

LXI SP, 0FFFH

;Definujte konštanty pre riadenie krokového motora:

MOV A,#10;Definujte hodnotu oneskorenia pre ovládanie krokového motora (ľubovoľné)

MOV B,A;Skopírujte hodnotu oneskorenia do registra B

MOV A,0;Definujte počiatočný smer (0 v smere hodinových ručičiek, 1 v protismere hodinových ručičiek)

MOV C,A;Skopírujte smer do registra C

;Nakonfigurujte 8255 I/O port:

MVI A,0FFH;Nastaviť všetky portové linky ako výstup (pomocou riadiaceho slova PPI)

MOV M,A;Zápis do riadiaceho registra (P1M)

Definujte adresu I/O portu:

MOV A,#10H;Základná adresa pre 8255 PPI (8255-5)

MOV M,A;Uloženie základnej adresy do pamäte

Hlavná slučka pre ovládanie krokového motora:

LOOP:;Štítok predstavujúci začiatok hlavnej slučky

;Krok 1:Otočte motor v smere hodinových ručičiek (smer =0)

MVI A,0;Nastavte smer hodinových ručičiek

MOV C,A;Smer skopírujte do registra C

;Vygenerujte sekvenciu riadiacich signálov pre otáčanie motora

MVI A,#0B;Riadiace slovo na nastavenie liniek portu B P1.1, P1.2, P1.3 ako výstupov

MOV M,A;Zápis do riadiaceho registra Port B

MVI A,#9BH;Riadiace slovo na otáčanie motora v smere hodinových ručičiek (P1.1=1, P1.2=0, P1.3=1)

MOV M,A;Zápis do dátového registra Port B

;Oneskorenie spomalenia otáčania motora:

DELAY:;Podprogram oneskorenia na ovládanie rýchlosti otáčania motora

DCR B;Znížte hodnotu oneskorenia v registri B

JZ ENDD;Ak hodnota oneskorenia dosiahne nulu, oneskorenie je dokončené

MOV A,B;Skopírujte hodnotu oneskorenia z registra B do registra A

JMP DELAY;Skok späť do slučky DELAY, kým sa oneskorenie nedokončí

ENDD:;Koniec podprogramu oneskorenia

;Krok 2:Otočte motor proti smeru hodinových ručičiek (smer =1)

MVI A,1;Nastavte proti smeru hodinových ručičiek

MOV C,A;Skopírujte smer do registra C

;Vygenerujte sekvenciu riadiacich signálov pre otáčanie motora

MVI A,#0B;Riadiace slovo na nastavenie liniek portu B P1.1, P1.2, P1.3 ako výstupov

MOV M,A;Zápis do riadiaceho registra Port B

MVI A,#6EH;Riadiace slovo na otáčanie motora proti smeru hodinových ručičiek (P1.1=0, P1.2=1, P1.3=1)

MOV M,A;Zápis do dátového registra Port B

;Oneskorenie na spomalenie otáčania motora:

DELAY:;Podprogram oneskorenia

DCR B

JZ KONIEC

MOV A,B

ONESKORENIE JMP

KONIEC:

;Opakujte hlavnú slučku, aby sa motor neustále otáčal

JMP LOOP

```

Tento program používa 8255 PPI na ovládanie smeru otáčania a rýchlosti krokového motora. Nastavením a vymazaním príslušných bitov v dátovom registri Port B 8255 program generuje potrebné riadiace signály pre otáčanie v smere alebo proti smeru hodinových ručičiek. Podprogram oneskorenia zaisťuje, že rýchlosť otáčania motora je riadená.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené