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



Teraz jest 14 lut 2025, o 09:23


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
Autor Wiadomość
PostNapisane: 7 sty 2015, o 09:41 
Offline
Nowy

Dołączył(a): 07 sty 2015
Posty: 6
Pomógł: 0

Witam serdecznie
Mam problem z pętlą for i nie bardzo wiem jak go rozgryźć... :(
Piszę program który ma mi co sekundę naprzemiennie zapalać diodę podłączoną do portu PB0 oraz co 10 sekund diodę podłączoną do PB1. Udało mi się rozwiązać problem przy instrukcji if (treść zawarta w komentarzu).

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


Czekam na wszelkie sugestię i pomoc :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 sty 2015, o 10:39 
Offline
Użytkownik

Dołączył(a): 29 mar 2012
Posty: 59
Lokalizacja: Lubliniec
Pomógł: 3

Po pierwsze wszystkie takie działania jakie robisz w przerwaniu, zdecydowanie lepiej robić w pętli while, ponieważ przerwanie ma wykonywać się jak najszybciej! a co do samej idei to ja bym to zrobił na szybko tak (pisane z głowy mogą być błędy, a na razie nie mam szans przetestować na sprzęcie, a i ustawienia timera nie sprawdzałem, stwierdzam że zrobiłeś to dobrze;)):
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 sty 2015, o 10:52 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

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



Kolego a jak myślisz co się dzieje z tą pętlą for zakładając że led jest wyłączony?

1 obieg petli zapali leda
2 obieg zgasi
3 obieg zapali
4 obieg pętli zgasi leda
5 obieg zapali

Po wyjściu z pętli go zgasi

W pętli nie ma żadnych opóźnień dlatego dla ciebie led się nie zapala.

Dodając w pętli brzydkiego delay ale tylko dla testów by zobaczyć co się dzieje zobaczysz to co napisałem.

Nie mniej staraj się nie używać delay więc moja podpowiedz z delay jest tylko w celu zobrazowania tego co tam się dzieje.

Postaraj się przerwania używać tylko do flag.

Pozostały kod pisz w pętli głównej progtamu bo po to ona jest.

I tak jak kolega wyżej pisze i podaje ci przykład to idz jego sposobem a wszystko ci się rozjaśni i będziesz wiedział dlaczego tak a nie inaczej.

Namazane ze smarta.

_________________
Usługi druku przestrzennego - www.drumik.pl



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 1 gość


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