http://sites.schaltungen.at/arduino-uno-r3/isp-programmer
Wels, am 2014-08-10BITTE nützen Sie doch rechts OBEN das Suchfeld [ ] [ Diese Site durchsuchen]DIN A3 oder DIN A4 quer ausdrucken ********************************************************************************** DIN A4 ausdrucken
********************************************************* myAVRmySmartUSB light für Arduino UNO
AVR-ISP-Programmer
"mySmartUSB-Programmer" von myAVR. Er ist STK500 kompatibel Er kann mit Atmel Studio 6 zusammenarbeiten. Man sollte sich aber gleich einen 10 auf 6 Pol ISP Adapter dazubestellen.
www.myAVR.de
Features Plastikgehäuse im modernen USB-Stick-Design, keine Kurzschlussgefahr Standard-USB-Controller (SiLabs CP2102) Geeignet für WindowsXP, WindowsVista, Windows7, Linux, MacOSX 6-poliger Standard ISP-Anschluss STK500v2 oder AVR910/911 Protokoll extrem schnell durch "double buffering" und auto ISP-Speed-Detect Programmierspannungen 5 V und 3 V (wählbar per Software) drei LEDs für Zustandsanzeige (rot/grün/blau) Updatefähig per Bootloader Kompatibel zu AVRStudio, BASCOM, CodeVision, myAVR Workpad, SiSy AVR, u.v.m. Technische Daten Versorgungsspannung: 5 V Betriebsstrom: 10 - 20 mA typisch ohne weitere Verbraucher Betriebsstrom: bis zu 100 mA bei Anschluss an Zielsysteme Betriebstemperatur: 0 - 30 ° C Abmaße: 60 mm x 30 mm x 12 mm Gewicht: 12 g Rastermaß: 2,54 mm
Eigenschaften:reiner ISP-Programmer für Atmel AVR-Mikrocontroller im USB-Stick-Design eine Vielzahl von AVR-Systemen können damit unkompliziert und schnell über die vorhandene USB-Schnittstelle programmiert werden er ist besonders schnell durch double buffering und hat Auto-ISP-Speed es gibt keine Kurzschlussgefahr durch offene Leiterplatten, da der Programmer in einem Gehäuse sitzt Einbindung in das Betriebssystem und die Programmiersoftware läuft völlig transparent über einen virtuellen COM-Port hat Traffic-, Fehler- und Zustandsanzeige Spannungsversorgung: durch das integrierte intelligente Spannungsversorgungsmodul können Systeme von 3,3 V bis 5 V programmiert und versorgt werden die Programmierspannung lässt sich dynamisch per Software umschalten => Standardmäßig ist die Spannungsversorgung des mySmartUSB light NUR während des Brennens vorgesehen! Firmware ausgeliefert wird der Programmer mit der Firmware STK500 V2 alternativ kann man sich auch die Firmware AVR911 / 910 / 109 verwendet werden die Firmware, mit der er ausgeliefert wird, verfügt über einen automatischen Step-Down-Modus: ⇒ für Controller, die auf langsameren Taktquellen unter 1 MHz umgeschaltet wurden und die sich bisher nicht mehr mit der Standard-ISP-Geschwindigkeit ansprechen ließen updatefähig durch vorinstallierten Bootloader ⇒ somit kann die Firmware für neue Protokolle oder Controllertypen aktualisiert werden Software: die myAVR-Softwareprodukte unterstützen den mySmartUSB light besonders effizient er kann aber auch direkt und unkompliziert aus dem AVR-Studio oder auch mit BASCOM und anderen Entwicklungsumgebungen genutzt werden Treiber sind verfügbar für Windows CE, Windows 2000 / 2003 / XP / Vista / 7 / 8 Linux MacIntosh OSX myAVR mySmartUSB light
ELV Artikel-Nr.: 68-11 12 06 € 15,95Der kompakte ISP-Programmer in USB-Stick-Form ermöglicht die schnelle und einfache Programmierung von AVR-Systemen über die ISP-Programmierschnittstelle. |
Abmessungen (B x H x T): | 60 x 30 x 12 mm |
Max. Stromaufnahme: | 100 mA über USB-Bus |
Spannungsversorgung: | 5 V über USB-Bus |
Rastermaß: | 2,54 mm |
Kompatible Betriebssysteme: | Windows XP/Vista/7, Linux, Mac OS X |
Bedienungsanleitung
300_d_myAVR-x_68-111206 myAVR mySmartUSB light - Technische Beschreibung_1a.pdf
300_d_myAVR-x_68-111206 ISP-Programmer mySmartUSB light - Produkt Beschreibung_1a.pdf
http://www.elv.at/output/controller.aspx?cid=74&detail=10&detail2=42504
Ich habe daraufhin den USB-Treiber nach Anleitung von myAVR aktualisiert und die Firmware des Programmes von 2.3 auf 2.5 gebracht.
Mit dem ProgTool V 1.20 von myAVR bekomme ich jedoch folgende Informationen:
USB-Treiber: 5.3.0.0
Geräte-ID: 0001
Port: COM2
Firmware: V2.5
Controller: ATmega168
Für ein aktuelles Projekt müssen relativ viele ATtiny84 Microcontroller als Chip programmiert werden. Für 2 oder 3 Chips klappt das auf einem Breadboard noch recht gut, aber für 50 Controller die über einen längeren Zeitraum immer mal wieder programmiert werden müssen ist das schon etwas umständlich. Lösungsidee war der Betrieb eines mySmartUSB Programmers mit einer kleinen Platine auf der ein ZIF-Sockel verbaut ist.
Die Platine selbst ist recht einfach aufgebaut, da zu den 6 Pinheadern für den Programmierstecker nur noch ein 10kOhm Widerstand für die Resetleitung benötigt wird. Schwieriger war es dann schon, den Programmer zur Mitarbeit auf einem Mac mit der Arduino IDE zu überreden.
Zunächst wird selbst für den Mac ein Treiber für den USB2Serial-Chip benötigt. Dessen Installation verlangt auch dem Mac einen Reboot ab. Nach erfolgreicher Installation gibt es dann ein neues serielles Gerät unter /dev/tty.SLAB_USBtoUART.
Leider kennt die Arduino IDE diesen speziellen Programmer nicht, daher muss man hier auch noch ein wenig Hand anlegen.
Arbeiten mehrere User auf dem gleichen Mac mit diesem Programmer, bietet sich die folgende Änderung in folgender Datei an:
/Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/programmers.txt
Dort ergänzt man die folgenden Zeilen:
mysmartusb.name=mySmartUSB light
mysmartusb.protocol=stk500v2
mysmartusb.communication=serial
Danach ist ein Restart der Arduino IDE notwendig. Anschließend findet man unter “Tool -> Programmer” den neuen Eintrag.
Zusätzlich muss noch die entsprechende serielle Schnittstelle unter “Tools -> Serieller Port” ausgewählt werden.
Danach kann man dann Programmer in der IDE verwenden.
Wer nicht in den IDE-Dateien Änderungen machen will (die ggf. bei einem Update wieder überschrieben werden), kann die auch eine Datei in “~Documents/Arduino/hardware/attiny/programmers.txt” anlegen. Dabei kann das Unterverzeichnis “attiny” im Verzeichnis “hardware” auch anders heißen, bei mir gab es das Verzeichnis aufgrund der Erweiterung der IDE auf die ATTIY Controller von Atmel.
AVR In System Programmer
http://www.mikrocontroller.net/articles/AVR_In_System_ProgrammerArduino + mySmartUSB light Links und Anleitung :
Bootloader auf neue Atmegas bringen
----Installation Software + Einstellungen Programmer
Treiber winxp+winvista oder win7 installieren
http://shop.myavr.de/index.php?sp=download.sp.php&suchwort=dl46
Programm Grafisches Einstellmenü installieren
http://shop.myavr.de/index.php?sp=download.sp.php&suchwort=dl197
Aufrufen und Einstellen:
"Firmware":
Auf "STK500" klicken
"Brennen" klicken
Konfiguration:
Stromversorgung beim Brennen:
"inaktiv" (damit bei Netzteil-Spg./Batterie-Spg. am Board der Programmer nicht hops geht)
"Power Off" klicken
---Wie benutzen mit Arduino:
arduino\Hardware\programmes.txt (bei arduino18 in arduino\hardware\arduino) finden,
kopie von machen,
ins original einfügen:
mySmartUSB.name=mySmartUSB
mySmartUSB.protocol=stk500v2
mySmartUSB.communication=serial
Reference.txt finden (C:\Dokumente und Einstellungen\--name deiner anmeldung--\Anwendungsdaten\Arduino\)
kopie von machen,
im original ändern von
upload.using=bootloader
nach
upload.using=mySmartUSB
---Das Bootloaderbrennen Selber:
Boardspannung anlegen (Netzteil/Batterie)
Arduinoprg starten
Com-port des programmers einstellen (meist der unterste)
Board einstellen
Burn Bootloader: w/ mysmartusb
Warten (10Sek.)
Fertig
Programmieren (ohne Bootloader und Serielle kommunikation = mehr Platz ) ?:
Einfach Upload
Um wieder mit dem USB-anschluss zu programmieren:
im original Reference.txt ändern:
upload.using=mySmartUSB
nach
upload.using=bootloader
http://myavr.info/myForum/viewtopic.php?p=8517&sid=066a56f7b2ac5238ec94abcfe931e735
Arduino Bootloader brennen
Eine Kurzanleitung:
1.) mySmart-USB-Programmer anschließen
2.) USB- Treiber installieren (cp210x Driver -> Version 5.3)
3.) Arduino Software entpacken (0014)
4.) unter "\arduino-0014\hardware\programmers.txt" folgendes hinzufügen: (Danke "bohne")
mySmartUSB.name=mySmartUSB
mySmartUSB.protocol=avr910
#------------------------------------------------------------
# ATmega168
#------------------------------------------------------------
part
id = "m168";
desc = "ATMEGA168";
has_debugwire = yes;
flash_instr = 0xB6, 0x01, 0x11;
eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00,
0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF,
0x99, 0xF9, 0xBB, 0xAF;
stk500_devcode = 0x86;
avr910_devcode = 0x06;
signature = 0x1e 0x94 0
Vorher stand dort #avr910_devcode = 0x; Diesen Tipp habe ich über google gefunden. http://gonium.net/md/2007/02/04/using-mysmartusb-programmer-on-mac-os-x/
6.) Bootloader über die Arduino Software "Tools", "Burn Bootloader", "w/ mySmartUSB" gebrannt.
7.) Eine Minute warten
8.) FERTIG!
Ein kleiner Hinweis noch:
Die Software hat den Programmer an Com1 gesucht / erwartet. Ich habe dem Programmer über den Gerätemanager Com1 zugewiesen. Falls Ihr noch eine Möglichkeit seht den Port irgendwo angeben zu können, sollte es noch etwas einfacher sein.
Danke auch an "madworm", ich habe mir den Link gespeichert. Für den Fall das ich mal Mist baue habe ich nun eine Anleitung um den Chip zu retten
Bootloader mit Arduino UNO und mySmartUSB brennen
Dieses Wochenende war ich mal wieder fleißig und konnte meine Projekte fast vollständig fertigstellen. Hier und da fehlt noch ein wenig der Feinschliff, bis ich die Projekte dann vorstellen werde.
Vorher möchte ich aus gegebenem Anlass noch ein kleines Tutorial veröffentlichen.
Wenn man bis spät in die Nacht noch fleißig bei der Arbeit ist, schleichen sich mal gerne ein paar Fehler ein. Dies führte dazu, dass ich eine Unterbrechung auf einer der Leiterbahnen vergaß zu entfernen. Kurzum ich hatte an meinem uC volle 12VDC auf einem Digitaleingang. Das nahm er mir dann doch ziemlich übel und starb vor meinen Augen.
Zum Glück hatte ich noch ein ersatz ATMega328 auf Lager. Auch hatte ich bereits früher schon mal einen Programmer „mySmartUSB Light“ bestellt.
Stellte sich mir jetzt allerdings die Frage, wie zur Hölle Brenne ich den Bootloader mit dem Teil auf den uC?
Darum werde ich jetzt Schritt für Schritt den Ablauf erläutern:
1. Zuerst werden für den mySmartUSB Light die Treiber gedownloaded und installiert – hier
2. Danach benötigen wir noch die Grafische Oberfläche – hier
Nachdem die Treiber installiert und das Programm gestartet ist, konfigurieren wir unseren Programmer.
3. Den mySmartUSB-Stick jetzt in einen USB-Port am PC einstecken.
Nachdem dieser erkannt wurde, werden folgende Einstellungen gemacht:
4. Im Reiter „Firmware“ : „STK500“ Auswählen und auf „Brennen“ klicken.
Dies kann ein paar Sekunden dauern.
Damit ist die Konfiguration von mySmartUSB abgeschlossen und wir widmen uns nun der Arduino IDE.
5. In dem Reiter „Konfiguration“ : Stromversorgung beim Brennen auf „inaktiv“ setzen.
(Aus dem Hintergrund, weil ich das Arduino Board extern mit Spannung versorge!)
Auf „Power Off“ klicken und weiter geht’s.
VORWEG: ICH BENUTZE DIE VERSION 1.0!!!!
Meine Projekte sind nicht mit 1.0.1 Kompatibel!!!
Bevor wir die IDE öffnen sind noch ein paar Zeilen Code zu ergänzen.
1. In Eurem Ordner mit den Arduino Dateien, in der Datei arduino-1.0/hardware/arduino/programmers.txt folgendes unten einfach anhängen
mySmartUSB.protocol=stk500v2
mySmartUSB.communication=serial
Dann nur noch speichern und schließen.
Jetzt können wir die IDE öffnen.
2.Unter File – Examples – ArduinoISP öffnen.
3. Unter Tools wählen wir nur noch unser Board „Arduino UNO“ und unter Serial den Port des mySmartUSB-Sticks aus. „Hier Port 1“.
4. Jetzt wird noch der Programmer ausgewählt. Wenn wir die programmers.txt eben richtig angepasst haben müsste un der Tools – Programmer unser mySmartUSB auftauchen.
Diesen wählen wir dann ganz einfach aus.
Jetzt sind wir fast soweit und können quasi losbrennen.
5. Wir stecken den ATMega328 in das Arduino Board. Ich denke mal ihr wisst wie das geht
„Der kleine Punkt am Pin1 zeigt zum ISP Stecker“
6. Schlussendlich wird nur noch der mySmartUSB-Stick mit unserem Arduino UNO verbunden.
Hier noch ein kleines Bild wie ihr den Stecker draufsetzen müsst. Der rote Streifen zeigt zu den Digitalen Pins.
7. Und unter Tools nur noch Burn Bootloader klicken.
Herzlichen Glückwunsch, ihr habt nun einen neuen funktionierenden ATMega mit Bootloaderhttp://elektrotechnik-allerlei.de/bootloader-mit-arduino-uno-und-mysmartusb-brennen/
AVR Fuses
fuses sind configurations-bits der cpu, welche geflasht werden.also z.b. welche takt quelle (intern/extern) verwendet wird, ob die cpu bei unterspannung automatisch einen reset durchfuehrt, ob ein bootloader verwendet wird oder nicht usw.
Ist ein kniffliges thema. damit kann man sich auch die cpu unbrauchbar machen. danach hilft nur noch ein 12V brenn vorgang, welcher von normalen writern nicht unterstuetzt wird.
http://www.mikrocontroller.net/articles/AVR_Fuses
hardware\boards.txt
...
diecimila.bootloader.low_fuses=0xff
diecimila.bootloader.high_fuses=0xdd
diecimila.bootloader.extended_fuses=0x00
...
diecimila.bootloader.unlock_bits=0x3F
diecimila.bootloader.lock_bits=0x0F
DIN A4 ausdrucken
*********************************************************
Impressum: Fritz Prenninger, Haidestr. 11A, A-4600 Wels, Ober-Österreich, mailto:[email protected]
ENDE
a