PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Grundsatzfrage: Config PINx.y oder PORTx.y...?



Jaecko
17.01.2008, 18:54
Naabend.

Nachdem ich ja schon etliche AVRs mit Bascom gefüttert hab, steh ich grade vor der Frage, ob bei der Definition eines einzelnen Pins nun CONFIG PINx.y oder CONFIG PORTx.y verwendet wird...

Denn komischerweise hab ich bei meinen bisherigen Projekten immer beide Versionen verwendet:

Wenn ich nen Pin als Input haben möchte, mach ich das z.B. mit


CONFIG PORTE.5 = INPUT
USB_Connected ALIAS PINE.5

und kann dann einfach mit IF USB_Connected = 1 THEN .... abfragen.

Als Output:


CONFIG PIND.5 = OUTPUT
LED ALIAS PORTD.5

Damit lässt sich der Port auch einfach schalten; LED = 1 setzt den Port dann auf 5V.

Meine bisherige Suche brachte immer nur Beispiele, bei denen ganzen Ports gesetzt werden.

MfG

chr-mt
17.01.2008, 19:02
Hi,
in der Bascon Hilfe steht "Pinx.y" für Ausgang oder Eingang.
Von daher benutze ich das auch nur so.

Gruß
Christopher

linux_80
17.01.2008, 19:18
Hallo,

Wenn man sich das anschaut in ASM was Bascom da zusammencompiliert, muss man sagen es ist wurscht was man da angibt, man kann es machen wie man lustig ist. Es gibt ja nur ein Richtungs-Register pro Port.
Meist gibt man aber bei Input PinX an, damit es zusammenpasst :-k

sechsrad
17.01.2008, 20:09
Meist gibt man aber bei Input PinX an, damit es zusammenpasst


was passt da zusammen.....

DDRB=&b00001111
PORTB=&b11110000

portb : 0-3 ausgang , 4-7 eingang und 4-7 die internen widerstände.

sieht gut aus.

linux_80
17.01.2008, 21:15
was passt da zusammen.....

DDRB=&b00001111
PORTB=&h11110000

portb : 0-3 ausgang , 4-7 eingang und 4-7 die internen widerstände.

sieht gut aus.

Schaut ned gut aus, denn mit &H wird eine Hexzahl vorausgesetzt, also passt es auch nicht zusammen ;-)

Ausserdem meinte ich natürlich die orig. Frage mit dem Config.

sechsrad
18.01.2008, 11:34
schaud ded jed ned jud aus,wad sag dud dazu linux_80.

DDRB=&b00001111
PORTB=&b11110000

stefan_Z
19.01.2008, 22:37
Das kann aber auch zu Problemen führen (also das Bascom-System), denn wenn man den Pin per Alias belegen möchte und dann Ein- und Ausgabe nutzt, dann meckert der Compiler irgendwann. Kann man das eigentlich doppelt per Alias belegen? Also sowas:
Alias Eins PortB.3
Alias Zwei PinB.3