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!
@ 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
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
vielen Dank für die Antworten. Das mit 1ms ist nur für die erste Phase (als Test), eingesetzt wird die Steuerung mit 1us statt 1ms.
@ 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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.