Forum: Compiler & IDEs Microchip Studio 7.0


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Aloysius P. (Firma: FBI) (a_pendergast)


Lesenswert?

Atmel Studio heisst jetzt "Microchip Studio for AVR und SAM" und ist 
downloadbar unter:

https://www.microchip.com/mplab/microchip-studio

Hat ein paar interessante Neuerungen und der XC8 Compiler ist 
integriert.

Ich bin sicher die Berufsnörgler sind die ersten die das kommentieren.

von Norbert (Gast)


Lesenswert?

So viele Neuerungen sind es nicht. Wichtig war Microchip wohl die 
Umbenennung.
1
Microchip Studio for AVR® and SAM Devices 7.0.2542
2
•  Renaming of Atmel Studio to Microchip Studio for AVR and SAM Devices
3
•  Microchip Studio installer bundles with the AVR GCC Toolchain, Arm GCC Toolchain, and the MPLAB XC8Compiler with AVR devices support
4
. To unlock all optimization options of MPLAB XC8 Compiler, try or get aPRO license.
5
•  Default optimization for debug configuration is -Og, previous it was -O1
6
•  Improved scrolling performance on large projects/files•  AVR Macro assembler version 2.2.8
7
•  Advanced Software Framework 3.49.1, including previous version back to 3.42
8
•  Updated kit recognition

von Apollo M. (Firma: @home) (majortom)


Lesenswert?

Norbert schrieb:
> To unlock all optimization options of MPLAB XC8 Compiler, try or get
> aPRO license.

der avr gcc part von xc8 verweigert lto, das geht da nur mit der pro 
licence!

von Andreas H. (ahz)


Lesenswert?

Norbert schrieb:
> MPLAB XC8Compiler with AVR devices support

Das war es dann wohl endgültig mit dem AVR Port des GCC?
Schade :(

/regards

von Oliver S. (oliverso)


Lesenswert?

Andreas H. schrieb:
> Das war es dann wohl endgültig mit dem AVR Port des GCC?

Warum? Was hat Microchip denn dazu beigetragen?

Oliver

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


Lesenswert?

Norbert schrieb:
> Wichtig war Microchip wohl die Umbenennung.

Da nehmen sie sich ja nichts mit Atmel. ;-) Denen war die Umbenennung 
von AVR Studio 6 in Atmel Studio 7 damals auch wichtig genug, nach 
vergleichsweise kurzer Lebenszeit des Vorgängers einen Versionssprung zu 
machen. Allerdings hatten sie wenigstens noch technische Gründe, denn 
sie wollten damit zeigen, dass ab nun auch die ARM-MCUs mit an Bord sind 
…

von Veit D. (devil-elec)


Lesenswert?

Andreas H. schrieb:
> Norbert schrieb:
>> MPLAB XC8Compiler with AVR devices support
>
> Das war es dann wohl endgültig mit dem AVR Port des GCC?

https://www.bountysource.com/issues/84630749-avr-convert-the-backend-to-mode_cc-so-it-can-be-kept-in-future-releases

Nein. Wenn der Nickname echt ist, dann hat erst die Spende von Microchip 
die avr-gcc Pflege für avr-gcc 11 möglich gemacht. Derzeit soll daran 
gearbeitet werden. Abwarten und Tee trinken.

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


Lesenswert?

Veit D. schrieb:
> Wenn der Nickname echt ist, dann hat erst die Spende von Microchip die
> avr-gcc Pflege für avr-gcc 11 möglich gemacht.

Da auch eine Microchip-Mailadresse dran steht, kann man wohl davon 
ausgehen, dass das echt ist. Sonst hätten die das sicher schon 
unterbunden.

USD 5000 ist ja nun auch nicht gerade eine Riesensumme im 
Microchip-Budget :), und im Gegenzug bekämen sie halt weiterhin einen 
ordentlich optimierenden Compiler für ihre Kunden.

von Andreas H. (ahz)


Lesenswert?

Veit D. schrieb:
> Andreas H. schrieb:
>> Norbert schrieb:
>>> MPLAB XC8Compiler with AVR devices support
>>
>> Das war es dann wohl endgültig mit dem AVR Port des GCC?
>
> 
https://www.bountysource.com/issues/84630749-avr-convert-the-backend-to-mode_cc-so-it-can-be-kept-in-future-releases
>
> Nein. Wenn der Nickname echt ist, dann hat erst die Spende von Microchip
> die avr-gcc Pflege für avr-gcc 11 möglich gemacht. Derzeit soll daran
> gearbeitet werden. Abwarten und Tee trinken.

Oh, thx 4 te info. Das beruhigt einen dann doch :)

