Ansteuerung von 128 LEDs

Gast #2226484
Lesenswert?

Hallo Leute,

mit einem Lattice FPGA und einem externen Trigger möchte ich 128 Leds 
ansteuerun:
Ext. Trigger kommt => 1000 Takten von 1ms werden generiert => in jedem 
Takt müssen die Leds mit einem Bitmuster (128Bit = 8xWord) geladen 
werden.

Wie kann ich das am besten in VHDL realisieren:
- Die BitMuster in einem Array oder RAM speichern?, oder egal?
- Wie kann man die 128 Led auf einem Schlag laden? oder muss ich doch 
alle Bitmuster schieben, dann eine LED nach der andere laden?

P.S.
ich bin zwar ein Mikrocontroller Programmierer habe aber Null Ahnung von 
FPGAs!
#2227047
Lesenswert?

@  chris (Gast)

>Ext. Trigger kommt => 1000 Takten von 1ms werden generiert =>

SOOOO langsam? 1 kHz?

> in jedem
>Takt müssen die Leds mit einem Bitmuster (128Bit = 8xWord) geladen
>werden.

Hmmm.

>Wie kann ich das am besten in VHDL realisieren:
>- Die BitMuster in einem Array oder RAM speichern?, oder egal?

RAM ist günstiger, braucht weniger Logikzellen und ist ggf. schneller. 
Spielt hier aber keine Rolle.

>- Wie kann man die 128 Led auf einem Schlag laden?

Wenn du 128 IOs hast, einfach anlegen. bzw. über ein 128 Bit 
Zwischenregister + Schieberegister. Quasi ein XXL 74HC595.

> oder muss ich doch
>alle Bitmuster schieben, dann eine LED nach der andere laden?

www.grundlagen.de

>ich bin zwar ein Mikrocontroller Programmierer habe aber Null Ahnung von
>FPGAs!

Und was soll dann dabei rauskommen? Ohne Grundlagen geht nix. Und für 
diese Anwendung reicht ein kleiner Mikrocontroller + ein paar 
Schieberegister lässig.

AVR-Tutorial: Schieberegister

MFG
Falk
#2227259
Lesenswert?

chris schrieb:
> ich bin zwar ein Mikrocontroller Programmierer habe aber Null Ahnung von
> FPGAs!

Hmm, Vorschlag von mir: schau dir mal den "MAX6954" an, ist ein LED 
Treiber, der die 128 LEDs allein ansteuert (und 32 Taster abfragt !). Du 
brauchst dich nur noch um die (recht einfache) SPI-Kommunikation zu 
kümmern.
Allerdings kostet der um die 21€ bei DigiKey ...

Gruss Uwe
#2228119
Lesenswert?

@  Gagamel (Gast)

>> Steuerung mit 1us statt 1ms.
>hoho, jetzt wird's aber heftig. Ob das FPGA das schafft?

Gähn Selbst wenn man es rein seriell machen würde, wären das schlappe 
128 MHz zum Schieben. Kinderkram für ein aktuelles FPGA. Und wenn man es 
richtig macht (tm), macht man den Datenpfad 8 oder 16 Bit, dann wird es 
völlig relaxed.

MfG
Falk

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren