-
Alias als Array
Hi,
gibt es eine Möglichkeit ein Alias in verbindung mit einem Array zu benutzen,
sodass man in einer For...Next Schleife verschiedene Ports nach der Reihe
anwählen kann.
Dim Rot(9) As Byte
Dim Gruen(9) As Byte
Dim Blau(9) As Byte
Rot(1) Alias Porta.0
Gruen(1) Alias Porta.1
Blau(1) Alias Porta.2
Rot(1) = 1
Dies funktioniert, benutzt man aber ein
I = 1
Rot(i) = 1
Funkioniert es nicht
gibt es da alternativen oder mache in nur wieder irgendwas falsch?
-
Ist ja auch falsch geschrieben :p müsste wenn i=1; Rot[i]=1 (in C(++)) sein - das i muss i sein un nich I
Würde mich aber auch Interessieren ob ich Ports in Arrays packen kann und dann per For schleife ansprechen kann
-
Hi,
[] gibt es in Bascom nicht (zumindes habe ich sie noch nicht benutzt). Mache
ich das so, wie du es vorgeschlagen hast, gibt mir Bascom einen fehler.
Steht I alleine, als Zuweisung also I = 0 wird I immer großgeschrieben.
-
Okay .. .weil c++ würde mir bei
I=1
Rot(i)=1
Einen Fehler ausgeben das i benutzt wird, aber nie Deklariert wurde :)
-
Jetzt habt euch wieder mit dem "i". Bascom ist NICHT case-sensitiv
(type "help" for help)
"Alias" ist ein string-replacement und kein C(plusplus)-Makro
d.h. mit indizíeren wird das so nix
-
kan man generell die ports (in c(++)) so hochzähleN? Also in einer Schleife mit PortA.i ?
-
Also, die PINS schon, z.B von PortD einzeln die Pins abfragen:
Code:
DIM Pnr as byte
for pnr = 0 to 7
if Portd.Pnr = 1 then
print "1";
else
print "0";
endif
print
next