AVR - Eine 5x7 Dotmatrix LED effektiv programmieren

OP #974805
Lesenswert?

Hi ich möchte gerne eine 5x7 Dotmatrix LED ansteuern.
Ich arbeite mit Bascom und mit einem Atmega16.
Ich habe ein Programm geschrieben das eine "1" darstellt (siehe Anhang). 
Funktioniert auch wunderbar, jedoch ist der Code extrem lang. Es muss 
doch eine möglichkeit geben es effektiver zu programmieren...

Hab ihr eine Idee?

Lg Tryan
Angehängte Dateien:
OP #975010
Lesenswert?

hmmm...also ich wollte die Anzeige Direkt ansteuern.
Ich bin noch sehr neu in der µC Welt (sieht man bestimmt an dem 
Programm)
Könnte mir jemand ein groben Programm-Aufbau geben, damit versuche ich 
dann zu arbeiten.
Da ich keine schimmer habe wie ich am besten Anfange...

mfg TRyan
#975062
Lesenswert?

@Tobias S. (Firma DESY) (tryan)

>hmmm...also ich wollte die Anzeige Direkt ansteuern.

Das Ding heisst Matrix, kann also nur als Matrix angesteuert werden.

>Könnte mir jemand ein groben Programm-Aufbau geben, damit versuche ich
>dann zu arbeiten.
>Da ich keine schimmer habe wie ich am besten Anfange...

Lies mal den Artikel LED-Matrix, denk drüber nach, morgen reden wir 
weiter.

MFG
Falk
OP #975675
Lesenswert?

Der Max 7219 ist schon schön, aber sehr teuer um nur eine Matrix 
anzustuern...
Aber danke für den Tipp.
Bei DESY laufen nicht nur Physiker rum auch Azubis ;)
Aber ich werde es mal mit Asm versuchen, vielleicht komm ich da mein 
Ziel etwas näher.
Danke!

mfg Tryan
#975718
Lesenswert?

Tobias S. wrote:
> und langsam finde ich Programmieren echt
> frustrieren. Man hat zwar Ideen kann sie aber einfach nicht umsetzten.

Stimmt, man kann nicht einfach so drauflos programmieren.
Man muß sich erstmal die Aufgabe klar machen.

Am besten fängt man beim Programmieren damit an, daß man den PC 
ausschaltet und zu Papier und Stift greift.
Und dann malt man alle nötigen Schritte auf.
Sind die Schritte zu komplex, daß man sie nicht übersichtlich darstellen 
kann, unterteilt man sie in Unterschritte (neues Blatt).

Und erst wenn man den Überblick hat, kann man mit dem Einhacken 
beginnen.

Du hast ein Zeichen (1 Byte ASCII-Code).
Damit willst Du 5*7 LEDs ansteuern.
Also brauchst Du eine Tabelle mit 5 Bytes je Zeichen.
Diese 5 Bytes schreibst Du in eine 5Byte Puffer.
Dann setzt Du nen Timerinterrupt auf und darin nen Zähler 0..4.
Der Timerinterrupt gibt dann für genau gleiche Zeitabschnitte eine 
Spalte (1 Byte aus dem Puffer) aus und setzt den entsprechenden 
Spaltentreiber.
Nach 5 Interrupts wurden also alle 5 Spalten dargestellt.
Bei ~500Hz Interruptfrequenz sieht das Auge alle 5 Spalten gleichzeitig.
Und fertisch.


Peter
Gast #3699770
Lesenswert?

Tobias S. schrieb:
> Der Max 7219 ist schon schön, aber sehr teuer um nur eine Matrix
> anzustuern...
> Aber danke für den Tipp.
> Bei DESY laufen nicht nur Physiker rum auch Azubis ;)
> Aber ich werde es mal mit Asm versuchen, vielleicht komm ich da mein
> Ziel etwas näher.
> Danke!
>
> mfg Tryan

Wenn du aus china bestellst kosten sie ca...1 bis 2 euro
..
Versand dauert aber halt 20-30 tage...
Hab ich auch gemacht....50 Stück für 21,50 eur....

Und die ic's funktionieren wie 'ne eins!

Achtung!!!!! Bestellung + Versandkosten dürfen nicht 22eur übersteigen. 
..sonnst fallen steuern an!!!!

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