ATNEL tech-forum
https://forum.atnel.pl/

Zapis binarny w b4a
https://forum.atnel.pl/topic21548.html
Strona 1 z 1

Autor:  grzeniu 73 [ 8 lis 2018, o 17:41 ]
Tytuł:  Zapis binarny w b4a

Witam.
Nic sie tu nie dzieje to trochę rozruszam.
Robie sterownik i potrzebuje ustawić włączanie w określone dni tygodnia. Myślę to zrobić w ten sposób ze będę zaznaczał ptaszki CheckBoxach i chciałbym to zapisać tak jak można to zrobić w AVR w jednym bajcie np:
zmienna.1 = 1
zmienna .2 =0
itp. W bascomie to nie problem w c pewnie tez ale jak zapisać to w B4a tak żebym mógł wysłać do avr jaka jeden bajt.
Ewentualnie jakis inny pomysl ?

Autor:  mirekk36 [ 8 lis 2018, o 19:26 ]
Tytuł:  Re: Zapis binarny w b4a

grzeniu 73 napisał(a):
ale jak zapisać to w B4a tak żebym mógł wysłać do avr jaka jeden bajt.

(sorki) ja pierdziu ;) no ale prościej to już się nie da niż w C ;)

zmienna = 1;

zmienna = 0;

i tak samo w B4A .... nawet ciężko tu się nad czymś zastanawiać ;)

Autor:  Jaglarz [ 8 lis 2018, o 19:49 ]
Tytuł:  Re: Zapis binarny w b4a

Zadeklaruj zmienną jako Byte i masz tylko 8 bitów. :p

Autor:  andrews [ 8 lis 2018, o 20:07 ]
Tytuł:  Re: Zapis binarny w b4a

A czy pytanie nie dotyczy czasami odpowiednika pola bitowego z języka C (nie wiem, czy taki istnieje) w B4A?

Autor:  grzeniu 73 [ 8 lis 2018, o 20:14 ]
Tytuł:  Re: Zapis binarny w b4a

Jest nad czym sie zastanawiając ,ponieważ chce ustawiać jeden bit w bajcie. Tak żeby 7 dni zmieściło sie w jednym bajcie.
Gdybym chciał zrobić 7 zmiennych to nie zadawałbym pytania.
"A czy pytanie nie dotyczy czasami odpowiednika pola bitowego z języka C w B4A?"
prawdę mówiąc nie wiem jak to sie nazywa w C.
Ale wiem ze można ustawić konkretny bit w byte. Tak jak napisałem w pierwszym poście. Byc może zle tłumaczę,ale inaczej nie potrafię tego wyjaśnić.
dim zmienna as byte
np: poniedzialek = zmienna.0
wtorek = zmienna.1
sroda = zmienna.2
...
i teraz zmienna=&b00000000 i wszystkie dni mam wyłączone , robię zmienna= b&00000111 i mam trzy dni włączone i reszta wylaczona.

Autor:  Jaglarz [ 8 lis 2018, o 20:25 ]
Tytuł:  Re: Zapis binarny w b4a

A dlaczego się upierasz przy ustawianiu bitów zamiast wysyłać konkretne cyfry? Czwarte 3, Piątek 4...

Autor:  andrews [ 8 lis 2018, o 20:32 ]
Tytuł:  Re: Zapis binarny w b4a

Nie wiem, jak jest w B4A, ale o ile pamiętam trochę język Basic (VBA) to trzeba użyć triku w stylu:
Składnia: [ Pobierz ] [ Ukryj ]
język basic4gl
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Autor:  grzeniu 73 [ 8 lis 2018, o 20:37 ]
Tytuł:  Re: Zapis binarny w b4a

Musze sprawdzić Twój sposób.
Na razie na kalkulatorze sprawdziłem i to jest to o co mi chodziło. Dzięki

Chce w jednym bajcie bo mam 16 przekaźników ,kazdy ma 4 programy i kazdy program 7 dni. Byłoby duzo zmiennych. Dzięki zapisom samych bitów uprości to bardzo i zapis i odczyt tego wszystkiego.

Autor:  mirekk36 [ 8 lis 2018, o 20:55 ]
Tytuł:  Re: Zapis binarny w b4a

w b4a są tak samo operacje AND i OR więc operacje bitowe - zatem ustawianie bitów czy ich zerowanie odbywa się dokładnie jak w C - tylko inny nieco syntax

Autor:  grzeniu 73 [ 8 lis 2018, o 20:58 ]
Tytuł:  Re: Zapis binarny w b4a

Problem w tym ze ani C nie znam ,ani nie mam pojęcia jak to zapisać w B4a .Nawet nie wiem dokładnie czego szukać w helpie. Dlatego poprosiłem o pomoc.

Autor:  andrews [ 8 lis 2018, o 21:31 ]
Tytuł:  Re: Zapis binarny w b4a

Chyba jednak mój kod nie zadziała w B4A. Natknąłem się teraz na stronę https://www.b4x.com/android/help/core.html#bit, z której wynika, że do operacji bitowych należy użyć metod obiektu Bit, czyli:
Składnia: [ Pobierz ] [ Ukryj ]
język basic4gl
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Dodatkowo argumenty operacji bitowych powinny być typu Int, więc nie jestem pewien, czy to zadziała z Byte (ewentualnie można wykonać operacje na Int, a później obciąć do Byte).

Nie mam możliwości tego sprawdzić, więc mam nadzieję, że sobie poradzisz ;)
Powodzenia

Autor:  grzeniu 73 [ 8 lis 2018, o 21:34 ]
Tytuł:  Re: Zapis binarny w b4a

Pewnie. Mniej więcej wiem o co chodzi.

Autor:  tfosik [ 11 lis 2018, o 19:36 ]
Tytuł:  Re: Zapis binarny w b4a

Witam
pewnie w bascomie chcesz zrobić maskowanie bitów... coś w tę "mańkę"
Składnia: [ Pobierz ] [ Ukryj ]
język basic4gl
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


kolega Jaglarz podsunął Ci chyba proste rozwiązanie...wysyłaj cyfry poniedziałek=0, wtorek=1, środa=3 itd

Składnia: [ Pobierz ] [ Ukryj ]
język basic4gl
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

no coś w tym stylu. Tak też możesz ustawić cały port

Autor:  grzeniu 73 [ 12 lis 2018, o 10:46 ]
Tytuł:  Re: Zapis binarny w b4a

W bascomie ja wiem jak to zrobić nie wiedziałem jak to ogarnąć w b4a. Ale przy pomocy kodu zamieszczonego wyżej napisałem sobie procedurke.

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/