Hallo Leute, ich sitze seit einigen stunden und komme nicht mehr weiter. Ich hab ein Programm geschrieben und wollte es jetzt in µC reinladen. Beim Compilierung bekomme ich keine fehler angezeigt aber beim reinladen des Programms im µC folgendes error: avrdude: ERROR: address 0x0810 out of range at line 129 of uartmyavr2.hex Ich benutze für Attiny2313 und WinAVR entwicklungsumgebung. hat das schon jemand gehabt? für jede hilfe bin ich dankbar. Sam
Vielleicht ist das Code zu groß für den Tiny? Das war ein Schuß ins Blaue, aber deine Forschungen sollten vielleicht erstmal in diese Richtung gehen. Was anderes kann ich mir zu einem "address out of range" jetzt nicht zusammenreimen.
Sam wrote: > avrdude: ERROR: address 0x0810 out of range at line 129 of > uartmyavr2.hex > > Ich benutze für Attiny2313 und WinAVR entwicklungsumgebung. Da hat avrdude recht, in den tiny2313 passen nur 2kB (0000-07FF). Warscheinlich hast Du float Zahlen verwendet, die float Lib des WINAVR paßt nicht in 2kB (die des Keil C51 paßt bequem in 2kB). Und Du hast auch nicht den tiny2313 als Target eingestellt, sonst hätte ne Fehlermeldung erfolgen müssen. Peter
Hallo Zusammen, erstmal danke für die Beitäge. Ich hatte für das senden über uart die printf funktion definiert: static int uart_putchar(char c, FILE *stream); static FILE mystdout = FDEV_SETUP_STREAM(uart_putchar, NULL, _FDEV_SETUP_WRITE); static int uart_putchar(char c,FILE *stream) { if (c == '\n') uart_putchar('\r', stream); loop_until_bit_is_set(UCSRA, UDRE); UDR = c; return 0; } hiermit kommt das obige fehler. Wenn ich dieses dann weg tuh dann kommt auch kein error. Ich will aber dennoch über uart zeichen senden. Kann da was an einstellungen sein? Sam
printf() ist ein großer Klopper, kaum wirklich geeignet, um auf einem 2 KiB-ROM-AVR was damit zu machen. Warum hast du denn nicht einen größeren AVR genommen, wenn du sowas tun willst? Für eine reine Textausgabe auf eine UART braucht's natürlich auch kein printf().
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.