hallo, ich bin noch recht neu bei den avr's, und habe zu übungszwecken ein programm für den 8535 geschrieben, er soll einfach nur bei einem overflow den timernterrupt ausfürhren was tut ist nichts weiter als im hauptprogramm zu bleiben. hier ist der code ist recht kurz. .nolist .include "8535def.inc" .list .def temp = r16 .org $000 rjmp reset .org $009 rjmp timint reset: ldi temp, 0x01 out TCCR0, temp out TIMSK,temp sei main: rjmp main timint: reti
das hab ich im nachhinein jezt gemacht, aber es geht immernoch nicht hier ist der neue code .nolist .include "8535def.inc" .list .def temp = r16 .org $000 rjmp reset .org $009 rjmp timint reset: ldi temp, low(ramend) out spl, temp ldi temp, high (ramend) out sph, temp ldi temp, 0x01 out TCCR0, temp out TIMSK,temp sei main: rjmp main timint: reti
Woran willst du eigentlich merken, ob der int ausgeführt wird? Programm scheint in Ordnung.
Programm ist fehlerfrei. @crazy horse Est gibt ja im AVR Studio einen Simulator mit dem du die Funktion überprüfen kannst.
die sache ist ich habe es schon zichmal im simulator versucht, doch er springt den interruptvektor einfach nicht an (ich meine den gelben feil bei der simulation in einzelschritten mit F11) es könnte natürlich auch sein, das die version einen bug hat, ihr würdet mir ein rießen gefallen tun wenn jemand das mal mit einer brandneuen avrstudion simulieren würde Eugen Dischke
Interrupt Vektor ist an Adresse 8 nicht 9. Vielleicht funktioniert es deshalb nicht mit allen Simulatoren.
Wo find ich denn im Datenblatt die Adressen für die Interupts? Entweder bin ich blind oder ich such an der falschen Stelle. Ready
also ich hab es jezt rausgefunden, ich habe die version 4.01 (avr studio) durch die version 4.05 ersezt jezt läuft der code genau so wie erwartet es ist also um es deutlich zu sagen nur ein bug und ich muss nun nicht mehr an mir zweifeln das ich selbst für sowas nicht im stande bin *g
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.