Forum: Mikrocontroller und Digitale Elektronik LED Display Ansteuern


von Franz S. (cisco1991)


Angehängte Dateien:

Lesenswert?

Hallo Leute,
Ich muss als Projekt so ein LED Display siehe Anhang mit einem µC 
Atmega16 im AVR Studio programmieren und dann ansteuern können. Das 
Problem was ich jetzt hab ist, ich weiß nicht genau wie ich anfangen 
soll. Die Firma von der ich das Display habe 
[[http://praeniteo.de/laufschriften-semi-outdoor-einzeilig.html#location1]] 
hat mir ein Protokoll mitgeschickt, wo ich die Anfangsadressen, 
Checksumme usw. sehe auch im Anhang. Da ich jetzt nicht wircklich weiß 
wie es mit dem Protokoll geht, dass sie mir mitgeschickt haben bin ich 
auf eure Hilfe angewiesen. Im Internet finde ich irgendwie auch nix also 
ihr müsst mir nicht google reinschreiben. Ich brauch nur einen, der mir 
Hilft, wie ich anfangen soll und welche Information wichtig wären, um 
die Aufgabe zu lösen. In 2 Wochen sollte ich das hinbringen sonst bekomm 
ich Probleme.

von Floh (Gast)


Lesenswert?

Franz Stieglitz schrieb:
> Ich muss als Projekt so ein LED Display siehe Anhang mit einem µC
> Atmega16 im AVR Studio programmieren und dann ansteuern können.

Muss? Oder willst du?

Also das Display kann über eine Serielle Schnittstelle gestuert werden, 
sprich du benutzt die RxD/TxD Beinchen des Prozessors und einen 
Pegelwandler dafür (z.B. Max232).

Unter Kapitel 1 E ist der Basisrahmen angegeben.
Für jede Einstellung, Daten, Text whatever wird dieser Rahmen 
entsprechend gefüllt und Byte für Byte über die Serielle Schnittstelle 
zum Display geschickt.
Fang mal mit der Hardware an:
mega16, Spannungsversorgung, ISP, Serielle Schnittstelle.
Dann gehts weiter.
:-)

von Franz S. (cisco1991)


Lesenswert?

Floh schrieb:
> Also das Display kann über eine Serielle Schnittstelle gestuert werden,
> sprich du benutzt die RxD/TxD Beinchen des Prozessors und einen
> Pegelwandler dafür (z.B. Max232).

ja das wusste ich bereits.

Floh schrieb:
> mega16, Spannungsversorgung, ISP, Serielle Schnittstelle.
> Dann gehts weiter.

Die Hardware hab ich schon gemacht also Pegelwandler mit MAX232

Wie füll ich diesen Rahmen^^ das ist für mich ein Problem, Kann ich das 
mit dem UDR register machen? Einfach ein Zeichen rausschicken und am 
Display anzeigen lassen. Natürlich die Anfangsbedienung am Anfang 
beinhaltet

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Im Grunde genau so. Wobei es 100% einfacher ist, zuerst vom PC aus mit 
einem Terminalprogramm Zeichen zu senden, bis du ein Gefühl hast, welche 
Sequenzen von Einzelzeichen was machen. Erst danach dann die Sequenzen 
im AVR als Strings hinterlegen und von dort aus automatisch senden.

von Franz S. (cisco1991)


Lesenswert?

Stefan B. schrieb:
> zuerst vom PC aus mit
> einem Terminalprogramm Zeichen zu senden, bis du ein Gefühl hast, welche
> Sequenzen von Einzelzeichen was machen

das hab ich ehh schon gemacht und bis auf die Checksumme bleibt der rest 
immer gleich, und ich hab dann auch gemerkt, dass es sinnlos ist weil 
das im Protokoll ehh schon drinnen steht was mitgeliefert wurde

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

ja, wenn du doch schon alles kennst und gemacht hast was man vorschlägt, 
was GENAU weißt oder kannst du denn nun nicht?

beschreib mal an was dir bekannt ist oder was genau noch fehlt als 
nächster Schritt in deinem Vorgehen.

WIe willst du denn "im Wirkbetrieb" den ATMEGA16 "füttern" mit Texten, 
oder soll das immer konstant bleiben?

von Franz S. (cisco1991)


Lesenswert?

Wegstaben Verbuchsler schrieb:
> ja, wenn du doch schon alles kennst und gemacht hast was man vorschlägt,
> was GENAU weißt oder kannst du denn nun nicht?

Also ich weiß nicht genau wie ich das mit den Adressen machen kann. Also 
die Software zu schreiben ist ein Problem für mich. Ich bräuchte nur ein 
Beispiel wie das ca. geht grob würde reichen.

Wegstaben Verbuchsler schrieb:
> WIe willst du denn "im Wirkbetrieb" den ATMEGA16 "füttern" mit Texten,
> oder soll das immer konstant bleiben?

Also ich will mit der Anzeige dann die Zeit messen, --> start, stopp 
sensor und ihr kennt sicher das Spiel "Heißer Draht", wenn man mit dem 
Griff an die Kette drankommt soll der µC die Fehler hochzählen. LED 
Display ist 2 Zeilig
--> Fehler: xx
--> Zeit: xx:xx:xx --> also nicht konstanter Text sondern die Zeit zählt 
immer weiter bis man durch den Stopp Sensor durchgefahren ist und die 
Fehler werden parallel dazu mitgezählt.

Ich möchte wissen wie man das mit dem --> Im PDF File unter --> E. 
Communication protocol. Wie man sowas übergeben kann. Bitte um HILFE

von Floh (Gast)


Lesenswert?

Als erstes baust du dir eine Zeichenkette zusammen:
char s[n];

s[0] bis s[4] werden mit 0x00 belegt
s[5] ist 0x01 (Start of Header)
s[6] ist Sender, einfacherweise 0xFF (für PC simulieren)
s[7] ist Empfänger, falls du nur eine Anzeige hast, mach einfach 0x00 
(Broadcast, erreicht alle angeschlossenen Geräte)

s[8] ist 0x02 (Start of Text)

s[9] ist was du tun willst, z.B. 'A' für Text schreiben

fürs Text schreiben dann bitte selber im KApitel 2 nachlesen

...

s[n-3] ist 0x03 (End of Text)

s[n-2] ist die Checksumme

s[n-1] ist 0x04 (End of Transmission)

Das wars schon mit dem Zusammenbauen, jetzt werden die Bytes s[0] bis 
s[n] nacheinander über die Serielle Schnittstelle ausgegeben.
:-)

