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



Teraz jest 19 kwi 2026, o 22:06


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 12 ] 
Autor Wiadomość
PostNapisane: 3 sie 2013, o 18:44 
Offline
Nowy

Dołączył(a): 28 cze 2013
Posty: 13
Pomógł: 0

Witam wszystkich userów.
Jako, że to mój pierwszy post i zarazem pewnie nie ostatni :) to może mi ktoś wyjaśni dlaczego próbując sterowac 2 diodami na procesorze Atmega8-16PU, gdzie jedną diode mam podłączoną do PB0 a drugą do PB1 to zachowanie ich jest dość dziwne:
Na PB0 jest ok - dioda świeci ciągle i gaśnie (na komende)
na PB1 zapala sie i gaśnie - ale nie świeci ciągłym światłem tylko miga - dałem ją na inne porty i niestety to samo. Więc albo ten port PB0 jest wyjątkowy (w co nie wierzę) albo coś źle zrobiłem lub czegoś nie zrobiłem (w to już wierzę :) )
Kodu nie zamieszczam bo to ten podstawowy z książki P.Mirka ale tylko chciałem drugą diodę dołożyć.


Projekt będzie miał na celu sterowaniem żarówkami postojowymi w samochodzie - taniej to wyjdzie jak kupno stroboskopu. Więc wiadomo że diody zastąpię później przekaźnikami.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sie 2013, o 19:02 
Offline
Nowy

Dołączył(a): 28 cze 2013
Posty: 13
Pomógł: 0

Zamieszczam w takim razie. Nie chciałem tworzyć osobnych tematów żeby śmietnika nie robić.


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


Kody zamieszczamy przy pomocy syntax=c - Anty.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sie 2013, o 19:06 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 kwi 2013
Posty: 381
Lokalizacja: Łowisko
Pomógł: 32

nie mam jak teraz tego sprawdzić, ale co mi sie rzuca w oczy to złe definicje, spójrz proszę DIODA1 (1<<PORTB0) raczej powinno być (1<<PB0) w zależności do którego pinu podłączasz diodę, a poza tym dlaczego nie stosujesz pętli while(1)? A i jeszcze jedno, ustawisz rejestr DDRB jako wyjściowy ok, ale co z Pinami?

_________________
невозможно ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sie 2013, o 19:12 
Offline
Nowy

Dołączył(a): 28 cze 2013
Posty: 13
Pomógł: 0

PORTB0 - działa tak samo jak PB0 - kombinowałem na różne sposoby już.
Pętlę miałem w pierwotnym kodzie - ale przez tą diodę zaczeło mi wszystko mrugać więć muszę na sztywno najpierw to opanować. Później jak najbardziej pętla załatwi sprawę.
Hmm, piny - tak myślałem że jeszcze się coś definiuje. Doczytam troche ale jakby rzuciło Ci się jeszcze coś na myśl to z góry dziękuję.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sie 2013, o 19:27 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 kwi 2013
Posty: 381
Lokalizacja: Łowisko
Pomógł: 32

ok, wiem jak to poprawić, jednakże sam doczytaj, poszukaj, bo przecież nauka programowania nie polega na kopiowaniu gotowych rozwiązań, ale na główkowaniu, bo przecież na tym to polega ;) jednak gdyby Ci nie wychodziło to pisz, jak masz niebieska książkę str 174

_________________
невозможно ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sie 2013, o 19:31 
Offline
Nowy

Dołączył(a): 28 cze 2013
Posty: 13
Pomógł: 0

Daj wskazówkę - ja już młody nie jestem :)
Wziąłem się za to bo człowiek zawsze chce sie czegoś nowego nauczyć, a czy się to przyda później w życiu...to juz inna bajka.
Tak czy inaczej rozwiązanie tu zamieszczę dla potomnych.



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

Dołączył(a): 03 kwi 2013
Posty: 381
Lokalizacja: Łowisko
Pomógł: 32

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


program powoduje miganie dwiema diodami, program działa, zapalanie diody odbywa się stanem niskim, czyli połącznie wygląda nastepująco: uC do katody (-) diody przez rezystor do Vcc, jeżeli nie takiego efektu oczekiwałeś, to napisz co dokładniej program ma robić ;)

_________________
невозможно ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sie 2013, o 20:22 
Offline
Nowy

Dołączył(a): 28 cze 2013
Posty: 13
Pomógł: 0

Własnie o to chodzi że nie działa :)

Dioda na porcie PB0 - zachowuje się tak jak nakazuje program
Natomiast dioda Pb1 - zamiast zapalić się na stałe to miga. Wyłączyć ją można, ale nie świeci ciągłym światłem. - tu jest moja największa bolączka bo chyba coś jest nie tak ustawione z portem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sie 2013, o 20:26 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 kwi 2013
Posty: 381
Lokalizacja: Łowisko
Pomógł: 32

czyli dioda na PB0 ma migać, dioda na PB1 ma cały czas być włączona?

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: 3 sie 2013, o 20:39 
Offline
Nowy

Dołączył(a): 28 cze 2013
Posty: 13
Pomógł: 0

Nie koncentruj sie na samym programie. Ja rozumiem jego działanie.

Np.

DIODA1_OFF;
DIODA2_OFF;
_delay_ms(200);
DIODA2_ON; - miga!! choć powinna też świecić ciągle
DIODA1_ON; - świeci na stałe
_delay_ms(2000);
DIODA1_OFF;
DIODA2_OFF;


Chodzi że coś jest nie tak z napięciem na porcie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sie 2013, o 20:51 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27456
Lokalizacja: Szczecin
Pomógł: 1045

Cytuj:
DIODA2_ON; - miga!! choć powinna też świecić ciągle


Może sprawdź czy nie masz migającej diody LED ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 sie 2013, o 21:04 
Offline
Nowy

Dołączył(a): 28 cze 2013
Posty: 13
Pomógł: 0

Dioda dobra :) zamieniałem je miejscami, ale dzieki za podsunięcie pomysłu - mam uwalony mikrokontroler. Zmieniłem na Atmega8-32 i na tym działa. Tyle godzin kombinowania a rozwiązanie banalne. Z moim szczęściem do zakupów powinienem zacząć od sprawdzenia sprzętu :P
Dzieki jeszcze raz

Tylko dlaczego wpisujesz się w cudzym temacie? Wydzielono Różowy J.



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

Strefa czasowa: UTC + 1


Kto przegląda forum

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