Forum: Mikrocontroller und Digitale Elektronik Taster in Tastenmatrix mit anderem ATMega simulieren


von Flo (Gast)


Lesenswert?

Hallo zusammen,

angeregt durch ein Projekt welches mich sehr interessierte hab ich nun 
endlich auch einmal angefangen mich mit Mikrocontrollern zu 
beschäftigen, und das Ganze lief eigentlich von Anfang an (diesem Forum 
sei Dank!) auch recht problemlos durch. Jetzt hab ich aber ein Problem 
bei dem ich irgendwie ziemlich aufm Schlauch stehe. Folgende Situation: 
Ich habe einen ATMega8, welcher eine Tastenmatrix mit 4 Spaltentreibern 
und 7 Zeilen = 28 Tasten zwischen PORT B und PORT C/ laufen hat, auch 
alle anderen Ports sind restlos belegt. Es geht um das Mjoy-Projekt, 
welches mittlerweile ja nicht mehr im Netz zu finden ist, falls relevant 
hab ich aber die Schaltpläne etc. da.

Nun möchte ich in oben beschriebene Kombination irgendwie noch einen 
Drehencoder einbauen, da aber 1. die Ports ja alle restlos belegt sind, 
und ich 2. nicht unbedingt das MJoy-ASM-Teil zerpflücken wollte um den 
Encoder dort unterzubringen (hätte auch 7 Tasten oder 2 ADCs 
gekostet...), habe ich kurzerhand die Auswertung testweise auf einen 
anderen ATMega8 verlagert, der hier noch rumlag. Das ganze in C (welches 
mir als Medieninformatiker im Gegensatz zu ASM keine Probleme bereitet 
;-) mit AVR-GCC geproggt, funktioniert auch wunderbar. Bei Drehung des 
Encoders wird jetzt je nach Drehrichtung pro Impuls jeweils ein Port 
kurz auf HIGH gezogen.

Die entscheidende Frage ist nun, wie kann ich mit den Impulsen meines 
Auswertungs-ATMega zwei Taster (Up/Down) in der Tastenmatrix 
simulieren/ersetzen, so dass ich im Prinzip nur noch die beiden 
Schaltungen verheiraten muss und dann alles tut? Ich steh dabei grade 
tierisch aufm Schlauch...simpler Transistor vielleicht? Irgendetwas hält 
mich davon ab...

Ich hoffe Ihr könnt mir folgen & helfen,

Viele Grüße & Danke,
Flo

von Falk B. (falk)


Lesenswert?

@ Flo (Gast)

>Die entscheidende Frage ist nun, wie kann ich mit den Impulsen meines
>Auswertungs-ATMega zwei Taster (Up/Down) in der Tastenmatrix
>simulieren/ersetzen, so dass ich im Prinzip nur noch die beiden
>Schaltungen verheiraten muss und dann alles tut? Ich steh dabei grade

Nimm einen 4066 und ersetze zwei Taster durch die Analogschalter, welche 
dann vom AVR angesteuert werden. Fertig.

MfG
Falk

von Meister der Insel (Gast)


Lesenswert?

Was ist das Mjoy-Projekt?

von Flo (Gast)


Lesenswert?

Sorry, ich hadere noch mit der Boardstruktur, meine Antwort findet sich 
im Moment leider noch hier:

http://www.mikrocontroller.net/topic/77693#646648

Grüße,
Flo

von Gast (Gast)


Lesenswert?

Hi Flo,

könntest Du mir bitte die Unterlagen, die Du noch von mindaugas zum 
Mjoy16 hast, zusenden?

z0ttel [at] web [dot] de


Danke & Gruß,
z0ttel

von Flo (Gast)


Lesenswert?

also nochmals die verlinkte Antwort:

Ich werde Falk's Vorschlag mal durchgehen und dann sehen wir weiter.

Und für den Meister der Insel:
MJoy ist eine USB-HID-Joystick-Implementation auf einem ATMega8 mit (bei 
mir momentan) 28 Tasten und 6 Achsen

