Forum: Mikrocontroller und Digitale Elektronik 8051 UART mit Agilent Multimeter


von Andy A. (crusty)


Angehängte Dateien:

Lesenswert?

Hallo liebe Forumleser, ich habe hier schon viel zum Thema 
Mikrocontroller sowohl Atmega als auch 8051 dazu lernen können (Danke 
eurer super Forumsbeiträge) doch jetzt stehe ich vor einem Problem.

Ich habe hier ein Multimeter (Agilent 34401A) das ich mit einem 
AT89C51ED2 über UART verbinden möchte.
Es soll per Taster in verschiedene Modis geschalten werden können, z.B. 
widerstandsmessung oder Spannungsmessung. Die Messwerte sollen dann zum 
MC geschickt werden und auf dem LCD dargestellt werden.

Ich kann momentan zwar  Befehle an das Messgerät schicken, z.B. das es 
sich in den Remote Modus schaltet oder einen Error wieder resetet, 
jedoch bekomm ich keine Daten vom Messgerät zu meinem MC geschickt.

Ich programmiere mit Ride 7 in Assembler und habe dort im Debug Modus 
mein Programm getestet (dort kann man direkt über UART mit dem Messgerät 
testen).
Ich bekomme dort auch Daten vom Messgerät wenn ich z.B. *IDN? schicken 
bekommen ich den Namen des Messgeärts im Debug Modus angezeigt. Auch die 
Messwerte kommen bei mir an.
Starte ich nun das ganze im MC schickt er zwar die Befehle, es erscheint 
jedoch nichts am Display.

Was ich gerade noch festgestellt habe ist, das anscheinend das RI Flag 
nicht gesetzt wird, ich habe im Code einfach nach dem Uart Receive eine 
Ausgabe von 'A' auf das Display gemacht, jedoch wird dieser Code schon 
nicht mehr ausgefürt, somit hängt er anscheinend im UART_Receive fest.
Vielleicht ist das ein Anhaltspunkt.

Die UART Kommunikation zwischen PC und MC funktioniert einwandfrei, ich 
kann sowohl Daten zum MC schicken, als auch empfangen, somit scheidet 
ein Hardware defekt aus (Board ist neu, und selbst entwickelt)

INFOS: Messgerät: Agilent 34401A (Befehle SCPI Code)
       Entwicklungsumgebunt AT89C51ED2: Ride7 Assembler
       Display: HD44780
       UART: Baudrate 9600, Parität NONE, 8 Datenbits

Habe im Anhang meine 3 Projektdateien angehängt, vielleicht findet 
jemand einen Fehler, oder weis eine Antwort auf mein Problem.

Ich bedanke mich schon einmal im vorraus, und freue mich mit euch 
diskutieren zu können :-)

von Andy A. (crusty)


Angehängte Dateien:

Lesenswert?

Kleiner Nachtrag, hab die falsche UART Datei angehängt, hier die neue 
geänderte.
Beim UART Init, hab ich beim Timer noch was vergessen gehabt.

von Andy A. (crusty)


Lesenswert?

Hat sich erledigt, das Multimeter hat noch ein High Signal auf der DCS 
Leitung gebraucht um das Senden von Daten freizugeben.

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.