PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SourceBoost



Arexx-Henk
13.05.2005, 15:34
Hallo,

Ich benutze zeit 6 monaten die SourceBoost C-compiler fur PIC16F648 usw. Die PIC stack ist 8 levels tief. Jetzt vermute ich dass mein programm mehr als 8 stack levels benutzt weil es undefinierte sachen macht...

Meine frage ist: Weiss jemand ein einfache losung um zu checken ob die sourcecode mehr als 8 genestete functionen anruft?

gruss

Henk

PicNick
13.05.2005, 15:53
Etwas mühsam, aber du könntest deine Funktionen als Makro redefinieren, in denen du den eigentlichen call einbettest zwischen "zähler rauf" und "Zähler runter", ev. mit kontrolle > 7 "schrei feuer"
Das versagt aber bei impliziten calls und das is grad' bei C ein desaster, der ja jeden Schmarren als Funktion ausführt.
DIe PIC mit ihren 8 Level sind die Strafe des Herrn.
Hoffen wir, daß wer anderer was besseres weiß

Arexx-Henk
13.05.2005, 20:42
Hallo PicNick/Robert,

das ist eine moglichkeit, aber da hab ich von deinem antwort ein neues idee bekommen. Ich nehme ein globalen variabele, und im jeden function am anfang zahlt sich einer drauf und beim verlassen der function zahl er sich einer drunter. Ja kann mann in jeden function die wert testen oder die hochtswert irgendwo speichern und spater auslesen ob die variable hoher als 8 ist.

Danke!

gruss

Henk