@ Zottel: Ich hab den (originalen) mJoy (v1.2) gebaut in modifizierter 
Variante, also auf einem ATMega8, der mJoy16 ist ja was Anderes und ja 
AFAIK auch auf einem ATMega16. Ich hab mich aber auch mit der 
mJoy16-Variante mal auseinandergesetzt gehabt, mal schauen ob ich da 
noch was finde, dann mail ichs Dir. Oder meinst du vllt. doch die 
ATMega8-Variante die ich gebaut hab?

Grüße,
Flo

von Gast (Gast)


Lesenswert?

Wenn's keine allzu großen Umstände macht, hätte ich gerne beide ;)

Danke & Gruß,
z0ttel

von Tal U. (talumb)


Lesenswert?

Hi,

der Großteil; ich glaub sogar alles ist auf

http://web.archive.org/web/20070506074956/http://www.mindaugas.com/

zu finden!
Möglicherweise mit anderem Datum.

Aber ich hätte ein Frage zu solchen Sachen

Wie kann man eine Seite, die man nicht "verlieren" will, abspeichern?

Ich mein so, wie ein Browsercache, aber nicht "Offline verfügbar machen" 
vom IE, es geht auch nicht um interaktive Inhalte, nur die Seite, so wie 
man sie anschaut?

...,

Talumb

PS.:

Seltsam, das Internet-Archive ist zurzeit nicht erreichbar??

von Flo (Gast)


Lesenswert?

Ja, habe ihm auch schon geantwortet, ebenfalls mit Verweis auf die 
(momentan tote) Waybackmachine...sollte sich in ein paar Tagen wieder 
geben denke ich.

Um Seiten mit Text und Grafik schnell und gut zu speichern benutze ich 
persönlich den PDF-Printer der bei Acrobat dabei ist, das ist das 
umgänglichste...Aber nur deswegen den Acrobat zu lizenzieren könnte 
etwas teuer werden, es gibt aber für PDF-Drucken gute, freie 
Alternativen, leider fällt mir jedoch grade kein Name ein...:-(

Speichern als HTML-Seite sollte nur für Text und Grafik aber auch 
wunderbar gehen (Firefox, IE ist eh...naja).

Grüße,
Flo

von Michael Wilhelm (Gast)


Lesenswert?

Probier doch mal über die beiden Taster Optokoppler zu löten, die dann 
mit dem Encoder angefahren werden.

MW

von Flo (Gast)


Lesenswert?

Naja den Encoder direkt an die OKs zu hängen hatte ich bisher eigentlich 
wegen der zu geringen Spaltenfrequenz bei der Abtastung nicht in 
Erwägung gezogen, außerdem müsste ich dann wiederum den Code des 
USB-AVRs zwecks Auswertelogik ändern (und dafür erstmal komplett 
verstehen). Aber die Idee ist prinzipiell auch gut, man könnte ja den OK 
auf der einen Seite an den Encoder-Auswerte-AVR hängen und auf der 
anderen Seite als Tastenersatz nehmen...werd ich mal ausprobieren.

Grüße,
Flo

von Flo (Gast)


Lesenswert?

Okay, grade getestet, einfach nen OK dazwischenhängen funktioniert wohl 
so nicht. Kann aber auch nicht ausschließen dass der OK defekt ist. 
Werde wohl später diese Woche mal versuchen die 4066er aufzutreiben, 
berichte dann weiter.

Vielen Dank an alle die bisher geholfen haben,
Grüße, Flo

von Bastian (Gast)


Lesenswert?

Das gleiche Problem hatte ich vor einiger Zeit auch schon mal. Daraufhin 
habe ich einfach einen Transistor aus der Bastelkiste genommen (BC547 
wars glaube ich) und diesen parallel zum Taster angelötet. Die Basis des 
Transistors habe ich mit einem Vorwiderstand an einen µC angeschlossen.
Es läuft mittlerweile sehr gut und deutlich schneller, als wenn man 
selber die Tasten drückt. Ich habe mich mit der Taktfrequenz langsam 
rangetastet und jetzt kann ich ohne Probleme alle 15ms einen neuen 
Tastendruck simulieren :-)
Unter 13ms wurden manchmal einige Befehle "überhört".

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.