Hallo erstmal, kann mir einer verraten, wie ich unter c zwischen den Bänken des Datenspeichers schalten kann?
Am besten nimmt man einen Chip, der solche Schweinereien erst garnicht nötig hat (8051, ARM, AVR usw.). Ansonsten sollte man vielleicht erstmal verraten um welchen Chip es ganz genau geht und um welchen Compiler. Peter
Es ist ein 16F876A pic und es ist ein PCW c-compeiler ich habe es auch schon in assembler unter c auf folgende Weise versucht: #asm bsf STATUS,PR1 #endasm aber er beschwert sich und sagt, das er STATUS nicht kennt.
Also erstmal gibts kein PR0 und PR1 sondern RP0 und RP1, war aber sicher nur ein Verschreiber. Ansonsten sollte es so funktionieren: #asm bsf 0x03,6 #endasm
Ich kenne den PIC nicht, aber ich erwarte eigentlich, daß der Compiler die Variablen und Register selber verwaltet und die Bänke automatisch umschaltet, wenn er es für nötig erachtet. Schließlich ist ein C-Compiler ja gerade dazu da, um einen von solchem Kleinkram zu entlasten. Im Gegenteil, wenn man dem Compiler ins Handwerk pfuscht, kann das unangenehme Folgen haben. Egal, in welcher Bank ein Register liegt, mal einfach über den vordefinierten Namen auf das Register zugreifen und dann mal ins Assemblerlisting gucken, ob da nicht schon die nötige Umschaltung mit drin ist. Peter
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.