Hallo! Ich portiere gerade meinen Code, der auf einem Atmega32-DevBoard lauffaehig ist, nach'm Atmega8L, der frisch aus'm Laden kam und auf'er eigener Platine sitzt. Nu hab ich Probleme bei den Interrupt-Routinen, die werden wahrscheinlich nicht angesprungen. Zum Bsp. funzt eine UART-lib, die ohne Interruptroutinen auskommt, die andere aber nicht. Ich koennt mir denken, dass es am Compiler oder an den Fuses liegt?! Habt ihr aehnliche Probleme gehabt oder ne Idee wo ich suchen koennt? Marco Randdaten: 7,372MHz Crystal lfuse EF hfuse D9 avr-gcc
dran gedacht, dass die Interruptvektoren beim Mega8 1word breit sind, beim Mega32 aber 2word?
Hi! Ne das wusst ich noch nicht. Aber was bedeutet das fuer mich (als Programmierer in C). Was muss ich den anders machen? Gruss Marco
Den Programmcode für den ATmega compilieren (mit den entsprechenden Einstellungen im Makefile...) Die Fuses solltest du dir vielleicht auch noch mal angucken.
Hi! Im Makefile stell ich den Typ und die Taktfrequenz um, weiter nichts. Fuses mal als binary: lowfuse: BODLEVEL BODEN SUT1..0 CKSEL3..0 1 1 10 1111 highfuse: RSTDISBL WDTON SPIEN CKOPT EESAVE BOOTSZ1..0 BOOTRST 1 1 0 1 1 00 1 Marco
Hi! Das Raetzel ist geloest, das Prob war doch anders: Es hat an der eingebundenen <delay.h> gelegen. Woran es 'genau' liegt, habe ich noch nicht weiterverfolt und dafuer ist es heute auch schon zu spaet ;-) MFG & Danke Marco
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.