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



Teraz jest 24 mar 2026, o 14:34


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 
Autor Wiadomość
PostNapisane: 16 mar 2013, o 17:51 
Offline
Użytkownik

Dołączył(a): 09 mar 2013
Posty: 28
Lokalizacja: Góra Kalwaria
Pomógł: 0

Mam pytanie jak napisać kod, aby w instrukcji IF, odwoływać się do kąkretnego bitu. Chodzi o to aby w zależności od wartości bitu 8 wykonał się warunek lub instrukcje po else. Napisałem taki kod i nie działa:

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


wychodzi błąd:
Description Resource Path Location Type
expected ')' before numeric constant main.c TEST_LED_KEY line 252 C/C++ Problem



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2013, o 18:01 
Offline
Użytkownik

Dołączył(a): 27 gru 2012
Posty: 159
Pomógł: 3

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


gdzie N to nr bitu


pamiętaj też że bity w C liczymy od 0
a więc w 8-mio bitowej zmiennej nie ma bitu nr 8 tylko jest numeracja od 0 do 7


Autor postu otrzymał pochwałę

_________________
sig off ;(



Ostatnio edytowano 17 mar 2013, o 12:15 przez staneq, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2013, o 19:30 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 gru 2012
Posty: 72
Pomógł: 6

Cytuj:
... nie ma bitu nr 8 tylko jest tylko 7 bitów

Tak dla ścisłości jest 8 bitów, ósmy bit ma numer 7, a pierwszy nr 0. a nie 7 bitów taki malutki błąd piśmienny ;P



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2013, o 19:30 
Offline
Użytkownik

Dołączył(a): 09 mar 2013
Posty: 28
Lokalizacja: Góra Kalwaria
Pomógł: 0

Dzięki działa, ale warunej jest spełniony daa bitu=1, a jak zapisać, aby był spełniony dla bitu=0?

------------------------ [ Dodano po: 2 minutach ]

staneq napisał(a):
a więc w 8-mio bitowej zmiennej nie ma bitu nr 8 tylko jest tylko 7 bitów


Dlatego podałem deklarację zmiennej unit16_t



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2013, o 20:12 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 lip 2012
Posty: 157
Pomógł: 8

tom1988p napisał że bity sa numerowane od 0 do 7 więc (1<<N), gdzie N jest liczbą w przedziale 0...7, liczac od 0 do 7, mamy 8bitów. Inaczej, gdyby naszym językiem porozumiewania się na forum był C to bit ma zakres (0>=0|<=7).



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2013, o 20:33 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

sauron80 napisał(a):
ale warunej jest spełniony daa bitu=1, a jak zapisać, aby był spełniony dla bitu=0?

Będzie to tak:
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: 16 mar 2013, o 22:12 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 mar 2012
Posty: 177
Pomógł: 9

sauron80 napisał(a):
Dlatego podałem deklarację zmiennej unit16_t


A nie powinno być czasem uint16_t ? bo widzę że w pierwszym kodzie też masz unit16_t



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 mar 2013, o 12:14 
Offline
Użytkownik

Dołączył(a): 27 gru 2012
Posty: 159
Pomógł: 3

tom1988p napisał(a):
Cytuj:
... nie ma bitu nr 8 tylko jest tylko 7 bitów

Tak dla ścisłości jest 8 bitów, ósmy bit ma numer 7, a pierwszy nr 0. a nie 7 bitów taki malutki błąd piśmienny ;P


Przepraszam za chochlika.

_________________
sig off ;(



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: 8 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 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