"Wer wird Millionär"-Schaltung / Schieberegister

S

Sebastian Schöps

Guest
Hallo,

gleich mal vorneweg: Ich hab zwar von Programmierung Ahnung, aber nicht von
Elektronik. Also gleich mal Entschuldigung für dumme Fragen...

Folgende Situation:
Ich will den Zustand von etwa 120 Tastern an meinem PC abfragen (ähnlich dem
Studiopublikum bei "Wer wird Millionär"). Meine Idee war, die Tastenzustände
über 15 kaskadierte 8bit-Schieberegister (4021) abzufragen und über die
serielle Schnittstelle an den PC auszugeben.

- Macht das so Sinn?
- Gibt es Schieberegister mit mehr Eingängen als 8 (habe keine gefunden)?
- Kann man so viele Schieberegister kaskadieren?
- Sehe ich das richtig, dass die Kaskade von PIN 11 (serieller Eingang ?) an
PIN 3 (serieller Ausgang) geschaltet wird?

Vielen Dank für Eure Hilfe! Jeder Gedanke ist willkommen.

Seb
 
Sebastian Schöps <sebastian.schoeps@gmx.de> schrieb im Beitrag <bp55ej$8lh$1@online.de>...
- Macht das so Sinn?
Ja, parallele statt serielle ist einfacher zu programmieren.

- Gibt es Schieberegister mit mehr Eingängen als 8 (habe keine gefunden)?
Ja, aber preislich loht das nicht. Der 74HC165 ist je nach Laden vielleicht
etwas billiger weil nur fuer 5V, ansonsten identisch mit dem 4021.

- Kann man so viele Schieberegister kaskadieren?
Ja

- Sehe ich das richtig, dass die Kaskade von PIN 11 (serieller Eingang ?) an
PIN 3 (serieller Ausgang) geschaltet wird?
Ja (wenn mir auch deine Reihenfolge etwas ungewohnt erscheint,
aber Kabel sind gluecklicherweise bidirektional...)

Den Takteingang von allen natuerlich auch verbinden, und den Takt erzeugt dein
Rechner.

Die Taster schalten an +, also muss ein Widerstand von z.B: 10kOhm den Eingang
auf Masse ziehen damit der Eingang bei offenem Taster mit irgendwas verbunden ist.

+5V
|
Taster
+-------4021Eingang
10k
|
Masse

Zwischen + und Masse des 4021 sollte ein 100nF Vielschicht-Keramik-Kondensator
um Stoerungen zu verhindern, zumindest bei jedem 5ten IC.

Das einzige Problem: Du musst immer wieder deine Schieberegister in den
Rechner einlesen, um kurze Tastendruecke erkennen zu koennen. Bist du
langsamer, koennte ein Tastendruck verloren gehen. Und es wird unmoeglich
festzustellen, wer als 'erster' gedrueckt hat, weil einige beim Einlesen
gleichzeitig umgeschaltet haben koennen. Aber das wird dir bekannt sein.
--
Manfred Winterhoff, reply-to invalid, use mawin at despammed.com
homepage: http://www.geocities.com/mwinterhoff/
de.sci.electronics FAQ: http://dse-faq.elektronik-kompendium.de/
Read 'Art of Electronics' Horowitz/Hill before you ask.
Lese 'Hohe Schule der Elektronik 1+2' bevor du fragst.
 
"MaWin" <me@privacy.net> wrote in
news:01c3ab74$2b3a4160$88e3b8d9@amdk6-300:

- Macht das so Sinn?

Ja, parallele statt serielle ist einfacher zu programmieren.
Nichts "macht" Sinn! Es hat einen Sinn oder es hat keinen...
 
Hmmm
was meinst Du zu Latches?
Du machst sie "auf" und nach der Zeit die das Publikum
hatte um sich zu entscheiden, schliesst Du sie wieder und die
Infos bleiben bestehen. Dann kann man sich sogar zwischendrin
noch umentscheiden.

Gruß
Tobi
 
In article <Xns9434A37B7EFCEGuntherMannigel@130.133.1.4>,
Gunther Mannigel <newsgroups@mannigel.net> writes:
|> "MaWin" <me@privacy.net> wrote in
|> news:01c3ab74$2b3a4160$88e3b8d9@amdk6-300:
|>
|> >> - Macht das so Sinn?
|> >
|> > Ja, parallele statt serielle ist einfacher zu programmieren.
|>
|> Nichts "macht" Sinn! Es hat einen Sinn oder es hat keinen...

