kann mir jemand sagen worin die Unterschiede zwischen Atmel Devicepacks und den Microchip Devicepacks liegen? Beide werden Seiten von Microchip betreut.
http://packs.download.atmel.com/https://packs.download.microchip.com/
Vermeintlich gleiche Versionsstände sind im Detail nicht gleich. Zumindestens laut Änderungsbeschreibungen.
Beide Seiten werden jedoch zeitgleich aktuell gehalten.
Was ist hier los?
Ich dachte du verwendest aktuelle Tools, da sind Devicepacks doch
überflüssig.
???
Mir scheint, dass die aktuellen Tools gerade erst durch die DevicePacks auf dem aktuellen Stand gehalten werden.
Ansonsten ist darauf zu achten, dass die Packs zum Compiler passen.
Vor allem auch darauf dass sie zum gewünschten Target passen (Bugfixes) bzw. dieses überhaupt erst mal enthalten.
Weil die Packs nämlich nicht 100% unabhängig von den Tool-Versionen
sind.
Vor allem sind sie nicht unabhängig von den target devices, weswegen man sie klugerweise auch "DevicePacks" genannt hat. Klar, sie enthalten u.U. auch Anpassungen oder Erweiterungen für die Tools, der Kernpunkt sind aber doch wohl sicher die Targets.
Ja, den reinen Compiler-Frickler stört natürlich die bloße Existenz verschiedener Targets bei der Verfolgung der reinen Lehre erheblich, das tut der Tatsache aber keinen Abbruch, dass sie nunmal existieren.
Ist auch einleuchtend. Wer DFPs verwendet, muss auch die MCHP-Tools verwenden. Wer sie nicht verwenden will (warum auch immer), hat keinen Grund danach zu fragen.
Oder welches Tool unterstützt sonst noch die DFPs?
Oder welches Tool unterstützt sonst noch die DFPs?
Device-Packs kann man mit avr-gcc ab v5 verwenden. Davor musste der Compiler erweitert werden. Ab v5 kann man sich den Support für ein Device selber zusammenbasteln, vorausgesetzt der entsprechende Core wird unterstützt. Die Device-Packs von Atmel / Mirochip dienen vor allem dem Komfort, so dass man nicht selbst Specs-Files etc. schreiben muss falls ein Device noch nicht unterstützt wird; technisch ist es aber nix Neues.
Ich dachte du verwendest aktuelle Tools, da sind Devicepacks doch
überflüssig.
Ansonsten ist darauf zu achten, dass die Packs zum Compiler passen.
Weil die Packs nämlich nicht 100% unabhängig von den Tool-Versionen
sind.
Hallo Johann,
natürlich verwende ich aktuelle Toolchains. :-) Ich schaue dennoch immer einmal auf den Devicepacks Seiten nach. Ist a) Gewohnheit und b) Firmware Updates Neugierigkeit.
Ich hätte noch eine Frage. Verwendet die avrLibc immer Headerfiles aus den aktuellen DevicePack Versionen? Oder wird das bei "alten" µC eingefroren? Ich frage, weil Microchip ja gerne an paar Namen von Bit Definitionen rumfummelt bzw. in der Vergangenheit rumgefummelt hat. Vermutlich haben sie ein einheitliches Namensschema gefunden. Denn mir fiel auf das eine TCA Lib von mir, für einen AVRxDB, nur mit geringen Änderungen für einen ATtiny414 sofort funktionierte. Keine Compilerfehler bezüglich das irgendwelche Bitnamen für den TCA unbekannt wären. Das wäre zwischen einem ATmega328P vs. ATtiny841 unmöglich in ähnlicher Form. Also meine Frage lautet ist es Zufall das die Bitnamen der Headerfiles passen oder kann es zukünftig passieren das in neueren Version nicht mehr übereinstimmt?
Die übernommenen Leute von Atmel bekommen nicht genug Kaffee in der
Früh.
Nimm einfach das her, was in MPLAB-X angeboten/gefordert wird und gut
iss.
Ich verwende abseits der Arduino IDE wenn dann das Atmel/Microchip Studio 7. Meine Frage drehte sich nicht um die IDE. Da kann ich sowieso nur das installieren/updaten was sie mir anbietet.
Dazu fällt mir noch eine Frage ein. Das Atmel/Microchip Studio verwendet doch seine eigenen Headerfiles? Die die man mittels Device Pack Manager installiert hat. Ich hatte nämlich einmal einen Fall wo ich in früheren eigenen Toolchains, wo aktuelle µC noch nicht in der avrLibC aktuell gehalten wurden, die Headerfile Version gleichziehen musste, damit ich, egal womit ich die Toolchains nutze, nichts an den Bitnamen in meinem Programm ändern musste. Das Problem trat jedoch schon länger nicht mehr auf. Vermutlich fummelt Microchip nicht mehr an den Bit Definitionen o.ä. rum.
Was ich sagen wollte.
Wenn man ohne IDE programmiert, gilt das Headerfile der Toolchain.
Wenn man mit Arduino IDE programmiert, gilt das Headerfile vom Core Package, im Falle bei Verwendung eigener Toolchain, dann von dieser.
Wenn man Microchip Studio programmiert, gilt das Headerfile der IDE, im Falle bei Verwendung eigener Toolchain, dann von dieser.
Kleine feine Unterschiede.
Ich hoffe ich habe nichts durcheinander gebracht. ;-)
Eine eigene Frage?
Dieser Thread ist über 9 Monate alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.