mejstej Napisano Maj 7, 2010 Udostępnij Napisano Maj 7, 2010 Mam wielki problem.. Napisałem program w BASCOMie który po naciśnięciu guzika ma zmienić stan diod, wszystko niby jest OK oprócz tego że wystarczy że zbliżę palec do guziki a wszystko zaczyna już reagować jak bym nacisną. Nie mam pojęcia co jest nie tak.. i odtego mrygają jak bym kilkanaście razy je nacisną Jak guziki podłączę bezpośrednio z diodami pomijając µC (ATtiny 2313) to wszystko działa Nie wiem, może robię jakiś prosty błąd.... Jest to obrazek poglądowy - przyciski są podłączone do innych wejść Oporniki na obrazku to 2*48Ω czyli 96Ω Jeszcze namalowałem tylko 4 diody a tak naprawdę jest ich 8 $regfile = "attiny2313.dat" 'najpierw określamy typ proca $crystal = 1000000 'definiujemy z jakim taktowaniem będzie pracował Config Portd = Input 'port d jako wejścia Portd = &B0000000 'wszędzie stan spoczynkowy-0 Config Portb = Output 'pprt b jako wyjścia Portb = &B1011010 Do 'pętla nieskończona If Pind.1 = 1 Then 'przyciski 1 wciśnięty Waitms 50 Toggle Portb.3 Toggle Portb.6 Toggle Portb.2 Toggle Portb.7 End If If Pind.2 = 1 Then 'przyciski 2 wciśnięty Waitms 50 Toggle Portb.1 Toggle Portb.3 Toggle Portb.7 Toggle Portb.6 End If If Pind.5 = 1 Then 'przyciski 3 wciśnięty Waitms 50 Toggle Portb.1 Toggle Portb.4 Toggle Portb.2 Toggle Portb.7 End If Loop 'koniec pętli End 'koniec programu Cytuj Link do komentarza Share on other sites More sharing options...
Bobby Maj 7, 2010 Udostępnij Maj 7, 2010 Według tego co narysowałeś, to w programie masz ZU-PEŁ-NIE pomieszane piny, do których masz podpięte przycciski 🙂 Wg schematu masz podpięte do PD0, PA0, PD4, a wg kodu masz do PD1, PD2, PD5. Ponadto, sugerowałbym podpięcie przycisków do masy, nie do vcc, a do gnd i włączyć wewnętrzne rezystory podciągające (po ustawieniu portu jako wejście, ustawiasz piny, gdzie masz przyciski, tak jak bys miał dać na nie vcc (config blabla = input |następna linijka| blabla = 1)). Aha, nie podoba mi sie do końca też zasilanie - 3,66V. Powinno niby działac, ale dobre nawyki zawsze sie przydają. No i kondensator 100nF do nóżek scalak również powinien być. 1 Cytuj Link do komentarza Share on other sites More sharing options...
mejstej Maj 7, 2010 Autor tematu Udostępnij Maj 7, 2010 Znaczy jaka jest różnica czy podpina guziki do VCC czy do GND odruchowo podłączyłem do + możliwe że to przez to? Cytuj Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Maj 7, 2010 Udostępnij Maj 7, 2010 Oczywiście, przyciski powinny zwierać do masy. 1 Cytuj Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay
Elvis Maj 7, 2010 Udostępnij Maj 7, 2010 To prawda, że najlepiej podłączyć przyciski do gnd. Jednak ten układ też jest do uratowania. Wystarczy dodać rezystory między gnd a wejścia procesora. Jeśli podłączysz przyciski do gnd, rezystory nie będą konieczne. W procesorze można włączyć pullup-y, czyli wbudowane rezystory podłączone między vcc, a wejścia. 1 Cytuj Link do komentarza Share on other sites More sharing options...
KD93 Maj 7, 2010 Udostępnij Maj 7, 2010 A wewnętrzny pul-up nie pomoże? Mnie przy przyciskach zawsze pomagał. Cytuj Link do komentarza Share on other sites More sharing options...
Bobby Maj 7, 2010 Udostępnij Maj 7, 2010 No tak, tylko zauważ, że on ma przyciski podpięte do vcc. Musiałby wtedy być zastosowany 'pull-down'. Cytuj Link do komentarza Share on other sites More sharing options...
mejstej Maj 7, 2010 Autor tematu Udostępnij Maj 7, 2010 Już wszystko działa wystarczyło zmienić jak pisaliście z vcc na gnd wielkie dzięki 😅 Mi wydawało się oczywiste że guziki blokują napięcie przed procesorem tam samo jak przełączniki prąd od światła (230V).. czyli podsumowując wszystko (silniki, czujniki etc) co podłączam pod µC ma być do gnd a prąd ma iść z procesora? Cytuj Link do komentarza Share on other sites More sharing options...
Bobby Maj 7, 2010 Udostępnij Maj 7, 2010 Nie do końca. Przyciski podłącza się zwykle do gnd, aby wykorzystać wewnętrzne pull-upy. Wygodne to jest też przy czujnikach typu sharp 340k, tsop, które po wykryciu wiązki dają gnd na wyjście. Aby ustabilizować pomiar w stanie niewykrywania również podłącza się tego pull-upa. A, no i swoją drogą, lepiej jest gdy prąd wpływa do uC, niż miałby z niego wypływać (ograniczona wydajność prądowa wyjść). Dlatego jeśli diod jest więcej niż kilka, dobrze jest podpiąć je odwrotnie, tzn vcc - dioda + opornik - gpio. 1 Cytuj Link do komentarza Share on other sites More sharing options...
mejstej Maj 8, 2010 Autor tematu Udostępnij Maj 8, 2010 A to mam jeszcze jedno pytanie Mam silnik i żeby go podłączyć do procesora to muszę użyć jakiegoś tranzystora czy mogę podpiąć od razu do procesora? Jak zmierzyłem amperomierzem to natężenie dla silnika wynosiło 0,2A, przy obciążeniu nawet 1A Ile amper możne max płynąć przez 1 pin w attiny2313 Cytuj Link do komentarza Share on other sites More sharing options...
KD93 Maj 8, 2010 Udostępnij Maj 8, 2010 Musisz dać tranzystor, 200mA to 10 razy za duży prąd dla uC. 1 Cytuj Link do komentarza Share on other sites More sharing options...
Nawyk Maj 8, 2010 Udostępnij Maj 8, 2010 Poczytaj też o mostku H Cytuj Link do komentarza Share on other sites More sharing options...
mejstej Maj 8, 2010 Autor tematu Udostępnij Maj 8, 2010 znalazłem jakiś tranzystor jest na nim napisane WHE D 8050S Jakiś PDF coś takiego znalazłem wygląda tak samo możecie mi powiedzieć czy on jest dobry.. znaczy silnik pobiera około 0,3A a natężenie prądu wynosi 3,66V Cytuj Link do komentarza Share on other sites More sharing options...
Bobby Maj 8, 2010 Udostępnij Maj 8, 2010 natężenie prądu wynosi 3,66V Napięcie. Jest to całkowita różnica, poczytaj o tym 🙂 No i ten tranzystor się nada tylko, jeżeli silnik będzie pobierał max 700mA, a twój pobiera ponad 1A przy obciążeniu :]. Aha, i pamiętaj, że mając tylko klucz tranzystorowy będziesz w stanie regulować tylko czy silnik ma pracować czy nie, ewentualnie prędkość (PWM). 1 Cytuj Link do komentarza Share on other sites More sharing options...
mejstej Maj 8, 2010 Autor tematu Udostępnij Maj 8, 2010 Nie chcę uszkodzić µC więc wolę sie upewnić coś takiego będzie działać? i czy dobrze oznaczyłem nóżki tranzystora (literki) Cytuj Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Dołącz do dyskusji, napisz odpowiedź!
Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!