Forum: Mikrocontroller und Digitale Elektronik AT89C2051 und das UART Rätsel


von Ronny (kraftstrom)


Lesenswert?

Hallo,
Ich bin hier neu und hätte sogleich eine Frage. Vorab muss ich noch 
sagen, ich habe wenig Ahnung von mikrocontrollern aber bin willens, 
vorhandene Wissenslücken zu füllen.

Ich habe ein Anzeigeplatine mit 4 großen 7 segment Anzeigen drauf, 
welche mit einem 32 bit Schieberegister(UCN5833) verbunden sind. Dieser 
wird von dem AT89C2051 "gefüttert.
Am Pin 2, was der RX Anschluss ist, wird er noch über einen Transistor 
mit Daten versorgt. Nun stellt sich mit die Frage, wie bekomme ich 
heraus, mit welchen Signalen ich ihn versorgen muss um eine sinnvolle 
Anzeige von Werten zu bekommen?
Ich hätte allerlei Messmittel zur Verfügung, sowie eine USB > UART 
bridge.

Ich hoffe ihr habt da eine Idee.

Mit freundlichen Grüßen

von Monk (roehrmond)


Lesenswert?

Ronny schrieb:
> wie bekomme ich heraus, mit welchen Signalen ich ihn versorgen muss

In erster Linie aus der Dokumentation. Ider man analysiert den Quelltext 
der Firmware, falls vorhanden. Ansonsten: vergiss es. Das ganze Produkt 
neu zu erfinden geht schneller und billiger.

von H. H. (hhinz)


Lesenswert?

Mit dem UART des 2051 kannst du das Schieberegister nicht füttern.

In welcher Sprache willst du denn das Programm für den 2051 erstellen?

von Peter D. (peda)


Lesenswert?

H. H. schrieb:
> Mit dem UART des 2051 kannst du das Schieberegister nicht füttern.

Natürlich geht das, siehe UART Mode 0.

von Mario M. (thelonging)


Lesenswert?

Ronny schrieb:
> Ich hoffe ihr habt da eine Idee.

4 x 7 = 28 ==> Jedes Segment an einen Ausgang. Such die Eingänge des 
Schieberegisters steuere es passend an und schiebe Bitmuster durch und 
man wird sehen.

von H. H. (hhinz)


Lesenswert?

Peter D. schrieb:
> H. H. schrieb:
>> Mit dem UART des 2051 kannst du das Schieberegister nicht füttern.
>
> Natürlich geht das, siehe UART Mode 0.

Und woher kommt der Takt für das Schieberegister?

von Monk (roehrmond)


Lesenswert?

Ich glaube ihr habt den TO missverstanden. Der Mikrocontroller ist 
Bestandteil der Anzeige. Diese hat einen seriellen Eingang. Er will das 
Kommunikationsprotokoll herausfinden, nicht den Mikrocontroller der 
Anzeige programmieren.

von Ronny (kraftstrom)


Angehängte Dateien:

Lesenswert?

H. H. schrieb:
> Mit dem UART des 2051 kannst du das Schieberegister nicht füttern.
>
> In welcher Sprache willst du denn das Programm für den 2051 erstellen?

Das ist eine vorhandene Platine, ein kommerzielles Produkt wo ich auch 
dessen Programm nicht kenne. Ich hatte gehofft  dass ich herausbekomme, 
mit welchen Signalen ich den UART füttern muss. Das schieberegister ist 
an den normalen IO Pins angeschlossen.

Monk schrieb:
> In erster Linie aus der Dokumentation. Ider man analysiert den Quelltext
> der Firmware, falls vorhanden. Ansonsten: vergiss es. Das ganze Produkt
> neu zu erfinden geht schneller und billiger.

Ok, wäre schade.

Beitrag #7748254 wurde vom Autor gelöscht.
von H. H. (hhinz)


Lesenswert?

Monk schrieb:
> Ich glaube ihr habt den TO missverstanden. Der Mikrocontroller ist
> Bestandteil der Anzeige. Diese hat einen seriellen Eingang. Er will das
> Kommunikationsprotokoll herausfinden, nicht den Mikrocontroller der
> Anzeige programmieren.

Ach je, das geht natürlich nur wenn er eine funktionierende 
Kommunikation mitverfolgen kann.

von Max D. (max_d)


Lesenswert?

Ersetz den einfach durch einen Attiny2313 und schreib deinen eigenen 
Code. Dort kannst du dann die Daten in deinem Wunschformat entgegen 
nehmen...

von Yalu X. (yalu) (Moderator)


Lesenswert?

Wenn ich ein Programmiergerät für den AT89C2051 hätte, würde ich dessen
Firmware mit meiner eigenen überschreiben.

Leider habe ich kein solches Programmiergerät, dafür aber bspw. eins für
AVRs. Da ich auch noch ein paar pinkompatible ATtiny2313 herumliegen
habe, würde ich diesen programmieren und anstelle des AT89C2051 in den
Sockel stecken.

Fertig.

Ob das auch für dich eine Option ist, hängt natürlich von deiner
Hardwareausstattung und deinen Programmierkenntnissen ab.

Edit: Max war schneller.

: Bearbeitet durch Moderator
von Dieter S. (ds1)


Lesenswert?

Läßt sich die Firmware des AT89C2051 auslesen oder sind die Lock Bits 
gesetzt? Falls sich die Firmware auslesen läßt stelle sie hier rein, 
dann kann man schauen wie die UART Kommunikation abläuft.

: Bearbeitet durch User
von H. H. (hhinz)


Lesenswert?

Max D. schrieb:
> Ersetz den einfach durch einen Attiny2313

Auf die Polarität des Resetsignals achten!

von Gregor J. (Firma: Jasinski) (gregor_jasinski)


Lesenswert?

Ronny schrieb:
> ich habe wenig Ahnung von mikrocontrollern[,] aber bin willens,
> vorhandene Wissenslücken zu füllen.

Wenn Du wenig Ahnung von µControllern hast, dann ist das, was Du Dir 
hier vorgenommen hast, genau der falsche Weg (dafür).

: Bearbeitet durch User
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.