Hi,
sorry, dass ich mich länger nicht gemeldet hab, hatte etwas stress in der schule ....
Hab jetzt nochmal darüber nachgedacht und mir ist klar geworden, dass ich vohrer einen Knoten im kopf hatte. Eigentlich muss ich ja nur eine led nach der anderen abfragen, während alle anderen leuchten.
ABER:
hab jetzt gerade 2 ultrahelle grüne leds (18.000mcd) gefunden, bei welchen ich an jedem bein einen wiederstand angelötet habe, einmal 100ohm und einmal 47ohm.
Wenn ich jetzt mit folgendem Programm:
Code:
$regfile = "m32def.dat"
$crystal = 16000000
$framesize = 80
$hwstack = 80
$swstack = 80
$baud = 19200
Ddra = &B11111111
Porta = &B11111111
Dim Dauer(2) As Long
Porta.0 = 1
Porta.1 = 0
Porta.2 = 1
Porta.3 = 0
Do
Porta.2 = 0
Porta.3 = 1
Waitus 1
Ddra.3 = 0
Porta.3 = 0
While Pina.3 = 1
Waitus 1
Incr Dauer(1)
If Dauer(1) >= 30000 Then Exit While
Wend
Ddra.3 = 1
Porta.2 = 1
Porta.3 = 0
Porta.0 = 0
Porta.1 = 1
Waitus 1
Ddra.1 = 0
Porta.1 = 0
While Pina.1 = 1
Waitus 1
Incr Dauer(2)
If Dauer(2) >= 30000 Then Exit While
Wend
Ddra.1 = 1
Porta.0 = 1
Porta.1 = 0
Print "Dauer(1): " ; Dauer(1)
Print "Dauer(2): " ; Dauer(2)
Dauer(1) = 0
Dauer(2) = 0
Waitms 100
Loop
End
die leds abfragen möchte, "laufen" beide über, also der wert ist 30.000!
wenn ich jedoch an den pin, welcher eingelesen wird, meine hand halte, dann funktionierts in sofern, dass der wert ca. 14 (also 14us entladezeit) beträgt. allerdings ändert sich dieser nicht bei beleuchtung / verdunklung.
An was liegt das? hab schon alles mehrmals auf lötfehler usw. überprüft, konnte aber nichts feststellen.
leuchten tun sie normal. Irgendwas ist da faul :-S
mit einer normal-hellen gelben led hatts funktioniert...
liegt es evtl. an den GRÜNEN leds?? kann ich mir zwar nicht vorstellen, aber sonst weiß ich echt nicht weiter.
Wäre nett, wenn jemand eine idee hätte..
Gruß
Chris
Lesezeichen