-
Bascom Variablen
Hallo.
Wollte mal was porbiren aber leider geht es nicht so wie ich will.
Ich wollte Die Ein und Aus schaltzeit die LED berechnen lassen um sie zu Dimmen.
Wenn ich es als zahl eingebe ZB Waitus 2000
geht es aber wenn ich es als Variablen eingebe geht es nicht?
Was mache ich falsch?
Code:
´Test Porgramm
$regfile = "m8def.dat"
$crystal = 3686100
$hwstack = 100
$swstack = 100
$framesize = 100
Config Portc = Output
Config Portb.4 = Output
Config Portb.5 = Output
Dim Ein As Long
Dim Aus As Long
Dim Zahl As Word
Chip1 Alias Portb.4
Chip2 Alias Portb.5
Portc = &B00000000
Chip1 = 1 : Chip1 = 0
Chip2 = 1 : Chip2 = 0
Portc = &B00000001
Chip1 = 1 : Chip1 = 0
Chip2 = 0 : Chip2 = 0
Ein = 1
Aus = 2000
Do
Portc = &B00001111
Chip2 = 1 : Chip2 = 0
Waitus 1 (Ein)<- Hier setzt ich diese Variable ein
Portc = &B00000000
Chip2 = 1 : Chip2 = 0
Waitus 2000 (Aus)
Loop
Code-Tags vom Mod eingefügt (PicNick)
-
Hi,
das haben schon mehr versucht,
aber bei Waitus kann man keine Variable angeben, leider:
http://avrhelp.mcselec.com/waitus.htm
PS:
Ein Workaround wäre, ein festes Waitus, mit einer Schleife drumrum.
-
LEDs dimmen mit Wait ist aber nicht sehr elegant ...
versuchs doch mal mit Hardware PWM über Timer ...
Wenn bei der Wait-Variante mehr Code dazu kommt flackert die LED
-
Wie Soll das gehen mit PWM über ein datenregister?
-
-
aber wie mache ich das über datenregister?
-
Was genau meinst Du denn mit "es über Datenregister machen"?
Was soll das Programm den tun?
-
habe über vier Datenregister 32 LED zum ansteuern. würder gern das 8LED ( ein Datenregister) die LED hoch bzw runter Dimmen. über ein langen porgrammcode geht es ja aber das ist zuviel. will das gerne leichter haben.
-
das kanst du doch auch über multiplex machen 16 io und 2 pwm dann kanste 32 leds theoretisch einzeln dimmen. ist halt auch die rage wie du das am ende beschallten willst
-
ja stimmt. habe es aber mit datenregister aufgebaut.
und wurde es gerne einfügen.