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

rejestr przesuwny- konflikt dwóch funkcji.
https://forum.atnel.pl/topic20735.html
Strona 1 z 1

Autor:  wojciechgorzolka [ 14 maja 2018, o 11:12 ]
Tytuł:  rejestr przesuwny- konflikt dwóch funkcji.

Cześć.
Zabrałem się wczoraj pierwszy raz za rejestr przesuwny i przesyłanie bajtów to rejestru przez SPI. Funkcję do wysyłania użyłem z poradnika Pana Mirka z Poradnika.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Wysyłam cały bajt toglując klawiszem zmienną
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Obsługa klawisza jest następująca:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Obsługa klawisza jest oparta o timer programowy.
Program ogólnie działa jeśli używam jednego klawisza, który włącza i wyłącza określoną diodę przez rejestr przesuwny. Toglowanie diodą działa idealnie. Problem się pojawia, jeśli oprogramuję w takim sam sposób drugi klawisz, w którym togluję kolejną zmienną. W obsłudze drugiego klawisza funkcje są bliźniacze.
Jeśli w Pętli głównej uruchomię obsługę dwóch klawiszy jednocześnie, to toglowanie nie działa idealnie za każdym razem.
Jaka może być przyczyna źle działających klawiszy?

:)

Autor:  Daro69 [ 14 maja 2018, o 12:22 ]
Tytuł:  Re: rejestr przesuwny- konflikt dwóch funkcji.

Część,
Wciskając klawisz 2,
Nadal pozostaje informacja z klawisza pierwszego
i jest wysyłany bajt od nie wciśniętego klawiaza1.
Nakładają się zależności.
Tak się domyślam.

Wysłane z mojego Lenovo K33a42 przy użyciu Tapatalka

Autor:  wojciechgorzolka [ 14 maja 2018, o 12:28 ]
Tytuł:  Re: rejestr przesuwny- konflikt dwóch funkcji.

ale Przecież działa zatrzask po wysłaniu bajtu, i chyba nie jest ciągle w pętli wysyłany bajt. Wydaje mi się,że jest raz wysyłany i koniec. Więc nie wydaje mi się aby to był powód. Ale jestem początkującym i mogę się mylić. Jeśli jest tak jak piszesz, to czy znasz rozwiązanie tego problemu? Bo chcę dołączyć jeszcze ze cztery klawisze :)

Autor:  Daro69 [ 14 maja 2018, o 12:29 ]
Tytuł:  Re: rejestr przesuwny- konflikt dwóch funkcji.

Podpowiem tak:
Wysyłaj tę samą zmienną, a klawiszami toglyj w niej bity. :)

Wysłane z mojego Lenovo K33a42 przy użyciu Tapatalka

Autor:  Daro69 [ 14 maja 2018, o 12:33 ]
Tytuł:  Re: rejestr przesuwny- konflikt dwóch funkcji.

Też jestem początkujący i często się mylę. ;)

Wysłane z mojego Lenovo K33a42 przy użyciu Tapatalka

Autor:  wojciechgorzolka [ 14 maja 2018, o 12:39 ]
Tytuł:  Re: rejestr przesuwny- konflikt dwóch funkcji.

to jest jakaś myśl. muszę nad tym pomyśleć Darku ;)

Autor:  wojciechgorzolka [ 14 maja 2018, o 21:56 ]
Tytuł:  Re: rejestr przesuwny- konflikt dwóch funkcji.

Dzięki pomocy Darka problem został rozwiązany. Rzecz rozbijała się o zmienną,
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

która była taka sama w obsłudze dwóch różnych klawiszy. Nie wpadłem na to,że w każdym z klawiszy ta zmienna musi być inna.
:D
To forum jest najlepsze we wszechświecie :) :D :)

Autor:  Daro69 [ 14 maja 2018, o 22:35 ]
Tytuł:  Re: rejestr przesuwny- konflikt dwóch funkcji.

Dzięki, ;)
Zerknij jeszcze na pomocniczá, można i bez niej napisać.
Tam na bank masz szpilki, krótkie ale są. ;)
Jak zamienisz miejscami klawiaza1 z klawisz 2, to pewnie wyraźniej zauważysz.
Jak jutro sprawdzisz to opisz. narka. ;)

Wysłane z mojego Lenovo K33a42 przy użyciu Tapatalka

Autor:  Daro69 [ 14 maja 2018, o 22:37 ]
Tytuł:  Re: rejestr przesuwny- konflikt dwóch funkcji.

Tzn. nie klawisz...
Tylko toglowanie1 z toglowanie2.

Wysłane z mojego Lenovo K33a42 przy użyciu Tapatalka

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