www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wie setze ich PR0/PR1 im Statusregister mit nem c-compeiler


Autor: alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo erstmal,
kann mir einer verraten, wie ich unter c zwischen den Bänken des
Datenspeichers schalten kann?

Autor: Peter Dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Peter Dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.