Menu

Instrukcje bitowe serii DVP (Slim)

utworzone przez paź 30, 20170 komentarzy

Wstęp

 

Sterowniki Delta serii DVP (SLIM) posiadają instrukcje bitowe, dzięki którym można operować na bitach rejestrów. W niniejszym artykule przybliżono wszystkie dostępne instrukcje.

 

API 266 BOUT. Wysterowanie bitu w słowie

 

Instrukcja BOUT pozwala na wysterowanie bitu w słowie. Jeżeli sygnał En jest aktywny, bit będzie ustawiony. W przeciwnym przypadku bit będzie zerowany. Parametry BOUT:

  • D – rejestr, w którym będzie wysterowany bit,

  • n – numer bitu (0-15).

 

 

API 267 BSET. Ustawienie bitu w słowie

 

Instrukcja BSET ustawia bit w słowie, gdy sygnał En jest aktywny. Parametry BSET:

  • D – rejestr, w którym będzie ustawiony bit,

  • n – numer bitu (0-15).

 

 

API 268 BRST. Zerowanie bitu w słowie

 

Instrukcja BRST zeruje bit w słowie, gdy sygnał En jest aktywny. Parametry BRST:

  • D – rejestr, w którym będzie zerowany bit,

  • n – numer bitu (0-15).

 

 

 

API 269 BLD. Styk NO z wybranego bitu w słowie

 

Instrukcja BLD tworzy styk NO z bitu w słowie. Parametry BLD:

  • S1 – rejestr, z którego będzie odczytywany bit,

  • S2 – numer bitu (0-15),

  • Q – 0, gdy wybrany bit jest wyzerowany, 1, gdy wybrany bit jest ustawiony.

 

 

 

API 270 BLDI. Styk NC z wybranego bitu w słowie

 

Instrukcja BLDI tworzy styk NC z bitu w słowie. Parametry BLDI:

  • S1 – rejestr, z którego będzie odczytywany bit,

  • S2 – numer bitu (0-15),

  • Q – 1, gdy wybrany bit jest wyzerowany, 0, gdy wybrany bit jest ustawiony.

 

 

 

 

Instrukcje dodające styki NO/NC szeregowo bądź równolegle względem zaznaczonego elementu

 

Dla wygody programowania wprowadzono dodatkowe instrukcje, które dodają instrukcje BLD (styk NO) lub BLDI (styk NC), szeregowo lub równolegle względem zaznaczonego elementu. Poniżej wymieniono instrukcje:

  • BAND – dodanie BLD szeregowo,

  • BANI – dodanie BLDI szeregowo,

  • BOR – dodanie BLD równolegle,

  • BORI – dodanie BLDI równolegle.

 

Przenoszenie flag M na bity rejestru D

 

Oprócz instrukcji bitowych istnieje notacja grupująca flagi M. Zgrupowanie kilku flag M pozwala na przenoszenie flag M na bity rejestru D, a także przenoszenie bitów rejestru D na flagi M.

Aby zgrupować kolejne flagi M należy posłużyć się zapisem w formacie:

K{n}M{m}, gdzie {n} = {1, 2, 3, 4} – liczba 4 bitowych paczek, {m} – numer pierwszej flagi w grupie. Oprócz flag M można wykorzystać wejścia X, wyjścia Y i flagi S.

Przykłady:

  • K1M0 – grupa 4 bitów zaczynająca się od M0, czyli M0~M3,

  • K2M10 – grupa 8 bitów zaczynająca się od M10, czyli M10~M19,

  • K3M2000 – grupa 12 bitów zaczynająca się od M2000, czyli M2000~M2011,

  • K4M16 – grupa 16 bitów zaczynająca się od M16, czyli M16~M31.

Zgrupowane flagi mogą być przepisane do rejestru z wykorzystaniem instrukcji MOV.

Na rys. poniżej przedstawiono przykład przeniesienia 16 flag do rejestru D1 i przeniesienie bitów rejestru D1 do flag M16~M32. Kolejne flagi są przepisywane do bitów rejestru, zaczynając od bitu najmłodszego, tj. bitu 0. Podczas przenoszenie bitów rejestru do flag, najmłodszy bit rejestru jest zapisywany w pierwszej fladze.