Port in ASM30 (dsPIC/PIC24) Maskieren

Gast #4119638
Lesenswert?
• ▲
▼
Mir brennt grad der Kopf. Folgendes, wenn ich Ausgänge schalte schreibe 
ich zuerst in ein Shadow Register (zB. LATD_S) dieses wird vom T1 aller 
xxx ms auf den eigentlichen Port (LATD) geschrieben, allerdings sollen 
nur RD0 und RD2 geändert werden, die restlichen Augänge sollen untouched 
bleiben.

Gibts das auch was mit IOR / AND ?
#4119918
Lesenswert?
• ▲
▼
Blubb schrieb:
> Mir brennt grad der Kopf. Folgendes, wenn ich Ausgänge schalte schreibe
> ich zuerst in ein Shadow Register (zB. LATD_S) dieses wird vom T1 aller
> xxx ms auf den eigentlichen Port (LATD) geschrieben, allerdings sollen
> nur RD0 und RD2 geändert werden, die restlichen Augänge sollen untouched
> bleiben.
>
> Gibts das auch was mit IOR / AND ?


BTW: IOR = Inklusive OR OR IOR = Immediate OR?

egal...

1
Pseudocode:
2
...
3
IN  Hilfsregister1, Ausgangsregister; Istwert des Ausgangsregister holen
4
AND Hilfsregister1, 11111010b       ; Bits 0 und 2 löschen
5
MOV Hilfsregister2, Sollwert        ; zur Bearbeitung
6
AND Hilfsregister2, 00000101b       ; alle Bits ausser 0 und 2 löschen
7
OR  Hilfsregister1, Hilfsregister2  ; die Daten kombinieren
8
OUT Ausgangsregister, Hilfsregister2; wieder ausgeben
9
...

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.