Forum: Compiler & IDEs AT90PWM3B und WinAVR integration


von wean (Gast)


Lesenswert?

Hallo zusammen,

hat von euch schon mal jemand den AT90PWM3B mit dem Evaluationsboard 
ATAVRMC100-C verwendet und mit AVR Studio Programmiert (Compailieren und 
Debuggen in C mit WinAVR)
(Vorkompailierte Sample Files kann ich aufspielen mit AVR Studio)

Bei mir ist das Problem das der Controller nicht von WinAVR unterstüzt 
wird aber ich mich nicht auskenne wie ich dem WinAVR beibringen kann 
diesen Controller zu kennen.

Ps:
ich verwende
AVR Studio 4.13 557 (neueste Version von Atmel)
WinAVR 20070525
STK500 zum verbinden über ISP

wenn jemand das gleiche Problem hatte und eine Lösung hat würde es mich 
freuen  wenn er sie hier beschreiben könnte

Danke im Voraus

wean

von Johannes M. (johnny-m)


Lesenswert?

Also mein WINAVR 20070525 kennt den AT90PWM3(B) und ich kann auch 
mittels AVRStudio problemlos Code für diesen AVR compilieren.

von wean (Gast)


Lesenswert?

in C oder Assembler

von Johannes M. (johnny-m)


Lesenswert?

wean wrote:
> in C oder Assembler
Na, in C natürlich. Dafür ist der WINAVR nunmal primär da. Und Du 
schreibst doch auch was von C-Programmierung...

von wean (Gast)


Lesenswert?

Bei mir kommt immer eine Fehlermeldung im angelegten C Projekt im AVR 
Studio:

error: MCU 'at90pwm3b' supported for assembler only

Projekt AT90PWM3 funktioniert nur die 3B nicht

Danke schon mal für die schnelle Antwort Johannes

von Johannes M. (johnny-m)


Lesenswert?

Wenn Du in AVRStudio ein WINAVR-C-Projekt anlegst, in den Project 
Configurations den AT90PWM3 auswählst und das ganze compilierst, dann 
sollte es eigentlich funktionieren. Zumindest die Header-Datei ist 
sowohl für den ursprünglichen AT90PWM3 als auch für die B-Version. Ich 
hab jetzt allerdings grad nicht vor Augen, wie sich die Unterschiede der 
B-Version zur ursprünglichen auswirken. Compiliert zumindest fehlerfrei.

von wean (Gast)


Lesenswert?

Die Header-Dateien sind im AVR Studio/Winavr doch integiert oder ?

von Johannes M. (johnny-m)


Lesenswert?

Die Header-Dateien sind Bestandteil der zum WINAVR gehörenden AVR-libc. 
Wenn im Programm ein "#include<avr/io.h>" steht, dann wird automatisch 
die Device-spezifische Header-Datei für den in den Configuration Options 
(oder alternativ im Makefile) ausgewählten Controller eingebunden.

Was man nicht machen darf, ist, zu versuchen, die Device-spezifische 
Headerdatei direkt zu #includen. Immer nur io.h einbinden, den Rest 
macht die Software (richtige Einstellungen vorausgesetzt).

von wean (Gast)


Lesenswert?

Benötige ich nur das include file für den At90pwm3b oder doch noch 
andere Dateien wie die libc.
(welche genau?)

von Johannes M. (johnny-m)


Lesenswert?

Du musst den WINAVR schon installieren. Dann ist alles da, was benötogt 
wird.

von wean (Gast)


Lesenswert?

ich habe win avr installiert mit der akktuellesten version, allerdings 
wird von dieser der PWM3B nicht  unterstüzt (soll erst die neue Version 
können)

deshalb auch meine fragen

von Peter D. (peda)


Lesenswert?

Johannes M. wrote:
> Also mein WINAVR 20070525 kennt den AT90PWM3(B) und ich kann auch
> mittels AVRStudio problemlos Code für diesen AVR compilieren.

Merkwürdig, gibts denn verschiedene 20070525?

Mein WINAVR 20070525 kennt nämlich nur den AT90PWM1:

WinAVR User Manual - 20070525

- Added support for these devices:

    * AT90USB82
    * AT90USB162
    * ATmega325P
    * ATmega3250P
    * ATmega329P
    * ATmega3290P
    * AT90PWM1
    * ATmega16HVA
    * ATmega8HVA


Und in Include gibts auch nur ein io90pwm1.h


Peter

von Johannes M. (johnny-m)


Lesenswert?

Ich hab hier eine io90pwmx.h, die besagt:"io90pwmx.h - definitions for 
AT90PWM2(B) and AT90PWM3(B)" (Zitat)

von wean (Gast)


Lesenswert?

Die habe ich auch aber beim anlegen eines C Projektes für den AT90PWM3B 
sagt der Compiler nach dem Compialieren das er ihn nicht kennt!



#include <avr/io.h>

int main (void)
{
return 0;
}

von Benedikt K. (benedikt)


Lesenswert?

Gibt es denn (abgesehen von den behobenen Fehlern) überhaupt einen 
Unterschied zwischen dem PWM3 und dem PWM3B ? Der Code sollte zumindest 
identisch sein, von daher kann man im Compiler dern PWM3 einstellen.

von Johannes M. (johnny-m)


Lesenswert?

Benedikt K. wrote:
> Gibt es denn (abgesehen von den behobenen Fehlern) überhaupt einen
> Unterschied zwischen dem PWM3 und dem PWM3B ? Der Code sollte zumindest
> identisch sein, von daher kann man im Compiler dern PWM3 einstellen.
Das war auch meine Meinung. Lasse mich aber gern eines Besseren 
belehren...

von Johannes M. (johnny-m)


Lesenswert?

Also danach zu urteilen gibt es programmiertechnisch kaum Unterschiede:
http://www.atmel.com/dyn/resources/prod_documents/doc7681.pdf
Ob das bisschen für Deinen Fall zutrifft, musst Du selbst entscheiden.

von wean (Gast)


Lesenswert?

Danke mal für eure Hilfe

werde nun mit der AT90PWM3 Code schreiben und Compailieren und mit einem 
neuen  Porjekt file (AT90PWM3B den Controller Flashen)

mal sehen obs geht

Danke an alle die sich an der Lösungsfindung und Diskusion beteiligt 
haben

werde mich nochmal melden obs so funktioniert hat

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.