Archiv verlassen und diese Seite im Standarddesign anzeigen : Anfänger braucht Hilfe beim Ersten Programm
Hi wollt mir mal ein erstes Test Programm schreiben und es direkt beim Simulieren testen weil ich noch keinen ISP Dongel für meinen Mega8 habe
$crystal = 4000000
Config Portb = Output
Do
Portb = $ff
Wait 1
Portb = $00
Loop
Warum bleibt der bei dem Wait befehl einfach nur stehen ?? und geht nicht weiter ?? wollt damit mal ein LED blinken Simulieren
Mfg Maik
Also ich denke schon, dass es weitergeht und auch das er blinkt, aber das ist vermutlich etwas zu schnell.
Wenn du dir mal deinen Programmablauf anschaust dann wirst du folgendes feststellen:
Nachdem der Portb auf ff gesetzt ist wartet der uC eine Sekunde, dann schaltet er portB 00
dann springt er sofort wieder zurück und setzt ihn ff.
Probiers mal so:
Do
Portb = $ff
Wait 1
Portb = $00
Wait 1
Loop
Es ist klar, dass du ein Blinken einer Led, das nur so lang ist, wie der uC zum zurückspringen und neuen setzten des Port braucht nie sehen wirst.
MFG Moritz
Also hab das So ausprobiert wie du das gesagt hast aber es passiert immer noch nichts der Pfeil der mir anzeigt welche zeile er gerade abarbeitet bleibt auch die ganze zeit da(beim ersten wait) stehen.
Mfg Maik
Ändere das Programm mal auf:
$crystal = 4000000
Config Portb = Output
Do
Portb = $ff
Wait 1
Portb = $00
wait 1
Loop
Bei der Simulation musst Du noch den Button für "Refresh Variables" aktivieren, damit die LEDs für die Ports im RUN-Modus aktualisiert werden.
Die Simulation von WAIT-Befehlen dauert in Simulation je nach Rechnergeschwindigkeit um einiges länger als dies der gewünschten Zeitverzögerung entspricht. Also bitte etwas Geduld und nicht während der Ausführung des Wait-Befehls noch einmal auf den Step-Button drücken, da sonst der WAIT-Befehl unterbrochen wird.
mfg Josef
Subba Danke für eure Hilfe
hab nur nen Echt "schnellen" 300 Mhz Rechner könnte also daran liegen werde mir heut mal nen ISP basteln und das dann mal in ne minimal schaltung testen.
Mfg Maik 8-[
andysafe
16.12.2004, 10:25
Wenn du am Anfang vom Code den Befehl $sim reinschreibst , laufen die die Waits und ähnliches schneller ab.
Aber aufpassen , wenn Du dann deinen ISP hast vor der übertragung das Sim entfernen , neu compilieren und dann übertragen. Ansonsten kommt vor der übertragung eine Fehlermeldung wenn Sim noch drin steht
MfG Andreas
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.