Tja... Mal wieder ein Zwiebelfisch.

Rainer
 
(Tobias Aurand) 15.11.03 in /de/sci/electronics:

Hmmm
was meinst Du zu Latches?
Du machst sie "auf" und nach der Zeit die das Publikum
hatte um sich zu entscheiden, schliesst Du sie wieder und die
Infos bleiben bestehen. Dann kann man sich sogar zwischendrin
noch umentscheiden.
Typischer weise kann man das so mit jeden Schiebregister machen.
"Halten Sie ihre Taste gedrückt bis das Lämpchen ausgeht".

Man kann so aber nicht feststellen, wer erster war.
Ich glaube das war bei dem Spiel nötig (Hab mir den Kommerz-Muell
nicht angetan).
 
(Sebastian Schöps) 15.11.03 in /de/sci/electronics:

Folgende Situation:
Ich will den Zustand von etwa 120 Tastern an meinem PC abfragen
(ähnlich dem Studiopublikum bei "Wer wird Millionär"). Meine Idee war,
die Tastenzustände über 15 kaskadierte 8bit-Schieberegister (4021)
abzufragen und über die serielle Schnittstelle an den PC auszugeben.

- Macht das so Sinn?
- Gibt es Schieberegister mit mehr Eingängen als 8
(habe keine gefunden)?
- Kann man so viele Schieberegister kaskadieren?
Üblicherweise macht man so etwas in dem man
die Taster in einer Matrix anordnet. (Hier die
Entkopplungsdioden nicht vergessen, da ja mehr als 1 Taste
zugleich gedrückt sein darf.

Also 8*8= 16 Pins auf 2 ICs für 64 Taster.

"Einfach so" ein serielles Signal durch die Welt zu schicken
klappt nicht sonderlich gut.
Wenn irgendwo ein Takt verloren geht, fehlt nicht nur diese
"Stimme", sondern alle anderen sind um eine Postion falsch,
ohne das man es bemerken kann.



Vielen Dank für Eure Hilfe! Jeder Gedanke ist willkommen.
Du nimmst einen uC mit einer Echtzeituhr.
Dafür besorgst du dir einen "IP stack" und klatsch einen
Ethernet-Baustein ran.(Leider haben die wenigsten uC Hersteller
die antiquierte serielle Schnittselle inzwischen langsam mal
gegen eine Ethernet getauscht ;-( Das "Beste" was es gibt ist
wohl CAN-Bus, aber der ist wohl zu zuverlässig wie man ja bei den Autos
lernen musste.)

Wenn jmd. eine Taste drückt wird die Uhrzeit gespeichert
und als (z.B. UDP-)Paket an einen Server gesendet.

Vorteil:
- Es "skaliert" auch bei 300 oder 30000(*) Leute noch.
Mittels Routing könnten auch 50 Mio Leute abstimmen...
- Der Ausfall eines Taster-Moduls blockiert nicht alle
299 davor liegenden.
- Ein Fehler in einem Modul verfälscht nicht alle anderen.
- Du hast auch die genauen Zeitpunkte wann gedrückt worden ist.
(Man kann Uhren der Tastenmodule bei der Auswertung nochmals
zeitlich definiert zurücklesen um jede 2deutig zu vermeiden.)
- Es ist wurscht ob jeder Teilnehmer einen Schalter oder
10 bekommt.
- Man könnte anonym abstimmen, da irgendwer irgendwo
sein Gerät anschliessen könnte, aber auf Grund der
ggf. gewählten Busstruktur dieser Punkt nicht bestimmt
werden kann/muss. (Man könnte auch fest zuordnen wenn man will,
aber das hat man heute ja generell)

Ok, der Aufwand ist "etwas" grösser, aber...






(*) das kann natürlich "etwas" dauern (20 byte @ 1MByte/s * 30000 = 600ms),
aber da die Uhrzeit gespeichert wird macht es nix.
 
Danke erstmal. Aber du hast vergessen: du hast es mit einem absoluten
Anfänger zu tun... ;-)

Zu der Geschichte mit dem uC:
- Ich habe mal geguckt und finde uCs mit bis zu 53 I/O Pins. Heisst das, ich
brauche für 120 Tastzustände drei so Dinger? Wie synchronisiere ich dann
deren Uhren?
- Oder brauche ich pro Tastermodul ein so uC und wenn ja wo senden die ihre
Daten hin?
- Ist das für einen Anfänger realisierbar (Programmierung des uCs sollte
nicht das Problem sein) oder sollte ich doch lieber die Lösung mit den
Schieberegistern nehmen, die ich immerhin schon verstanden habe?

I blicks no net so ganz, sorry. Danke für eure Hilfe!
 
(Sebastian Schöps) 15.11.03 in /de/sci/electronics:

Danke erstmal. Aber du hast vergessen: du hast es mit einem absoluten
Anfänger zu tun... ;-)
Ja, habe ich. sorry.
Aber es lesen hier ja noch andere mit die keine sind
udn die sollen auch unterhalten werden ;-)


Zu der Geschichte mit dem uC:
- Ich habe mal geguckt und finde uCs mit bis zu 53 I/O Pins.
Heisst das, ich brauche für 120 Tastzustände drei so Dinger?
Könnte man machen...

Du könntest aber auch an jedem der IO Pins 3 Tasten legen
und deren 5V jeweils nur kurzzeitig nacheinander anlegen.
(Dioden zur Entkopplung sind nötig)



Wie synchronisiere ich dann deren Uhren?
Du misst die Zeit die Du zum Abfragen brauchst und fragtst dann die
andere wie spät es ist, subtrahierst die Zeit die die Abfrage brauchte
und stellst Deine Uhr passend.
Das machst Du solange bis die Differenz ausreichend klein ist.
Dazu gibt es einen RfC "NTP network tiem protocol", der aber wohl
"etwas" overpowered wäre.


- Oder brauche ich pro Tastermodul ein so uC und
So war das gedacht. Idealerweise ein uC mit nur 6 Pins...


wenn ja wo senden die ihre Daten hin?
An einen Server, die die Pakete einsammelt.

Du hast quasi ein "Netz" mit 120 PCs die einen
"ping" machen wenn wer die Taste drückt.
Der Server zählt diese "pings".

Das dürfte aber so ziemlich die maximal teuerste Lösung sein,
wenn auch die flexibelste.

(Ist aber nicht ungewöhnlich: Die Lichtbitzer auf Flughäfen werden auch
nicht durch ein Schieberegister aneinander angesteuert, wie man ja
vermuten könnte, sondern jeder Blitzer ist ein eigener Rechner mit
Netzwerkanschluss...)



- Ist das für einen Anfänger realisierbar
Vermutlich nicht.

oder sollte ich doch lieber die Lösung mit den Schieberegistern nehmen,
die ich immerhin schon verstanden habe?
Naja, stell es Dir nicht soo einfach vor, das Taktsignal
der Schieberegister über zig meter vernüftig und ungestört weiterzuleiten.
Du willst ja nicht von jeder Taste ein extra Kabel zur Auswertebox ziehen?
Wenn doch, macht das Schieberegistern keinen Sinn:
da kannst Du auch multiplexen.

Auch wären evtl. Schieberegister mit einem Einganglatch sinnvoll,
da Du so den Tastenzustand auch mehrfach abfragen kannst, falls etwas
mit der Übertragung schief gegangen ist.
(Man sollte das SR "von hinten" mit einem Muster auffüllen,
das ja nach 120 Takten wieder bei der CPU angekommen sein müsste.
So hätte man eine kleine Chance Übertragungsfehler zu erkennen.)
 
On Sat, 15 Nov 2003 23:47:03 +0100, "Sebastian Schöps"
<sebastian.schoeps@gmx.de> wrote:

Hi!

- Ich habe mal geguckt und finde uCs mit bis zu 53 I/O Pins. Heisst das, ich
brauche für 120 Tastzustände drei so Dinger?
I blicks no net so ganz, sorry. Danke für eure Hilfe!
Blick mal auf Deine Tastatur: 102 Tasten, vermutlich.
Blick mal _in_ Deine Tastatur, wenn Du Dich traust: Irgendwo in der
Ecke ein kleiner IC mit deutlich weniger als 102 Anschlüssen.

