bin am verzweifeln meine LED blinkt nicht

OP #741344
Lesenswert?

Guten morgen

Ich bin am verzweifeln, ich habe einen AT8 in einem Evaluationsboard von 
pollin, einen AT8 hab ich schon zerfused, nun hat´s mit dem fusen 
wenigstens geklappt.
Allerdings versuche ich schon die ganze zeit eine LED zum blinken zu 
bringen.
Sie leuchtet nur

das hier ist mein zusammengeschnipselter code

$regfile = "m8def.dat"
$crystal = 1600000
Ddrd = &B01100000
Portd = &B01100000
Config Portd = Output
Do

Portd.6 = 0
Waitms 1000
Portd.6 = 1

Loop
End

Bitte nicht steinigen, ich weiß das es total simpel ist, aber ich werd 
gleich cholerisch ;-)
Vielen dank im vorraus.
Der neugierige
#741535
Lesenswert?

Fred wrote:
> Hi,
>
> handelt es sich hier um den Standardfehler, dass die LED einfach zu
> schnell blinkt, Stichwort PWM? Dann wäre sie nur gedimmt.
> Gruß

Bei den Zeiten eher unwahrscheinlich.
Wenn er aber tatsächlich eine 0 bei $crystal vergessen
hat, dann blinkt die LED nicht alle 1 Sekunde sondern alle
10 Sekunden. Wenn er nicht geduldig genug war, dann
übersieht man das schon mal. 10 Sekunden können laaaang sein.
#741551
Lesenswert?

>Wenn er aber tatsächlich eine 0 bei $crystal vergessen
>hat, dann blinkt die LED nicht alle 1 Sekunde sondern alle
>10 Sekunden. Wenn er nicht geduldig genug war, dann
>übersieht man das schon mal. 10 Sekunden können laaaang sein.

Andersrum wird 'n Schuh draus. Wenn er eine Null zu viel hätte, würde 
sie alle 10 s blinken.
Wenn er ne Null zu wenig hat, blinkt sie alle 100 ms.

Ich versteh zwar nicht viel von Bascom, aber wieso konfigurierst du den 
Port mehrmals als Ausgang?
Gast #741560
Lesenswert?

probiers mal hiermit:

$regfile = "m8def.dat"
$crystal = 1600000
Config Portd.6 = Output

Do
Portd.6 = 0
Waitms 1000
Portd.6 = 1
waitms 1000
Loop
End


oder mit

$regfile = "m8def.dat"
$crystal = 1600000
Config Portd.6 = Output

Do
toggle Portd.6
Waitms 1000
Loop
End
Gast #741574
Lesenswert?

$regfile = "m8def.dat"
$crystal = 16000000
'entweder Port D so komplett als Ausgang konfiguriren
Ddrd = &B11111111
'oder so
Config Portd = Output
Do

Portd.6 = 0
Waitms 1000
Portd.6 = 1
Waitms 1000

Loop
End

So müßte es mit 0,5Hz blinken WENN der Mega8 tatsächlich mit 16Mhz
getaktet ist.Sonst probiere mal, den Wert $Crystal auf 1Mhz zu setzen,
nicht daß Dir die Fuse-Einstellungen mißlungen sind und er nicht wie
erwartet getaktet wird.

MfG Paul

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren