-
-
eine Delay-Subroutine in Assembler zählt ein Register hoch oder runter bis es einen bestimmten Wert erreicht, dann springt er wieder aus der Routine. Du musst schauen was das (es können auch mehrere) Register ist und schauen mit was es vorgeladen wird und wie gezählt wird. Dann kannst du über den Takt feststellen, was die Delay-Zeit ist. Wenn diese ca. kleiner wie 20ms ist siehst du von der LED nur noch Dauerlicht.
Du solltest das Register also so laden dass die Zeit z.B. 0,5s lang ist, dann siehst du ein schönes Blinken!
So wie es bei dir aussieht heißen die beiden Register für die Delay "COUNT1 und COUNT2". Ich sehe aber weder wo sie vorgeladen werden (muss immer am Anfang von der Subroutine passieren) und wo sie für das weiterspringen mit einem bestimmten Wert geprüft werden. Außer das macht alles der Befehl "decfsz". Wie gesagt, mit PIC ASM kenn ich mich nicht so gut aus!
MFG Mixxer
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen