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



Teraz jest 13 lip 2026, o 00:51


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
Autor Wiadomość
PostNapisane: 1 sie 2013, o 01:06 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 mar 2013
Posty: 64
Pomógł: 0

Witam

Ze względu na to, że po ciężkich przeżyciach doszedłem do rozdziału nt. I2C w niebieskiej książce, postanowiłem się pobawić zegarem PCF8563, który mam na swoim zestawie ewaluacyjnym. Mój problem nie polega na skomunikowaniu uC z układem RTC a raczej z programowym timerem dzięki któremu chce uzyskać odczyt co 1 s i wyświetlać godzinę na terminalu bez używania DELAYA. Chodzi mi bardziej o pewną linię w kodzie. Ale do rzeczy. Oto kod:

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


Na podstawie powyższego kodu otrzymam następujące dane na terminalu:

Obrazek

Co jest oczywiste dla mnie, bo wyświetlam wartość flagi, która co sekundę na 5ms jest ustawiana na 1, wykonuje się warunek if w pętli głównej i w konsekwencji wykonuję obsługę I2C wraz z wyświetleniem mojej godziny (zaznaczona białą pętlą na obrazku) na terminalu.

Moje pytanie jest takie: dlaczego gdy zakomentuję linię 111:

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


to na terminalu nic się nie pojawia ?

Pozdrawiam

_________________
-



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 sie 2013, o 07:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 13 paź 2011
Posty: 582
Pomógł: 17

Nie rozuemiem do końca sprawdzania tego warunku:(ja by,m go wyrzucił całkowicie)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


i najpierw zamienił ten warunek :

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


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


A potem w whilu w mainie

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


Teraz powinno działać :D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 sie 2013, o 13:52 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 mar 2013
Posty: 64
Pomógł: 0

Twój kod daje identyczne rezultaty ;/ ... Terminal działa ok, bo jak nie opóźniam wszystkiego w przerwaniu tylko zakomentowanym delayem to wszystko działa jak trzeba ... ale zagadka wciąż nie rozwiązana :) .... to do ja robię (ten warunek w przerwaniu, którego nie rozumiesz) ... to po prostu wygenerowanie impulsiku o szerokości 5ms (flaga), który załącza warunek w pętli głównej. ,... pozostałe 995 ms flaga jest ustawiona na 0. (informuje mnie o tym dioda na porcie C).

------------------------ [ Dodano po: 50 minutach ]

Dobra, wygląda na to że jest to sztandarowy przykład do tego, aby dowiedzieć się czym grozi niedodanie specyfikatora volatile w linii 31. Problem rozwiązany ;) ... lecz nadal ciekawi mnie to dlaczego wywołanie funkcji uart_putint w linii 111 powoduje wyświetlanie tej godziny na terminalu, a zakomentowanie już nie..... przecież ta linia ma się nikjak do wyświetlania godziny ... czyżby to była jakaś sprzętowa sprawa ??

_________________
-



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

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