PIN high/low und die Spannung

Gast #58497
Lesenswert?

hallo,
wie stelle ich in assembler die pinns auf high/low?
ich denke das geht so:

ldi r16,0b11111111
out ddrc,r16

aber wenn ich das dann auf den mc at90s8535 überspiele sagt mein
messgerät 0,00 Volt und wenn ich das so mache:

ldi r16,0b00000000
out ddrc,r16

dann sagt mein messgerät ~0,02 Volt. ist das nicht zu wenig, oder
reicht das? ich hab mal gehört, das man direkt eine LED an einem pin
betreiben kann, aber mit so wenig spannung geht das nicht.

was sagt ihr dazu??

mfg raoul4
Gast #58499
Lesenswert?

Hi,

pro Port gibt es 3 Register: DDRx, PORTx ud PINx. Mit DRx sagst Du dem
Port, ob er Ausgang (0x00) oder Eingang (0xFF) sein soll.

Ist DDRx = 0xFF (also Ausgang) gilt:
-------------------------------------
- PORTx: Ausgabe für High oder Low
- PINx: ohne Funktion

Ist DDRx = 0x00 (also Eingang) gilt:
-------------------------------------
- PORTx: Schaltet die internen PullUps an oder aus
- PINx: liest die Pins ein

Für Dein konkretes Problem:
---------------------------
;Port als Ausgang definieren
ldi r16,0xFF
out DDRC,r16
;Pins auf HIGH
ldi r16,0b11111111
out PortC,r16

Schau' Dir doch mal das Tutorial auf dieser Seite an!!!

Viel Spaß!

Sebastian

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren