====== Programmieren mit AVR-Studio 4 und AtmelStudio 6 ====== In diesem Kapitel wird das Aufspielen der Firmware auf eine BiDiB-Baugruppen mit dem AVR-Studio 4 und seinem Nachfolger, dem AtmelStudio 6 sowie dem In-System-Programmer AVRISP mkII beschrieben. ===== AVR-Studio 4 ===== //Diese Beschreibung gilt für AVRStudio Version 4.19-730.// Zunächst wählt man das Programmiergerät aus. In diesem Beispiel den AVRISP mkII {{:programmer:avr4_1.png?600|}} Nach Drücken von **Connect** wechselt AVRStudio4 in den Programmierdialog. Hier wählt man das Device (zB. ATxmega128A1 für GBM) und wählt **PDI** als Programmiermode. {{:programmer:avr4_2.png?600|}} Ist man mit der Auswahl des Device unsicher, kann man mit **Read Signature** die Signatur des Controllers auslesen und auf Übereinstimmung prüfen. {{:programmer:avr4_3.png?600|}} Unter dem Reiter **Program** wählt man die Dateien, die man programmieren möchte. **Verify** sollte angehakt sein, dann prüft AVRStudio4 nach dem Programmieren, ob die Programmierung erfolgreich war. **Erase Device before Flash programming** muss angehakt werden, wenn man Bootloader, Applikation und EEprom neu programmieren will. Will man nur das Programm updaten und Bootloader und den Flashinhalt behalten, muss man dieses Häkchen deaktivieren und vor dem Programmieren händisch den Applikationsbereich löschen. Dazu im DropDown-Feld **Erase Application** auswählen und **Erase** klicken. Hat man alle Einstellungen vorgenommen, wird erst bei Flash auf **Program** geklickt. War das Verify erfolgreich, kann - falls erforderlich - bei EEprom auf **Program** geklickt werden. Vergisst man vor dem Programmieren den entsprechenden Bereich zu löschen, gibt das Verify eine Warnmeldung ab. Dann muss der Vorgang - diesmal mit vorherigem Erase - wiederholt werden. {{:programmer:avr4_4.png?600|}} Unter dem Reiter **Fuses** werden die Fuses nach Anleitung eingestellt. {{:programmer:avr4_5.png?600|}} Hat man einen jungfräulichen Controller vor sich, geht man nach dieser Reihenfolge vor: //**Erase Device before Flash programming** abhaken, da sonst beim Programmieren der Applikation der zuvor programmierte Bootloader wieder gelöscht wird. Bei einem neuen Controller gibt es ja auch nichts zu löschen.// *Fuses nach Anleitung einstellen *Im Bereich **Flash** den Bootloader auswählen und auf **Program** klicken *Im Bereich **Flash** die Applikation (*000.hex) und im Bereich **EEprom** das EEprom (*001.hex) auswählen und jeweils auf **Program** klicken *Im Bereich **EEprom** die Datei der Serial-Nummer auswählen und **Program** klicken ---- ===== AtmelStudio 6 ===== In diesem Kapitel wird das Aufspielen der Firmware auf eine BiDiB-Baugruppen mit dem AtmelStudio 6 und dem In-System-Programmer AVRISP mkII beschrieben. * Menüleiste: Tools * Menüpunkt: Device Programming (oder Tastenkürzel Ctrl+Shift+P) {{:programmer:as6_prog_01.jpg|}} * Tool Auswählen (das erscheint erst, wenn es angeschlossen ist) * Device auswählen * Interface auswählen * Apply {{:programmer:as6_prog_02.jpg|}} Verbindung mit 'Device Signature' -> READ überprüfen. Einstellungen hier zum Laden der OneControl (ohne Bootloader): * Flashdatei (000.hex) auswählen * Program * EEPROM-Datei (001.hex) auswählen * Program {{:programmer:as6_prog_03.jpg|}} Überträgt man die 000-Datei vor der 001-Datei, startet das Programm und blinkt hektisch, da die EEPROM-Daten fehlen.