guten morgen allerseits, versuche schon seit stunden mein twi zum laufen zu bringen (atmega32 8mhz). entdecke aber weder software noch hardwareseitig einen fehler. habe dann eben ein geniales programm geschrieben: #include <avr/io.h> int main (void) { DDRA = 0xff; PORTA = 0b11111111; DDRB = 0xff; PORTB = 0b11111111; DDRC = 0xff; PORTC = 0b11111111; DDRD = 0xff; PORTD = 0b11111111; return 0; } aber alle meine ports bleiben low. dabei gings vor n paar tagen schon. habe gestern an den fusebits rumgemacht. kann das sein dass ich dadurch irgendwie alle ports ausgeschalten hab?? im anhang hab ich n screenshot von fusebits aus ponyprog. bin auch im datenblatt schon zig mal alle fuses durchgegangen. die wichtigsten mal: CKSEL3..0 alle programmed (=0), da externer quarzoszi dran CKOPT: programmed --> iterner 36pF zwischen xtal1 und gnd BOOTRST unprogrammed --> Resetadresse immer 0x0000 JTAGEN unprogrammed --> alle Pins an Port C arbeiten für mich :) bei den restlichen hab ich den defaultwert gelassen. woran kann das liegen, dass keine ports mehr auf high gehen??? bin schier am verzweifeln... danke schon mal!! freddy0815
Hi, wäre mir neu, dass man per Fuse-Bits alle Ports abschalten kann ;-) Ich würde eher denken, dass Dein Programm nicht richtig ausgeführt wird bzw. der uC garnicht läuft. Aber wenn Du programmieren kannst, dann sollten die Takt-Fuses richtig sein. Pack doch mal an das Ende Deines Programms eine Endlosschleife statt des return 0. Ich weiss nicht genau, was der uC dann macht, aber man sollte return niemals in der Main verwenden (auf nem uC, beim PC ist das was anderes ;-)). Edd
da wird ja das huhn in der pfanne verrückt...s lag tatsächlich daran! und ich les dutzende seiten im datenblatt wegen eines return 0.... VIELEN DANK!
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.