von Franz S. (cisco1991)


Lesenswert?

Floh schrieb:
> Als erstes baust du dir eine Zeichenkette zusammen:

static unsigned char initcommand[] = {0,0,0,0,0,1,'F','F','0','1',2};

// Siehe Kapitel 2 Text Command
// Standardheader für das Textkommando inklusive Voreinstellung für Font 
und Farbe
static unsigned char progheader[]= 
{'A','0','A','0','0','7','F','0','0','0','0','2','3','5','9',255,255,255 
,'1',0xFE,'E',0xFD,'B'};
// Abschlussbytes
static unsigned char endcommand[] = {3,0,0,0,0,4};
// Beispieltext
static unsigned char hallowelt[] = 
{'H','A','L','L','O',0x7F,'W','E','L','T',0};

Ja ich hab mal die Arrays gefüllt wie du gesagt hast. Ich hoffe das 
stimmt so

von elmo (Gast)


Lesenswert?

Kurze Zwischenfrage: was bezahlt man für dieses Display? Liefert 
praeniteo auch an Privat?

von Franz S. (cisco1991)


Lesenswert?

elmo schrieb:
> Kurze Zwischenfrage: was bezahlt man für dieses Display? Liefert
> praeniteo auch an Privat?

Hallo elmo ja das tun sie. Ich hab um die 400€ bezahlt. Du kannst die 
Zeichenhöhe, die länge alles selber wählen und die machen dir so ein 
display.

von Franz S. (cisco1991)


Lesenswert?

Hätte villeicht jemand Zeit im Chat mir etwas zu helfen? Wäre echt super 
nett ..

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.