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



Teraz jest 22 gru 2024, o 02:40


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
Autor Wiadomość
PostNapisane: 15 wrz 2016, o 15:44 
Offline
Nowy

Dołączył(a): 05 maja 2014
Posty: 16
Pomógł: 0

Witajcie forumowicze,

Zrobiłem schemacik i płyteczkę ale niestety pojawiły się pierwsze problemy, wgrywam program, chodząca dioda ma sobie ma chodzić a jak nacisnę przycisk na płycę z uC ( Mega32), to mają zapalić się wszystkie diody i z rejestru (wysyłam 0x00), oraz uC ma włączyć przekaźnik poprzez tranzystor na x czasu, ale to nieważne.

Wszystko działa, ale napotkałem dziwne zjawisko, diodka ma chodzić sobie w dwie strony, niestety czasem chodzi, czasem nie jakby wszystko łapało laga, albo diodka chodziła tyle że ledwo widzialna. Najlepsze, że na stykówce wszystko pinknie chodziło. Kolejną dziwną rzeczą jest, że po naciśnięciu przycisku wszystkie diody się zapalają po wysłaniu (0x00) i z tym nie ma problemu (problem dotyczący przycisku w #1). Program z kanału Mirka tj.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

switch_on(); - sprawdza czy został wciśnięty przycisk, to działa znakomicie (hehe "znakomicie" #1).

Wewnątrz tej funkcji jest m.in. inny delay
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Takie "ala" odliczanie czasu do wyłączenia przekaźnika po tej funkcji.

#1 - niestety chodząca diodka po wciskaniu przycisku działała... do wczoraj, dzisiaj układzik zgłupiał. Może uszkodziłem go podczas testów, jutro będę miał kilka nowych to przelutuję, zwarć nie ma, przejścia wszystkie sprawdziłem 3 razy bo szkoda było mi tej płytki :) Niestety problem może leżeć po stronie schematu bądź programu, ostatecznie ten układzik może być uszkodzony, dziwi mnie to, bo zrobiłem 2 takie same płytki i nie chce mi się wierzyć aby 2 układy były uszkodzone :)

Eagle -
Obrazek
WAŻNE ! - błąd na schemacie, oporniki niby 10k, ale dodane są ~700 Ohm, pierwsze z szeregu w wzwyż, nie znam dokładnej wartości.
To nie jest moja pierwsza płytka ale takie dziwactwo mam pierwszy raz w życiu, bardziej obstawiałbym błąd w programie, bo z AVR mam styczność od niedawna tak naprawdę, książka leżała i kurzyła się... do teraz :)

Dodam jeszcze, że na stykówce pomagało (chwilowo na 2 - 3 przejścia pętli nieskończonej) włożenie pomiędzy VCC układu a GND kondka 100nF, niestety diody teraz już w ogóle nie chodzą, ale układ reaguje na przycisk, tak więc program działa (poniekąd), wtedy też zaświecają się na chwilkę wszystkie diody informujące o wciśnięciu przycisku (włączenie przekaźnika), potem powinna jedna przelecieć i wrócić ( nie działa ), zaświecają się wszystkie na chwilkę (działa) i wraz z gaśnięciem na bramkę tranzystora przekaźnika jest podawane logiczne 0 (i to działa).

Myślałem też nad tym, że może ścieżki są za wąskie (16 mils), ale to nie to bo ten sam układ na stykówce też wariuje, gdzieś mam błąd, może paprochów z zasilania za dużo, nie mam pomysłu już na to. Czyste C to nie to samo co LD i trochę mnie to przerastać zaczyna.

Będę wdzięczny za każdą wskazówkę :)


-------------------
Kolejne spostrzeżenie ale nie chce już mącić w tekście, bo chciałem wszystko napisać a pewnie powtórzyłem niektóre rzeczy po 2 razy :)

Pierwsza diodka od tego mojego "licznika" i w pętli głównej i w przycisku zapala się, zaobserwowałem to, podczas włączania programu robię test diod w funkcji main
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Po tym teście, zapala się pierwsza diodka na czas z _delay_ms, gaśnie i .... no i właśnie i nic, i czekam i czekam, a tutaj zapala się co jakiś czas 1 diodka (pierwsza), tak więc funkcja chce startować.

Mam nadzieję, że połapiecie się w tym poście i ktoś bardziej doświadczony wyłapie babola, bo za dużo rzeczy tu działa aby było to totalnie skopane. Musi to być pewnie głupi błąd, którego ja nie mogę wychwycić.

Dla wszystkich, którzy zdołali przeczytać moje wypociny - SZACUN, napisane jest to w taki sposób, bo co włączę to dziadostwo do sieci, to coś innego się pokazuje a chciałbym tu podać jak najwięcej informacji.

Pozdrawiam :)



Ostatnio edytowano 15 wrz 2016, o 19:10 przez pablo4480, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 wrz 2016, o 16:51 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 cze 2014
Posty: 855
Lokalizacja: pod Warszawą
Pomógł: 58

cześć

schemat wygląda ok. tylko napisz jeszcze gdzie masz podłączone wyjście z nogi QH* i jak to wszystko zasilasz łącznie z procesorem.

_________________
Pomóżcie mi stanąć na nogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 wrz 2016, o 19:09 
Offline
Nowy

Dołączył(a): 05 maja 2014
Posty: 16
Pomógł: 0

:shock: Podłączenie QH* do GND, zamiast "wiszenia w powietrzu" oraz dodanie kondensatora 100n zaraz obok nóżki VCC rozwiązało problem... Dzięki wielkie Kolego, niech Ci Bozia w dzieciach wynagrodzi :D



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 0 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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO