Gast
#1649987
Hallo, ich versuche mich seit kurzem mit Mikrocontrolern und mit ein paar Codeschnipseln, die ich mir im Internet gesucht habe und der Hilfe eines Kommilitionen hab ich schon das ein oder andere Projekt realisiert. Bei diesem scheitere ich allerdings und ich hoffe, dass ihr mir erklären könnt warum;) Ziel des Programms ist es, dass ich eine 8 bit Adresse am Port C einlese, 6 addiere auf den Port B ausgebe und nochmal 6 und das dann auf den Port D ausgebe. Benutze einen atmega162 Anfangs habe ich das über einen Pin Change versucht, was dazu führte, dass die Simulation wunderbar war, nur der Chip hat sich ein wenig gewehrt(am Chip selber liegt es nicht, sonst hätten 3 den gleichen Fehler). Nach einigem hin und her und verschiedenen Hinweisen im Internet wollte ich es nun einfacher machen und einfach mit einem Timer overflow nach einer bestimmten Zeit die Werte festsetzen(im Anhang). In der Praxis tut er so und so was er will, aber in der Simulation verstehe ich z.b. nicht warum er meine Interrupt-Routine völlig ignoriert, obwohl T0V0 gesetzt ist und der Overflow einsetzten müsste. Dafür startet er die Funktion main allerdings neu, was für mich auch keinen Sinn ergibt. Ganz abgesehen davon ist es dem Programm völlig egal was ich an den Pin C anlege... "adr" bleibt bei mir immer auf 0. Wäre für ein paar Erklärungen dankbar