Warhawky
18.12.2005, 15:35
Hallo!
Ich versuche jetzt schon seit Stunden ein Problem zu lösen.
Ich möchte bei einem Mega16 auf 22 Ausgänge eine PWM legen. Und zusätzlich bei den 22 Ausgängen ein Lauflicht laufenlassen.
Ist Grundsätzlich kein Problem. Die Lampen (1-22) sind allerdings kreuz und quer mit den Ports verbunden (Layout).
Jetzt dachte ich mir Folgendes:
Aliasse anlegen in der Form
Lampe.1 alias Portb.1
Lampe.2 alias Portc.1
...
Lampe.22 alias Portb.0
Um diese dann per FOR durchlaufen zu lassen.
For i = 1 to 22
Lampe.i = 1
next
Leider gibt Bascom "Invalid Datatype" aus. Ich habe es auch schon mit Lampe(1) und Lampe(i) versucht. Geht leider auch nicht. Wenn ich dann noch Lampe(22) als array deklariere gibt Bascom zwar keinen Fehler mehr aus aber das "Lampe(1)" ist nicht mehr mit den Ports verbunden obwohl der Alias noch drinsteht.
Wären die nicht kreuz und quer mit den Ports verbunden könnte ich in der Schleife Portb.i schreiben. Das geht vom syntax her. Geht aber leider in meinem Fall nicht.
Hat sowas schon jemand gemacht?
Die Ports alle einzelnd zu schalten geht zwar. Wäre aber unschön.
Danke
Gruß
Matze
Ich versuche jetzt schon seit Stunden ein Problem zu lösen.
Ich möchte bei einem Mega16 auf 22 Ausgänge eine PWM legen. Und zusätzlich bei den 22 Ausgängen ein Lauflicht laufenlassen.
Ist Grundsätzlich kein Problem. Die Lampen (1-22) sind allerdings kreuz und quer mit den Ports verbunden (Layout).
Jetzt dachte ich mir Folgendes:
Aliasse anlegen in der Form
Lampe.1 alias Portb.1
Lampe.2 alias Portc.1
...
Lampe.22 alias Portb.0
Um diese dann per FOR durchlaufen zu lassen.
For i = 1 to 22
Lampe.i = 1
next
Leider gibt Bascom "Invalid Datatype" aus. Ich habe es auch schon mit Lampe(1) und Lampe(i) versucht. Geht leider auch nicht. Wenn ich dann noch Lampe(22) als array deklariere gibt Bascom zwar keinen Fehler mehr aus aber das "Lampe(1)" ist nicht mehr mit den Ports verbunden obwohl der Alias noch drinsteht.
Wären die nicht kreuz und quer mit den Ports verbunden könnte ich in der Schleife Portb.i schreiben. Das geht vom syntax her. Geht aber leider in meinem Fall nicht.
Hat sowas schon jemand gemacht?
Die Ports alle einzelnd zu schalten geht zwar. Wäre aber unschön.
Danke
Gruß
Matze