Programm funktioniert im Simulator, aber nicht auf Controlle

Gast #510605
Lesenswert?

Hallo zusammen,

ich habe das im Anhang befindliche Controllerprogramm geschrieben. Im 
Simulator (Keil µVision 3) funktioniert das Programm genau so, wie ich 
es mir vorstelle. Es soll eigentlich 'nur' über die RS232-Schnittstelle 
mit einem Rechner kommunizieren und abhängig von den empfangenen Daten 
bestimmte Ausgänge setzen bzw. rücksetzen oder Daten an den Rechner 
schicken.
Jetzt habe ich das Programm auf meinen Controller (AT89C51ID2) geflasht 
und es funktioniert leider gar nicht...
Wenn ich einen Reset mache bekomme ich - laut Terminalprogramm - erstmal 
eine 0x00 geschickt. Dann schicke ich - auch per Terminalprogramm - eine 
0x00FF rüber. Daraufhin sollte der Controller eigentlich mit einer 
0x000EFF antworten. Das tut er leider nicht, sondern er sendet einfach 
gar nichts.
Da das Programm im Simulator funktioniert nehme ich mal an, dass ich 
etwas in der ProjectInit() falsch mache. Sprich irgendwelche 
Hardwareeinstellungen nicht vornehme, die der Simulator nicht benötigt, 
die reale Hardware aber eben schon.
Zur Sicherheit habe ich mal den gesammten Code eingefügt.

Wäre klasse, wenn sich jemand meinem Problem annehmen würde.

Vielen Dank schonmal im voraus und viele Grüße
Angehängte Dateien:
Gast #512075
Lesenswert?

Hm, 21 Downloads und keine Antwort.
Das kann jetzt heißen, dass das Programm an und für sich funktionieren 
sollte - dann bitte auch das Antworten - oder dass das Programm so lang 
ist und niemand alles gelesen hat.

Bitte schreibt mir wenigstens, ob ihr denkt, dass es grundsätzlich 
richtig ist, oder ob irgendwo ein ziemlicher Denkfehler drin ist - auch 
wenn es dann ja eigentlich auch im Simulator nicht funktionieren sollte, 
oder?

Danke und viele Grüße
Gast #512209
Lesenswert?

Hallo zusammen,

nochmal ich.
Auch ein ganz einfaches Programm, wo ich nur den Port 0 auf high schalte 
(nach dem Aufruf der ProjectInit()) läuft auf der Hardware leider nicht.
Das heißt doch für mich, dass dort irgendwo der Fehler liegen muss, 
oder?
Der Sicherheit halber ist mal mein Stromlaufplan angehängt. Die am 
Controller offen gezeichneten Pins sind auf der Platine mit 
Steckerleisten verbunden, die der Übersichtlichkeit halber aber auf dem 
Plan weggelassen sind.

Hat jemand noch eine Idee, woran es in der ProjectInit() liegen könnte?

Viele Grüße
Angehängte Dateien:
Gast #512292
Lesenswert?

Hi,

hm, im Datenblatt steht eigentlich, dass der Reset einen internen 
Pulldown hat. Für den Power-on Reset braucht man nen Kondensator nach 
VCC (den hab ich jetzt mal provisorisch reingelötet, aber hat auch 
keinen Effekt).
Was ist die Sclater? Damit kann ich leider gar nix anfangen.

Viele Grüße

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