WordToBit/BitToWord

Pytania i odpowiedzi dotyczące sprzętu Unitronics

Moderatorzy: Marek Sikora, Mateusz Sikorski

WordToBit/BitToWord

Postprzez kczaplew » Wt, 31 mar 2015, 15:33

Witam.
Czy w VisiLogic istnieje jakiś blok rozkładu zmiennej typu WORD na pojedyncze bity ?
Ew. jakieś sugestie w jaki sposób można wyciągnąć wartości bitów z WORD'a i
analogicznie jak to zrobić w drugą stronę.

Z poważaniem
Kamil Czaplewski
ISCAS sp. z o.o.
kczaplew
 
Posty: 2
Dołączył(a): Wt, 31 mar 2015, 15:22

Re: WordToBit/BitToWord

Postprzez Mateusz Sikorski » Wt, 31 mar 2015, 18:56

Witam Panie Kamilu,

jest kilka opcji:
1) Blok funkcyjny Numeric to Bits (w Vector functions), gdzie wpisuje Pan :
A - DWx, gdzie x oznacza cyfrę Pańskiego Worda
B - MBy, gdzie y oznacza cyfrę pierwszego bitu, który Pan wybierze
C - wartość, która odpowiada za liczbę bitów tablicy (np. 32 wtedy pobierze z DWx całą liczbę i wpisze je do MBy - MB(y+31) )

2) Blok funkcyjny STRUCT (w Vector functions), gdzie wpisuje Pan:
Vector: Start Address - DWx, jak wyżej
Copy Data Direction: "From vector to mixed data locations"
Mixed Data Locations:
Operand: MBy, jak wyżej
Length: wartość, która odpowiada za liczbę bitów tablicy (np. 32, jak wyżej)

Te dwa sposoby zapewnią Panu konwersję całego WORDA do BITów, ale gdyby Pan chciał sprawdzać tylko poszczególne bity z całego WORDA to opcją będzie skorzystanie z bloku TEST BIT (w Logic functions), gdzie:

A - DWx, jak wyżej
B - numer testowanego bitu od lewej, można dać rejestr MIx i z blok ten będzie pobierać z niego wartość, który bit od lewej ma czytać
C - MBy, gdzie ma być wpisywany testowany bit z DWx
Mateusz Sikorski
Elmark Automatyka S.A.
Mateusz Sikorski
 
Posty: 564
Dołączył(a): Śr, 13 lip 2011, 08:08

Re: WordToBit/BitToWord

Postprzez kczaplew » Cz, 2 kwi 2015, 12:22

Bardzo dziękuję za odpowiedź o to mi chodziło.

Z poważaniem
Kamil Czaplewski
ISCAS Sp z o.o.
kczaplew
 
Posty: 2
Dołączył(a): Wt, 31 mar 2015, 15:22


Powrót do Unitronics



Kto przegląda forum

Użytkownicy przeglądający to forum: Brak zalogowanych użytkowników i 1 gość

cron