Zitat Zitat von PICture
Hallo t0b4d!

Ich vermute, dass bei Dir vor dem Sprung in die Tabelle, der PCH nicht den richtigen Wert hat. Schau mal, bitte, :

https://www.roboternetz.de/phpBB2/ze...ag.php?t=19714

MfG
Zitat Zitat von kalledom
...
Ich hatte ja schon gefragt, was in PCLATH steht und denke auch, daß der Fehler dort liegt. ....

Ich wollt mich eigentlich vor diesem Problem drücken (weil ich das nicht so ganz verstanden hab),
da es jetzt aber anscheinend nicht mehr anders geht muss ich mir die Funktionsweise des PCLATH genauer anschaun.

Das was ich bis jetzt verstanden hab ist:

Programmcounter besteht aus: PCLATH,PCL
Der PCL deckt folgenden Bereich ab -> 2^0 - 2^7
Der PCLATH deckt folgenden Bereich ab -> 2^8 - 2^10 (mein PIC kann max. 1024 Befehle speichern)

Mit dem 8. stelligen PCL kann ich also nur im Bereich von 0 bis Programmzeile 2^7 (12 springen.
Da mein Code bzw meine Tabelle nicht in diesem Bereich liegt
muss ich jetzt mit dem höherwertigen Byte des Programmzählers arbeiten (PCLATH).

Jetzt stelle ich mir aber die Frage (ohne vorher mich informiert zu haben) wenn ich den PCLATH verändere, wird er nach dem Zeilenaufruf der Tabelle (zb. RETLW gStatus) wieder durch das RETURN zurückgestellt ?

Edit:
Ich hab auf google folgendes gefunden:
http://www.staff.uni-bayreuth.de/~bt...rtechniken.pdf
kann es aber erst heute abend testen wenn ich wieder zuhause bin.