2013-08-11 10 views
5

Jestem prawie początkującym z rękami na elektronice, więc zdecydowałem się rzucić na płytkim końcu z arduino uno r3.Podłączanie pinów wyjściowych do pinów wejściowych

Rozpocząłem projekt i cieszę się, że mam do czynienia z diodami led, wyświetlaczami LCD i prostymi przyciskami, ale projekt wykorzystuje klawiaturę telefonu domowego z 8 kołkami, które w zależności od kombinacji mostków wskazują, który przycisk został naciśnięty .

Na przykład, jeżeli zasilanie jest na pin 1 - jeśli sworzeń 5 jest zasilana wówczas przycisk 4 jest wciśnięty - jeśli sworzeń 6 jest zasilana wówczas przycisk 1 zostanie naciśnięty - jeśli styk 7 jest zasilana wówczas przycisk 7 przycisku - jeśli pin 8 ma moc, przycisk * jest wciśnięty

Mój plan to użycie 4 cyfrowych pinów wyjściowych i 4 cyfrowych (/ analogowych?) Pinów wejściowych. Ustawię pierwszy cyfrowy pin na wysoki i sprawdzę wartość na każdym z 4 wejść. Następnie przejdź do drugiego wyjścia i tak dalej.

Czy zamierzam wydmuchać kilka pinów na arduino, podłączając wyjście do wejścia? Jeśli nie, będę kontynuował.

Czy istnieje lepszy sposób?

Z góry dziękuję.

+0

Możesz spróbować tego pytania na http://electronics.stackexchange.com. Stack Overflow służy do programowania pytań. –

+2

Ta metoda matrix_key_scanning została wynaleziona co najmniej czterdzieści lat temu: przemiataj linie Y i skanuj skorelowane impulsy na liniach X. Używanie 4 linii wyjściowych i 4 linii wejściowych oraz matrycy 16 przełączników krzyżowych jest dość powszechne. Jest nadal używany na każdej klawiaturze po tej stronie wszechświata. (pomyśl: telefon) – wildplasser

+0

Bezpiecznym podejściem przy podłączaniu do zewnętrznego urządzenia jest dodanie rezystora szeregowego z pinów wyjściowych. Jeśli umieścisz rezystor 1 kOhm między wyjściem a klawiaturą, nie będziesz w stanie uszkodzić wyjścia, nawet jeśli zwiążesz je wszystkie do ziemi. – jdr5ca

Odpowiedz

19

Masz się dobrze. Piny wejściowe Arduino nie mogą uszkodzić własnych pinów wyjściowych. Oto dlaczego:

Wszystkie potrzebne numery znajdują się w sekcji "Charakterystyki prądu stałego" w karcie danych układu scalonego, przy czym 28,1 "bezwzględne maksymalne wartości" są tym, na co każdy powinien zwrócić uwagę.

Napięcie

Każdy pin może zostać uszkodzony, jeśli umieścić nadmiernie wysokie lub niskie napięcie na nim. Od 28.1:

Napięcie na każdym Pin -0.5 V do VCC + 0,5V

Ponieważ Arduinos prowadzony przy 5 V, czyli -0,5 do +5,5 V jest bezpieczny. Ponieważ chip ma tylko 5 V, nie można go uszkodzić, przekraczając ten limit. Jeśli masz baterię 9 V i podłączyłeś ją do jednego z pinów IO, możesz uszkodzić pinezkę.

Aktualny

pin wyjście zostanie uszkodzony, jeśli wyciągać zbyt duży prąd. Od 28.1:

DC prądu na I/O pin = 40,0 mA

jeden z twoich pinów wyjściowych będzie podłączony prosto do pin wejście po naciśnięciu przycisku.Pytanie brzmi "ile prądu pobierze pin wejściowy?".

Idealny kołek wejściowy zużywa prąd zerowy. Szpilki arduino zużywają się dość blisko zera. Z sekcji 28.2:

wejściowe prądu upływu I/O pin niski = 1 uA

wejściowe prądu upływu I/O pin wysoki = 1 uA

Ale, można włączyć wewnętrzne rezystory podciągające (uderzenie może - masz zamiar, prawda?). Te są w tej samej kategorii:

I/O pin rezystorów 20 - 50 kohm

one pociągnąć rezystorów zawartych w trzpieniu wejściowego są główne obciążenie. Tak więc wyjście logiczne 0 zostanie załadowane do 0,25 mA (= 5 V/20 kohm). Wyjście logiczne 1 zostanie załadowane 0 mA. Innymi słowy, całkowicie bezpieczne.

Teraz widzisz, jesteś w bezpiecznym obszarze operacyjnym. Te specyfikacje prądu i napięcia są pierwszymi elementami, które chcesz zrozumieć przed połączeniem ze sobą wszystkich elementów.

+0

Dziękuję bardzo za tak dobrze wyjaśnioną odpowiedź. Znalazłem wiele informacji o tym, dlaczego nie powinieneś mostkować 2 wyjścia (jeden zestaw do wysokiego i 1 zestaw do niskiego), ponieważ w zasadzie łączysz pinezkę z ziemią, ale nie znalazłem nic na temat wyjścia do wejścia. Na pewno włączę wewnętrzne rezystory podciągające, używając 'pinMode (2, INPUT_PULLUP);' Thanks again again. –

0

Powinieneś używać naprawdę niskiego napięcia, niskiego prądu i dużej ostrożności, kiedy to robisz. Możesz mieć możliwość pobrania dokumentacji na temat konkretnych rzeczy, z których korzystasz, co eliminuje konieczność prób i błędów.

Sam zrobiłem takie rzeczy, chociaż nie z tym konkretnym chipem, którego używam, i jeszcze niczego nie zniszczyłem. Mimo to należy zachować szczególną ostrożność.

Powiązane problemy