................................ 19 SONSTIGE HILFE UND INFORMATIONEN......................19 ANHANG: AVR MKII / ALLAVR UND BASCOM ....................20 ANHANG: FIRMWARE UPDATE ........................21 ANHANG: UNTERSCHIEDE BEI ATMEL STUDIO 5 / 6 ..................22 TYPISCHE PROBLEME: ............................ 24 ..................24 CH KANN KEINE...
Seite 3
Zur Installation von AVR Studio erhalten Sie auf den folgenden Seiten einige Informationen. Atmel Studio ist eine Entwicklungsumgebung von Atmel, die Sie nutzen können, es aber nicht müssen. Sofern Sie in Ihrer gewohnten Umgebung arbeiten möchten, so nutzen Sie Ihre ge- wohnte Entwicklungsumgebung (z.B.
Länger als 20cm darf das ISP Kabel zwischen Programmiergerät und Mikrocontroller nicht mehr sein. Sie erkennen am MKII Programmiergerät einen 6-poligen Stecker. Dies ist der neuere ISP Standard von Atmel. Daneben gibt es noch den 10-poligen Standard, bei dem sich mehr Mas- seadern im Kabel befinden. Die Beschaltung gilt wie folgt: Anmerkung 1: Vorsicht Falle bei der Erstellung eigener Platinen: Sie erkennen an der Bele- gung oben die Bezeichnung MOSI/MISO sowie SCK und Reset.
Der originale Atmel Programmieradapter (rechts) bietet keine Optionen, hingegen der AllAVR Adapter verschiedene Optionen anbietet. Auf den folgenden drei Seiten gehen wir auf die Möglichkeiten des AllAVR ein. Besitzer eines originalen Atmel mk2 Programmadapters überspringen diese und können direkt zu Seite 9 weitergehen. Seite 5 ISP mk2 / ALLAVR Manual –...
Diamex ALLAVR Programmieradapter Dem Programmieradapter liegt ein gedrucktes Handbuch bei (welches auch bei uns im Shop als PDF Datei heruntergeladen werden kann), weshalb wir hier nicht im Detail auf ihn einge- hen, sondern nur ein paar praxisgerechte Hinweise sowie Informationen über die Jumper- Optionen geben.
Jumper Die Jumper des Programmieradapters werden in der Regel nicht häufig geändert. In der Pra- xis geschieht dies nur bei Änderungen der Versorgungsspannung oder beim Wechsel des Controllers von ATMega zu Xmega. JP1-1: für 3,3 Volt Logiksignale wenn geschlossen JP1-2: für 5,0 Volt Logiksignale wenn geschlossen JP1-3: wenn geschlossen, versorgt der Programmieradapter das µC-Board mit der gewählten Spannung.
Seite 8
Retten eines „defekten“ Controllers Früher oder später werden Sie einen AVR Mikrocontroller (ATMega, nicht XMega) dadurch verlieren, dass Sie versehentlich falsche Fuse-Einstellungen verwenden und brennen. Der Controller ist dann nicht mehr ansprechbar und vermeintlich defekt. Dies muss noch nicht einmal absichtlich geschehen. Durch Störungen oder statische Entla- dung kann es passieren, dass während des Programmiervorgangs korrekter Daten ein Bit kippt und somit etwas falsche einprogrammiert wird.
Installation von Atmel Studio Für den Programmieradapter mk2 / ALLAVR benötigen Sie das Programmtool, welches sich im Entwicklungspaket Atmel Studio befindet. Sie müssen somit Atmel Studio installieren um es nutzen zu können. Dieses kann kostenfrei bei Atmel heruntergeladen werden: http://www.atmel.com/tools/ATMELSTUDIO.aspx bzw.
Seite 10
Sie hier nur ein einziges Icon für das Programmiertool klicken: Selbstverständlich nutzen Sie dieses Icon für den Start des Programmiervorgang auch, wenn Sie innerhalb von Atmel Studio entwickeln. Dieses Icon auf der Symbolleiste ist für den Auf- ruf des Programmiertools zuständig.
Der erste Programmiervorgang: 1. Programmieradapter auswählen Als erstes wählen Sie oben links den Programmieradapter AVRISP mkII aus: Das Programmiertool merkt sich diese Auswahl, d.h. zukünftig brauchen Sie hier nur eine erneute Auswahl treffen, wenn sie den Programmieradapter vom USB Bus getrennt haben. In einem der seltenen Fälle, dass sich der Programmieradapter ‚aufgehängt‘...
2. Auswahl des genutzten Mikrocontrollers Das Programmiertool zeigt in der Mitte bereits an „Select tool, device and interface“. Unter dem Eintrag „Device“ wählen Sie den von Ihnen genutzten Mikrocontroller aus: Auch diese Einstellung merkt sich das Programmiertool, d.h. Sie müssen es nur noch bei Än- derung des Mikrocontrollers ändern.
3. Prüfen der Verbindung Beim Ersten Anschluss einer Hardware hat es sich als sinnvoll erwiesen, nun erst einmal den Button „Read“ bei „Device Signatur“ zu drücken. Das Programmiertool prüft nun, ob die ISP/PDI Verbindung stimmt, ob die Einstellungen zur gewählten Hardware passen (z.B. ob der ausgewählte Mikrocontroller zur Hardware passt, ob die anliegende Spannung i.O.
Systemtakt 16 Mhz: max. Programmierfrequenz 2 Mhz Systemtakt 20 Mhz: max. Programmierfrequenz 4 Mhz Neue Atmel-Mikrocontrollerchips sind i.d.R. auf 1 Mhz vorprogrammiert, d.h. die maximale Frequenz muss bei der Erstprogrammierung unterhalb von 250 Khz liegen – bei diesem Pro- grammieradapter also 125 Khz.
Seite 15
265 sek. etc.) (oder noch langsamer) ‚Billiger‘ USB Adapter ca. 90 sek. ca. 80 sek. Atmel mk2; Diamex ALLAVR mit 125 khz 86 sek. 81 sek. 16 sek 11 sek Atmel mk2; Diamex ALLAVR mit 1 Mhz Atmel mk2; Diamex ALLAVR mit 2 Mhz 12 sek.
5. Programmiervorgang Alle oben beschriebenen Einstellungen müssen Sie – solange Sie nicht das Board / den Mik- rocontroller wechseln – nur 1x vornehmen. Das Programmiertool merkt sich die Einstellun- gen, d.h. Sie können nach dem Start immer direkt den Reiter „Memory“ wählen. Die Betätigung des Button „Erase Chip“...
Seite 17
Der Button „Read“ eignet sich zum Auslesen des Programmspeichers. So können Sie z.B. das Test- und Demoprogramm auf unseren Mikrocontrollerboards auslesen und als .hex-Datei abspeichern, so dass Sie dieses jederzeit wieder einspielen können. Sofern Sie Voreinstellungsdaten in das Eeprom des Mikrocontrollers schreiben möchten, führen Sie die obige Prozedur auch mit der Eeprom Funktion des Programmiertools durch.
6. Fuses / Fuse-Bits Fuses sind quasi Voreinstellungen des Mikrocontrollers. Hier legen Sie u.a. die Taktfre- quenz/-quelle und andere Parameter fest. Ganz wichtig ist es, dass die beiden gelb markierten Auswahloptionen immer eingeschaltet sind. Ohne „Auto Read“ prüft das Tool ansonsten niemals selbsttätig, ob der verbundene Mikrocontroller zur aktuellen Auswahl passt.
7. Lock Bits Mit den Lockbits können Sie z.B. verhindern, dass jemand einen programmierten Controller wieder ausliest und die Hardware inkl. dieses Programms vervielfältigt. Besonders bei kom- merziellen Projekten sind die Lockbits i.d.R. gesetzt. Ansonsten gilt hier ähnliches wie bei den Fuse-Bits: Die Lock-Bits sind je nach Controller unterschiedlich.
Tasten ALT-TAB einfach zwischen Bascom und Atmel Studio hin und her. Somit ist der Aufwand während der Entwicklung (bis auf das erstmalige Starten von Atmel Studio) quasi der gleiche. Dafür sparen Sie aber bei jedem Programmiervorgang viele Sekun- den Wartezeit ein, die sich am Ende des Tages durchaus auf 30 Minuten Zeitersparnis sum- mieren können.
Anhang: Firmware update Beim allerersten Start erkennt AVR Studio u.U., dass es eine neuere Firmware für den Pro- grammer gibt. Wenn dem so ist, sollten Sie diese nun installieren lassen. Drücken Sie „OK“ Das Upgrade startet nun und ist nach wenigen Sekunden beendet.
Anhang: Unterschiede bei Atmel Studio 5 / 6 Screenshots Einige Bildschirme der Version 5 und 6 sehen etwas anders als in der Version 4 aus. Zur Er- leichterung bilden wir hier die wichtigsten ab: Firmware Upgrade des Programmieradapters Menü / Icon-Leiste Startbildschirm vom AVR Studio Bild zeigt ältere Version, neuere sehen aber fast gleich aus.
Typische Probleme: Ich kann keine Verbindung zum Programmer aufbauen. Lösung 1: Kontrollieren, ob die LED innen am USB Eingang des Programmieradapters leuch- tet. Wenn nein: Programmieradapter kurz abziehen und wieder anstecken. Lösung 2: Wenn auch nach einem Herunterfahren (inkl. Ausschalten) des Rechners das Problem immer noch besteht (dies sollte eigentlich generell immer die erste Aktion sein, bevor man irgendwo an der Softwareinstallation herumspielt –...
Die LED leuchtet, ich kann aber immer noch nicht Kontakt zum Programmer aufnehmen oder ich bekomme keinen Kontakt mehr zum Controller. Lösung: Ein paar wenige Male ist es vorgekommen, das Atmel Studio nicht mehr korrekt gearbeitet hat und Windows neu gestartet werden musste. Bei unerklärlichen Problemen bietet sich dies an, bevor man vergeblich stundenlang einen gar nicht vorhandenen Fehler sucht.