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



Teraz jest 16 sty 2026, o 08:40


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 
Autor Wiadomość
PostNapisane: 23 cze 2015, o 12:22 
Offline
Użytkownik

Dołączył(a): 19 lut 2015
Posty: 29
Pomógł: 0

Witam,
Chciałem stworzyć program, w którym pierwsze zbocze narastające na INT0 będzie generowało stan wysoki na pinie PB1 a pierwsze zbocze narastające na INT1 będzie ten stan zmieniać na niski.
Program wygląda następująco:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Czy kod ten jest poprawny?
Bo nijak nie chce działać. Stan wysoki na PB1 pokazuje się kiedy chce - np przy dotknięciu paluchem mikrokontrolera, tylko nie wtedy kiedy powinien. Po przejściu PB1 w stan wysoki w stan niski już nie przechodzi.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 cze 2015, o 14:17 
Offline
Moderator
Avatar użytkownika

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

A masz pan podciągnięte wejścia do VCC ?

_________________
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: 23 cze 2015, o 16:31 
Offline
Użytkownik

Dołączył(a): 19 lut 2015
Posty: 29
Pomógł: 0

No nie mam. ;)
Znalazłem u Pana na blogu takie coś:
Cytuj:
Dlatego też wiele osób się zastanawia dlaczego np, jeśli ustawią dany pin jako WEJŚCIE ale nie podciągną go programowo do VCC oraz nie podciągną go do VCC za pomocą zewnętrznego rezystora i na wejściu podłączą przycisk - to mikrokontroler jakby zaczyna żyć własnym życiem ;) .... raz sam widzi że przycisk jest wciśnięty pomimo że faktycznie tak nie jest a innym razem że nie jest wciśnięty. A to dlatego, że napięcie na wejściu "pływa" tzn. zmienia się swobodnie pomiędzy wartością GND a VCC.

I nie bardzo rozumiem czy podciągnąć do VCC powinienem programowo?
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Czy przez zewnętrzny rezystor? (jaki?)
Z góry dziękuję Panie Mirku za odpowiedź.
Pozdrawiam

PS. Czy poza brakiem podciągnięcia do VCC kod wydaje się być poprawny i logiczny?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 cze 2015, o 16:45 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 10 mar 2013
Posty: 739
Lokalizacja: Poznań
Pomógł: 84

Zauważ że przerwanie wykona Ci się tylko raz
ponieważ po wejściu w przerwanie zaraz je wyłączasz,
chyba że to zamierzone działanie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 cze 2015, o 20:41 
Offline
Użytkownik

Dołączył(a): 19 lut 2015
Posty: 29
Pomógł: 0

Zamierzone działanie. Przerwanie ma się wykonać tylko raz.
A co z tym podciągnięciem do VCC?
Programowo czy zewnętrznym rezysotorem (jakim?)?
A może i tak i tak?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 cze 2015, o 21:02 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 10 mar 2013
Posty: 739
Lokalizacja: Poznań
Pomógł: 84

Wystarczy programowo przez wpisanie jedynki
na pin portu który jest ustawiony jako wejście
np. cały port D

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


Wszystkie piny portu D są wejściami podciągniętymi
wewnętrznymi rezystorami do VCC

Edit:

Jeśli uC pracuje w bardzo zakłóconym środowisku to może
okazać się lepsze zewnętrzne podciągnięcie rezystorem do VCC .

Co do wartości tego rezystora to już musiałby się wypowiedzieć ktoś
bardziej doświadczony , ja jeszcze nie stosowałem takiego rozwiązania.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 cze 2015, o 08:12 
Offline
Użytkownik
Avatar użytkownika

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

Takie same co do resetu czyli 10kR spokojnie wystarczy.

Namazane ze smarta.


Autor postu otrzymał pochwałę

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 cze 2015, o 13:21 
Offline
Użytkownik

Dołączył(a): 19 lut 2015
Posty: 29
Pomógł: 0

Ok. Problem rozwiązany program działa. Dziękuję za pomoc.



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 6 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