Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 30 sty 2025, o 21:47


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 
Autor Wiadomość
PostNapisane: 19 kwi 2016, o 11:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lis 2012
Posty: 298
Pomógł: 13

Witam!
Nie mam na szybko pod ręką UARTA ani LCD, żeby sprawdzić zawartość zmiennej.
Wymyśliłem, że mogę sobie sprawdzać po kolei bity w bajcie i jak "1" to zapal diodę, jak "0" to zgaś.
LED_Y wskazuje jakby sygnał zegarowy - odczyty kolejnego bitu, a LED_G w tym czasie wskazuje jego wartość.

Napisałem poniższy kod, i nie chodzi. Zmienna reg=0xE5.

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


Niestety if((reg&(1<<cnt))==1) nigdy nie jest spełniony. Nie wiem, czy błąd w myśleniu, czy coś innego. Oświecicie?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 kwi 2016, o 11:52 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sie 2013
Posty: 119
Lokalizacja: Cinisi
Pomógł: 12

Tak na szybko, jeśli będziesz sprawdzał bit na miejscu trzecim, to zastanów się czy cały bajt będzie miał wartość 1 ;)

_________________
sig off :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 kwi 2016, o 13:33 
Offline
Użytkownik

Dołączył(a): 18 kwi 2013
Posty: 181
Lokalizacja: Kraków
Pomógł: 30

Wydaje mi się , że tu raczej musisz przesuwać zmienną reg w prawo, żeby porównywać to z jedynką
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 kwi 2016, o 14:04 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sie 2013
Posty: 119
Lokalizacja: Cinisi
Pomógł: 12

Można na wiele sposobów rozwiązać, np. tak jak sprawdza się stan klawiszy, opisane dobrze w bluebooku;)
Pozdrawiam


Autor postu otrzymał pochwałę

_________________
sig off :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 kwi 2016, o 15:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 maja 2013
Posty: 432
Lokalizacja: Gostyń / Poznań
Pomógł: 25

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

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


i z tego co sprawdzałem będzie git ;) po analizie sam zobaczysz o co chodzi...
zeby bylo ==1 to po & jeszcze byś musiał bity machnac w prawo o cnt tak więc kolega @janusz17 podpowiedział prawidłowo.


P.S
Ja na szybko zapodałem twój kod w Code::Blocks'ie zeby w terminalu wyswietlic wszystko... takie logiczno matematyczne problemy można sobie fajnie tak podglądać i analizować bez użycia procka...hmm właściwie to micro procka ;)

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


Autor postu otrzymał pochwałę

_________________
Podpis...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 kwi 2016, o 07:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lis 2012
Posty: 298
Pomógł: 13

Dzięki wszystkim za pomoc!;-)
Tak jakoś mi się wydawało, że to co robię jest analogiczne do sposobu w jaki sprawdza się klawisz.
Jakoś nie mogłem tego w głowie przetrawić i wyszło błędnie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO