Forum: Mikrocontroller und Digitale Elektronik c programmierung attiny45


von an.na (Gast)


Lesenswert?

hallo zusammen,
erst mal respekt für dieses super forum, findet man auch nicht alle 
tage!

nachdem ich schon einige mega128 programmiert habe, wollte ich mir heute 
mal einen attiny45 anschaun.
ich war mir eigentlich sicher das des auch in c zu programmieren ist,
aber das avr studio ist da anscheinend anderer meinung:

../blinky.c:0: error: MCU `attiny45' supported for assembler only

wer hat da nun recht :-) bin eigentlich kein assembler user

und nachfolgend mag der compiler meine:

#include <avr/io.h>

nicht ( das heißt manchmal ja manchmal nein)

ich benutze das standartpacket:
avr studio 4.14 build 589
winavr
avrispmkII

schon mal danke für eure hilfe
an.na

von Benedikt K. (benedikt)


Lesenswert?

Ich vermute mal dein WinAVR ist uralt.

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


Lesenswert?

Da musst du wohl ein hornaltes WinAVR haben.  Nimm entweder die aktuelle
Version (gestern rausgekommen) oder die vom Dezember letzten Jahres.

von Johannes M. (johnny-m)


Lesenswert?

an.na wrote:
> ich benutze das standartpacket:
> avr studio 4.14 build 589
Schön, das hat mit C erstmal nix zu tun...

> winavr
Und, welche Version? Den Tiny45 gibt es noch nicht allzu lange, deshalb 
sollte es mindestens ne Version von 2007 sein.

Wenn überhaupt, dann hat die Sache etwas mit dem WINAVR zu tun und nicht 
mit AVRStudio. AVRStudio kann kein C.

von Sven P. (Gast)


Lesenswert?

Der Compiler hat Recht...

Der Tiny hat doch nichmal nen vernünftigen Stack! Überleg mal, wenn man 
in C schreibt
1
ISR(irgendwas...) {
2
  irgendeine_globale_variable = 1;
3
}

Weißte, was der GCC draus macht? Ein Register pushen, um mit selbigem 
SREG zu laden und wiederum zu pushen. Dann noch ein, zwei temporäre 
Register pushen. Dazu natürlich noch die Rücksprungadresse... das geht 
nicht mit einem winzigen Hardware-Stack.

von Benedikt K. (benedikt)


Lesenswert?

Sven Pauli wrote:
> Der Compiler hat Recht...

Aber du unrecht ! Schau mal ins Datenblatt des tiny45...


Jörg Wunsch wrote:
> Nimm entweder die aktuelle Version (gestern rausgekommen)

Wo bekommt man die ? Ich finde nur die 20080512

von Gast (Gast)


Lesenswert?

Was schwafelst du hier von einem Hardware Stack.
Habe hier mit dem Tiny45 unter IAR C keine Probleme.

von Peter D. (peda)


Lesenswert?

Benedikt K. wrote:
> Jörg Wunsch wrote:
>> Nimm entweder die aktuelle Version (gestern rausgekommen)
>
> Wo bekommt man die ? Ich finde nur die 20080512

Ja, da ist nirgends was mit 20080610.

Dafür ist die buggy 20080430 wieder drin, ist die nun doch nicht buggy?


Peter

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


Lesenswert?

Peter Dannegger wrote:

> Ja, da ist nirgends was mit 20080610.

Wenn ich das hier richtig lese:

http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=65041

...dann hat er wohl das Teil aus Versehen nach 20070610 installieren
lassen und korrigiert das gerade.

von an.na (Gast)


Angehängte Dateien:

Lesenswert?

das war schon mal die erste hürde :-)
hatte wirklich ne uralte version von winavr drauf,
bei euch sind anscheinden nicht so viele fußballfans, wegen den 
schnellen antworten ;-)

hir mal ein screenshot....
nur mein ispmkII kann man nicht wählen?

muss gestehen hatte bis jetz noch nix mit dieser programmieroberfläche 
an hut...

danke
an.na

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


Lesenswert?

an.na wrote:

> nur mein ispmkII kann man nicht wählen?

Damit kann man ja auch nicht debuggen.  Programmieren geht woanders,
da gibt's irgendwo einen Programmierdialog.

> muss gestehen hatte bis jetz noch nix mit dieser programmieroberfläche
> an hut...

Ich auch nicht.  Zum Glück muss man sie ja auch nicht benutzen.

von Stefan E. (sternst)


Lesenswert?

an.na wrote:

> hir mal ein screenshot....
> nur mein ispmkII kann man nicht wählen?

Achte auf die Überschrift:"Debug platform"
Du kannst mit dem ISP mkII nicht Debuggen.

von an.na (Gast)


Angehängte Dateien:

Lesenswert?

ok, heut is scho spät... hät man sehen müssen,

das miniprogramm lässt sich compilieren,
hexfile, makefile sollte passen,
die fusebits kann ich einwandfrei lesen,

nur ich möchte den internen rc verwenden, eingestellt sich der ext 
clock...

vielleicht kann mir jemand kurz und knapp erzählen wie ich direkt mit 
dem avrstudio den tiny beschreiben kann, mit dem "bulid and run" kommt 
man anscheinend zum debugmodus...

hab noch folgende einstellungen gewählt:
main: natürlich den tiny45 und isp mode mit f=125kHz
advanced die 8MHz

beim programmer AVRISPMKII USB 115200 Baudrate (ist fest)

danke für die hilfe
an.na

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.