www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Frage zu asm proggen!


Autor: tQST (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
Ich bin auf folgendes Problem gestoßen, dass ich mithilfe einer Variable 
mehrere Pins eines Ports ansprechen muss.

port  equ    PORTD,1

im Beispiel oberhalb wird jetzt nur ein Pin angesprochen wie kann ich da 
jetzt zb. die Pins 1-4 ansprechen? Also mit

port  equ    PORTD,1,2,3,4

gehts nicht ^^

mfg ein Mitarbeiter des Projekts tQST

Autor: matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Bitmuster in ein Register laden und über out ausgeben.

ldi r16, 0b00001111
out PORTD, r16

Damit werd PD0 - PD3 eingeschaltet. Zumindest bei AVRs, du hast jetzt 
nicht geschrieben, was für einen MC du verwendest :)

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!
Um welchen uC geht es denn eigentlich?
Wenn AT90..,Mega..,oder Tiny.. kannst du nur einzelbe Pins 
setzen/rücksetzen
SBI   PortD,1 ; PortD0=1
oder ein ganze Port ausgeben.
ldi   R16,$0F
out   PortD,R16  ;Bits0-3 an PortD=1,Bits 4-7 aus

<port  equ    PORTD,1
Ich staune das das dein Asembler überhaupt nimmt,ist eher was für ein 
Makro.

Was du machen kannst ist den einzelnen Pins Namen geben:
Steuerport equ  PortD
A1         equ 0  ;A1=Port?0
A2         equ 1  ;A2=Port?1
.
.
.
sbi        Steuerport,A1  ;setzt PortD0=1
cbi        Steuerport,A2

Viel Erfolg, Uwe

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.