Forum: Mikrocontroller und Digitale Elektronik Fehler im ASM-Code zur Motorsteuerung


von daniel (Gast)


Angehängte Dateien:

Lesenswert?

Hi,

im Simulator funktioniert es, in der Praxis keine reaktion auf die
Tasten. Ich arbeite mit dem Atmega8. Habe oben mal mein ASM-Source mit
gepostet. Ich habe die Fuses auf 1MHz gelassen erst einmal zu
Testzwecken.
somit: fclk = 1 MHz
verwende den Timer0 für die Entprellroutine
Prescaler: 256 (Sorry im ASM-Source stehen noch flasche werter)
aber 0x04 (00000100) ist Presc 256 laut DS ATmega8
dass heißt: T = 65 ms bei 8 Bit- Zähler (256)

Die Entprellroutine ist irgendeine abwandlung von Peter Danneberger.
Weiss aber nicht mehr wo ich die gefunden habe.
Nach der Zeile
  in  key_old, key_port  ;11110000
habe ich
  com key_old
eingefügt, dass soll bewirken das die Routine mit meine LOW-Activen
Tasten funktioniert. Die Taster liegen über die interne PUD's am Pin.
Habe auch gemessen und es liegt am PIN, HIGH-Pegel an (nicht gedrückter
Taster). Das heisst das der Pin sozusagen nicht kaputt ist.

Die Routine konnte ich leiderns nicht verstehen, habe sie aber im
Simulator getestet und sie funktionierte auf meine LOW-aktiven Taster.

Ich habe 5 Taster am uC. und keine von denen funktioniert :(. Wenn sie
funktionieren sehe ich ihren zustand über eine LED.

Weiss nicht woran es liegt :(
Freue mich sehr über Hinweise, Danke

daniel

von daniel (Gast)


Lesenswert?

Hi,

Sorry muss mich korrigieren. Ich habe die Reaktion der Tasten auf das
PWM-Signal gemessen und es funktioniert.
Leider funktioniert das einfache Toggel des Ausgangs (Motor Ein/Aus)
nicht. Und auch der Richtungswechsel, mit dem Rampenverfahren. Auch
keine Reaktion auf den Ausgang welcher beim Richtungswechsel eine
HIGH-Pegel bekommt. Zumindest ist am Ausgangspin nichts zu messen
davon.
Somit ist die Entprellroutine in Ordnung und ich muss woanders nach dem
Fehler suchen.

Wenn jemand mal den Code angeschaut hat und eine mögliche Fehlerursache
gefunden hat. Wäre das sehr hilfreich. Danke

daniel

von daniel (Gast)


Lesenswert?

Hi,
ich bin es nochmal. Fehler gefunden, der Code ist in Ordnung. Ich war
zu blind und habs an falschen Pin angelötet :( .
OhhhhJhEhhhhhh

daniel

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.