Forum: Compiler & IDEs ATiny12 und GCC


von Zoltan (Gast)


Angehängte Dateien:

Lesenswert?

Hallo

Ich habe gerade die Kode für ein ATtiny12 fertiggeschrieben, Paltine 
entworfen und die IC-s bestellt... und jetzt dass: MCU not supported. 
Aus dem Thread http://www.mikrocontroller.net/forum/read-2-408.html#410 
geht hervor, dass die Tinys vom GCC nicht unterstützt werden. Gibt es 
dennoch eine Möglichkeit den ATtiny12 in C zu programmieren, und wenn, 
dann wie, und womit?

Danke
Zoltan

von Joerg Wunsch (Gast)


Lesenswert?

Die Dinger haben keinen RAM, vergiß es.  Das ist der wesentliche
Grund, warum avr-gcc sie nicht unter C unterstützt.

Aber ganz ehrlich, bekommst Du das eine Kilobyte an Flash nicht
auch mit Assembler gefüllt?  (Das sind 512 Befehle, mehr paßt
also nicht.)  Rudimentären Support für die kleinen ATtinys (und
den AT90S1200, der in der selben Liga spielt) hat die avr-libc,
d. h. insbesondere, daß Du die Konstanten aus <avr/io.h>
benutzen kannst.

Es stimmt übrigens so pauschal nicht, daß ,,die Tinys'' vom
avr-gcc nicht unterstützt würden.  Die ATtiny-Varianten mit RAM
werden auch unter C unterstützt (ATtiny22 und ATtiny26, wobei
der 22 mittlerweile durch den AT90S2343 ersetzt worden ist).

Im Übrigen kannst Du ja mal folgende Strategie probieren:
binde all Deine Variablen fest an Register (steht in der FAQ,
wie das geht).  Dann compiliere das Projekt für einen etwas
größeren AVR in Assemblercode (avr-gcc -S).  Diesen fummelst
Du dann so zurecht, daß er für Dein Exemplar paßt.  Du mußt
natürlich die push/pop Registerrettung der Unterprogramme
auch eliminieren, außerdem haben die kleinen ATtinys einige
Befehle nicht, die die größeren AVRs haben.

von Zoltan (Gast)


Lesenswert?

Danke für Deine Hilfe,

aber ich habe die Bestellung noch auf AT90S2343 ändern können, und somit 
hat sich das Problem erledigt. Allerdings scheinen diese MC 
Startprobleme zu haben, wenn der interne RC-Oscillator benutzt wird: 
http://www.avrfreaks.net/phorum/read.php?f=3&i=20641&t=20635&PHPSESSID=e79a5f733419be0040263f9e5883656e#20641
?????

von Joerg Wunsch (Gast)


Lesenswert?

Naja, vielleicht hast Du ja genügend aktuelle Chips.

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.