/regards

von Heul Suse (Gast)


Lesenswert?

Andreas H. schrieb:
> Das war es dann wohl endgültig mit dem AVR Port des GCC?
> Schade :(

Diese Jammerei klingt immer so als ob man ein Produkt (hier
ein Compiler) nicht mehr nutzen könnte weil ja "der Support
ausläuft".

So wie bei den Lemmingen die alle Windows 10 installieren
weil es keinen Support mehr für Windows 7 gibt. Mein
Kühlschrank wird nicht mehr unterstützt, jetzt muss ich mir
einen neuen kaufen.

Es ist wirklich zum Heulen, diese Jammerei ...

von Veit D. (devil-elec)


Lesenswert?

Jörg W. schrieb:
> Veit D. schrieb:
>> Wenn der Nickname echt ist, dann hat erst die Spende von Microchip die
>> avr-gcc Pflege für avr-gcc 11 möglich gemacht.
>
> Da auch eine Microchip-Mailadresse dran steht, kann man wohl davon
> ausgehen, dass das echt ist. Sonst hätten die das sicher schon
> unterbunden.
>
> USD 5000 ist ja nun auch nicht gerade eine Riesensumme im
> Microchip-Budget :), und im Gegenzug bekämen sie halt weiterhin einen
> ordentlich optimierenden Compiler für ihre Kunden.

Hallo,

man muss das glaube ich anders betrachten. Atmel und Microchip haben bis 
heute nur Assembler und C unterstützt. Das merkt man daran das in allen 
Codebsp. nur Assembler und/oder C vorkommt. Selbst das Studio 7 kommt 
noch mit einer uralt avr-gcc Toolchain 4.9x daher. Das heißt C++ bzw. 
eine aktuelle avr-gcc Toolchain spielte für sie bis heute keine Rolle. 
C++11 ist nur möglich, weil es in dieser Toolchain "enthalten" ist. 
Wurde bzw. wird aber wie gesagt seitens Atmel/Microchip nicht 
propagiert.

Auch klar ist, dass sie $ 5000,- aus der Kaffeekasse bezahlt haben. 
Aber! Sie müssen es erstmal machen. Ich weiß nicht konkret woran es lag. 
Ich möchte mich auch gar nicht hervor tun. Ich habe sie nur mehrfach 
hartnäckig auf ein kommendes Problem hingewiesen das sie ab gcc 11 ohne 
AVR Support da stehen und es auch viele C++ Programmierer gibt die ihre 
Controller nutzen. Irgendwann war die Spende da. Ich weiß nicht ob noch 
mehr Leute den Microship Support auf das Thema angesprochen hatten. 
Keine Ahnung. Ich weiß nur, ich war nicht untätig gewesen. Jetzt kann 
ich nur hoffen das die die angefangen haben es erfolgreich zu Ende 
bringen. Sie haben noch genügend Zeit.

Ich würde auch nicht behaupten wollen das es ein weit entferntes 
Zukunftproblem für ihre AVR Controller wäre. Das ist schon recht nah - 
das Problem. Wenn größere Projekte in C++ angegangen werden und die 
Profis die dann aktuelle gcc >=11 Version nutzen wollen oder müssen und 
dann feststellen, dass sie damit keine AVR Controller mehr verwenden 
können, dann ist AVR in deren Produktentwicklung für immer raus. Ich 
denke das hat Microchip dann doch irgendwie verstanden. Von deren 
positiven Erkenntnis profitiere auch ich im Hobbykeller. Dazu benötigt 
man nur etwas Weitblick.  :-) Zudem ja der gcc der größte Compiler aller 
ist. Wer dort raus ist raus. Selbst Intel, die ihren eigenen haben, 
unterstützen gcc und viele andere.

von Andreas H. (ahz)


Lesenswert?

Heul Suse schrieb:
> Diese Jammerei klingt immer so als ob man ein Produkt (hier
> ein Compiler) nicht mehr nutzen könnte weil ja "der Support
> ausläuft".

Veit D. schrieb:
> Wenn größere Projekte in C++ angegangen werden und die
> Profis die dann aktuelle gcc >=11 Version nutzen wollen oder müssen und
> dann feststellen, dass sie damit keine AVR Controller mehr verwenden
> können, dann ist AVR in deren Produktentwicklung für immer raus.

Danke Veit :)

Das trifft aber nicht nur "größere" Projekte.

/regards

von Oliver S. (oliverso)


Lesenswert?

Veit D. schrieb:
> Codebsp. nur Assembler und/oder C vorkommt. Selbst das Studio 7 kommt
> noch mit einer uralt avr-gcc Toolchain 4.9x daher.