Das Zauberwort heißt Tastaturmatrix. Nimm mal ein Blatt Papier und
male Dir 4 senkrechte und 4 waagerechte Linien (die senkrechten
kreuzen die waagerechten). Stell Dir vor, die senkrechten sind 4
Ausgänge Deines Controllers und die waagerechten sind 4 Eingänge. Und
jetzt stell Dir vor, auf jedem Kreuzungspunkt sitzt ein Taster, der
die einen mit den anderen verbindet. Dein Controller legt jetzt
nacheinander Spannung auf die Ausgänge (immer nur auf einen
gleichzeitig), und schaut, auf welchen Eingängen sie wieder
zurückkommt. So findest Du nacheinander raus, welche der 16 Taster
gedrückt sind. Da mehrere Taster gleichzeitig gedrückt sein dürfen,
brauchst Du noch je eine simple Dioden in Reihe mit jedem Taster,
damit der Strom nur von den Ausgängen zu den Eingängen fließen kann,
sonst gibts Signalsalat.

Auf diese Weise kannst Du zB mit 16 Ausgängen und 16 Eingängen ganze
16*16=256 Taster abfragen. Genaugenommen reichen sogar 4 Ausgänge und
16 Eingänge, denn von Deinen 16 Senkrechten ist ja immer nur einer
aktiv, macht 16 Möglichkeiten = 4 Bit. Das "übersetzen" macht ein
4-to-16-Multiplexer (auch line decoder genannt), zB 74154 für wenige
cent.
http://www.semiconductors.philips.com/acrobat/datasheets/74HC_HCT154_CNV_2.pdf

Das ganze geht sehr schnell, immerhin musst Du nur 16 mal einen 16-Bit
Wert lesen, um alle Taster abgefragt zu haben. Schneller jedenfalls,
als 256 mal 1 Bit zu lesen (Schieberegister). Nun kenne ich nicht das
Verhalten von 256 drückenden Menschen, aber wenn denn die Frage
schwierig genug ist, findest Du sicher heraus, wer als erster gedrückt
hat :)

Die eigentliche Schwierigkeit - egal ob Schieberegister oder Matrix
oder was ganz anderes - sehe ich allerdings in den Unmengen an
Drahtverhau, den Störungen, die Du Dir einfangen willst, den
Kapazitäten der Leitungen,.... Und am Ende hast Du einen
Lottozahlengenerator gebaut, ohne Gewähr, versteht sich. :)

Gruß,
Michael.
 
(Michael Eggert) 16.11.03 in /de/sci/electronics:

On Sat, 15 Nov 2003 23:47:03 +0100, "Sebastian Schöps"
sebastian.schoeps@gmx.de> wrote:

- Ich habe mal geguckt und finde uCs mit bis zu 53 I/O Pins. Heisst
das, ich brauche für 120 Tastzustände drei so Dinger?
I blicks no net so ganz, sorry. Danke für eure Hilfe!

Blick mal auf Deine Tastatur: 102 Tasten, vermutlich.
Blick mal _in_ Deine Tastatur, wenn Du Dich traust: Irgendwo in der
Ecke ein kleiner IC mit deutlich weniger als 102 Anschlüssen.
Guter Hinweis.

Das Zauberwort heißt Tastaturmatrix. Nimm mal ein Blatt Papier und
male Dir 4 senkrechte und 4 waagerechte Linien (die senkrechten
kreuzen die waagerechten). Stell Dir vor, die senkrechten sind 4
Ausgänge Deines Controllers und die waagerechten sind 4 Eingänge. Und
jetzt stell Dir vor, auf jedem Kreuzungspunkt sitzt ein Taster, der
die einen mit den anderen verbindet.
Bei einer PC Tastatur dürfen aber i.d.R. nur spezielle Tasten
gleichzeitig mit andern gedrückt werden.

Sonst könnte man ja einfach 2 Tastaturen schlachten und mit
60 Kabel jedden Matrixpunkt verlängern...
(Was dem Controler bei mehr als 20cm wohl nicht gefallen wird.
Aber: Versuch macht kluch)


Die eigentliche Schwierigkeit - egal ob Schieberegister oder Matrix
oder was ganz anderes - sehe ich allerdings in den Unmengen an
Drahtverhau, den Störungen, die Du Dir einfangen willst, den
Kapazitäten der Leitungen,.... Und am Ende hast Du einen
Lottozahlengenerator gebaut, ohne Gewähr, versteht sich. :)
ACK.
 
