Forum: Mikrocontroller und Digitale Elektronik AVR-GCC kein ATtiny817


von AVR (Gast)


Lesenswert?

Hallo,

ich versuche gerade unter Linux die "neuen" ATtiny zu programmieren. Ein 
ATmega32 klappt, aber AVR-GCC findet den 817 nicht. Hiermit compiliere 
ich:

avr-gcc -g -Os -mmcu=attiny817 -c main.c

Version des avr-gcc ist 7.2.0

Ich hoffe Ihr könnt mir helfen.

von Georg G. (df2au)


Lesenswert?

Google defekt?
Nur ein Beispiel: https://gcc.gnu.org/onlinedocs/gcc/AVR-Options.html

von Gerold (Gast)


Lesenswert?

1
avrxmega3
2
3
    “XMEGA” devices with up to 64 KiB of combined program memory and RAM, and with program memory visible in the RAM address space.
4
    mcu = attiny1614, attiny1616, attiny1617, attiny212, attiny214, attiny3214, attiny3216, attiny3217, attiny412, attiny414, attiny416, attiny417, attiny814, attiny816, attiny817.

Können die Controller Programme im RAM ausführen?

von Carl D. (jcw2)


Lesenswert?

AVR schrieb im Beitrag #5194306:
> Hallo,
>
> ich versuche gerade unter Linux die "neuen" ATtiny zu programmieren. Ein
> ATmega32 klappt, aber AVR-GCC findet den 817 nicht. Hiermit compiliere
> ich:
>
> avr-gcc -g -Os -mmcu=attiny817 -c main.c
>
> Version des avr-gcc ist 7.2.0
>
> Ich hoffe Ihr könnt mir helfen.

In der AVRlibc wird der nicht unterstützt, von Compiler offenbar auch 
noch nicht.

Edit: GCC kann's

“XMEGA” devices with up to 64 KiB of combined program memory and RAM, 
and with program memory visible in the RAM address space.
mcu = attiny1614, attiny1616, attiny1617, attiny212, attiny214, 
attiny3214, attiny3216, attiny3217, attiny412, attiny414, attiny416, 
attiny417, attiny814, attiny816, attiny817.

: Bearbeitet durch User
von Georg G. (df2au)


Lesenswert?

Carl D. schrieb:
> In der AVRlibc wird der nicht unterstützt, von Compiler offenbar auch
> noch nicht.

Hier steht das Gegenteil: Beitrag "Attiny417/814/816/817 und avr-gcc, avr-libc"

von Carl D. (jcw2)


Lesenswert?

Georg G. schrieb:
> Carl D. schrieb:
>> In der AVRlibc wird der nicht unterstützt, von Compiler offenbar auch
>> noch nicht.
>
> Hier steht das Gegenteil: Beitrag "Attiny417/814/816/817 und avr-gcc, avr-libc"

Avr-GCC hat den oben ergänzten Parameter, <avr/io.h> kennt den Chip 
nicht. Aber da haben wir hier ja Jörg W., der kann da helfen ;-)

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Carl D. schrieb:
> <avr/io.h> kennt den Chip nicht.

Das Einpflegen der io-Headers haben immer die Jungs von 
Atme^H^H^H^HMicrochip getan.

von Carl D. (jcw2)


Lesenswert?

Jörg W. schrieb:
> Carl D. schrieb:
>> <avr/io.h> kennt den Chip nicht.
>
> Das Einpflegen der io-Headers haben immer die Jungs von
> Atme^H^H^H^HMicrochip getan.

Offenbar (noch) nicht immer ;-)

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Falls sie so ein Headerfile mit Atmel Studio ausliefern und dieses
das übliche (BSD-like) Copyright hat, kann ich das natürlich auch
extern da einchecken.

von Carl D. (jcw2)


Lesenswert?

Jörg W. schrieb:
> Falls sie so ein Headerfile mit Atmel Studio ausliefern und dieses
> das übliche (BSD-like) Copyright hat, kann ich das natürlich auch
> extern da einchecken.

Bei Atmel/μChip stehen als supported devices nur die aus der 
"offiziellen" Source, d.h. sie haben keine Extrawurst gebaut.

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

In Stock-GCC wurde avrxmega 3 für v8 hinzugefügt.  Wenn man v7.2 
verwendet, dann bitte die Doku zu v7.2 lesen, nicht die von v8.

v7.2:
https://gcc.gnu.org/onlinedocs/gcc-7.2.0/gcc/AVR-Options.html

Current Development:
https://gcc.gnu.org/onlinedocs/gcc/AVR-Options.html

-mmcu=avrxmega3 und -mshort-calls werden von avr-libc unterstützt, 
Device-Support (Headers, Startup-Code bis dato m.W. nicht).  Wenn man 
diesen Support will, muss man die Header / crt*.o selbst beisteuern.

Der Support in < v8 erfordert zusätzlich ein entsprechendes Specs-File, 
das die Optionen und trallala beschreibt. Als Familie geht avrxmega2, 
besser (avrxmega3) geht's erst ab v8.

Wenn die Devices von Atmel GCC untestützt werden, siehe deren 
Release-Notes.

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
Noch kein Account? Hier anmelden.