Hi Jungs, ich habe einen Timer programmiert an einem uCAtgemga48 und ihn mit einem Knopf gekoppelt und immer wenn ich den Knopf betätige, fällt der Timer aus und der uC resetet sich, obwohl er lediglich die Impulse zählen soll und der Interrupt nicht durch einen Kontakt unterbrochen werden soll, was hab ich da falsch gemacht?
Hallo, hmmm, ein Timer zählt den Systemtakt um sozusagen Zeiten zu erzeugen. Würde er Impulse zählen sollen, wäre er ein Counter. Natürlich kann man den Knopf an den Systemtakt anschließen, dann wäre der Timer wohl auch Counter oder der Counter ein Timer oder so... Welches Problem hast Du eigentlich mit welchem Programm? Gruß aus Berlin Michael
Schmittman schrieb: > was hab ich da falsch gemacht? Du hast versucht, einen Programm-Quelltext in völlig unverständlichen Worten zu beschreiben. Rate mal, wozu es den Punkt Dateianhang im Forum gibt. Peter
...jetzt stehen alle Tueren weit offen fuer einen zweiten Anlauf: Bittesehr ! ...nur Mut ...hereinspaziert ...und serviert ...wie im DreiMikroControllerHaus
Und während wir auf den Quellcode warten, ein kleiner Allgemeintip der mir recht gut weiterhilft wenn ich C-Code schreiben muss (ja, muss, ASM geht fixer von der Hand...): Tu mal folgende Zeilen in Deinen Code dazu:
1 | ISR (BADISR_vect) |
2 | {
|
3 | asm ("nop"); |
4 | }
|
Und setz einen Breakpoint auf das asm("nop"); Sollte der Breakpoint ausgelöst werden (und laut meiner Glaskugel klingt Deine Beschreibung so als ob da ein Interrupt ohne zugehörige Routine fliegt), dann, ja dann hast Du irgendwo einen Interrupt ausgelöst und keine Routine dafür. Guck mal ob Du WIRKLICH die richtigen Interruptroutinen verwurstest. Irgendwie ist das Debugging von ASM Code einfacher...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.