Rainer Zocholl wrote:
Das Zauberwort heißt Tastaturmatrix. Nimm mal ein Blatt Papier und
male Dir 4 senkrechte und 4 waagerechte Linien (die senkrechten
kreuzen die waagerechten). Stell Dir vor, die senkrechten sind 4
Ausgänge Deines Controllers und die waagerechten sind 4 Eingänge. Und
jetzt stell Dir vor, auf jedem Kreuzungspunkt sitzt ein Taster, der
die einen mit den anderen verbindet.

Bei einer PC Tastatur dürfen aber i.d.R. nur spezielle Tasten
gleichzeitig mit andern gedrückt werden.
Das gilt nur, wenn der Hersteller die Dioden gespart hat.
Wenn man pro Taster 1 Diode vorsieht dann kann man
beliebige Kombinationen druecken ohne das es
Geistertasten gibt. Dioden kosten Geld, also werden
sie eingespart... Die letzte Tastatur mit voller
Diodenmatrix war die von meinem Amiga 2000.

Gerrit
 
Rainer Zocholl wrote:
Bei einer PC Tastatur dürfen aber i.d.R. nur spezielle Tasten
gleichzeitig mit andern gedrückt werden.
[...]
Hast Du schonmal ein Computerspiel gespielt?

Andreas
 
Hallo Gunther,

- Macht das so Sinn?
Nichts "macht" Sinn! Es hat einen Sinn oder es hat keinen...
mir gefällt das zwar auch nicht, aber es ist völlig sinnlos, sich
darüber aufzuregen - dafür ist diese Redewendung viel zu verbreitet. Ich
rechne damit, dass das früher oder später von der Duden-Redaktion
offiziell in die deutsche Sprache aufgenommen wird (ist ja eigentlich
nur schlecht übersetztes Englisch und genau deshalb auch in allen
möglichen seriösen Printmedien zu finden).

Gruß,

Ed

--
E-Mails an Ed_03@t-online werden ungelesen gelöscht.
Für Gültigkeit bitte wenden: ed.cetnat@strebge.e
 
(Andreas Wenzel) 16.11.03 in /de/sci/electronics:

Rainer Zocholl wrote:
[...]
Bei einer PC Tastatur dürfen aber i.d.R. nur spezielle Tasten
gleichzeitig mit andern gedrückt werden.
[...]

Hast Du schonmal ein Computerspiel gespielt?
Keines bei dem ich alle 102 Tasten drücken musste ;-)

Hast Du Dir mal angesehen wie die Matrix auf der Tastatur verteilt ist?

Die geht nicht einfach 9*8 gerade durch, sondern Tasten die
evtl. doch zusammen mit anderen gedrück werden können liegen
anders. Z.B beim Tippen mit 10 Fingern wäre es sehr unpraktisch
wenn rechts und links auf derselben Matrix lägen.
 
In article <8xwgtP7bgjB@zocki.toppoint.de>,
UseNet-Posting-Nospam-74308-@zocki.toppoint.de (Rainer Zocholl) writes:
(Sebastian Schöps) 15.11.03 in /de/sci/electronics:

Folgende Situation:
Ich will den Zustand von etwa 120 Tastern an meinem PC abfragen
(ähnlich dem Studiopublikum bei "Wer wird Millionär"). Meine Idee war,
die Tastenzustände über 15 kaskadierte 8bit-Schieberegister (4021)
abzufragen und über die serielle Schnittstelle an den PC auszugeben.

- Macht das so Sinn?
- Gibt es Schieberegister mit mehr Eingängen als 8
(habe keine gefunden)?
- Kann man so viele Schieberegister kaskadieren?

