Forum: Mikrocontroller und Digitale Elektronik Software Problem (VPC3+C)


von Max (Gast)


Lesenswert?

Hi hab da ein Problem mit einem Profibus ASIC!

Ich benutze einen Intel 80c196 Prozessor und andem hängt am Adr- und 
Datenbus der VPC3+C Profibus ASIC.

Ich hab es erfolgreich geschaft mit der Software von Profichip den ASIC 
zum Laufen zu bringen und Daten am Profibus hin und her zu schicken.

Jetzt zum Problem:
Aber nun ist das Problem dass wenn ich eine weitere Variable 
initialisiere, Funktioniert das ganze System nicht mehr. Die Software 
meldet bei der Initialisierung vom ASIC keinen Fehler, aber der 
Profibus-Master kann nicht mehr mit dem ASIC kommunizieren.

Wenn ich die Variable wieder weglasse funktioniert das ganze wieder 
einwandfrei!!

Ich bin absolut Planlos was das mit der Variable zutun hat, ich muss sie 
noch nichtmal im Programm verwenden!

Ich hoffe dass mir wer bei meinem Problem helfen kann.

mfg

von Max (Gast)


Lesenswert?

Achja als Compiler verwenden wir einen alten Tasking c196 Compiler...

mfg

von Jim M. (turboj)


Lesenswert?

Ohne Blick auf Deinen Source Code wird Dir keiner helfen können,
zumal das Problem nach was fiesem wie uninitialisierte Variable 
aussieht.

von Mark B. (markbrandis)


Lesenswert?

Jim M. schrieb:
> Ohne Blick auf Deinen Source Code wird Dir keiner helfen können

Richtig. Also Sourcecode zeigen. Aber fix! :-)

von Max (Gast)


Lesenswert?

Ok ich wollt euch den Code jetz so herichten dass ihr alles versteht und 
dass er wieder leicht leserlich ist , dass war er nämlich nicht mehr da 
ich Aufgrund des Fehlers lauter kleine Änderungen gemacht habe die den 
Code versaut haben (immer wieder Code geschrieben wieder auskommentiert 
etc).

Ich bin mit nicht sicher was das Problem gelöst hat aber ich hab da eine 
Vermutung.

Ich hab die Variablen so initialisiert
1
 Var1 = Var2 = 0;

Kann dass sein das der alte Tasking Compiler ( ich vermute 1994) diese 
Zeile so interpretiert?
1
Var1 = Var2;
2
Var2 = 0;

von Mark B. (markbrandis)


Lesenswert?

Max schrieb:
> Ich hab die Variablen so initialisiert
>
>
1
 Var1 = Var2 = 0;
>
> Kann dass sein das der alte Tasking Compiler ( ich vermute 1994) diese
> Zeile so interpretiert?
>
>
1
> Var1 = Var2;
2
> Var2 = 0;
3
>

Das kannst Du ja testen ob dem so ist. Gib Var2 zu Beginn jeweils einen 
anderen Wert als 0. Dann mal die eine, mal die andere Variante probieren 
und schauen, ob Var1 dabei unterschiedliche Werte annimmt (einmal 0, 
einmal den Wert ungleich 0 von Var2).

: 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.