<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://www.mikrocontroller.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=82.113.106.24</id>
	<title>Mikrocontroller.net - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://www.mikrocontroller.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=82.113.106.24"/>
	<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/articles/Spezial:Beitr%C3%A4ge/82.113.106.24"/>
	<updated>2026-04-10T23:39:51Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_In_System_Programmer&amp;diff=40873</id>
		<title>AVR In System Programmer</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_In_System_Programmer&amp;diff=40873"/>
		<updated>2009-11-23T15:36:10Z</updated>

		<summary type="html">&lt;p&gt;82.113.106.24: /* usbprog */ K&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Einführung ==&lt;br /&gt;
&lt;br /&gt;
Atmel hat für die AVR 8-Bit RISC Mikrocontroller mehrere Application Notes herausgegeben, auf deren Basis eine Vielzahl von Programmiergeräten (&#039;&#039;programmer&#039;&#039;) entwickelt wurden. &lt;br /&gt;
&lt;br /&gt;
Natürlich liefert Atmel auch eigene, fertige Programmiergeräte (AVRISP (mk I), AVRISP mk II, AVR Dragon, ...), Programmiersoftware (AVRProg, AVR Studio) und Entwicklungsboards mit integriertem Programmiergerät (z.B. [[STK500]]).&lt;br /&gt;
&lt;br /&gt;
FAQ/Tipp: &#039;&#039;&#039;&amp;quot;Welchen ISP-Adapter sollte man sich heutzutage zulegen oder bauen?&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Es geht nichts über ein wirklich zuverlässiges Werkzeug. Beim Umgang mit µCs ist es sehr frustrierend, an drei Fronten gleichzeitig zu kämpfen: Bugs in der Software, Bugs in der Schaltung und Bugs/Probleme beim ISP-Adapter/PC-Gespann. Wenigstens die letzte Wanzenquelle kann man mit einem zuverlässigen ISP-Adapter eliminieren. Siehe auch diverse Forenbeiträge u.a. [http://www.mikrocontroller.net/topic/91042#778908] und [http://www.mikrocontroller.net/topic/153841#1447882]&lt;br /&gt;
&lt;br /&gt;
== Application Notes ==&lt;br /&gt;
* [http://www.atmel.com/dyn/resources/prod_documents/DOC0943.PDF AVR910] (PDF) &amp;quot;&#039;&#039;Low-cost&#039;&#039;&amp;quot; &#039;&#039;In-system programming&#039;&#039; (&#039;&#039;&#039;AVRISP&#039;&#039;&#039;) beschreibt einen einfachen, kostengünstigen Programmieradapter zur Übertragung von Programmen in den Mikrocontroller. Auf dem Programmer befindet sich ein Mikrocontroller (natürlich von Atmel ;-), der serielle Steuerkommandos und Daten vom PC in Programmiersignale für den Mikrocontroller umsetzt.&lt;br /&gt;
&lt;br /&gt;
* [http://www.atmel.com/dyn/resources/prod_documents/doc2568.pdf AVR911] (PDF) &#039;&#039;Open source serial programmer&#039;&#039; (&#039;&#039;&#039;AVROSP&#039;&#039;&#039;) beschreibt eine &#039;&#039;open source&#039;&#039; Programmiersoftware zur Übertragung von Programmen in den Mikrocontroller. &lt;br /&gt;
&lt;br /&gt;
* [http://www.atmel.com/dyn/resources/prod_documents/doc1644.pdf AVR109] (PDF) &#039;&#039;Self-Programming&#039;&#039; mit Hilfe eines [[Bootloader|Bootloaders]]. Hier wird im Mikrocontroller zunächst ein mikrocontroller-spezifisches Bootloader-Programm abgelegt. Dieses Programm empfängt das eigentliche Benutzerprogramm oder Daten z.B. über einen seriellen Anschluss ([[UART]]), legt es ggf. im Speicher (Flash-ROM, EEPROM) ab und führt ggf. anschliessend das Benutzerprogramm aus.&lt;br /&gt;
&lt;br /&gt;
== Pinbelegung ==&lt;br /&gt;
&lt;br /&gt;
Die Standard-Pinbelegung des ISP-Steckers zum Anschluss des Mikrocontrollers sieht nach obigen Application Notes und der [http://www.atmel.com/dyn/resources/prod_documents/doc2521.pdf AVR042] (PDF) folgendermaßen aus (Anschluss auf der Platine, Ansicht von oben):&lt;br /&gt;
&lt;br /&gt;
[[Bild:avr-isp-pinout.png|right]]&lt;br /&gt;
  &lt;br /&gt;
  10-poliger       6-poliger&lt;br /&gt;
  Anschluss        Anschluss&lt;br /&gt;
  &lt;br /&gt;
  1 MOSI           1 MISO&lt;br /&gt;
  2 VCC            2 VCC&lt;br /&gt;
  3 - (*)          3 SCK&lt;br /&gt;
  4,6,8,10 GND     4 MOSI&lt;br /&gt;
  5 RESET          5 RESET&lt;br /&gt;
  7 SCK            6 GND&lt;br /&gt;
  9 MISO&lt;br /&gt;
&lt;br /&gt;
Pin 1 ist am Pfostenstecker mit einen kleinen Pfeil gekennzeichnet. &lt;br /&gt;
&lt;br /&gt;
(*) Einige Programmieradapter (Ponyprog-Adapter nach Lancos-Schaltplan) unterstützen an Pin 3 des 10-poligen Steckers eine LED (Kathode an Pin), die &amp;quot;Programmierzugriff&amp;quot; signalisieren soll. Dies ist aber kaum nützlich, daher wird der Pin auch von Atmel als N/C (not connected) definiert und beim original Atmel AVRISP mit GND verbunden.&lt;br /&gt;
&lt;br /&gt;
Der &#039;&#039;&#039;10-polige&#039;&#039;&#039; Anschluss wurde von der Firma Kanda beim STK200 verwendet und ist deshalb auch als &amp;quot;Kanda-Standard&amp;quot; bekannt und relativ weit verbreitet. Die Anschlussbelegung über einen &#039;&#039;&#039;6-poligen&#039;&#039;&#039; Stecker stammt von Atmel selbst. Der 10-polige Anschluss wird zwar häufiger genutzt (insbesondere bei billigen Parallelport-Adaptern) aber der 6-polige Anschluss ist platzsparender auf der Platine.&lt;br /&gt;
Am besten man besorgt sich einen Adapter6/10 ([http://www.shop.robotikhardware.de/shop/catalog/product_info.php?products_id=190 siehe hier]), dann lassen sich praktisch alle Boards mit jedem Programmer programmieren.&lt;br /&gt;
&lt;br /&gt;
Zehnpolige Messerleisten (Wannenstecker) zur Montage auf einer µC Platine zum verpolungssicheren Anschluss des Programmieradapters sind fast &amp;quot;überall&amp;quot; verfügbar, nach den sechspoligen muss man häufig etwas suchen. Alternativ bleibt nur der Griff zu den nicht verpolungssicheren 2xN Stiftleisten (z.B. 2x40), wobei man eine Stiftleiste auf 2x6 Pole kürzt.&lt;br /&gt;
&lt;br /&gt;
Sechspolige Federleisten (Pfostenbuchsen) zum Anquetschen an ein Programmierkabel sind dagegen zumindest bei den großen Versendern und Distributoren erhältlich (z.B. von Bürklin  Art.53F3500; Conrad Art.701980-62; Farnell Art.1097021; Reichelt PFL 6). Kleine lokale Elektronikläden führen diese jedoch häufig nicht. Zu den sechpoligen Pfostenbuchsen gibt es keine Alternative, wenn man ein sechpoliges Programmierkabel bauen möchte. Zehnpolige Pfostenbuchsen lassen sich nicht auf sechs Pole kürzen. &lt;br /&gt;
&lt;br /&gt;
Der VCC-Anschluss kann einerseits den Programmieradapter mit Strom versorgen, wie es bei vielen Parallelport-Adaptern der Fall ist. Er kann aber auch dazu verwendet werden, die zu programmierende Schaltung aus dem Programmieradapter mit Strom zu versorgen, was insbesondere beim STK500 möglich und dank dessen programmierbarer Versorgungsspannung manchmal ganz praktisch ist. Werden jedoch beide Seiten separat mit Strom versorgt, sollten die Stromversorgungen nicht über den VCC-Pin des ISP-Anschlusses miteinander verbunden werden, da manche Spannungsregler-ICs das nicht verkraften.&lt;br /&gt;
&lt;br /&gt;
== Programmer-Varianten ==&lt;br /&gt;
&lt;br /&gt;
Mittlerweile existiert eine fast unüberschaubare Zahl von Programmer-Varianten und Untervarianten. Hier sollen nur die wichtigsten Varianten mit Bauanleitungen aufgelistet werden, geordnet nach der Art des Anschlusses an den PC.&lt;br /&gt;
&lt;br /&gt;
=== Parallelport ===&lt;br /&gt;
&lt;br /&gt;
==== STK200-kompatibel ====&lt;br /&gt;
&lt;br /&gt;
Fast alle erhältlichen Parallelport-Programmieradapter, u.a. auch der hier im [http://shop.mikrocontroller.net/ Shop] angebotene, sind kompatibel zum Programmer des [[STK200]] / STK300.&lt;br /&gt;
&lt;br /&gt;
* Bauanleitung für einen [http://rumil.de/hardware/avrisp.html STK200-kompatiblen Programmieradapter] von Rolf Milde&lt;br /&gt;
&lt;br /&gt;
==== Paralleles Interface für AVR und PonyProg ====&lt;br /&gt;
&lt;br /&gt;
Schaltplan und Erläuterungen bei [http://s-huehn.de/elektronik/avr-prog/avr-prog.htm Scott-Falk Hühn]&lt;br /&gt;
&lt;br /&gt;
==== SP12 Programmer ====&lt;br /&gt;
&lt;br /&gt;
Schaltplan, Erläuterungen und Software für mehrere Plattformen, darunter auch MSDOS, gibt es bei [http://www.xs4all.nl/~sbolt/e-spider_prog.html#programmer Steven Bolt]. [http://www.xs4all.nl/~sbolt/e-spider_prog.html#programmer Ken&#039;s Dongle] ist ein spezieller Kabeladapter für SP12 zur Verbesserung der Signalqualität. Anpassung an neue Typen erfolgt durch leicht selbst erstellbare Beschreibungsdateien.&lt;br /&gt;
&lt;br /&gt;
=== Serieller Port ([[RS-232]]) ===&lt;br /&gt;
&lt;br /&gt;
==== Atmel AVRISP, STK500, AVR910 ====&lt;br /&gt;
&lt;br /&gt;
Der original AVRISP von Atmel, das STK500 und der Programmer aus der Application Note AVR910 enthalten einen Mikrocontroller, der die Umsetzung der seriellen Daten auf das ISP-Programmierinterface vornimmt. Sie lassen sich direkt mit dem AVR-Studio programmieren und sind auch problemlos mit einem USB-seriell-Adapter verwendbar.&lt;br /&gt;
&lt;br /&gt;
Ein Layout mit Schaltplan und erweitertem Sourcecode findet sich in diesem Thread in der Codesammlung [http://www.mikrocontroller.net/topic/88295#749553 AVR910 Programmer, Schaltplan, Layout, Firmware].&lt;br /&gt;
&lt;br /&gt;
Das AVR910 Design ist u.a. auf der Seite von [http://www.serasidis.gr/circuits/avr_isp/avr_isp.htm Serasidis Vasilis] im Detail beschrieben.&lt;br /&gt;
&lt;br /&gt;
Eine weitere, auführliche Anleitung zum AVR910 gibt es in deutsch auf der Seite von [http://www.klaus-leidinger.de/mp/Mikrocontroller/AVR-Prog/AVR-Programmer.html Klaus Leidinger].&lt;br /&gt;
* [https://www.ssl-id.de/b-redemann.de AVR910-USB-Prog: Bausatz incl. USB-seriell Wandler]&lt;br /&gt;
* [http://www.avr-projekte.de/isp.htm AVR910-USB: Bauanleitung incl. USB-seriell Wandler]&lt;br /&gt;
&lt;br /&gt;
Einen AVR-ISP STK500 Protokoll Programmmer und JTAGICE kompatiblen Programmer/Debugger können Sie auf folgender Homepage bestellen: [http://www.myevertool.de myevertool]&lt;br /&gt;
&lt;br /&gt;
==== SI-Prog ====&lt;br /&gt;
&lt;br /&gt;
Daneben gibt es noch weitere Programmieradapter für den seriellen Port, die auf den eigenen Mikrocontroller im Programmieradapter verzichten und das ISP-Programmierprotokoll über die Steuerleitungen des RS-232-Port nachbilden. Das Programmierprogramm auf dem PC sendet jetzt keine Steuerkommandos und Daten mehr, sondern gibt direkt die Programmiersignale an der seriellen Schnittstelle aus (&amp;quot;Pinwackeln an den Statuspins&amp;quot;). Der Nachteil dieser Adapter ist, dass sie meistens relativ langsam sind und nur unter wenigen Betriebssystemen funktionieren. Ein Beispiel dafür ist SI-Prog.&lt;br /&gt;
&lt;br /&gt;
* [http://www.lancos.com/siprogsch.html SI-Prog Originalversion]&lt;br /&gt;
* [http://s-huehn.de/elektronik/avr-prog/avr-prog.htm Schaltplan und Erläuterungen]&lt;br /&gt;
&lt;br /&gt;
=== Sercon2 ===&lt;br /&gt;
Mit einer etwas anderen Steckerbelegung als der SI-Prog arbeitet die Sercon Familie an Adaptern. Nähere Unterlagen dazu finden sich &lt;br /&gt;
[http://www.speedy-bl.com/adapter.htm hier]&lt;br /&gt;
&lt;br /&gt;
=== USB ===&lt;br /&gt;
&lt;br /&gt;
Die meisten USB-Programmieradapter verwenden einen USB-seriell-Wandler und ein STK500/AVRPROG-kompatibles Protokoll und können damit direkt aus dem AVR-Studio programmiert werden.&lt;br /&gt;
&lt;br /&gt;
==== Atmel AVRISP MKII ====&lt;br /&gt;
&lt;br /&gt;
Nachfolger des Atmel AVRISP &amp;quot;MKI&amp;quot;. Mit USB-Schnittstelle, leistungsfähigerem Programmiercontroller und erweiterem Hardwareschutz. Programmiersoftware: [[AVR-Studio]] und [[AVRDUDE]]. Herstellerinformation bei [http://www.atmel.com/dyn/products/tools_card.asp?family_id=607&amp;amp;family_name=AVR+8%2DBit+RISC+&amp;amp;tool_id=3808 atmel.com]&lt;br /&gt;
&lt;br /&gt;
Weiter unten auf dieser Seite wird auch ein einfacher, kompatibler Nachbau namens  [http://www.mikrocontroller.net/articles/AVR_In_System_Programmer#usbprog usbprog] vorgestellt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Bascom USB ISP ====&lt;br /&gt;
Beliebter USB programmer der speziell für den Bascom Compiler entwickelt wurde. &lt;br /&gt;
Unterstützt Bascom einen neuen AVR-Controller, so kann dies automatisch auch dieser USB Programmer, eine neue Firmware ist nicht erforderlich. Ein weiterer Vorteil ist, dass er speziell für Bascom entwickelt wurde und in der IDE unterstützt wird. Er unterstützt alle Features von Bascom, auch die automatische Fusebit-Einstellung per Direktive im Quellcode.&lt;br /&gt;
&lt;br /&gt;
Angenehm ist auch, dass er keine 5V benötigt. Im Gegenteil, er kann sogar Boards über das übliche ISP-Programmierkabel mit 5V versorgen, so dass viele Boards auch ohne weitere Spannungsquelle programmiert werden können. &lt;br /&gt;
Ein wirklich empfehlenswerter Qualitätsprogrammer für alle Programmierer, die ausschließlich mit Bascom arbeiten wollen&lt;br /&gt;
* [http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=73&amp;amp;products_id=161 Vertrieb in Deutschland bei robotikhardware.de]&lt;br /&gt;
&lt;br /&gt;
Im Online- / Auktionshandel werden auch Alternativen angeboten, teils recht schick im Plexiglasgehäuse für ca. 20 Euro. Angeboten z.B. als &amp;quot;USB 2.0 Full Speed low cost Programmer für ATMEGA Chips&amp;quot; oder &amp;quot;AVR USB ISP Programmer ATMEL ATMEGA STK500&amp;quot;. Die Adapter funktionieren auch mit BasCom (aber auch mit AVR Studio), z.B. mit der Einstellung &amp;quot;STK500 native driver&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Man kann die Targetspannungsversorgung per USB zwischen 3,3 und 5V umschalten oder ganz abschalten (per DIP-Schalter). Sie sind per USB an den PC angeschlossen und arbeiten über einen virtuellen COM-Port. Achtung: In BasCom funktioniert das nur bis COM9. Wenn sich das Gerät z.B. auf COM15 installiert, wird es im BasCom evtl. nicht gefunden. Dann in der Systemsteuerung entsprechend umstellen.&lt;br /&gt;
&lt;br /&gt;
==== Atmel AVR Dragon ====&lt;br /&gt;
&lt;br /&gt;
Der [http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3891 AVR Dragon] ist ein preiswerter ISP (und ICE) von Atmel, der aufgrund Preis/Leistungs-Verhältnisses schnell populär wurde. Atmel wurde von dieser Popularität überrascht, da der Dragon wohl ursprünglich nur als ein &amp;quot;Gimmick&amp;quot; zur Verbreitung von AVRs in Asien gedacht war.&lt;br /&gt;
&lt;br /&gt;
Die großen Vorteile des Dragons sind, dass er alle Programmiermodi beherrscht, inklusive High-Voltage Parallel Programming (&amp;quot;verfuste&amp;quot; AVRs retten), dass er ein natives USB-Interface hat, von AVR-Studio unterstützt wird, und mit Einschränkungen (max. 32K AVRs) sogar [[JTAG]] und [[debugWIRE]] ICE / Debugging unterstützt (bei den AVRs die dies können). &lt;br /&gt;
&lt;br /&gt;
Zu den größten bekannten Nachteilen gehören, dass der Dragon völlig &amp;quot;nackt&amp;quot; kommt. Kein USB-Kabel, kein Gehäuse, nicht einmal Abstandsbolzen unter der Platine, keine Patchkabel und nicht einmal die Fassungen zum Einstecken von AVRs sind bestückt. Eine gedruckte Anleitung gibt es auch nicht. Daneben wird aufgrund des Stromverbrauchs des Dragon ein USB-Hub mit Netzteil benötigt.&lt;br /&gt;
&lt;br /&gt;
Weiter ist der Dragon dafür bekannt, empfindlich auf statische Aufladungen zu reagieren. Ein Spannungsregler und ein Ausgangstreiber gehen dabei besonders gerne kaputt. Ein gerne von Anfängern gemachter Fehler ist es, den Dragon im Betrieb auf dem mitgelieferten &amp;quot;Schaumstoff&amp;quot; aus der Verpackung liegen zu lassen. Das ist jedoch kein Schaumstoff, sondern leitendes Moosgummi.&lt;br /&gt;
&lt;br /&gt;
Weitere Schutzmaßnahmen für gefährdete AVR Dragons findet man auf der Dragonlair-Seite von [http://www.aplomb.nl/TechStuff/Dragon/Dragon.html Nard Awater].&lt;br /&gt;
&lt;br /&gt;
Der Dragon wird unter Linux z.B. von der avrdude-Programmiersoftware unterstützt. Unerklärlicherweise stellt Atmel die Dokumentation und Beschreibung des Dragon nur als Teil der Online-Hilfe der AVR-Studio Software unter Windows zur Verfügung. Weiterhin lassen sich Firmware-Updates auch nur mittels eine proprietären Atmel-Software unter Windows einspielen. Daher ist der Dragon für Linux-Benutzer nur dann zu empfehlen, wenn man zusätzlich noch Zugriff auf eine Windows-Installation hat.&lt;br /&gt;
&lt;br /&gt;
==== USBisp ====&lt;br /&gt;
&lt;br /&gt;
AVR Programmierdongle mit USB Anschluss und kompatibel zum STK500-Protokoll. Unter anderem programmierbar mit [[AVR-Studio]], [[AVRDUDE]] und [[uisp]]. Schaltplan (PDF), Layout (PDF), Erläuterungen und Firmware gibt es vom Entwickler [http://www.matwei.de Matthias Weißer].&lt;br /&gt;
&lt;br /&gt;
==== USB avrisp ====&lt;br /&gt;
&lt;br /&gt;
USB AVR Programmer auf Basis des AVR 910 Designs. Den Schaltplan, Layout und Erläuterungen (englisch) gibt es von [http://www.e.kth.se/~joakimar/hardware.html Joakim Arfvidsson].&lt;br /&gt;
&lt;br /&gt;
==== Evertool ====&lt;br /&gt;
&lt;br /&gt;
Mit USB-seriell-Wandler. Getestet mit Adapterkabeln/ICs von FTDI, SiLabs und Prolific (Adapterkabel z.B. für ca. 10EUR bei Reichelt).&lt;br /&gt;
&lt;br /&gt;
* [http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/ Evertool-&amp;quot;Homepage&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
==== USBasp ====&lt;br /&gt;
&lt;br /&gt;
Thomas Fischls [http://www.fischl.de/usbasp/ USBasp] ist ein&lt;br /&gt;
Openhardware/Openfirmware USB-ISP-Adapter.  Er basiert auf einem&lt;br /&gt;
ATmega8 (oder ATmega88), der mittels einer rein auf Firmware&lt;br /&gt;
basierenden USB-Implementierung von&lt;br /&gt;
[http://www.obdev.at/products/avrusb/index.html Objective Development]&lt;br /&gt;
arbeitet. Zum Ansteuern wird [[AVRDUDE]] in einem speziellen Modus&lt;br /&gt;
benötigt, der ab Version 5.2 standardmäßig vorhanden ist (vorher waren&lt;br /&gt;
Patches nötig).&lt;br /&gt;
Eine MacOS X Anpassung stammt von [http://www.macsven.de/Atmel.html Sven Schwiecker].&lt;br /&gt;
*Ein [http://www.FundF.net/usbasp/ offizieller USBasp Bausatz] ist erhältlich&lt;br /&gt;
*Einen preiswerten Bausatz incl. Dokumentation gibt es [http://www.b-redemann.de/produkte-programmer.shtml hier].&lt;br /&gt;
&lt;br /&gt;
==== AvrUsb500 ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.tuxgraphics.org/electronics/200510/article05101.shtml AvrUsb500] - an open source Atmel AVR Programmer, stk500 V2 compatible, with USB interface&lt;br /&gt;
* [http://www.mechaos.de/avr_progusb.php meCHAOS] - Nachbau mit neuem Platinenlayout und weiteren Funktionen.&lt;br /&gt;
&lt;br /&gt;
==== usbprog ====&lt;br /&gt;
&lt;br /&gt;
[http://www.embedded-projects.net/usbprog usbprog] von Benedikt Sauter ist ein USB Programmieradapter, der fast alle Atmel Mikrocontroller unterstützt (ATiny, ATMega, AT89, AT90,&amp;amp;nbsp;...) und daneben auch für ARM7/9 und MSP universell einsetzbar ist.&lt;br /&gt;
&lt;br /&gt;
Der Programmer wurde so entwickelt, dass man die Firmware auf dem Adapter über die USB-Verbindung austauschen kann. Dadurch sollte der Adapter lange attraktiv bleiben, da alles rund um das Projekt als open Source veröffentlicht ist und daher neue Controller einfach in die usbprog-Firmware integriert werden können.&lt;br /&gt;
Es ensteht gerade eine Firmware für einen einfachen JTAG Adapter. Damit kann man dann ganz einfach debuggen (voraussichtlich auch aus dem AVR Studio aus).&lt;br /&gt;
&lt;br /&gt;
Man kann den Adapter auch als 1:1 AVRISP mkII kompatibles Gerät betreiben. Dafür muss man eine andere Firmware einspielen, die ebenfalls Teil des Projektes ist. Der Vorteil ist der, dass man so auf jede bestehende Programmiersoftware zurückgreifen kann, die das originale AVRISP mkII unterstützt. Getestet wurde usbprog bis jetzt mit avrdude (Linux und Windows) und dem AVR Studio 4 (Windows).&lt;br /&gt;
&lt;br /&gt;
Derzeit kann man bei Benedikt Sauter Platinen und Bauteile im Set für 22 EUR (neue v3 für 34 EUR) bestellen. Näheres auf der [http://www.embedded-projects.net/usbprog Projektseite].&lt;br /&gt;
&lt;br /&gt;
==== AVR-Doper ====&lt;br /&gt;
&lt;br /&gt;
[http://www.obdev.at/products/avrusb/avrdoper.html AVR-Doper] kann neben ISP auch im High-Voltage Serial Mode als [[AVR HV-Programmer]] programmieren. Rein auf Firmware basierende USB-Implementierung. BUS-Powered. Einseitige Platine und damit auch für Selbstbauer geeignet. Verwendet einen Mega8 zur Steuerung des Programmers. Ist kompatibel zu AVR-Studio durch STK500-Protokoll.&lt;br /&gt;
&lt;br /&gt;
==== USB AVR-Lab ====&lt;br /&gt;
&lt;br /&gt;
[http://www.ullihome.de/index.php/Hauptseite#USB_AVR-Lab USB AVR-Lab] besteht aus einer sehr einfachen Hardware, usb wird in Software gemacht. Mit einem Bootloader nebst Applikation kann die Funktion des Lab´s zwischen &lt;br /&gt;
&lt;br /&gt;
*AVRISPmkII kompatiblem Programmer (AVR Studio,Linux,MacOS)&lt;br /&gt;
*STK500v2 kompatiblem Programmer (AVR Studio)&lt;br /&gt;
*USBasp kompatiblem Programmer (Linux, MacOS)&lt;br /&gt;
*RS232/RS485 Wandler&lt;br /&gt;
*I2C Logger&lt;br /&gt;
*Oszi (in Entwicklung)&lt;br /&gt;
*Multimeter (in Entwicklung)&lt;br /&gt;
*6-Kanal Logik analyzer&lt;br /&gt;
*AVR910 kompatibler Programmer (in Entwicklung)&lt;br /&gt;
*Labornetzteil (in Entwicklung)&lt;br /&gt;
*JTAG Adapter (geplant)&lt;br /&gt;
&lt;br /&gt;
getauscht werden. Mit der STK500v2 kompatiblen Firmware kann der Programmer direkt aus dem AVR Studio heraus voll kompatibel zum AVR-ISP mkII arbeiten.&lt;br /&gt;
Zusätzlich bietet der Programmer den virtuellen Com Port als Debug Port an solange nicht geflasht wird. Man kann also direkt mit dem Terminal Programm auf seinen AVR zugreifen über den ISP Adapter.&lt;br /&gt;
Dieser Modi wird von jeder ISP Firmware unterstützt.&lt;br /&gt;
Statusanzeige des Targets (angeschlossen, falsch angeschlossen,nicht angeschlossen), max. 3 Mhz ISP Freq. Das ganze ist sehr günstig in der Beschaffung (10 Eur Bauteile bei Reichelt+ 3,5 Eur Platine von ullihome.de, oder 15 Eur bestückt von ullihome.de)&lt;br /&gt;
&lt;br /&gt;
==== USBtinyISP ====&lt;br /&gt;
&lt;br /&gt;
[http://www.ladyada.net/make/usbtinyisp/ USBtinyISP] ist ein preiswerter (ca. 16$ für die Bauteile) AVR ISP Programmer und SPI Interface auf open-source Basis. Als Software kann z.B. AVRDUDE oder AVRStudio verwendet werden. Der Programmer wurde auf Windows und MacOS X getestet. Bei Adafruit sind auch Selbstbaukits erhältlich.&lt;br /&gt;
&lt;br /&gt;
==== UCOM-IR ====&lt;br /&gt;
Der [http://www.nibo-roboter.de/wiki/UCOM-IR UCOM-IR] Programmieradapter ist ein kommerzieller Bausatz (ca. 25 €), der auf einem AT90USB162 basiert. Durch die Verwendung des STK500v2 Protokolls kann zur Programmierung sowohl das [[AVR-Studio]] wie auch [[AVRDUDE]] verwendet werden. Zusätzlich hat der Adapter einen IR-Empfänger und zwei Sendedioden, die zur Kommunikation und zur Fernsteuerung verwendet werden können.&lt;br /&gt;
&lt;br /&gt;
=== Standalone ===&lt;br /&gt;
&lt;br /&gt;
==== TheCableAVR-SD (kommerziell) ====&lt;br /&gt;
&lt;br /&gt;
[http://www.priio.com/productcart/pc/viewPrd.asp?idcategory=6&amp;amp;idproduct=88 TheCableAVR-SD]  works by saving the &amp;quot;ISP&amp;quot;, &amp;quot;HEX&amp;quot; and &amp;quot;EEP&amp;quot; files required for part programming from the PC application onto an SD-Card and inserting it into TheCableAVR-SD. This programmer is stand alone, making it very handy for field software updates and production programming.&lt;br /&gt;
&lt;br /&gt;
==== ButtLoad ====&lt;br /&gt;
&lt;br /&gt;
[http://www.fourwalledcubicle.com/ButtLoad.php ButtLoad] is based on the Atmel [[AVR Butterfly]] development board. ButtLoad is specially written firmware which converts a low-cost official Atmel Butterfly evaluation board into a smart ISP programmer for other members of the Atmel AVR family. It supports the entire AVR range, and allows for a complete program (including EEP, HEX, Fuse and Lock Bytes) to be stored and later programmed into a device from the Butterfly&#039;s on board non-volatile memory.&lt;br /&gt;
&lt;br /&gt;
==== PalmAVR ====&lt;br /&gt;
&lt;br /&gt;
* siehe [http://www.mikrocontroller.net/topic/77870#648376 Forenbeitrag]&lt;br /&gt;
&lt;br /&gt;
==== mySmartUSB ====&lt;br /&gt;
&lt;br /&gt;
Der mySmartUSB Programmer von myAVR ist ein kompakter ISP Programmer mit USB Anschluss (der Preis liegt bei 28€). Lt. Hersteller kann er auch für die Kommunikation via UART, TWI, SPI verwendet werden (hab ich noch nicht probiert).&lt;br /&gt;
&lt;br /&gt;
ich aber: Beim Schreiben der Fuse Bits musste ich das Tool myAVR_ProgTool.exe verwenden - siehe http://www.opencharge.de/wiki/Mysmartusb&lt;br /&gt;
&lt;br /&gt;
Mit avrdude ist das Schreiben der Fuse-Bits mit dem AVR910-Modus möglich.&lt;br /&gt;
 &lt;br /&gt;
avrdude-Kommandozeile :&lt;br /&gt;
&#039;&#039;avrdude -c avr910 -P PORT -p PART -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung:&#039;&#039;&#039; Die neuere Version (mySmartUSB MK3) scheint mit der aktuellen Firmwareversion noch große Probleme mit ISP zu haben (siehe Postings im Supportforum: http://myavr.info/myForum/viewforum.php?f=8). Solange diese Probleme nicht ausgemerzt sind, sollte man auf die ältere Version (mySmartUSB MK2) oder ein anderes Produkt ausweichen.&lt;br /&gt;
&lt;br /&gt;
==== Amadeus-USB ====&lt;br /&gt;
&lt;br /&gt;
[http://home.arcor.de/bernhard.michelis Amadeus-USB] ist ein ISP-Programmer zum Selberbauen. Er unterstützt eine Vielzahl von AVRs und verfügt über ein eigenes User-Interface. Der Programmer enthält einen einfach zu bedienenden Fuse-Editor. Sollte man einmal die falschen Clock-Einstellungen vorgenommen haben, ist das kein Problem, da der Programmer über eine Takterzeugung verfügt, mit der man den AVR wiederbeleben kann.&lt;br /&gt;
Auch wer mit niedrigen Taktraten arbeitet (z.B. 32kHz), kann einen ATmega64 in ca. 4,8 Sekunden programmieren und vergleichen. Darüber hinaus kann mit geeigneten Makros die Programmausführung getracet werden. Die maximale Programmierdauer beträgt bei einem ATmega64 mit 16MHz Quarz 3,1 Sekunden, wenn der gesamte Speicher geschrieben und verglichen werden muss. Ist das Programm kleiner, geht es natürlich schneller ;-) Für einen ATTiny2313 oder ATTiny24 braucht er weniger als eine Sekunde.&lt;br /&gt;
&lt;br /&gt;
=== Geschwindigkeitsvergleich ===&lt;br /&gt;
&lt;br /&gt;
Im Rahmen einer Forendiskussion entstand die folgende Messung, die&lt;br /&gt;
einige der möglichen Programmer in ihrer Geschwindigkeit vergleicht.&lt;br /&gt;
Mit einbezogen in den Vergleich wurde neben originalen&lt;br /&gt;
Atmel-ISP-Werkzeugen noch Werkzeuge für [[JTAG#AVR_JTAG|JTAG]].&lt;br /&gt;
&lt;br /&gt;
Die Testdatei war 29704 Bytes groß.  Target ist ein ATmega6490, der&lt;br /&gt;
mit 8 MHz vom RC-Oszillator getaktet wird.  Das alles wurde mit einem&lt;br /&gt;
AVRDUDE 5.5 getestet.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Programmer     Parameter         Zeit fürs&lt;br /&gt;
                              Schreiben  Lesen&lt;br /&gt;
-----------------------------------------------&lt;br /&gt;
JTAG ICE mkII  default        2,58 s     3,27 s&lt;br /&gt;
JTAG           (4 MHz)&lt;br /&gt;
-----------------------------------------------&lt;br /&gt;
JTAG ICE mkII  1 MHz          8,34 s     8,51 s   (**)&lt;br /&gt;
ISP&lt;br /&gt;
-----------------------------------------------&lt;br /&gt;
AVRISP mkII    250 kHz        5,37 s     5,46 s&lt;br /&gt;
               1 MHz          2,45 s     2,45 s&lt;br /&gt;
               2 MHz          1,89 s     1,99 s&lt;br /&gt;
-----------------------------------------------&lt;br /&gt;
STK500         900 kHz        5,84 s     3,49 s&lt;br /&gt;
               (schnellstes)&lt;br /&gt;
-----------------------------------------------&lt;br /&gt;
AVR Dragon     default        2,81 s     3,49 s&lt;br /&gt;
JTAG           (4 MHz)&lt;br /&gt;
-----------------------------------------------&lt;br /&gt;
AVR Dragon     1 MHz          8,34 s     8,64 s&lt;br /&gt;
ISP            2 MHz          -          -        (*)&lt;br /&gt;
-----------------------------------------------&lt;br /&gt;
Parallelport-  keine Delay   13,20 s    12,45 s   (**)&lt;br /&gt;
Dongle &amp;quot;alf&amp;quot;   CPU 900 MHz&lt;br /&gt;
-----------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(*) Benutzung unmöglich, weder Fuses noch Signature zuverlässig&lt;br /&gt;
lesbar.&lt;br /&gt;
&lt;br /&gt;
(**) Fuses und Signature OK, aber das programmierte Ergebnis ist&lt;br /&gt;
fehlerhaft (verify errors)&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.myplace.nu/avr/yaap/ yaap] (Windows, diverse Parallelport-Programmer, GUI)&lt;br /&gt;
* [[Pony-Prog Tutorial|PonyProg]] (Linux, Windows, diverse Programmer für den parallelen und seriellen Port, GUI, am seriellen Port nur &amp;quot;Statuspinwackler&amp;quot; nach dem Schaltplan auf der lancos-Seite)&lt;br /&gt;
* [http://www.soft-land.de/index.php?page=avrburner AVRBurner] Ponyprog ähnliche Oberfläche für AVRDUDE.&lt;br /&gt;
* [http://www.nongnu.org/avrdude AVRDUDE] (Unix, Linux, Windows, praktisch alle Programmer, leicht erweiterbar auf andere Parallelportadapter-Anschlussbelegungen, Kommandozeile, auch für AVR Butterfly über dessen vorinstallierten Bootloader/Firmware-Uploader) siehe im Wiki [[AVRDUDE]]&lt;br /&gt;
* [http://savannah.nongnu.org/projects/uisp uisp] (Unix, Linux, Windows, praktisch alle Programmer, Kommandozeile, nicht mehr gepflegt).&lt;br /&gt;
* AVR-Studio (nur Programmieradapter mit integriertem Controller für den seriellen Port, z.B. AVR910, ATMEL AVRISP und STK500)&lt;br /&gt;
* [http://www.mcselec.com Eingebauter Programmer im Bascom-Basic Compiler]&lt;br /&gt;
* [http://esnips.com/web/AtmelAVR AvrOspII] - GUI Open Source programmer based on Atmels Application note AVR911.&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/60817 Forumsbeitrag] - Wie man Ponyprog aus dem AVR-Studio heraus nutzt&lt;br /&gt;
* [http://www.cadmaniac.org/projectMain.php?projectName=kontrollerlab Kontrollerlab] - (Linux), Grafische Oberfläche zu avr-gcc, uisp, avrdude und kate mit built-in debugger und serial terminal. Einfach verständlich und aufgeräumt (im KDE-Stil)&lt;br /&gt;
&lt;br /&gt;
== ISP-Pins am AVR auch für andere Zwecke nutzen ==&lt;br /&gt;
&lt;br /&gt;
Bei einem Programmer mit eingebautem [[Ausgangsstufen_Logik-ICs#Tristate|Tristate]]-Treiber (z.B. 74HC(T)244) werden die Leitungen MISO, MOSI und SCK hochohmig geschaltet wenn die Programmierung beendet ist, d.h. sie beeinflussen die Schaltung nicht. Man kann die betreffenden Pins am AVR also relativ problemlos als Ausgänge verwenden, wenn man darauf achtet, dass die daran angeschlossene Peripherie durch die Programmierimpulse keinen Schaden nehmen kann. Als Eingänge sollte man die Pins allerdings nicht verwenden, da ein angeschlossener Taster zum Beispiel die Programmierimpulse kurzschließen würde, wenn er gedrückt ist.&lt;br /&gt;
&lt;br /&gt;
Atmel empfiehlt in der Application Note [http://www.atmel.com/dyn/resources/prod_documents/doc2521.pdf AVR042: AVR Hardware Design Considerations (PDF)] Peripherie an der SPI-Schnittstelle, bei gleichzeitiger Verwendung der Schnittstelle als In-System-Programmieranschluss, über Widerstände anzuschliessen.&lt;br /&gt;
&lt;br /&gt;
siehe auch [http://www.mikrocontroller.net/articles/AVR_HV-Programmer AVR HV-Programmer]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:AVR-Programmer und -Bootloader| ]]&lt;/div&gt;</summary>
		<author><name>82.113.106.24</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=USB_Oszilloskop&amp;diff=38949</id>
		<title>USB Oszilloskop</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=USB_Oszilloskop&amp;diff=38949"/>
		<updated>2009-09-09T22:22:13Z</updated>

		<summary type="html">&lt;p&gt;82.113.106.24: /* Bücher */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;von 0undNichtig&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Im Rahmen dieses Projektes entsteht ein Digitales Speicheroszilloskop mit USB-Anbindung. Das gesamte Ergebnis soll als OpenSource verfügbar gemacht werden.&lt;br /&gt;
Begonnen hat das ganze in diesem Forums-Beitrag: http://www.mikrocontroller.net/topic/56265&lt;br /&gt;
Eventuell wird es auch auf eine Mess/Steuer Box a la [http://www.eit.hs-karlsruhe.de/laborplatine/ Laborplatine] hinauslaufen oder sich näher an das [[Logic Analyzer-Projekt: Ideen zur Hardware|Logic Analyser Projekt]] annähern.&lt;br /&gt;
&lt;br /&gt;
=Planung=&lt;br /&gt;
Bitte Planspiele auf der [[Diskussion:USB Oszilloskop|Diskussionsseite]] des Projektes durchführen!&lt;br /&gt;
==Alternative Projekte/Produkte==&lt;br /&gt;
Hier ist eine Liste von anderen Projekten, an denen man versch. Herangehensweise studieren kann.&lt;br /&gt;
Gesucht per www.nettz.de&lt;br /&gt;
*&amp;quot;build your own oscilloscope&amp;quot;&lt;br /&gt;
*&amp;quot;tv card&amp;quot; scope&lt;br /&gt;
*Oszilloskop selber bauen&lt;br /&gt;
*Oszi selbst bauen&lt;br /&gt;
&lt;br /&gt;
http://elektronik-kompendium.de/public/dse-faq/mawin.htm#103&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Osziloskop Programme===&lt;br /&gt;
*http://www.electronics-lab.com/downloads/pc/index.html (Liste abgearbeitet)&lt;br /&gt;
*http://www.tech-systems-labs.com/test-software.htm (Liste)&lt;br /&gt;
*http://www.aubraux.com/dsp/pcscope.php&lt;br /&gt;
*http://xoscope.sourceforge.net (LINUX, für Soundkarte und externe Geräte OsziFOX, Bitscope )&lt;br /&gt;
*http://www.mitedu.freeserve.co.uk/Prac/winscope.htm (Soundkarte)&lt;br /&gt;
*http://hacca.altervista.org/&lt;br /&gt;
*http://www.zelscope.com/ (Soundkarte)&lt;br /&gt;
*http://infinitespectra.com (2 Soundkarten)&lt;br /&gt;
*BIP Electronics Lab Oscilloscope (Soundkarte)&lt;br /&gt;
*http://home.lanck.net/mf/oscil/ SB Oscillograph&lt;br /&gt;
*http://www.aubraux.com/dsp/ DspSee&lt;br /&gt;
*http://www.sillanumsoft.com/ Visual Analyser (+Freqzähler, Generator, Filter,..., sieht wirklich gut aus!)&lt;br /&gt;
*http://www.bergvagabund.userhost.de/multisine.html (+sehr viele Filter)&lt;br /&gt;
*http://www.dsp4swls.de/oszi/oszi.html (+DSP)&lt;br /&gt;
*http://www.qsl.net/om3cph/sb/dcwithsb.htm#hardware&lt;br /&gt;
*http://www.microsysteme.de/osci/oszilloskop.htm&lt;br /&gt;
*http://www.ginko.de/user/franz-peter/franz/projekte/soundcard/Soundcard-homepage.htm  (Bewertung des Nutzen von SK Messungen)&lt;br /&gt;
*http://www.geda.seul.org/tools/gtkwave/index.html (Datenaufzeichnungsviewer)&lt;br /&gt;
*http://home.planet.nl/~m.f.hajer/scope2kcontents.htm (für versch. ADCs an LPT)&lt;br /&gt;
&lt;br /&gt;
====kommerziell====&lt;br /&gt;
*www.ni.com/labview/d/ Labview&lt;br /&gt;
*http://www.home.agilent.com/agilent/product.jspx?cc=DE&amp;amp;lc=ger&amp;amp;nid=-536900532.536905620.00 VEE Pro&lt;br /&gt;
*http://www.tek.com/Measurement/scopes/openchoice/  OpenChoice&lt;br /&gt;
*http://www.ni.com/signalexpress/ SignalExpress&lt;br /&gt;
*http://www.virtins.com/ (WIN+PocketPC)&lt;br /&gt;
&lt;br /&gt;
===Hardware===&lt;br /&gt;
&lt;br /&gt;
*http://www.pdamusician.com/lcscope (2 Kanaele, 1 MHz, guter Analog-Frontend, leicht nachbaubar; Firmware und PC-Software)&lt;br /&gt;
*USB Oszilloskop im Bau http://microweb.mi.funpic.de&lt;br /&gt;
*http://www.electronics-lab.com/forum/index.php?board=13;action=display;threadid=351 (Liste)&lt;br /&gt;
*http://www.vscope.de (OSS, qC+Preescaler,  Client+Server)&lt;br /&gt;
*http://www.elektronik-projekt.de/thread.php?threadid=3509&lt;br /&gt;
*http://www.mikrocontroller.net/articles/Logic_Analyzer_Project&lt;br /&gt;
*http://www.mikrocontroller.net/topic/31376#new (qC 800Messungen)&lt;br /&gt;
*http://www.bitscope.com&lt;br /&gt;
*http://members.tripod.com/michaelgellis/scope.html (1986)&lt;br /&gt;
*http://www.geocities.com/celupenga/Display_LCD.html (Mini LCD)&lt;br /&gt;
*http://homepages.compuserve.de/moritzcajetan/elektro/elektro.htm (Lowend)&lt;br /&gt;
*http://hackedgadgets.com/2006/04/25/top-5-uses-for-a-dead-hard-drive/2/  (Festplatte)&lt;br /&gt;
*http://home.planet.nl/~m.f.hajer/scope2k4.html (LPT)&lt;br /&gt;
*http://www.electronics-lab.com/projects/pc/007/ (LPT)&lt;br /&gt;
*http://kudelsko.free.fr/oscilloscope/sommaire.htm (RS232, USB, 30MHz)&lt;br /&gt;
*http://alternatezone.com/electronics/dsoamk3.htm (LPT 5MHz)&lt;br /&gt;
*http://www.chocbar.demon.co.uk/ (LPT 50MHz/100MHz)&lt;br /&gt;
*http://www.ee.washington.edu/conselec/CE/sp95reports/guterman/final/scope1.htm (15MHz)&lt;br /&gt;
*http://www.geocities.com/lptscope/hw.html (LPT &lt;br /&gt;
*http://www.leonardo.caltech.edu/~ee5x/eecs52/projects/scope/scope.htm ( 250KHz Mini LCD)&lt;br /&gt;
*http://www.nbb.cornell.edu/neurobio/land/STUDENTPROJ/1999to2000/gurnee/index.htm   (Mini LCD+PC Anschluss, 2xqC+ADC)&lt;br /&gt;
*http://www.fpga4fun.com/digitalscope.html (200MHz)&lt;br /&gt;
*http://glory.honour.ca/projects/Oscilloscope/Oscilloscope.html (RS232 40KHz, sehr gut erklärt)&lt;br /&gt;
*http://www.elexs.de/mikros/r8c15_2.htm (RS232 20 MHz 80KS)&lt;br /&gt;
*http://www.semis.demon.co.uk/Gameboy/DsoDemo/DsoDemo.htm GBDSO (Gameboy 1MS)&lt;br /&gt;
*http://www.avrfreaks.net/index.php?module=Freaks%20Academy&amp;amp;func=viewItem&amp;amp;item_id=428&amp;amp;item_type=project (Mini LCD)&lt;br /&gt;
*http://www.ixbat.de/index.php?page_id=92 (LA einfach)&lt;br /&gt;
*http://www.xess.com/projects/radjab_oscope.pdf (FPGA Beispiel Design)&lt;br /&gt;
*http://eletronicalivre.incubadora.fapesp.br/portal/english/oscilloscope/ (ISA Karte+Lazarus(Delphi))&lt;br /&gt;
*http://alternatezone.com/electronics/pcla.htm (Logicanalyser,PLD)&lt;br /&gt;
*http://alternatezone.com/electronics/dsoamk3.htm (5MHz, 20MS LPT OHNE GAL,CPLD,FPGA!)&lt;br /&gt;
*http://www.cmccord.co.uk/FYP/final_report.htm (RS232, 4 Kanäle, PIC, +Hinweise für ähnliche Projekte)&lt;br /&gt;
*http://www.enetsystems.com/~lorenzo/scope/ ( CPLD)&lt;br /&gt;
*http://www.fpga4fun.com/digitalscope.html (100MHz 100MS, +gute Links)&lt;br /&gt;
*http://www.johann-glaser.at/projects/DSO/ (80MHz, Universalbox, Linux, +sehr ausführlich)&lt;br /&gt;
*http://www.eix.co.uk/Ethernet/USB/ (500KHz, Simpel)&lt;br /&gt;
&lt;br /&gt;
====kommerziell====&lt;br /&gt;
*http://www.jbtech.de (Liste)&lt;br /&gt;
*http://www.tiepie.nl (Handyscope)&lt;br /&gt;
*http://www.radioshack.com/graphics/uc/rsk/Support/ProductManuals/2200310_PM_EN.pdf ProbeScope&lt;br /&gt;
*http://po.labs.googlepages.com/usbosciloskop&lt;br /&gt;
*http://www.vellemanusa.com/us/enu/product/view/?id=350595 (Handgerät)&lt;br /&gt;
*http://www.vellemanusa.com/us/enu/product/view/?id=351206 (LPT)&lt;br /&gt;
*http://www.wuntronic.de/gage/85gc.htm (PCI,5GS)&lt;br /&gt;
*http://www.messtechnik-online.at/oszifox.html&lt;br /&gt;
*http://shop.elv.de/output/controller.aspx?cid=74&amp;amp;detail=10&amp;amp;detail2=15232 Cleverscope&lt;br /&gt;
*http://shop.elv.de/output/controller.aspx?cid=74&amp;amp;detail=10&amp;amp;detail2=15246 PCSU 1000&lt;br /&gt;
*http://www.pctestinstruments.com/deutsch/index.htm Logicanalyser, Test Generator(Sinus,Dreieck,Rechteck,Noise), Frequenzzähler, Spektrumanalysator, Logikanalysator&lt;br /&gt;
&lt;br /&gt;
==Anforderungen==&lt;br /&gt;
*galvanische Trennung vom PC&lt;br /&gt;
*2 Kanäle mit freier Triggerwahl&lt;br /&gt;
*min. 10% Pretriggerspeicher&lt;br /&gt;
*Meßbereich ohne Teilertastkopf von +/-20V&lt;br /&gt;
*Eicht/testet sich selbst nach Aufbau.&lt;br /&gt;
* Interface zu Labview 6.1&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Ich benutze mein Oszi für...&amp;quot;===&lt;br /&gt;
Du arbeitest bereits mit einem Oszi und genau das willst du natürlich auch mit diesem USB Oszilloskop alles tun:&lt;br /&gt;
===&amp;quot;Ich würde mein Oszi gerne dafür benutzen...&amp;quot;===&lt;br /&gt;
Du hast noch kein (geeignetes) Oszi für die folgenden Dinge:&lt;br /&gt;
*I²C analysieren ||&lt;br /&gt;
*andere digitale Protokolle/Signalabläufe tracen (LCD,...) ||&lt;br /&gt;
*PC Bussysteme analysieren ||&lt;br /&gt;
*Linienverläufe als Vektorgrafik exportieren |&lt;br /&gt;
*komplette Ansteuer-/Messkurven durchfahren |&lt;br /&gt;
*Signalanalyse aller Art (Satelliten, Funk, ...) |&lt;br /&gt;
&lt;br /&gt;
==Wissen + Interessantes==&lt;br /&gt;
*http://www.cmccord.co.uk/FYP/final_report.htm (RS232, 4 Kanäle, PIC, +Hinweise für ähnliche Projekte)&lt;br /&gt;
*http://www.du.edu/~etuttle/electron/elect29.htm (Schaltungen für Oszi Funktionen)&lt;br /&gt;
*http://www.national.com/pf/AD/ADC081000.html (8-Bit, 1 GSPS A/D Converter)&lt;br /&gt;
*http://www.national.com/pf/AD/ADC08D1500.html (8-Bit, 1,5 GSPS A/D Converter)&lt;br /&gt;
*http://www.national.com/pf/AD/ADC083000.html (8-Bit, 3 GSPS A/D Converter)&lt;br /&gt;
&lt;br /&gt;
E2V (former Atmel) Gigasample AD Converter&lt;br /&gt;
*http://www.e2v.com/products/ccd-and-cmos-imaging-and-semiconductors/broadband-data-converters.cfm &lt;br /&gt;
&lt;br /&gt;
Maxim Gigasample AD Converter&lt;br /&gt;
*http://www.maxim-ic.com/products/data_converters/high_speed.cfm&lt;br /&gt;
===Bücher===&lt;br /&gt;
* &amp;quot;Meßdatenerfassung mit dem PC&amp;quot; 3-8007-1741-7: Asbach aber Grundlagen ganz gut dargestellt.&lt;br /&gt;
&lt;br /&gt;
[[Category:Projekte|U]]&lt;br /&gt;
[[Category:USB]]&lt;br /&gt;
[[Category:Oszilloskope und Analyzer]]&lt;/div&gt;</summary>
		<author><name>82.113.106.24</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_RFM12&amp;diff=36656</id>
		<title>AVR RFM12</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_RFM12&amp;diff=36656"/>
		<updated>2009-06-19T16:06:38Z</updated>

		<summary type="html">&lt;p&gt;82.113.106.24: links gefixed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Schaltungen und Software für AVR und das Funkmodul [[RFM12]].&lt;br /&gt;
&lt;br /&gt;
== SVN ==&lt;br /&gt;
&lt;br /&gt;
svn://mikrocontroller.net/rfm12&lt;br /&gt;
&lt;br /&gt;
Wegen Zugangsdaten bitte bei [http://www.mikrocontroller.net/user/show/andreas Andreas Schwarz] melden.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
=== Treiber ===&lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/attachment/22473/rfm12_pc.zip Firmware v1.0.0] von Benedikt K.&lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/attachment/23542/RMxx_Driver.tar.bz2 Firmware v2.0.1] von Jürgen Eckert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|+ Funktionalität&lt;br /&gt;
|-&lt;br /&gt;
!  || Beschreibung || Software&lt;br /&gt;
|-&lt;br /&gt;
!1. Stufe:&lt;br /&gt;
| Die Daten von der seriellen Schnittstelle werden über die Funkstrecke auf die serielle Schnittstelle der anderen Seite übertragen. (Wir freuen uns über jedes Byte das ankommt)&lt;br /&gt;
| [http://www.mikrocontroller.net/topic/67273#564945 Claude Schwarz], [http://www.mikrocontroller.net/topic/71682#584915 Benedikt K.] oder [http://www.mikrocontroller.net/attachment/36742/RFM12_V3.zip Manuel Stahl]&lt;br /&gt;
|-&lt;br /&gt;
! 2. Stufe:&lt;br /&gt;
| Es findet eine Fehlererkennung (z.B. mit CRC-Summen) statt. Fehlerhafte Daten werden erneut angefordert. Dadurch gehen auf der Funkstrecke keine Daten verloren und es werden keine Daten verfälscht.&lt;br /&gt;
| [http://www.mikrocontroller.net/topic/71682#585851 Benedikt K.]&lt;br /&gt;
|-&lt;br /&gt;
! 3. Stufe:&lt;br /&gt;
| Die Datenübertragung wird individualisiert. Dadurch können zwei Funkstrecken, die im gleichen Empfangsbereich liegen nebeneinander arbeiten, ohne sich zu beeinträchtigen.&lt;br /&gt;
| [[RFM12_Protokoll_Stack]]&lt;br /&gt;
|-&lt;br /&gt;
! 4. Stufe: &lt;br /&gt;
| Die Datenübertragung wird verschlüsselt und damit abhörsicher.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!5. Stufe:&lt;br /&gt;
| Neben den Daten der seriellen Schnittstelle werden auch Änderungen der Statusleitungen übertragen. Damit erhält man eine &amp;quot;RS232-Verlängerung&amp;quot; über eine Funkstrecke, die fehlerfrei arbeitet und zu einer Drahtverbindung weitestgehend kompatibel ist.&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== RS232 &amp;lt;-&amp;gt; RFM12 ===&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
=== USB &amp;lt;-&amp;gt; RFM12 ===&lt;br /&gt;
&lt;br /&gt;
Mit [http://www.obdev.at/vusb/&lt;br /&gt;
 V-USB] lässt sich ein USB-Slave in Software emulieren.&lt;br /&gt;
&lt;br /&gt;
* [http://www.recursion.jp/avrcdc/ AVR-CDC] läuft mit Anpassung der USB-Pins. &#039;&#039;(Zumindest unter Windows an einem USB2.0-Port)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Adapter für [http://www.embedded-projects.net/?page_id=135 USBprog]:&lt;br /&gt;
&lt;br /&gt;
* Funktionierender Code liegt im oben genannten SVN&lt;br /&gt;
* Implementiert die USB-CDC-Klasse (kein Treiber nötig)&lt;br /&gt;
* Sicherung der Übertragung durch Hamming-Code&lt;br /&gt;
* Work in progress... (Manuel Stahl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
=== Basismodul V1.0 ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozessor&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
ATmega8 TQFP32 (kompatibel ATmega48, ATmega88, ATmega168)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schnittstellen&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* RS232&lt;br /&gt;
* I²C:&lt;br /&gt;
* USB&lt;br /&gt;
* GPIO&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Platine&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Bild:AVR RFM12 Schematic.png|200px|ATmega48 + USB]]&lt;br /&gt;
[[Bild:AVR RFM12 Board TOP.png|220px|2-lagig top]]&lt;br /&gt;
[[Bild:AVR RFM12 Board BOTTOM.png|240px|2-lagig bottom]]&lt;br /&gt;
[[Bild:AVR_RFM12_Photo.jpg|240px|Photo]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; border-right:1px solid gray; padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Bauteile:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Größe: SMD 0603&lt;br /&gt;
&lt;br /&gt;
* R1, R2: 68R (nur USB)&lt;br /&gt;
* R3, R4: 10k&lt;br /&gt;
* R5: 1k5 (nur USB)&lt;br /&gt;
* C1, C2: 22pF&lt;br /&gt;
* C3 - C9: 100nF&lt;br /&gt;
* Q1: 12Mhz (nur USB)&lt;br /&gt;
* D1, D2: beliebig, Minimelf&lt;br /&gt;
* IC3: MAX3221CUE&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; border-right:1px solid gray; padding: 0px 0px 10px 10px; width:33%&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Kosten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* MiniUSB SMD: &#039;&#039;&#039;1,25€&#039;&#039;&#039;&lt;br /&gt;
* HF-Buchse MMCX: &#039;&#039;&#039;4,25€&#039;&#039;&#039;&lt;br /&gt;
* ATmega48: &#039;&#039;&#039;2,85€&#039;&#039;&#039;&lt;br /&gt;
* MAX3221CUE: &#039;&#039;&#039;1,10€&#039;&#039;&#039;&lt;br /&gt;
* Quarz 12Mhz 30ppm: &#039;&#039;&#039;1,19€&#039;&#039;&#039;&lt;br /&gt;
* Kleinkram: &#039;&#039;&#039;&amp;lt; 1,10€&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* habe ein verbindliches Angebot für 24 Stück von http://mme-pcb.de/: &#039;&#039;&#039;4,00€ pro Platine&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; padding: 0px 0px 10px 10px; width:33%&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; Bugs / Erweiterungen:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Der 1,5k Widerstand muss direkt an den VCC-Pin angelötet werden (Pad ist nicht verbunden)&lt;br /&gt;
* Beim Fertigen wurde das Polygon, welches das VCC-Signal durch die eine Ecke des ATmega48 leitet, unterbrochen. Hier hilft nur eine Drahtbrücke.&lt;br /&gt;
* Unter den RFM12 und unter das Quarz am Besten Isolierband kleben!&lt;br /&gt;
* Beim Programmieren sollte der SEL des RFM12 (J1 der zweite Pin vom RS232 aus) auf VCC gelegt werden&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/attachment/24012/RFM12.brd Board (Eagle)]:&lt;br /&gt;
&lt;br /&gt;
[[Bild:AVR RFM12 Board top bestuecken.png|200px|top]]&lt;br /&gt;
[[Bild:Board bottom bestuecken.png|200px|bottom]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Flashcraft Funkboard ===&lt;br /&gt;
&lt;br /&gt;
[http://flashcraft.de/index.php/funkboard-uebersicht Homepage des Projekts]&lt;br /&gt;
&lt;br /&gt;
Eine andere Funklösung mit dem RFM12 bietet das &#039;&#039;&#039;Open Source&#039;&#039;&#039; Flashcraft Funkboard von Florian Scherb.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Flashcraft_funkboard_pic.jpg|right]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Das Projekt enthält&#039;&#039;&#039;&lt;br /&gt;
* Funkboard Platine&lt;br /&gt;
* Code für AVR&lt;br /&gt;
* PC Terminalprogramm&lt;br /&gt;
* Dokumentation&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Überblick:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
# Über 60 Seiten starke Dokumentation&lt;br /&gt;
# PC Terminalprogramm zum Testen und Konfigurieren&lt;br /&gt;
# Abmessungen: 32x34mm, Montage durch 2 Stiftleisten im 2,54mm Raster&lt;br /&gt;
# ATmega32 übernimmt komplette Ansteuerung&lt;br /&gt;
# 3 Schnittstellen sind vorgesehen: I2C, SPI, UART (derzeit nur UART)&lt;br /&gt;
# SMA-Antennenanschluss&lt;br /&gt;
# Stromaufnahme: 40mA im normalen Betrieb, 2 Schlafmodi mit Stromverbrauch bis min. 25µA!&lt;br /&gt;
# Betriebsspannungsbereich von 3,2 - 5,4V (mit ATmega32L)&lt;br /&gt;
# 5V oder 3V Spannungsregler onBoard! Direkter Batteriebetrieb möglich; Kann externe Schaltung versorgen! &lt;br /&gt;
# uvm.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Außerdem:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
# Unterstützt Funknetzwerk mit bis zu 125 Modulen!&lt;br /&gt;
# Kontrolle über fast alle Konfigurationen, direkt im Betrieb änderbar, kein Umprogrammieren notwendig!&lt;br /&gt;
# Zahlreiche Sicherheitsfeatures wie Acknowledge, CRCs,...&lt;br /&gt;
# RS232-Treiberbaustein MAX3221 onBoard. Damit TTL- und RS232-UART möglich&lt;br /&gt;
# Clock Takt am Funkboard abgreifbar, z.B. für externen Mikrocontroller&lt;br /&gt;
# Totzeiten ca. 1,5 Millisekunden beim Wechsel zwischen Sende- und Empfangsbetrieb&lt;br /&gt;
# uvm. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltpläne, Board-Layout, Sourcecodes und andere Files sind auf der [http://flashcraft.de/index.php/funkboard-uebersicht Homepage] des Funkboard-Projekts verfügbar. Diskussionen zum Projekt gibt es im [http://www.mikrocontroller.net/topic/115542 Forums-Thread]&#039;&#039;&#039;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== USBprogRFM12 ===&lt;br /&gt;
&lt;br /&gt;
Da der USBprog genau das SPI-Interface des ATmega32 zur Verfügung stellt, eignet er sich perfekt als USB-RFM12-Adapter.&lt;br /&gt;
&lt;br /&gt;
[[Bild:USBprogRFM12_schematic.png|200px|USBprogRFM12]] [[Bild:USBprogRFM12_board.png|200px|USBprogRFM12]]&lt;br /&gt;
&lt;br /&gt;
[[Bild:USBprogRFM12.jpg|400px|USBprogRFM12]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/65984 Allgemeine Diskussion]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/71682  bidirektionale RS232 Funkbrücke mit RFM12]&lt;br /&gt;
* [http://www.das-labor.org/wiki/Datenfunk_mit_dem_AVR Datenfunk mit dem AVR] bei das-labor.org&lt;br /&gt;
* RFM12 Library: [http://www.das-labor.org/wiki/RFM12_library/en Doku] | [http://www.das-labor.org/trac/browser/microcontroller/src-atmel/lib/rfm12 Code im SVN]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Projekte]]&lt;br /&gt;
[[Kategorie:AVR]]&lt;br /&gt;
[[Kategorie:Funk]]&lt;/div&gt;</summary>
		<author><name>82.113.106.24</name></author>
	</entry>
</feed>