Üblicherweise macht man so etwas in dem man
die Taster in einer Matrix anordnet. (Hier die
Entkopplungsdioden nicht vergessen, da ja mehr als 1 Taste
zugleich gedrückt sein darf.

Also 8*8= 16 Pins auf 2 ICs für 64 Taster.

Wenn pro Bedienteil je 4 Tasten verwendet werden würde ich zwei 16X4
Matrixen aufbauen.

Das ergibt 16 Spaltentreiber und 8 Eingänge.

ich stelle mir das so vor:

Box 0
Spaltentreiber0----+--Taster---Diode--Eingang0
+--Taster---Diode--Eingang1
+--Taster---Diode--Eingang2
+--Taster---Diode--Eingang3

Box 1
Spaltentreiber0----+--Taster---Diode--Eingang4
+--Taster---Diode--Eingang5
+--Taster---Diode--Eingang6
+--Taster---Diode--Eingang7

.....

Box 5
Spaltentreiber2----+--Taster---Diode--Eingang4
+--Taster---Diode--Eingang5
+--Taster---Diode--Eingang6
+--Taster---Diode--Eingang7

Die Spaltentreiber sollten mindestens mit 12 Volt arbeiten und
auch etwas Strom liefern können, damit bei den Empfängern
ordentlich entstört werden kann.
Ich würde mindestens 10 mA fließen lassen weil der Aufbau vermutlich
großräumig wird. Abgeschirmte Leitungen währen auch gut damit die
Scanimpulse in der Leitung bleiben.
Um Störimpulse auf Nachbarleitungen gering zu halten sollten die
Scanimpulse nicht zu steilflankig sein.

--
MFG Gernot
 
Sebastian Schöps schrieb:
Folgende Situation:
Ich will den Zustand von etwa 120 Tastern an meinem PC abfragen (ähnlich dem
Studiopublikum bei "Wer wird Millionär"). Meine Idee war, die Tastenzustände
über 15 kaskadierte 8bit-Schieberegister (4021) abzufragen und über die
serielle Schnittstelle an den PC auszugeben.
Hallo,

Du musst damit rechnen das nicht alle brav auf das Kommando hin
gleichzeitig drücken und die Taste länger gedrückt halten. Es kann
passieren das mit einer einzigen Abfrage der Tasten nicht die wirklichen
Eingaben des Publikums ermittelt werden können da nicht alle Tasten an
dem Abfragezeitpunkt auch wirklich gedrückt sind.

Man wird wohl die Tasten mehrfach scannen müssen, über mehrere Sekunden
hinweg und einige 10 mal pro Sekunde. Aus diesen etwa 50 bis 200 Werten
muß dann ein Programm ein plausibles Ergebnis ermitteln, abgegebene
Stimmen, gültige und ungültige (Drücken von mehreren Tasten),
Enthaltungen, Meinungsänderungen (erst A und dann doch noch C, aber
nicht gleichzeitig)

Bye
 
On Mon, 17 Nov 2003 09:39:10 +0100, Uwe Hercksen
<hercksen@mew.uni-erlangen.de> wrote:

Hi!

Da Sebastian schrieb:

Ich hab zwar von Programmierung Ahnung, aber nicht von
Elektronik.
wird er sich um das...

Du musst damit rechnen das nicht alle brav auf das Kommando hin
gleichzeitig drücken und die Taste länger gedrückt halten. [...]
Man wird wohl die Tasten mehrfach scannen müssen, über mehrere Sekunden
hinweg und einige 10 mal pro Sekunde.
....wohl schon Gedanken gemacht haben.

Gerade um viele Scanvorgänge mit niedrigem Takt zu schaffen, bietet
sich die bereits vorgeschlagene Tastaturmatrix an. Evtl würde ich
Optokoppler vorsehen, um Störungen zu vermeiden. Also von den Tastern
über die langen Kabel zu den Optokopplern in der Matrix. 4er gibts für
0,24 - da werden die Taster im ansprechenden Gehäuse vielfach teurer
sein. Zugegeben, das wird ne hübsch volle Platine, und 100x 10mA sind
auch nicht wenig - aber ich wüsste nicht, wie man sonst die möglichen
Störungen in den Griff bekommen sollte.

Gruß,
Michael.
 
gleich mal vorneweg: Ich hab zwar von Programmierung Ahnung, aber nicht von
Elektronik. Also gleich mal Entschuldigung für dumme Fragen...

Folgende Situation:
Ich will den Zustand von etwa 120 Tastern an meinem PC abfragen (ähnlich dem
Studiopublikum bei "Wer wird Millionär"). Meine Idee war, die Tastenzustände
über 15 kaskadierte 8bit-Schieberegister (4021) abzufragen und über die
serielle Schnittstelle an den PC auszugeben.
Es ist natürlich ersteinmal die Frage ob bei WwM die Taster auch wirklich
ausgewertet werden... kann ja auch sein, daß da ein Zufallsgenerator ant-
wortet oder eine vom Frage-Erfinder vorgegebene Verteilung angezeigt
wird - schließlich ist ja nicht alles echt beim Fernsehen...

Es ist wirklich schwer, Dir einen passenden Rat zu geben wenn man die
Rahmenbedingungen nicht kennt. Z.B. ob da 120 Taster in der Pampa ver-
teilt werden oder ob diese wie bei WwM zu Gruppen a 4 Taster zusammen-
gefasst werden? Bei letzterem könnte ein BCD-2-Binary-Encoder die Anzahl
der auszuwertenden Signale schon mal halbieren und auch das Problem der
gleichzeitig zu drückenden Tasten reduzieren...

*Ich* würde es wohl so machen: In jedes der 30 Kästchen mit 4 Tastern
kommt ein kleiner uC, z.Zt. nehme ich für so etwas gerne den PIC 12F629.
Daran die 4 Tasten. Dieser PIC sendet dann auf 1 Leitung die zuerst ge-
drückte Taste zusammen mit einer Gerätenummer. Dabei kann man dieses
Protokoll nehmen - Name ist mir leider entfallen - wo der PIC die Über-
tragung abbricht wenn auf dem Bus ein anderes Bit anliegt als er senden
will und es nach einer zufälligen Wartezeit nochmal versucht. Ein 31. PIC
sammelt diese Übertragungen und leitet sie an Deinen PC weiter.

cu,

Aguja

::Update:: www.PROuC.de ==> Free AVR-, PIC- & 8051-Programmers, Apps & Tips
 
Es sollen 24 Taster a 5 Tasten werden (WwM war nur ein Anwendungsbeispiel,
will mir auch andere Möglichkeiten offen halten, ist ja dann nur noch eine
Frage der Programmierung).
Und mit der 5. Taste kommt leider ein drittes Bit ins Spiel... Naja gibt
Schlimmeres.
Verpackt der 12F629 auch 5 Tasten?
Danke!

Gruss Seb

"Aguja" <aguja@despammed.com> schrieb im Newsbeitrag
news:UOXu/g6wVYjP092yn@despammed.com...
gleich mal vorneweg: Ich hab zwar von Programmierung Ahnung, aber nicht
von
Elektronik. Also gleich mal Entschuldigung für dumme Fragen...

Folgende Situation:
Ich will den Zustand von etwa 120 Tastern an meinem PC abfragen (ähnlich
dem
Studiopublikum bei "Wer wird Millionär"). Meine Idee war, die
Tastenzustände
über 15 kaskadierte 8bit-Schieberegister (4021) abzufragen und über die
serielle Schnittstelle an den PC auszugeben.

Es ist natürlich ersteinmal die Frage ob bei WwM die Taster auch wirklich
ausgewertet werden... kann ja auch sein, daß da ein Zufallsgenerator ant-
wortet oder eine vom Frage-Erfinder vorgegebene Verteilung angezeigt
wird - schließlich ist ja nicht alles echt beim Fernsehen...

Es ist wirklich schwer, Dir einen passenden Rat zu geben wenn man die
Rahmenbedingungen nicht kennt. Z.B. ob da 120 Taster in der Pampa ver-
teilt werden oder ob diese wie bei WwM zu Gruppen a 4 Taster zusammen-
gefasst werden? Bei letzterem könnte ein BCD-2-Binary-Encoder die Anzahl
der auszuwertenden Signale schon mal halbieren und auch das Problem der
gleichzeitig zu drückenden Tasten reduzieren...

*Ich* würde es wohl so machen: In jedes der 30 Kästchen mit 4 Tastern
kommt ein kleiner uC, z.Zt. nehme ich für so etwas gerne den PIC 12F629.
Daran die 4 Tasten. Dieser PIC sendet dann auf 1 Leitung die zuerst ge-
drückte Taste zusammen mit einer Gerätenummer. Dabei kann man dieses
Protokoll nehmen - Name ist mir leider entfallen - wo der PIC die Über-
tragung abbricht wenn auf dem Bus ein anderes Bit anliegt als er senden
will und es nach einer zufälligen Wartezeit nochmal versucht. Ein 31. PIC
sammelt diese Übertragungen und leitet sie an Deinen PC weiter.

cu,

Aguja

::Update:: www.PROuC.de ==> Free AVR-, PIC- & 8051-Programmers, Apps &
Tips
 

Welcome to EDABoard.com

Sponsor

Back
Top