Forum: Mikrocontroller und Digitale Elektronik Propeller Designfrage: Viele LED's mit wenig Pins /Kosten?


von Matthias P. (sunltd)


Angehängte Dateien:

Lesenswert?

Hey,

ich würde gerne ein Spielbrett für eine Art Schiffe versenken bauen und 
möchte dabei wie im Anhang zu sehen ein LCDisplay, einige allgemeine 
Buttons, (bissl EEPROM) und 20 Spielfelder einsetzen. Jedes Spielfeld 
hat 12 unabhängige LED's und 2 Sensortasten, letztere sollen erstmal 
außen vor bleiben.
Meine Hauptfrage ist jetzt: Wie kann ich kostengünstig und pinsparend 
die LED's ansteuern? (Ich weiß, doppelte Optimierung geht schlecht ;) )
1 sinnvolle Idee hätte ich:
Idee: Ich spendiere jedem Feld 16 Bit Schieberegister und kann so im 
besten Fall mit zwei Leitungen (Takt und Wert) zu jedem Feld auskommen. 
Ein SelectIC beim Prozessor sorgt dafür dass der Takt nur zum 
gewünschten Feld gelangt. (5 bit Feldauswahl, je 1 bit Takt und Wert 
sind 7 Pins)

Leider finde ich diese Lösung mit den ganzen Schieberegistern sehr 
teuer, wenn ich mit ein paar Pins mehr etwas sparen könnte wäre das 
super.
Im Forum werden häufig Matrizen verwendet, ob das für meine Zwecke 
sinnvoll ist weiß ich nicht. Eine Matrix über das ganze Spielfeld wäre 
nen ganz schöner Leitungswust ;)
Eine Nebenfrage ist meine Prozessorwahl: Ich habe einen Parallax 
Propeller mit 8 Cores auf einem Chip gewählt, weil ich so gleichzeitig 
die Ansteuerung, die Spiellogik und die Grafik (128x64 Pixel) berechnen 
kann. Mit nebenläufiger Programmierung habe ich auch gut Erfahrung. 
Findet Ihr diese Überlegung richtig oder gibt es sinnvolle Alternativen?
Bin für jeden Tipp und jede (bissl konstruktive) Kritik dankbar!

MfG
Matthias

von Falk B. (falk)


Lesenswert?

@ Matthias P. (sunltd)

>Meine Hauptfrage ist jetzt: Wie kann ich kostengünstig und pinsparend
>die LED's ansteuern? (Ich weiß, doppelte Optimierung geht schlecht ;) )

Entweder als  LED-Matrix oder wie schon gesagt per Schieberegister. 
AVR-Tutorial: Schieberegister.

>Leider finde ich diese Lösung mit den ganzen Schieberegistern sehr
>teuer,

Warum? So ein 74HC595 kostet irgendwas um die 20 Cent.

>Eine Nebenfrage ist meine Prozessorwahl: Ich habe einen Parallax
>Propeller mit 8 Cores auf einem Chip gewählt, weil ich so gleichzeitig
>die Ansteuerung, die Spiellogik und die Grafik (128x64 Pixel) berechnen
>kann. Mit nebenläufiger Programmierung habe ich auch gut Erfahrung.

Kaum. Denn dann wüsstest du, dass das EINE CPU auch allein machen kann. 
Interrupts sei Dank. Ich denke mal, dass selbst ein popeliger AVR da 
nicht wirklich ausgelastet ist. Der Propeller langweilt sich zu Tode.

MFG
Falk

von Kai F. (kai-) Benutzerseite


Lesenswert?

Hallo,

ich würde einfach einen 8Bit AVR nehmen und die LEDs als Matrix 
ansteuern. Dabei sparst du dir auch den teuren Propeller. Ich will jetzt 
mal behaupten, dass das komplette Spiel mit einem mega16 möglich ist, 
incl KI für den Gegner

von Marcus W. (blizzi)


Lesenswert?

Matthias P. wrote:

> Im Forum werden häufig Matrizen verwendet, ob das für meine Zwecke
> sinnvoll ist weiß ich nicht. Eine Matrix über das ganze Spielfeld wäre
> nen ganz schöner Leitungswust ;)

Eine Matrix hat eigentlich einen geringeren "Leitungswust". Aber wenn du 
20 getrennte Spielfelder brauchst dann treibt das die Pins in der Matrix 
auch in die Höhe, denn alle 20 Felder als eine große Matrix wird dir 
vermutlich einen zu geringen Duty-Cycle einhandeln und eine Matrix pro 
Feld gibt 180 Pins.
Schieberegister finde ich in dem Fall sinnvoller.

> Eine Nebenfrage ist meine Prozessorwahl: Ich habe einen Parallax
> Propeller mit 8 Cores auf einem Chip gewählt, weil ich so gleichzeitig
> die Ansteuerung, die Spiellogik und die Grafik (128x64 Pixel) berechnen
> kann.

Das klingt für mich so als ob du in deiner Informatikvorlesung gerade 
gelernt hast wie man ein Programm in sinnvolle Module aufteilt :)

von Matthias P. (sunltd)


Lesenswert?

Hey,

danke schonmal für die Antworten. War schon drauf und dran mich richtig 
mit Propeller Material einzudecken.
Hätte nicht gedacht dass ich so noobhaft klinge ;), aber wieso ich die 
Mehrchipvariante wählte war zum einen, dass ich eher vom High-Level 
komme (MPI, Posix) und dann mir so nen Propeller näher liegt als nen 
Interrupt-getriggerter µC und zum anderen hatte ich echt Bedenken dass 
die Leistung nicht reicht, auch im Hinblick auf Erweiterbarkeit um ein 
größeres Display, Sound, etc.
Also danke für die Tipps!

MfG
Matthias

von Sven P. (Gast)


Lesenswert?

Matthias P. wrote:
> Hey,
> danke schonmal für die Antworten. War schon drauf und dran mich richtig
> mit Propeller Material einzudecken.
Najo, an sich net verkehrt. Dann könntest aber auch gleich nen Fernseher 
als Ausgabemedium benutzen :-)


Mal ganz nebenbei: Weißt du, woran man erkennt, dass jemand ein 
"Anfänger" ist? Schau mal:
> Hätte nicht gedacht dass ich so noobhaft klinge ;), aber wieso ich die
> Mehrchipvariante wählte war zum einen, dass ich eher vom High -
> Level komme (MPI, Posix) und dann mir so nen Propeller näher liegt
> als nen Interrupt- getriggerter µC und zum anderen hatte ich echt
> Bedenken dass die Leistung nicht reicht, auch im Hinblick auf
> Erweiterbarkeit um ein größeres Display, Sound, etc.
Mal davon ab, dass die Formatirungsmöglichkeit hier im Forum 
Bullenscheiße ist: Erweiterbarkeit --> klemmste nochn AVR dazu und gut 
:-) Versuch mal, nen ganzen Tag lang ohne Anlizismen im Bereich 
Elektronik- und Informationstechnik auszukommen, das wirkt Wunder :-) 
Vorallem erspart es hin und wieder schmerzhafte Erfahrungen von Wegen 
"Ey da kommt der Computerheini schon wieder" bei Leuten, deren 
Interessen anders liegen.

von Michael G. (linuxgeek) Benutzerseite


Lesenswert?

Matthias P. wrote:
> Hey,
>
> danke schonmal für die Antworten. War schon drauf und dran mich richtig
> mit Propeller Material einzudecken.

Ich schliesse mich an. Fuer sowas brauchste keinen Propeller... das is 
overkill pur ;) Es sei denn Du willst unbedingt was damit machen.

Gruss,
Michael

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.