Die AVR-toolchains 3.6.1/2 kam mit einem gcc 5.4.0, der kann zumindest 
C++14.

Oliver

von Veit D. (devil-elec)


Lesenswert?

Oliver S. schrieb:
> Die AVR-toolchains 3.6.1/2 kam mit einem gcc 5.4.0, der kann zumindest
> C++14.

Ja stimmt, 5.4.0. Wie kam ich auf 4.9? Egal, ist korrigiert. :-) Danke.

von c-hater (Gast)


Lesenswert?

Veit D. schrieb:

> man muss das glaube ich anders betrachten. Atmel und Microchip haben bis
> heute nur Assembler und C unterstützt.

Wenn das wenigstens so weit stimmen würde...

Aktuell unterstützt nichtmal der eigenen Assembler die eigenenen 
Produkte vollständig.

Das ist eine absolut lachhafte Situation. Das kommt sonst nur bei 
chinesischem Billich-Scheiß vor, dort aber vor allem deshalb, weil die 
die Informationen nicht vollständig rausrücken wollen.

Das ist hier aber nicht das Problem. Die Informationen sind öffentlich 
verfügbar. Sie bekommen es nur nicht gebacken, auch nur einigermaßen 
zeitnah auch die entsprechenden Werkzeuge bereit zu stellen. Das ist 
echt armselig...

In den Code von avrasm2.exe ließe sich das bissel Zeug sicherlich 
innerhalb von einem einzigen Tag einbauen. Ich habe absolut kein 
Verständnis dafür, dass dies nicht längst geschehen ist.

Aus meiner Sicht kann es da wirklich nur zwei Erklärungen geben: 
abstruser Quellcode des Tools, den niemand mehr versteht und ändern 
kann, der noch "da" ist oder man WILL schlicht keine funktionierenden 
Tools mehr liefern. Jedenfalls nicht mehr für lau.
Und genau darauf scheint es wohl hinauszulaufen. Wenn man sich die 
Installationsprozedur und -dialoge des MC-Studios kritisch anschaut, ist 
alles bereits dafür vorbereitet, das es Löhnware werden kann.

In diese Richtung wird wohl die AVR8- (und ATSAM-) Reise weiter gehen...

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


Lesenswert?

c-hater schrieb:
> In den Code von avrasm2.exe ließe sich das bissel Zeug sicherlich
> innerhalb von einem einzigen Tag einbauen.

Ich würde meine nicht vorhandene Perücke darauf verwetten, dass es da 
sogar schon drin ist, weil bei der firmeninternen Validierung der ICs 
ohnehin ein Assembler benötigt wird. Da gibt's den übrigens sogar als 
Linux-Version (macht sich halt einfacher auf Buildservern), aber der 
wurde und wird aus ebenso unverständlichen Gründen nie an die 
Öffentlichkeit freigegeben.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

was fehlt bei der Assemblerunterstützung wenn ich fragen darf? Ich habe 
keine Ahnung von Assemblerprogrammierung. Ich stelle mir das jedoch so 
vor, dass man nur die Befehle laut Controller Manual zur Verfügung hat. 
Diese sollten doch alle nutzbar sein? Oder nicht? Ich kann mir nicht 
vorstellen das ein Befehl fehlen sollte. Und wenn dem so wäre, hätte man 
das dem Microchip Support schon längst mitteilen können.

von Peter S. (Gast)


Lesenswert?

Ich weiss, dass der avrasm2 von Atmel Studio die Architektur der AVR128 
nicht kennt, das gibt aber zum guten Glück nur eine Warnung. Schlimmer 
ist, dass der Assembler nur sehr wenig Direktiven hat und es keine 
eingebaute Unterstützung des in den Adressraum gemappten FLASH speichers 
gibt (so dass man da mit Labels arbeiten kann ohne mit Offset und 2* 
arbeiten zu müssen). Wie das jetzt mit dem avrasm2 update in Microchip 
Studio aussieht kann ich (noch) nicht sagen, muss ich zuerst 
installieren und ausprobieren. Aber dazu muss ich zuerst noch eine VM 
bauen (ich will nicht, dass er mir beider Installation von Microchip 
Studio das Atmel Studio löscht). avrasm2 funktioniert aber er ist sehr 
minimalistisch, wenn ich das mit den Assembler auf anderen Plattformen 
vergleiche die ich in der Vergangenheit benutzt hatte.

von Moby (Gast)


Lesenswert?

Peter S. schrieb:
> Ich weiss, dass der avrasm2 von Atmel Studio die Architektur der AVR128
> nicht kennt

Mittlerweile kennt er sie.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.