Forum: Mikrocontroller und Digitale Elektronik Attiny 2313 Assembler Ausgänge festlegen


von Simon O. (simon_o)


Lesenswert?

Hallo,

Habe eine kurze Frage:

Wie kann ich nur die Ports PB0 bis PB5 als Ausgänge definieren?

Mache ich das am besten mit

ldi r16, 0b00011111
out DDRB, r16

oder über sbi DDRB, 0

und dann jeden Port einzeln? Und steht die O hinter DDRB dann direkt für 
die Ports? Also die Beinchen (bei 0 PB0) wenn man so will?

Grüße Simon

von Eumel (Gast)


Lesenswert?

Simon O. schrieb:
> Mache ich das am besten mit
>
> ldi r16, 0b00011111
> out DDRB, r16

Ja.

von Eumel (Gast)


Lesenswert?

Simon O. schrieb:
> ldi r16, 0b00011111
> out DDRB, r16

Achso, richtig wäre

ldi r16,0b00111111
out DDRB, r16

von Simon O. (simon_o)


Lesenswert?

1000 Dank für die Antwort!

Funktioniert erste Sahne ;-)

Grüße

von Eumel (Gast)


Lesenswert?

Freut mich.
Schau dir mal das AVR ASM Tutorial hier auf der Seite an, das wird dir 
bestimmt gefallen :)

http://www.mikrocontroller.net/articles/AVR-Tutorial

von amateur (Gast)


Lesenswert?

Wie heißt es doch so schön?
Das kannst Du halten wie ein Dachdecker!
Wichtig ist nur, dass Du irgendwie die Bits 0 bis 4 in DDRB setzt und, 
wenn irgend möglich, die Bits 5 bis 7 nicht.
Ob das durch das Setzen einzelner Bits, oder durch einen out-Befehl, 
oder, für Leute die es kryptisch mögen, durch Schiebebefehle machst, ist 
egal.

Wenn Du dir aber das Ganze unter dem Gesichtspunkt der Übersichtlichkeit 
und des Platzbedarfes anschaust, dürfte wohl nur die kürzeste und 
gleichzeitig prägnanteste Lösung infrage kommen.

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
Noch kein Account? Hier anmelden.