www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Hilfe bei Projekt gesucht


Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
brauche dringend hilfe bei meinem Laufschrift Projekt komm einfach
nicht mehr weiter. Die Hardware ist fertig mein Problem liegt an der
Software!
Hier erstmal ein paar Daten zu meinem Projekt:

Hardware:
Ich benutze 10 mal 5x7 Dotmatrix Bausteine
Die Spalten werden durch 7 kaskadierte 8 Bit Schieberegister
angesteuert. Die Zeilen jeweiles mit einem Pin des Mikrocontrollers.
Dazu kommt noch einen PS/2 Tastaur Anschluss um spaeter den Text
einzugeben.
Das ganze moechte ich Multiplexen!

Software:
Ich habe schon ein Programm geschrieben was aber leider noch nicht
richtig funktioniert.
Koennt ihr mir nun ein paar Vorschlaege schrieben wie ich mein Programm
in etwa aufbauen muss.

Das ganze moechte ich in etwa so aufbauen das ich mit der Tastatur den
Text eingebe und wenn ich Enter druecke es auf der Laufschrift
erscheint.
Einen Zeichensatz habe ich schon.
Mein Problem ist nun wie ich das alles Verbinden muss mit einlesen der
tastatur die daten aus dem zeichensatz holen und dann ausgeben.

Also ich habe schon erfahrung mit Multiplexen, Schieberegister ...

Danke schon im vorraus

MfG
Daniel

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich glaube du hast vergessen dein Programm an zu hängen.
Welche Frage hast du konkret?
Hast du nur vergessen Widerstände, Treiber bzw. Transistoren vergessen
zu erwähnen, sonst wird die Anzeige wohl dunkel bleiben.

Ansonsten brauch man doch nur die Zeichen von der Tastatur einlesen, in
deinen Zeichensatz dekodieren und in den RAM schreiben. Im
Timerinterrupt wird dann jeweils das passende rausgeschoben.

Kannst ja mal im Forum nach Propeller Clock und Laufschrift suchen.

Seb

Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meine Hardware stimmt also ich hab es auch schon auf einem anderen Weg
geschaft ein Wort durchlaufen zu lassen. Das ich im Programm aber fest
definiert habe jetzt moechte ich das ganze ja variabel machen.

Ein von meinen Problemen ist das meine Buchstaben 6 Bit lang sind also
6 spalten 5 fuer den buchstaben 1 als leerzeichen. Da ich mit dem
Shiftout Befehl von Bascom aber imnmer nur eine byte variable
rausshiften kann haben die Buchstaben einen zu grossen abstand

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sind das Anzeigen mit internen Treiberstufen und Stromquellen ?

Ansonsten wirst Du große Schwierigkeiten haben, eine konstante
Leuchstärke zu erzielen, bzw. überhaupt erstmal die nötigen 10  5 
20mA = 1A bereitzustellen.

20mA sollten es bei 7-er Multiplex schon sein (= 3mA effektiv).
Das sind dann 10 * 5 Widerstände a 150 Ohm.


Vor dem Schieben must Du natürlich Byteweise umsortieren, also 5 Bit
vom ersten Zeichen + 1 Leerbit + 2 Bit vom 2. Zeichen in ein Byte und
raus damit usw.

In C sieht das dann so aus:

SPDR = (BYTE1 << 3) + 0 + (BYTE2 >> 3);
while(!(SPSR & (1<<SPIF)));
SPDR = (BYTE2 << 5) + 0 + (BYTE3 >> 1);
while(!(SPSR & (1<<SPIF)));

usw.


Peter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.