[elektro] Sok nyomogomb

umnyo umnyo at freemail.hu
Sat Sep 17 21:37:57 CEST 2016


Ami nálam van azon ATMEGA 2560, de ez mindegy.

Igen, ezen is tanakodtam. De tegyük fel (gomb) matrixom van,2x8 lábat foglalva .

Valami ilyesmi módon értem:
http://www.picbasic.co.uk/forum/attachment.php?attachmentid=4036&stc=1&d=1266807125
http://www.spikenzielabs.com/SpikenzieLabs/Project_64_files/Frame%200B.jpg

Ha lenyomnak egy gombot, akkor bejön az egyiken a 8 közül a megszakítás. Utána még le kell kezelnem azt is, hogy melyik 8 bemenőből jött az be, azaz le kell kérdeznem egyesével lekérdezve, és így meg is van.

És ezután jön ha több gombot is lenyomnak egyszerre.

Ez egy megoldás, de hátha más is létezik :-).

Köszi különben.

Attila

"Fekete Róbert" <frobi at harden.hu> írta:
>az egy ATmega1280 -at tartalmaz ha minden igaz
>van neki pcint szinte minden lábán, ha jól rémlik ez egy helyen jelzi 
>bármelyik eseményét, és ezen keresztül már lekérdezhető melyik került 
>lenyomásra
>
>már ha valami ilyesmire gondoltál
>
>R.
>
>On 2016-09-17 21:11, umnyo wrote:
>> Sziasztok!
>>
>> Egy egyszerűnek tűnő feladattal birkózom, ami aztán kiderült mégsem annyira egyszerű - legalábbis számomra.
>>
>> Van kb 60 db kétállapotú bemenetem, gyakorlatilag 60 db nyomógomb, és ezek állapotától függően kellene ezt az kapcsolgatnom. Megoldása uC-vel történne.
>>
>> Viszont a szokásos probléma - nem szeretnék elhasználni 60 db bemenetet, jó lenne lehetőleg matrixban kezelni.Ebből kiindulva a megoldási lehetőségek, amiket találtam, gondoltam.
>>
>> 1. Külön egy sokbemenetű uC ami csak ezt figyeli, és az eredményt ha lenyomnak valamit, átküldi a masternek valamilyen buszon, ami meg feldolgozza, kapcsol amit kell
>>
>> 2. Külön egy kevés lábú uC ami adott esetben 2x8 lábon figyeli a bemeneteket, folyamatosan ez a rutin fut csak rajta, és ha lenyomás történik, akkor átküldi a masternek.
>>
>> 3. Külön céláramkör (vannak rá) - ezt szeretném elkerülni.
>>
>> És itt jön amit én szeretnék, a fentiek összekapcsolása. Lehetőleg egy db uC-vel szeretném megoldani, nem master szolga viszonylatban kettővel, és jó lenne ha mindez megszakítás alapon történne, nem állandó bemenet figyelésekkel, mert azért kell mást is csinálnia.
>>
>> Alapvetően Atmel Mega környékén gondolkodom, azon tudnék játszani , mármint Arduino panellel (Arduino Mega panel), de Atmel Studio alatt.
>>
>> Persze más is szóba jön. Igazából nem konkrét kód érdekelne, hanem elv, hogyan oldjam meg ennyi bemenet (megszakítás) normális kezelését.
>>
>> Tudnom kell azt is, ha egyszerre több nyomógomb van elnyomva, a nyomógombok között nincs prioritási szint. Ez kicsit feladta a leckét nekem, mert ezt ugyan meg tudnám csinálni pl egy ciklikus lekérdezéssel, de ehhez mindenképpen kell a a másik IC is, ami csak ezzel foglalkozik, és abban lekezelem ciklikusan melyik nyomógomb van lenyomva, és átküldöm.
>>
>> A külön uC és átküldés könnyítés, de jó lenne egy darabból megcsinálni.
>>
>> Köszönöm előre is a tanácsokat!
>>
>> Attila
>>
>> -----------------------------------------
>>           elektro[-flame|-etc]
>>
>
>-----------------------------------------
>          elektro[-flame|-etc]



More information about the Elektro mailing list