<?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=Msk</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=Msk"/>
	<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/articles/Spezial:Beitr%C3%A4ge/Msk"/>
	<updated>2026-04-11T03:54:11Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Benutzer:Msk&amp;diff=38151</id>
		<title>Benutzer:Msk</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Benutzer:Msk&amp;diff=38151"/>
		<updated>2009-07-31T01:03:43Z</updated>

		<summary type="html">&lt;p&gt;Msk: Die Seite wurde neu angelegt: Neu hier und begeisterter ATmega-Frischling. :)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Neu hier und begeisterter ATmega-Frischling. :)&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR-GCC&amp;diff=38150</id>
		<title>AVR-GCC</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR-GCC&amp;diff=38150"/>
		<updated>2009-07-31T01:00:45Z</updated>

		<summary type="html">&lt;p&gt;Msk: /* Entwicklungsumgebungen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:AVR]]&lt;br /&gt;
&lt;br /&gt;
AVR-GCC ist ein kostenloser [[C]]-Cross-[[Compiler]] für [[AVR]]-[[Mikrocontroller]].&lt;br /&gt;
&lt;br /&gt;
AVR-GCC kann von der Leistungsfähigkeit her mit kommerziellen [[Compiler]]n gut mithalten. Sogar C++-Programme sind möglich, in der aktuellen Fassung wird C++ jedoch nur eingeschränkt unterstützt (Stand 6/2007).&lt;br /&gt;
&lt;br /&gt;
== Bestandteile ==&lt;br /&gt;
&lt;br /&gt;
Die Toolchain (Werkzeugsammlung) besteht aus mehreren Kommandozeilen-Programmen, die sich auf einfache Weise in einen Editor oder eine Entwicklungsumgebung einbinden lassen (typischerweise als Aufrufe von make mit Parameter, vgl. [[AVR-GCC-Tutorial]]). &lt;br /&gt;
&lt;br /&gt;
Die Bestandteile im einzelnen:&lt;br /&gt;
* Binutils: Assembler, Linker und weitere Hilfsprogramme.&lt;br /&gt;
* GCC: Der eigentliche C(++)-Compiler.&lt;br /&gt;
* AVR-LIBC: Die C-Standardbibliothek mit AVR-spezifischen Headerdateien und Funktionen.&lt;br /&gt;
* ([[AVRDUDE]]: universelle AVR-Programmiersoftware, kein eigentlicher Teil der Toolchain, aber oft verwendet)&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
=== Linux/Unix ===&lt;br /&gt;
&lt;br /&gt;
Wenn keine aktuelle AVR-GCC-Version als Paket für die verwendete Distribution zur Verfügung steht, dann können sich [[Unix]]/[[Linux]]-Nutzer den Sourcecode herunterladen und selbst kompilieren. Schritt-für-Schritt-Anleitungen gibt es [http://www.nongnu.org/avr-libc/user-manual/install_tools.html hier] und [http://www.roboternetz.de/wissen/index.php/Avr-gcc_und_avrdude_installieren hier]. Empfehlenswert ist auch [http://cdk4avr.sf.net CDK4AVR], das die entsprechenden tools als einfach installierbare Linux-Pakete bereitstellt (distributionsunabhängig als .tar.gz). Leider ist das Projekt schon etwas älter, im [http://www.mikrocontroller.net/topic/130972 Forum] findet sich ein Beitrag, aktuellere Sourcen mit den entsprechenden Patches zu versehen und zu kompilieren. Patches zu den Binutils und GCC Sourcen sind unumgänglich, da die offiziellen Sourcen aufgrund des Umfangs an Prozessortargets den aktuellsten Entwicklungen hinterherhinken und damit bereits bekannte Fehler eventuell noch nicht behoben sind. Weitere Tipps zur AVR Programmierung unter Linux stehen im Artikel [[AVR und Linux]].&lt;br /&gt;
&lt;br /&gt;
=== Mac OS X ===&lt;br /&gt;
Die beste fertige Toolchain ist das [http://www.obdev.at/crosspack/ Crosspack]. Dieses enthält auch die avr-libc, avrdude und avarice. Leider gab es bei Mac OS 10.5.6 eine tiefgreifende Änderung beim fork()-Systemcall, der bewirkt, dass avarice mit JTAGICE mkII und Dragon nicht funktioniert. Geräte mit Serial-USB-Konvertern (AVRISP clones etc) funktionieren dagegen problemlos. &lt;br /&gt;
&lt;br /&gt;
Wer die Toolchain von Hand bauen möchte kann das natürlich auch tun, dazu einfach den unter &amp;quot;Linux/Unix&amp;quot; verlinkten Anleitungen folgen. Unter [[Mac OS X]] muss man dazu zuerst die [http://developer.apple.com/Tools/ Apple Developer Tools] installieren.&lt;br /&gt;
&lt;br /&gt;
Teile der Toolchain (avr-libc und avrdude) kann man mit dem Paketsystem [http://www.macports.org/ MacPorts] installieren. Die Compiler-Toolchain kann man dann installieren, indem man folgenden Befehl im Terminal eingibt:&lt;br /&gt;
&lt;br /&gt;
 sudo port install avr-libc&lt;br /&gt;
&lt;br /&gt;
Das Programmiertool avrdude bekommt man genauso:&lt;br /&gt;
&lt;br /&gt;
 sudo port install avrdude&lt;br /&gt;
&lt;br /&gt;
Weblinks:&lt;br /&gt;
&lt;br /&gt;
* [http://tinkerlog.com/2007/09/29/programming-avr-with-a-macbook/ Programming AVR with a MacBook] (engl.)&lt;br /&gt;
* [http://www.ladyada.net/library/avrdevtut/setup-mac.html AVR Tutorial from Lady Ada] (engl.)&lt;br /&gt;
* [http://www.obdev.at/crosspack/ Crosspack]&lt;br /&gt;
* [http://www.digithink.com/OSX-AVR OSX-AVR (nicht mehr aktuell)]&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
&lt;br /&gt;
Für MS-Windows gibt es das fertig kompilierte Softwarepaket [[WinAVR]].&lt;br /&gt;
&lt;br /&gt;
== Entwicklungsumgebungen ==&lt;br /&gt;
&lt;br /&gt;
Win32:&lt;br /&gt;
* [[AVR-Studio]]: ab Version 4.12 mit WinAVR-Unterstützung, integrierter Simulator, Debugger, rudimentäre Projektverwaltung&lt;br /&gt;
* Programmers-Notepad: wird bei [[WinAVR]] mitgeliefert, ein guter Editor mit einer rudimentären Projektverwaltung&lt;br /&gt;
* [http://www.myavr.info/download/benutzerhandbuch_sisy_avr.pdf SiSy-AVR]: ein CASE-Tool mit WinAVR-Unterstützung, das eine Entwicklungsumgebung bereitstellt.&lt;br /&gt;
&lt;br /&gt;
Platformunabhängig:&lt;br /&gt;
* [http://www.eclipse.org/ Eclipse] mit CDT und dem [http://avr-eclipse.sourceforge.net/index.html AVR Eclipse Plugin]&lt;br /&gt;
* [[Code::Blocks]]: vielseitige, freie Entwicklungsumgebung für Windows und Linux&lt;br /&gt;
&lt;br /&gt;
== Bibliotheken / Libraries ==&lt;br /&gt;
&lt;br /&gt;
Die [http://www.nongnu.org/avr-libc/ avr-libc] ist die gebräuchliche &amp;quot;Laufzeitbibliothek&amp;quot; zum avr-gcc C-Compiler, welche den Zugriff auf die AVR-Hardware erheblich erleichtert. Die offizielle Dokumentation zur avr-libc mit vielen Hinweisen auch zum Compiler avr-gcc und verschiedener Tools (z.B. [[AVRDUDE]]) findet man [http://www.nongnu.org/avr-libc/user-manual/index.html hier].&lt;br /&gt;
&lt;br /&gt;
Auch die [http://hubbard.engr.scu.edu/embedded/avr/avrlib/ Procyon AVRlib] enthält nützlichen Code z.B. für UART, LCD,.... Bei der Procyon AVRlib ist die Lizenz zu beachten (in Kurzform: man muss dritten auf Verlangen den gesamten Quellcode der Firmware zur Verfügung stellen, falls Teile der Procyon Bibliothek genutzt werden).&lt;br /&gt;
&lt;br /&gt;
Zum Zugriff auf interne Funktionen oder externe Peripherie existieren einige fertige Komponenten. Z.B. &amp;quot;Projects&amp;quot;-Bereich von [http://www.avrfreaks.net/ avrfreaks.net] (Anmeldung erforderlich (kostenlos)). &lt;br /&gt;
&lt;br /&gt;
Die Erstellung eigener Bibliotheken ist im Artikel  [[Libraries]] erklärt.&lt;br /&gt;
&lt;br /&gt;
== Tipps &amp;amp; Tricks ==&lt;br /&gt;
&lt;br /&gt;
Eine (hoffentlich wachsende) Liste mit einigen Hinweisen:&lt;br /&gt;
&lt;br /&gt;
* Keine &amp;quot;antiken&amp;quot; Versionen verwenden. Für MS-Windows-Nutzer: aktuelles WinAVR installieren. Für Linux/Unix-Nutzer: letzte stabile Version selbst kompilieren oder aus &amp;quot;Distribution-Packages&amp;quot; installieren (z.B. [http://cdk4avr.sourceforge.net/ cdk4avr]).&lt;br /&gt;
&lt;br /&gt;
* Bei Problemen zuerst in die &#039;&#039;&#039;[http://www.nongnu.org/avr-libc/user-manual/index.html Anleitung] der avr-libc&#039;&#039;&#039; schauen. Insbesondere die FAQ lesen.&lt;br /&gt;
&lt;br /&gt;
* Sicherstellen, dass der MCU-Parameter (zum Compiler/Linker, meist im Makefile defniert) mit dem Zielprozessor übereinstimmt.&lt;br /&gt;
&lt;br /&gt;
* [[AVR-GCC-Tutorial]] in diesem Wiki lesen.&lt;br /&gt;
&lt;br /&gt;
* Im Zweifel &#039;&#039;&#039;nicht INTERRUPT(...) sondern SIGNAL(...)&#039;&#039;&#039; nutzen. In neueren Versionen der avr-libc wurde &#039;&#039;&#039;ISR&#039;&#039;&#039; als Ersatz für SIGNAL eingeführt und sollte genutzt werden (SIGNAL und INTERRUPT werden langfristig entfallen). Darauf achten, dass die Vektor- bzw. Signal-Namen (&amp;quot;Parameter&amp;quot;) zu ISR bzw. SIGNAL (und INTERRUPT wenn denn unbedingt erforderlich) richtig geschrieben sind. Die Namen sind in der in der entsprechenden Header-Datei (ioxxx.h) für den Controller und der avr-libc-Dokumenation aufgelistet. Im Zweifel den erzeugten Interrupt-Vektor im Assembler-Listing prüfen, es darf &#039;&#039;&#039;kein&#039;&#039;&#039; SIG_&#039;&#039;xxx&#039;&#039; oder xxx_vect mehr zu sehen sein, sondern _vector_&#039;&#039;N&#039;&#039; (wobei &#039;&#039;N&#039;&#039; eine Zahl ist). Neuere Versionen der avr-gcc zeigen eine Warnung, falls etwas falsch geschrieben wurde, ältere Versionen nicht.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Zugriff auf Daten(-Tabellen) im Programmspeicher&#039;&#039;&#039; (Flash) erfolgt über Program-Space-Funktionen (pgm_read*). Lediglich die Definition einer Variablen/eines Feldes mit dem PROGMEM Attribut zu versehen, reicht (im Gegensatz zu Codevision, IAR, Imagecraft) nicht aus.&lt;br /&gt;
&lt;br /&gt;
* Nicht alle AVRs werden vollständig von der avr-libc bzw. dem Compiler unterstützt. Bei Problemen hilft oft ein Blick in den erzeugten Assembler-Code. Die Anzahl der unterstützen Controller steigt jedoch mit Version zu Version von binutils, avr-libc und avrdude. Evtl. reicht einfach ein Update auf neuere Software-Versionen (z.B. im jeweils aktuellen WinAVR-Packet).&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;inp(), outp(), sbi() und cbi()&#039;&#039;&#039; werden in der aktuellen Bibliotheksversion nicht offiziell unterstützt (man muss eine spezielle Header-Datei einbinden(deprected.h). Es wird schon seit längerem empfohlen, diese Makros nicht mehr zu nutzen. Einige Anleitungen sind in diesem Punkt veraltet. Mit halbwegs aktuellen avr-gcc/avr-libc-Versionen kann einfach z.B. DDRB=0xfe bzw. foo=PINB geschrieben werden.  Mit PORTB |= _BV(1) setzt man PORTB.1, mit PORTB &amp;amp;= ~_BV(1) löscht man es wieder, mit PORTB ^= _BV(1) kann man es umschalten (_BV(x) entspricht dabei (1&amp;lt;&amp;lt;x)). Die ersten beiden Varianten erzeugen bei eingeschalteter Optimierung und passenden Parametern (wie hier im Beispiel Register im &amp;quot;unteren&amp;quot; Speicherbereich) die SBI bzw. CBI Prozessorbefehle.&lt;br /&gt;
&lt;br /&gt;
* Mit dem Tool &#039;&#039;&#039;avr-nm&#039;&#039;&#039; erhält man eine Übersicht über die Platzausnutzung in der erzeugten ELF-Datei bzw. dem damit gefüllten AVR. Das Tool wird per Kommandozeile mit &amp;lt;tt&amp;gt;avr-nm --size-sort --print-size &amp;lt;name of your ELF file&amp;gt;&amp;lt;/tt&amp;gt; aufgerufen. Alle Symbole mit einem &amp;quot;T&amp;quot; (globale Funktionen), &amp;quot;t&amp;quot; (statische Funktionen) und letztlich auch mit einem &amp;quot;D&amp;quot; oder &amp;quot;d&amp;quot; (globale bzw. statische Daten, die haben ihre Initialisierungswerte im ROM) betreffen das FLASH-ROM.  &amp;quot;B&amp;quot; und &amp;quot;b&amp;quot; brauchen ausschließlich RAM (werden beim Start mit 0 initialisiert). Die erste Spalte ist die Adresse des Symbols, die zweite ist die Größe (beides hexadezimal). (nach [http://www.mikrocontroller.net/topic/59960#467920 Forenbeitrag] von Jörg Wunsch)&lt;br /&gt;
&lt;br /&gt;
* Mit dem Tool &#039;&#039;&#039;avr-size&#039;&#039;&#039; erhält man eine Übersicht über den Platzbedarf in den text, data und bss Sektionen innerhalb der ELF Binärdatei. Die Sektionen text und data benötigen Platz im FLASH-ROM und die Sektionen data und bss benötigen zur Laufzeit Platz im SRAM.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[AVR-GCC-Tutorial]]&lt;br /&gt;
* [[AVR-GCC-Codeoptimierung]]&lt;br /&gt;
* [[GCC: unbenutzte Funktionen entfernen]]&lt;br /&gt;
* [http://www.roboternetz.de/wissen/index.php/Avr-gcc/Interna AVR-GCC Interna]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://winavr.sourceforge.net/install_config_WinAVR.pdf Tutorial von C. O&#039;Flynn und E. Weddington] Einstieg in die Nutzung des avr-gcc unter MS-Windows mit WinAVR (englisch)&lt;br /&gt;
* [http://www.linuxfocus.org/Deutsch/November2004/article352.shtml AVR-GCC und Linux]&lt;br /&gt;
* [http://www.mikrocontroller.net/forum/list-2-1.html GCC-Forum auf mikrocontroller.net]&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37992</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37992"/>
		<updated>2009-07-23T20:13:41Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png|thumb|Oberfläche von Code::Blocks]]&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installiertes [http://www.mikrocontroller.net/articles/WinAVR WinAVR].&lt;br /&gt;
&lt;br /&gt;
Für Windows stellt das Code::Blocks-Projekt regelmäßig Nightly Builds im [http://forums.codeblocks.org/ Forum] des Projektes zur Verfügung. &lt;br /&gt;
&lt;br /&gt;
Ein Nightly Build ist nach folgender Vorgehensweise zu installieren:&lt;br /&gt;
&lt;br /&gt;
# Herunterladen des Progammpakets &amp;lt;tt&amp;gt;CB_XXXXXXX_revXXXX_win32.7z&amp;lt;/tt&amp;gt; und Entpacken in das Zielverzeichnis.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten wxWidgets-DLL (&amp;lt;tt&amp;gt;wxmswXXu_gcc_cb_wxXXXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten MinGW-DLL (&amp;lt;tt&amp;gt;mingwmXX_gccXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
&lt;br /&gt;
Hinweis: Die &amp;quot;&amp;lt;tt&amp;gt;X&amp;lt;/tt&amp;gt;&amp;quot; in den Paketnamen stehen für die jeweiligen Versionsnummern und sind abhängig von der konkreten Build-Version.&lt;br /&gt;
&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
Eine Abbildung des Dialogs befindet sich im Abschnitt &amp;quot;Installation unter Linux&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installierter [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc].&lt;br /&gt;
&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;. Entsprechend sind in einer Konsole folgende Befehle einzugeben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./bootstrap&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./configure --with-contrib-plugins=all&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;sudo make install&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der letzte Befehl startet die Installation des Programms in die entsprechenden Verzeichnisse. Da hierfür root-Rechte erforderlich sind, wird dieses Kommando per &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; aufgerufen. Hierfür ist das root-Passwort erforderlich.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_compiler_settings.png|thumb|Dialog für Compiler-Einstellungen]]&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Erstellung eines AVR-Projekts ==&lt;br /&gt;
&lt;br /&gt;
Die Erstellung eines AVR-Projektes ist sehr einfach:&lt;br /&gt;
&lt;br /&gt;
# Starten des Dialogs zum Anlegen eines neuen Projektes mittels &amp;lt;tt&amp;gt;File-&amp;gt;New-&amp;gt;Project...&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Auswahl des Punktes &amp;quot;AVR Project&amp;quot; und Klick auf &amp;quot;Go&amp;quot;. Die Vielzahl an verfügbaren Projekttypen kann vom Nutzer durch die Auswahl der Kategorie (oben im Dialog, hier &amp;quot;Embedded Systems&amp;quot;) eingeschränkt werden.&lt;br /&gt;
# Überspringen der Begrüßungsseite.&lt;br /&gt;
# Im folgenden Dialog sind der Name des Projektes und der Pfad des Projektverzeichnisses anzugeben. Der Dialog zeigt in der letzten Zeile den resultierenden Pfad an.&lt;br /&gt;
# Die Einstellung der Ausgabe-Verzeichnisse für Release- und Debug-Konfigurationen sind im nächsten Dialog anzugeben.&lt;br /&gt;
# Im darauf folgenden Dialog sind vom Nutzer die Prozessor-spezifischen Einstellungen vorzunehmen. Damit wird die Erstellung eines neuen Projektes abgeschlossen. Insbesondere der Typ und die Taktrate sind hier anzugeben. Spätere Änderungen sind auch noch in den &amp;quot;Project Build Options&amp;quot; möglich.&lt;br /&gt;
&lt;br /&gt;
Die mit dieser Entwicklungsumgebung erzeugten Programme bzw. .hex-Dateien können dann mittels [http://www.mikrocontroller.net/articles/AVRDUDE AVRDude] bzw. mit Hilfe der grafischen Oberfläche [http://www.mikrocontroller.net/articles/Burn-o-mat AVR-Burn-o_mat] für AVRDude auf den Controller geflasht werden.&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37763</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37763"/>
		<updated>2009-07-13T20:21:05Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png|thumb|Oberfläche von Code::Blocks]]&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installiertes [http://www.mikrocontroller.net/articles/WinAVR WinAVR].&lt;br /&gt;
&lt;br /&gt;
Für Windows stellt das Code::Blocks-Projekt regelmäßig Nightly Builds im [http://forums.codeblocks.org/ Forum] des Projektes zur Verfügung. &lt;br /&gt;
&lt;br /&gt;
Ein Nightly Build ist nach folgender Vorgehensweise zu installieren:&lt;br /&gt;
&lt;br /&gt;
# Herunterladen des Progammpakets &amp;lt;tt&amp;gt;CB_XXXXXXX_revXXXX_win32.7z&amp;lt;/tt&amp;gt; und Entpacken in das Zielverzeichnis.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten wxWidgets-DLL (&amp;lt;tt&amp;gt;wxmswXXu_gcc_cb_wxXXXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten MinGW-DLL (&amp;lt;tt&amp;gt;mingwmXX_gccXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
&lt;br /&gt;
Hinweis: Die &amp;quot;&amp;lt;tt&amp;gt;X&amp;lt;/tt&amp;gt;&amp;quot; in den Paketnamen stehen für die jeweiligen Versionsnummern und sind abhängig von der konkreten Build-Version.&lt;br /&gt;
&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
Eine Abbildung des Dialogs befindet sich im Abschnitt &amp;quot;Installation unter Linux&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installierter [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc].&lt;br /&gt;
&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;. Entsprechend sind in einer Konsole folgende Befehle einzugeben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./bootstrap&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./configure&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;sudo make install&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der letzte Befehl startet die Installation des Programms in die entsprechenden Verzeichnisse. Da hierfür root-Rechte erforderlich sind, wird dieses Kommando per &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; aufgerufen. Hierfür ist das root-Passwort erforderlich.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_compiler_settings.png|thumb|Dialog für Compiler-Einstellungen]]&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Erstellung eines AVR-Projekts ==&lt;br /&gt;
&lt;br /&gt;
Die Erstellung eines AVR-Projektes ist sehr einfach:&lt;br /&gt;
&lt;br /&gt;
# Starten des Dialogs zum Anlegen eines neuen Projektes mittels &amp;lt;tt&amp;gt;File-&amp;gt;New-&amp;gt;Project...&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Auswahl des Punktes &amp;quot;AVR Project&amp;quot; und Klick auf &amp;quot;Go&amp;quot;. Die Vielzahl an verfügbaren Projekttypen kann vom Nutzer durch die Auswahl der Kategorie (oben im Dialog, hier &amp;quot;Embedded Systems&amp;quot;) eingeschränkt werden.&lt;br /&gt;
# Überspringen der Begrüßungsseite.&lt;br /&gt;
# Im folgenden Dialog sind der Name des Projektes und der Pfad des Projektverzeichnisses anzugeben. Der Dialog zeigt in der letzten Zeile den resultierenden Pfad an.&lt;br /&gt;
# Die Einstellung der Ausgabe-Verzeichnisse für Release- und Debug-Konfigurationen sind im nächsten Dialog anzugeben.&lt;br /&gt;
# Im darauf folgenden Dialog sind vom Nutzer die Prozessor-spezifischen Einstellungen vorzunehmen. Damit wird die Erstellung eines neuen Projektes abgeschlossen. Insbesondere der Typ und die Taktrate sind hier anzugeben. Spätere Änderungen sind auch noch in den &amp;quot;Project Build Options&amp;quot; möglich.&lt;br /&gt;
&lt;br /&gt;
Die mit dieser Entwicklungsumgebung erzeugten Programme bzw. .hex-Dateien können dann mittels [http://www.mikrocontroller.net/articles/AVRDUDE AVRDude] bzw. mit Hilfe der grafischen Oberfläche [http://www.mikrocontroller.net/articles/Burn-o-mat AVR-Burn-o_mat] für AVRDude auf den Controller geflasht werden.&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37762</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37762"/>
		<updated>2009-07-13T20:16:04Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png|thumb|Oberfläche von Code::Blocks]]&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installiertes [http://www.mikrocontroller.net/articles/WinAVR WinAVR].&lt;br /&gt;
&lt;br /&gt;
Für Windows stellt das Code::Blocks-Projekt regelmäßig Nightly Builds im [http://forums.codeblocks.org/ Forum] des Projektes zur Verfügung. &lt;br /&gt;
&lt;br /&gt;
Ein Nightly Build ist nach folgender Vorgehensweise zu installieren:&lt;br /&gt;
&lt;br /&gt;
# Herunterladen des Progammpakets &amp;lt;tt&amp;gt;CB_XXXXXXX_revXXXX_win32.7z&amp;lt;/tt&amp;gt; und Entpacken in das Zielverzeichnis.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten wxWidgets-DLL (&amp;lt;tt&amp;gt;wxmswXXu_gcc_cb_wxXXXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten MinGW-DLL (&amp;lt;tt&amp;gt;mingwmXX_gccXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
&lt;br /&gt;
Hinweis: Die &amp;quot;&amp;lt;tt&amp;gt;X&amp;lt;/tt&amp;gt;&amp;quot; in den Paketnamen stehen für die jeweiligen Versionsnummern und sind abhängig von der konkreten Build-Version.&lt;br /&gt;
&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
Eine Abbildung des Dialogs befindet sich im Abschnitt &amp;quot;Installation unter Linux&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installierter [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc].&lt;br /&gt;
&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;. Entsprechend sind in einer Konsole folgende Befehle einzugeben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./bootstrap&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./configure&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;sudo make install&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der letzte Befehl startet die Installation des Programms in die entsprechenden Verzeichnisse. Da hierfür root-Rechte erforderlich sind, wird dieses Kommando per &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; aufgerufen. Hierfür ist das root-Passwort erforderlich.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_compiler_settings.png|thumb|Dialog für Compiler-Einstellungen]]&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Erstellung eines AVR-Projekts ==&lt;br /&gt;
&lt;br /&gt;
Die Erstellung eines AVR-Projektes ist sehr einfach:&lt;br /&gt;
&lt;br /&gt;
# Starten des Dialogs zum Anlegen eines neuen Projektes mittels &amp;lt;tt&amp;gt;File-&amp;gt;New-&amp;gt;Project...&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Auswahl des Punktes &amp;quot;AVR Project&amp;quot; und Klick auf &amp;quot;Go&amp;quot;. Die Vielzahl an verfügbaren Projekttypen kann vom Nutzer durch die Auswahl der Kategorie (oben im Dialog, hier &amp;quot;Embedded Systems&amp;quot;) eingeschränkt werden.&lt;br /&gt;
# Überspringen der Begrüßungsseite.&lt;br /&gt;
# Im folgenden Dialog sind der Name des Projektes und der Pfad des Projektverzeichnisses anzugeben. Der Dialog zeigt in der letzten Zeile den resultierenden Pfad an.&lt;br /&gt;
# Die Einstellung der Ausgabe-Verzeichnisse für Release- und Debug-Konfigurationen sind im nächsten Dialog anzugeben.&lt;br /&gt;
# Im darauf folgenden Dialog sind vom Nutzer die Prozessor-spezifischen Einstellungen vorzunehmen. Damit wird die Erstellung eines neuen Projektes abgeschlossen. Insbesondere der Typ und die Taktrate sind hier anzugeben. Spätere Änderungen sind auch noch in den &amp;quot;Project Build Options&amp;quot; möglich.&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37761</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37761"/>
		<updated>2009-07-13T20:14:49Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png|thumb|Oberfläche von Code::Blocks]]&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installiertes [http://www.mikrocontroller.net/articles/WinAVR WinAVR].&lt;br /&gt;
&lt;br /&gt;
Für Windows stellt das Code::Blocks-Projekt regelmäßig Nightly Builds im [http://forums.codeblocks.org/ Forum] des Projektes zur Verfügung. &lt;br /&gt;
&lt;br /&gt;
Ein Nightly Build ist nach folgender Vorgehensweise zu installieren:&lt;br /&gt;
&lt;br /&gt;
# Herunterladen des Progammpakets &amp;lt;tt&amp;gt;CB_XXXXXXX_revXXXX_win32.7z&amp;lt;/tt&amp;gt; und Entpacken in das Zielverzeichnis.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten wxWidgets-DLL (&amp;lt;tt&amp;gt;wxmswXXu_gcc_cb_wxXXXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten MinGW-DLL (&amp;lt;tt&amp;gt;mingwmXX_gccXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
&lt;br /&gt;
Hinweis: Die &amp;quot;&amp;lt;tt&amp;gt;X&amp;lt;/tt&amp;gt;&amp;quot; in den Paketnamen stehen für die jeweiligen Versionsnummern und sind abhängig von der konkreten Build-Version.&lt;br /&gt;
&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
Eine Abbildung des Dialogs befindet sich im Abschnitt &amp;quot;Installation unter Linux&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installierter [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc].&lt;br /&gt;
&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;. Entsprechend sind in einer Konsole folgende Befehle einzugeben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./bootstrap&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./configure&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;sudo make install&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der letzte Befehl startet die Installation des Programms in die entsprechenden Verzeichnisse. Da hierfür root-Rechte erforderlich sind, wird dieses Kommando per &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; aufgerufen. Hierfür ist das root-Passwort erforderlich.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_compiler_settings.png|thumb|Dialog für Compiler-Einstellungen]]&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Erstellung eines AVR-Projekts ==&lt;br /&gt;
&lt;br /&gt;
Die Erstellung eines AVR-Projektes ist sehr einfach:&lt;br /&gt;
&lt;br /&gt;
# Starten des Dialogs zum Anlegen eines neuen Projektes mittels &amp;lt;&amp;lt;tt&amp;gt;&amp;gt;File-&amp;gt;New-&amp;gt;Project...&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Auswahl des Punktes &amp;quot;AVR Project&amp;quot; und Klick auf &amp;quot;Go&amp;quot;. Die Vielzahl an verfügbaren Projekttypen kann vom Nutzer durch die Auswahl der Kategorie (oben im Dialog, hier &amp;quot;Embedded Systems&amp;quot;) eingeschränkt werden.&lt;br /&gt;
# Überspringen der Begrüßungsseite.&lt;br /&gt;
# Im folgenden Dialog sind der Name des Projektes und der Pfad des Projektverzeichnisses anzugeben. Der Dialog zeigt in der letzten Zeile den resultierenden Pfad an.&lt;br /&gt;
# Die Einstellung der Ausgabe-Verzeichnisse für Release- und Debug-Konfigurationen sind im nächsten Dialog anzugeben.&lt;br /&gt;
# Im darauf folgenden Dialog sind vom Nutzer die Prozessor-spezifischen Einstellungen vorzunehmen. Damit wird die Erstellung eines neuen Projektes abgeschlossen. Insbesondere der Typ und die Taktrate sind hier anzugeben. Spätere Änderungen sind auch noch in den &amp;quot;Project Build Options&amp;quot; möglich.&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37760</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37760"/>
		<updated>2009-07-13T20:01:05Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png|thumb|Oberfläche von Code::Blocks]]&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installiertes [http://www.mikrocontroller.net/articles/WinAVR WinAVR].&lt;br /&gt;
&lt;br /&gt;
Für Windows stellt das Code::Blocks-Projekt regelmäßig Nightly Builds im [http://forums.codeblocks.org/ Forum] des Projektes zur Verfügung. Diese sind in der Regel stabil und wesentlich aktueller als das offizielle Release. Es ist empfehlenswert, ein solches Nightly Build zu installieren.&lt;br /&gt;
&lt;br /&gt;
Ein Nightly Build ist nach folgender Vorgehensweise zu installieren:&lt;br /&gt;
&lt;br /&gt;
# Herunterladen des Progammpakets &amp;lt;tt&amp;gt;CB_XXXXXXX_revXXXX_win32.7z&amp;lt;/tt&amp;gt; und Entpacken in das Zielverzeichnis.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten wxWidgets-DLL (&amp;lt;tt&amp;gt;wxmswXXu_gcc_cb_wxXXXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten MinGW-DLL (&amp;lt;tt&amp;gt;mingwmXX_gccXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
&lt;br /&gt;
Hinweis: Die &amp;quot;&amp;lt;tt&amp;gt;X&amp;lt;/tt&amp;gt;&amp;quot; in den Paketnamen stehen für die jeweiligen Versionsnummern und sind abhängig von der konkreten Build-Version.&lt;br /&gt;
&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
Eine Abbildung des Dialogs befindet sich im Abschnitt &amp;quot;Installation unter Linux&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installierter [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc].&lt;br /&gt;
&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;. Entsprechend sind in einer Konsole folgende Befehle einzugeben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./bootstrap&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./configure&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;sudo make install&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der letzte Befehl startet die Installation des Programms in die entsprechenden Verzeichnisse. Da hierfür root-Rechte erforderlich sind, wird dieses Kommando per &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; aufgerufen. Hierfür ist das root-Passwort erforderlich.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_compiler_settings.png|thumb|Dialog für Compiler-Einstellungen]]&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Erstellung eines AVR-Projekts ==&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37759</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37759"/>
		<updated>2009-07-13T19:54:26Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png|thumb|Oberfläche von Code::Blocks]]&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
Voraussetzung für eine Nutzung von Code::Blocks für AVR-Projekte ist ein installiertes [http://www.mikrocontroller.net/articles/WinAVR WinAVR].&lt;br /&gt;
&lt;br /&gt;
Für Windows stellt das Code::Blocks-Projekt regelmäßig Nightly Builds im [http://forums.codeblocks.org/ Forum] des Projektes zur Verfügung. Diese sind in der Regel stabil und wesentlich aktueller als das offizielle Release. Es ist empfehlenswert, ein solches Nightly Build zu installieren.&lt;br /&gt;
&lt;br /&gt;
Ein Nightly Build ist nach folgender Vorgehensweise zu installieren:&lt;br /&gt;
&lt;br /&gt;
# Herunterladen des Progammpakets &amp;lt;tt&amp;gt;CB_XXXXXXX_revXXXX_win32.7z&amp;lt;&amp;lt;/tt&amp;gt; und Entpacken in das Zielverzeichnis.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten wxWidgets-DLL (&amp;lt;tt&amp;gt;wxmswXXu_gcc_cb_wxXXXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
# Herunterladen der zur Verfügung gestellten MinGW-DLL (&amp;lt;tt&amp;gt;mingwmXX_gccXX.7z&amp;lt;/tt&amp;gt;) für Code::Blocks. Nach dem Entpacken ist die DLL direkt in das Programmverzeichnis von Code::Blocks zu kopieren.&lt;br /&gt;
&lt;br /&gt;
Hinweis: Die &amp;quot;&amp;lt;tt&amp;gt;X&amp;lt;/tt&amp;gt;&amp;quot; in den Paketnamen stehen für die jeweiligen Versionsnummern und sind abhängig von der konkreten Build-Version.&lt;br /&gt;
&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;br /&gt;
Eine Abbildung des Dialogs befindet sich im Abschnitt &amp;quot;Installation unter Linux&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen, dass der [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc] bereits installiert ist.&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;. Entsprechend sind in einer Konsole folgende Befehle einzugeben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./bootstrap&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;./configure&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;sudo make install&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der letzte Befehl startet die Installation des Programms in die entsprechenden Verzeichnisse. Da hierfür root-Rechte erforderlich sind, wird dieses Kommando per &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; aufgerufen. Hierfür ist das root-Passwort erforderlich.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_compiler_settings.png|thumb|Dialog für Compiler-Einstellungen]]&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR-Tutorial:_Equipment&amp;diff=37757</id>
		<title>AVR-Tutorial: Equipment</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR-Tutorial:_Equipment&amp;diff=37757"/>
		<updated>2009-07-13T18:34:57Z</updated>

		<summary type="html">&lt;p&gt;Msk: /* C */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= AVR-Tutorial - Benötigte Ausrüstung =&lt;br /&gt;
==Hardware==&lt;br /&gt;
&lt;br /&gt;
Ein Mikrocontroller alleine ist noch zu nichts nützlich. Damit man etwas damit anfangen kann, braucht man eine Schaltung, in die der Controller eingesetzt wird. Dazu werden bei Elektronikhändlern Platinen angeboten, die alles nötige (Taster, LEDs, Steckverbinder...) enthalten. Häufig enthalten diese Platinen nicht nur Platz für den Mikroprozessor, sondern auch einen ISP-Programmierer (Näheres dazu später).&lt;br /&gt;
&lt;br /&gt;
=== Fertige Evaluations-Boards und Starterkits ===&lt;br /&gt;
&lt;br /&gt;
==== AVR Starterkit aus dem Mikrocontroller.net-Shop ====&lt;br /&gt;
&lt;br /&gt;
Sehr gut für dieses Tutorial geeignet ist das [http://shop.mikrocontroller.net/?product_id=67 AVR-Starterkit aus dem Mikrocontroller.net-Shop]. Das Kit enthält eine Platine mit dem Controller ATmega8, einen USB-ISP-Programmieradapter und ein Steckernetzteil.&lt;br /&gt;
&lt;br /&gt;
==== STK500 ====&lt;br /&gt;
[[Bild:Stk500.jpg|right]]&lt;br /&gt;
Das STK500 ist das Standard-Board für AVR Entwicklung, direkt von Atmel. Es enthält auch einen ISP-Programmer und ist fertig aufgebaut. Es ist unter Entwicklern sehr beliebt und wird natürlich von Atmel unterstützt. Es gilt allgemein als gute Investition, wenn man ernsthaft in das Thema einsteigen möchte.&lt;br /&gt;
&lt;br /&gt;
Das STK500 kostet bei Reichelt ca. 80 Euro.&lt;br /&gt;
&lt;br /&gt;
==== Pollin Eval.-Board v2.x ====&lt;br /&gt;
&lt;br /&gt;
Bei Pollin Elektronik gibt es für 15 Euro ein Evaluation Board zum Selbstlöten (mit Platine und Bauteilen, aber ohne Mikrocontroller). Auch dieses Board enthält einen ISP-Programmer, allerdings der einfacheren Sorte. Im Vergleich zum STK500 ist das Board recht unflexibel und hat weniger Features. Die Beschreibung zum Zusammenlöten des Boards ist ausreichend, zur Benutzung des Boards erfährt man außer dem Schaltplan praktisch nichts. Der Schaltplan und dieses AVR-Tutorial zusammen sind allerdings ausreichend. &lt;br /&gt;
&lt;br /&gt;
Siehe: [http://www.pollin.de http://www.pollin.de]&lt;br /&gt;
&lt;br /&gt;
==== Pollin Funk-AVR-Evaluationsboard v1.x ====&lt;br /&gt;
&lt;br /&gt;
Bei diesem Board besteht die Möglichkeit, Funkmodule wie das [[RFM12]], RFM01 oder RFM02 auf dem Board aufzulöten.&lt;br /&gt;
&lt;br /&gt;
Siehe: &lt;br /&gt;
* [[Pollin Funk-AVR-Evaluationsboard]]&lt;br /&gt;
* [http://www.pollin.de http://www.pollin.de]&lt;br /&gt;
&lt;br /&gt;
==== ATmega8-Entwicklungsplatine ====&lt;br /&gt;
&lt;br /&gt;
Eine weitere Möglichkeit ist die [http://shop.mikrocontroller.net/?product_id=43 ATmega8-Entwicklungsplatine von shop.mikrocontroller.net]. Diese enthält eine Fassung für den Controller, einen Spannungswandler, die Beschaltung für die serielle Schnittstelle und einen Anschluss für den Programmieradapter. Die restliche Hardware wie LEDs und Taster kann man sich selber nach Belieben auf das Lochrasterfeld löten.&lt;br /&gt;
&lt;br /&gt;
==== Andere ====&lt;br /&gt;
&lt;br /&gt;
Das Angebot an AVR-Evaluationboards, -Experimentierplatinen, -Entwicklerplatinen oder wie die jeweiligen Hersteller ihre Produkte auch immer bezeichnen, ist mittlerweile recht groß geworden. Sie alle zu bewerten ist unmöglich geworden.&lt;br /&gt;
&lt;br /&gt;
===Selbstbau===&lt;br /&gt;
&lt;br /&gt;
Ein fertiges Board ist gar nicht nötig, man kann die benötigte Schaltung auch selbst auf einem kleinen Steckbrett oder einer Lochrasterplatine aufbauen. So kompliziert wie das STK500 wird es nicht, es reichen eine Hand voll Bauteile. Wie man das macht wird im Folgenden beschrieben.&lt;br /&gt;
&lt;br /&gt;
Die folgende Schaltung baut man am besten auf einem &#039;&#039;&#039;Breadboard&#039;&#039;&#039; (Steckbrett) auf. Solche Breadboards gibt&#039;s z.B. bei [http://www.reichelt.de Reichelt],  [http://www.conelek.com/Steckplatinen ConeleK], [http://www.elv.de/ ELV] oder [http://www.conrad.de/ Conrad]. &lt;br /&gt;
&lt;br /&gt;
[[Bild:Avr-schaltplan-1.gif]]&lt;br /&gt;
&lt;br /&gt;
Über den Takteingang &#039;&#039;&#039;XTAL1&#039;&#039;&#039; ist der Mikrocontroller mit dem &#039;&#039;&#039;Quarzoszillator&#039;&#039;&#039; verbunden, der den benötigten Takt von 4 MHz liefert (siehe unten). Achtung: die Pins werden, wenn man den Oszillator mit der Schrift nach oben vor sich liegen hat, von unten links aus abgezählt. Unten links ist Pin 1, unten rechts Pin 7, oben rechts Pin 8 und oben links Pin 14 (natürlich hat der Oszillator nur 4 Pins. Die Nummerierung kommt daher, dass bei einem normalen IC dieser Größe an den gleichen Positionen die Pins Nr. 1, 7, 8 und 14 wären). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PD0-PD7&#039;&#039;&#039; und &#039;&#039;&#039;PB0-PB5&#039;&#039;&#039; sind die &#039;&#039;&#039;IO-Ports&#039;&#039;&#039; des Mikrocontrollers. Hier können Bauteile wie LEDs, Taster oder LCDs angeschlossen werden.&lt;br /&gt;
Der &#039;&#039;&#039;Port C (PC0-PC5)&#039;&#039;&#039; spielt beim Atmega8/AT90S4433 eine Sonderrolle: mit diesem Port können Analog-Spannungen gemessen werden. Aber dazu später mehr!&lt;br /&gt;
An &#039;&#039;&#039;Pin 17-19&#039;&#039;&#039; ist die Stiftleiste zur Verbindung mit dem ISP-Programmer angeschlossen, über den der AVR vom PC programmiert wird (Achtung: PINs in Abbildung entsprechen nicht der Belegung des AVRISP mkII. Die korrekte Pin-Belegung kann im Handbuch des AVRISP mkII eingesehen werden).&lt;br /&gt;
Die Resetschaltung, bestehend aus &#039;&#039;&#039;R1&#039;&#039;&#039; und &#039;&#039;&#039;C1&#039;&#039;&#039;, sorgt dafür, dass der Reseteingang des Controllers standardmäßig auf Vcc=5V liegt.&lt;br /&gt;
Zum Programmieren zieht der ISP-Adapter die Resetleitung auf Masse (GND), die Programmausführung wird dadurch unterbrochen und der interne Speicher des Controllers kann neu programmiert werden.&lt;br /&gt;
Zwischen Vcc und GND kommt noch ein 100nF Keramik- oder Folienkondensator, um Störungen in der Versorgungsspannung zu unterdrücken. Dieser                  [[Abblockkondensator]] sollte so nah wie möglich am Controller plaziert werden.&lt;br /&gt;
&lt;br /&gt;
Hier die Liste der benötigten Bauteile: &lt;br /&gt;
&lt;br /&gt;
* R1       Widerstand 10 kOhm&lt;br /&gt;
* C1       Keramikkondensator 47 nF&lt;br /&gt;
* C2       Keramik- oder Folienkondensator 100 nF&lt;br /&gt;
*          Stiftleiste 6-polig&lt;br /&gt;
*          Mikrocontroller ATmega8 oder AT90S4433 (kann auf [http://shop.mikrocontroller.net/ http://shop.mikrocontroller.net/] bestellt werden)&lt;br /&gt;
*         Quarzoszillator 4 MHz&lt;br /&gt;
&lt;br /&gt;
Beim Breadboard ist darauf zu achten, dass man die parallel laufenden Schienen für GND (blau) und Vcc (rot) jeweils mit Drähten verbindet (nicht Vcc und GND miteinander!).&lt;br /&gt;
&lt;br /&gt;
Eine Zusammenstellung der benötigten Bauteile befindet sich in der [[AVR-Tutorial_Bestellliste|Bestellliste]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px solid grey; padding: 1ex; font-size: 90%;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ergänzende Hinweise zur Taktversorgung (kann übersprungen werden) ===&lt;br /&gt;
&lt;br /&gt;
Ein Mikrocontroller benötigt, wie jeder Computer, eine Taktversorgung. Der Takt ist notwendig, um die internen Abläufe im Prozessor in einer geordneten Reihenfolge ausführen zu können. Die Frequenz des Taktes bestimmt im Wesentlichen, wie schnell ein Computer arbeitet.&lt;br /&gt;
&lt;br /&gt;
Bei einem ATMega8 gibt es 2 Möglichkeiten zur Taktversorgung&lt;br /&gt;
* interner Takt&lt;br /&gt;
* externer Takt&lt;br /&gt;
&lt;br /&gt;
====interner Takt====&lt;br /&gt;
Dies ist der Auslieferungszustand bei einem Mega8. Dabei wird der Takt von einem internen Schwingkreis geliefert.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vorteil&#039;&#039;&#039;: Keine externe Beschaltung notwendig. Die Pins, an denen ansonsten ein Quarz oder ein Quarzoszillator angeschlossen wird, sind daher als normale Portpins für Ein/Ausgaben verwendbar.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Nachteil&#039;&#039;&#039;: Der Schwingkreis ist nicht sehr genau. Bei Temperaturänderungen verändert er seine Frequenz. Nur 4 Frequenzen (1MHz, 2MHz, 4MHz und 8MHz) sind bei einem Mega8 realisierbar. Es gibt zwar die Möglichkeit, die interne Frequenz in Grenzen noch zu verändern, dies ist aber aufwändig und erfordert mindestens einen Frequenzzähler, wenn man eine bestimmte Frequenz erreichen will.&lt;br /&gt;
&lt;br /&gt;
====externer Takt====&lt;br /&gt;
Hier gibt es diesmal drei Möglichkeiten:&lt;br /&gt;
* Quarz&lt;br /&gt;
* Quarzoszillator&lt;br /&gt;
* Keramikschwinger/Resonator&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vorteil&#039;&#039;&#039;: Die Taktfrequenz ist so stabil, wie es der Quarz, Oszillator oder Keramikschwinger vorgibt. Und das ist wesentlich genauer als der interne Oszillator. Kein Abgleich notwendig, wenn eine bestimmte Frequenz erreicht werden soll, solange es einen Quarz bzw. Oszillator oder Keramikschwinger in dieser Frequenz gibt.&lt;br /&gt;
Ein spezieller Vorteil des Keramikschwingers ist, dass dieser keine Kondensatoren nach Masse braucht, weil er die schon eingebaut hat.&lt;br /&gt;
Es muss lediglich ein dritter Pin mit Masse verbunden werden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Nachteil&#039;&#039;&#039;: Die Pins an denen der Quarz bzw. Oszillator oder Keramikschwinger angeschlossen wird, sind nicht mehr als I/O Pins nutzbar.&lt;br /&gt;
&lt;br /&gt;
Spätestens dann, wenn eine RS232-Verbindung zu einem anderen Computer aufgebaut werden soll, ist eine exakte Taktversorgung einer der Schlüssel, um diese Verbindung auch stabil halten zu können. Aus diesem Grund wird in diesem Tutorial von vorne herein mit einem externen Takt gearbeitet. Es spielt dabei keine Rolle, ob dafür ein Quarzoszillator, ein Quarz oder ein Keramikschwinger benutzt wird.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;FF0000&amp;quot;&amp;gt;Achtung: Ein ATMega8 wird mit aktiviertem internen Takt ausgeliefert. Um einen Quarzoszillator oder einen Quarz zu aktivieren, müssen die Fuse-Bits des Prozessors verändert werden. Details dazu finden sich [[AVR_Fuses|hier]].&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Quarz statt Quarzoszillator ====&lt;br /&gt;
&lt;br /&gt;
Wird anstelle eines Quarzoszillators ein Quarz eingesetzt, so sieht die Anbindung des Quarzes so aus:&lt;br /&gt;
&lt;br /&gt;
[[Bild:tutorial-quarz-schaltplan.png|center|framed| Quarz Standardbeschaltung]]&lt;br /&gt;
&lt;br /&gt;
Die beiden Kondensatoren &#039;&#039;&#039;C3&#039;&#039;&#039; und &#039;&#039;&#039;C4&#039;&#039;&#039; sind zum Betrieb des Quarzes notwendig. Ihre Größe ist abhängig von den Daten des Quarzes. 22pF sind ein Wert, der bei den meisten Quarzen funktionieren sollte.&lt;br /&gt;
&lt;br /&gt;
==== Keramikschwinger/Resonator- statt Quarz/Oszillator ====&lt;br /&gt;
&lt;br /&gt;
Wird anstelle eines Quarz/Oszillators ein Keramikschwinger eingesetzt, so sieht die Anbindung des Keramikschwingers so aus:&lt;br /&gt;
&lt;br /&gt;
[[Bild:Resonator.png|framed|center| Resonator Standardbeschaltung]]&lt;br /&gt;
&lt;br /&gt;
Es werden keine Kondensatoren benötigt, daher ist der Anschluss eines Keramikschwingers kinderleicht.&lt;br /&gt;
&lt;br /&gt;
=== Stromversorgung ===&lt;br /&gt;
&lt;br /&gt;
Die Versorgungsspannung &#039;&#039;&#039;Vcc&#039;&#039;&#039; beträgt 5V und kann z.B. mit folgender Schaltung erzeugt werden:&lt;br /&gt;
&lt;br /&gt;
[[Bild:V_Regler.gif|framed|center|Standard Netzteil Beschaltung eines 7805]]&lt;br /&gt;
&lt;br /&gt;
Bauteile:&lt;br /&gt;
* IC1: 5V-Spannungsregler 7805&lt;br /&gt;
* C1: Elko 10µF (Polung beachten!)&lt;br /&gt;
* C2,C3: 2x Kondensator 100nF (kein Elektrolyt)&lt;br /&gt;
* D1: Diode 1N4001&lt;br /&gt;
&lt;br /&gt;
Die beiden 100nF Kondensatoren haben die Aufgabe, eine mögliche Schwingneigung des 7805 zu unterdrücken. Sie müssen so nahe wie möglich an den Anschlusspins des 7805 angeschlossen werden, um ihre Wirkung zu entfalten.&lt;br /&gt;
&lt;br /&gt;
An den Eingang (+ und - im Schaltplan) wird ein Steckernetzteil mit einer Spannung von 9 - 12V angeschlossen. Der 7805 benötigt an seinem Eingang eine Gleichspannung die mindestens 8V beträgt. Mit einem 6V oder 7V Netzteil wird der 7805 keine stabilen 5V erzeugen können. Auf der anderen Seite macht es auch keinen Sinn, wesentlich über 12V Eingangsspannung hinauszugehen. Der 7805 ist ein Linearregler. Salopp gesagt, wird die überschüssige Spannung in Form von Wärme vernichtet. Liegt die Eingangsspannung weit über 12V, so wird schon wesentlich mehr Energie in Form von Wärme umgesetzt, als am Ausgang entnommen werden kann. Mal ganz davon abgesehen, dass der 7805 davon brennheiß werden wird.&lt;br /&gt;
&lt;br /&gt;
Eine Stromversorgung mit Batterien ist grundsätzlich auch möglich, wenn die elektrischen Grenzdaten des µC eingehalten werden (max. Spannung, min. Spannung). Bei der geregelten Stromversorgung oben sollte die Batteriespannung ca. 1.5 - 2.5V (Dropout-Spannung des Linearreglers) größer sein als die Versorgungsspannung des µC. Die [[Versorgung aus einer Zelle]] ist ein Thema für Fortgeschrittene.&lt;br /&gt;
&lt;br /&gt;
=== Der ISP-Programmierer (In-System-Programmer)===&lt;br /&gt;
&lt;br /&gt;
[[Bild:Mikrocontroller.gif|framed|right|ISP Programmierer]]&lt;br /&gt;
Dann braucht man nur noch den &#039;&#039;&#039;ISP-Programmieradapter&#039;&#039;&#039;, über den man die Programme vom PC in den Controller übertragen kann. Eine Übersicht über mögliche ISP-Programmer Varianten findet sich im Artikel [[AVR_In_System_Programmer]].&lt;br /&gt;
&lt;br /&gt;
Fertige ISP-Programmer zum Anschluss an den Parallelport oder USB gibt es z.B. auf http://shop.mikrocontroller.net/. &lt;br /&gt;
&lt;br /&gt;
Eine Bauanleitung gibt es u.a. auf [http://rumil.de/hardware/avrisp.html http://rumil.de/hardware/avrisp.html].&lt;br /&gt;
&lt;br /&gt;
Den ISP-Adapter schließt man an den Parallelport an und verbindet ihn mit der Stiftleiste SV1 über ein 6-adriges Kabel (siehe Schaltplan).&lt;br /&gt;
&lt;br /&gt;
=== Sonstiges ===&lt;br /&gt;
&lt;br /&gt;
Wer vorausschauend kauft, kauft mehr als einen Mikrocontroller. Bis der erste Controller defekt ist oder man durch Austauschen sicher gehen möchte, ob der Fehler im Programm oder im Controller ist, vergeht nur wenig Zeit.&lt;br /&gt;
&lt;br /&gt;
Für die anderen Teile des Tutorials sollte man sich noch die folgenden Bauteile besorgen: &lt;br /&gt;
&lt;br /&gt;
---------------------------&lt;br /&gt;
Teil 2 (I/O-Grundlagen)&lt;br /&gt;
* 5 LEDs 5mm&lt;br /&gt;
* 5 Taster&lt;br /&gt;
* 5 Widerstände 1k&lt;br /&gt;
* 5 Widerstände 10k&lt;br /&gt;
&lt;br /&gt;
---------------------------&lt;br /&gt;
Teil 6 (LC-Display)&lt;br /&gt;
* 1 Potentiometer 10k&lt;br /&gt;
* 1 HD44780-kompatibles LCD, z.B. 4x20 oder 2x16 Zeichen&lt;br /&gt;
&lt;br /&gt;
---------------------------&lt;br /&gt;
Teil 10 (Der UART)&lt;br /&gt;
* 1 Pegelwandler MAX232, MAX232&#039;&#039;&#039;A&#039;&#039;&#039; oder MAX202&lt;br /&gt;
* 5 Kondensatoren&lt;br /&gt;
** Bei einem MAX232: je 1µF Elektrolytkondensator&lt;br /&gt;
** Bei einem MAX202 oder MAX232&#039;&#039;&#039;A&#039;&#039;&#039;: je  100nF Keramik- oder Elektrolytkondensator&lt;br /&gt;
:Die Kondensatoren dürfen auch größer sein. Ist man sich nicht sicher, welchen MAX232 man hat (A oder nicht A), dann die größeren Kondensatoren 1µF nehmen, die funktionieren auch beim MAX232A oder MAX202.&lt;br /&gt;
* 1 9-polige SUBD-Buchse (female)&lt;br /&gt;
* 1 dazu passendes Modem(nicht Nullmodem!)-Kabel&lt;br /&gt;
&lt;br /&gt;
---------------------------&lt;br /&gt;
Teil 14 (ADC)&lt;br /&gt;
* 1 Kondensator 100n&lt;br /&gt;
* 1 Potentiometer 10k&lt;br /&gt;
* nach Lust und Laune temperatur- oder lichtabhängige Widerstände und jeweils einen Widerstand in der gleichen Größenordnung wie der Sensor&lt;br /&gt;
&lt;br /&gt;
---------------------------&lt;br /&gt;
Teil 17 (Schieberegister)&lt;br /&gt;
* 2 Schieberegister 74HC595&lt;br /&gt;
* einige LED, damit man an die Schieberegister auch etwas anschliessen kann, samt passenden Vorwiderständen&lt;br /&gt;
&lt;br /&gt;
---------------------------&lt;br /&gt;
Teil 19 (7-Segmentanzeige)&lt;br /&gt;
* 4 7-Segmentanzeigen mit gemeinsamer Anode&lt;br /&gt;
* 4 PNP Transistoren BC338&lt;br /&gt;
* 4 Widerstände 1k&lt;br /&gt;
* 7 Widerstände 100Ohm&lt;br /&gt;
&lt;br /&gt;
Für weitere Bauteile, die man als angehender µC Bastler auch des Öfteren mal benötigt, empfiehlt sich ein Blick in die Liste der [[Standardbauelemente]] bzw. in die [[Absolute_beginner|Grundausstattung]]. Wenn ihr Händler Großpackungen (zb. 100 Stück) von 100n Kondensatoren, 10k, 1k oder 100Ohm Widerständen anbietet, sollten sie deren Erwerb in Erwägung ziehen. Diese Bauteile benötigt man oft und derartige Großpackungen sind oft nicht teurer, als wennn man einige wenige Exemplare einzeln kauft. Dies hängt damit zusammen, daß das Herauszählen von 9 Bauteilen für den Verkäufer teurer kommt, als 100 Bauteile abgepackt aus dem Regal zu nehmen.&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
In diesem Tutorial wird nur auf die Programmierung in Assembler eingegangen, da Assembler für das Verständnis der Hardware am besten geeignet ist.&lt;br /&gt;
&lt;br /&gt;
=== Assembler ===&lt;br /&gt;
&lt;br /&gt;
Zuerst braucht man einen &#039;&#039;&#039;Assembler&#039;&#039;&#039;, der in Assemblersprache geschriebene Programme in Maschinencode übersetzt. Windows-User können das [http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725 AVR-Studio] von Atmel verwenden, das neben dem Assembler auch einen Simulator enthält, mit dem sich die Programme vor der Übertragung in den Controller testen lassen; für Linux gibt es [http://www.tavrasm.org/ tavrasm], [http://avra.sourceforge.net/ avra] und [http://avr-asm-tutorial.net/gavrasm/index_de.html gavrasm]. &lt;br /&gt;
&lt;br /&gt;
Um die vom Assembler erzeugte &amp;quot;.hex&amp;quot;-Datei über den ISP-Adapter in den Mikrocontroller zu programmieren, kann man unter Windows z.B. das Programm [http://www.myplace.nu/avr/yaap/ yaap] verwenden, für Linux gibt es [http://savannah.nongnu.org/projects/uisp/ uisp], für beide avrdude.&lt;br /&gt;
&lt;br /&gt;
=== C ===&lt;br /&gt;
Wer in C programmieren möchte, kann den kostenlosen GNU-C-Compiler AVR-GCC (unter Windows &amp;quot;WinAVR&amp;quot;) ausprobieren. Dieser C-Compiler kann auch in das für Assembler-Programmierung notwendige AVR-Studio integriert werden. In der Artikelsammlung gibt es ein umfangreiches [[AVR-GCC-Tutorial|Tutorial]] zu diesem Compiler;&lt;br /&gt;
&lt;br /&gt;
Wer unter Windows und Linux gleichermassen kostenlos entwickeln will, der sollte sich die [http://www.eclipse.org/ IDE Eclipse for C/C++ Developers] und das [http://avr-eclipse.sourceforge.net/wiki/index.php/The_AVR_Eclipse_Plugin AVR-Eclipse Plugin ] ansehen, beide sind unter Windows und Linux einfach zu installieren. Hier wird auch der AVR-GCC benutzt. In der Artikelsammlung gibt es ein umfangreiches [[AVR Eclipse|AVR Eclipse Tutorial]] zu dieser IDE.&lt;br /&gt;
Ebenfalls unter Linux und Windows verfügbar ist die Entwicklungsumgebung [http://www.codeblocks.org/ Code::Blocks] (aktuelle, stabile Versionen sind als Nightly Builds regelmäßig im [http://forums.codeblocks.org/ Forum] verfügbar). Innerhalb dieser Entwicklungsumgebung können ohne die Installation zusätzlicher Plugins &amp;quot;AVR-Projekte&amp;quot; angelegt werden.&lt;br /&gt;
&lt;br /&gt;
Fragen dazu stellt man am besten hier im [http://www.mikrocontroller.net/forum/list-2-1.html GCC-Forum].&lt;br /&gt;
&lt;br /&gt;
=== Pascal ===&lt;br /&gt;
Wer in Pascal programmieren muss, kann [http://www.e-lab.de AVRPascal] ausprobieren. Dieser Pascalcompiler ist kostenfrei bis 4kb Code und bietet viele ausgereifte Bibliotheken. [http://www.e-lab.de E-LAB].&lt;br /&gt;
&lt;br /&gt;
=== Basic ===&lt;br /&gt;
Auch Basic-Fans kommen nicht zu kurz, für die gibt es z.B. [[Bascom AVR]] ($69, Demo verfügbar).&lt;br /&gt;
&lt;br /&gt;
=== Forth ===&lt;br /&gt;
Wer einen direkten und interaktiven Zugang zum Controller haben will, sollte sich [http://amforth.sourceforge.net Forth] anschauen. Voraussetzung ist ein serieller Anschluß (Max232), also etwas mehr als die Minimalbeschaltung.&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
Bevor man anfängt, sollte man sich die folgenden PDF-Dateien runterladen und zumindest mal reinschauen:&lt;br /&gt;
&lt;br /&gt;
* [http://www.atmel.com/dyn/resources/prod_documents/doc2486.pdf Datenblatt des ATmega8 (4,54 MB)]&lt;br /&gt;
* [http://www.atmel.com/dyn/resources/prod_documents/doc0856.pdf Befehlssatz der AVRs (1,27 MB)]&lt;br /&gt;
* oder [http://www.avr-roboter.de/controller/befehle/befehle.html Befehlssatz in deutscher Übersetzung online]&lt;br /&gt;
&lt;br /&gt;
Das Datenblatt eines Controllers ist das wichtigste Dokument für einen Entwickler. Es enthält Informationen über die Pinbelegung, Versorgungsspannung, Beschaltung, Speicher, die Verwendung der IO-Komponenten und vieles mehr.&lt;br /&gt;
&lt;br /&gt;
Im Befehlssatz sind alle Assemblerbefehle der AVR-Controllerfamilie aufgelistet und erklärt.&lt;br /&gt;
 &lt;br /&gt;
{{Navigation_hochvor|	 &lt;br /&gt;
hochtext=Inhaltsverzeichnis|	 &lt;br /&gt;
hochlink=AVR-Tutorial|	 &lt;br /&gt;
vortext=I/O Grundlagen|	 &lt;br /&gt;
vorlink=AVR-Tutorial: IO-Grundlagen}}	 &lt;br /&gt;
 &lt;br /&gt;
[[Category:AVR-Tutorial]]&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37756</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37756"/>
		<updated>2009-07-13T18:14:43Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png|thumb|Oberfläche von Code::Blocks]]&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen, dass der [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc] bereits installiert ist.&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_compiler_settings.png|thumb|Dialog für Compiler-Einstellungen]]&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37755</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37755"/>
		<updated>2009-07-13T18:12:58Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png|thumb]]&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen, dass der [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc] bereits installiert ist.&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_compiler_settings.png|thumb]]&lt;br /&gt;
Nach der Installation der Entwicklungsumgebung ist unter &amp;quot;Settings-&amp;gt;Compiler and Debugger&amp;quot; für den GNU AVR GCC Compiler der Pfad zu den Compiler-Binaries einzustellen. Diese Einstellung ist in dem Dialog unter dem Reiter &amp;quot;Toolchain executables&amp;quot; vorzunehmen. Dabei ist darauf zu achten, dass bei &amp;quot;Selected Compiler&amp;quot; der &amp;quot;GNU AVR GCC Compiler&amp;quot; eingestellt ist. Falls notwendig, können hier auch andere Standard-Einstellungen für diesen Compiler vorgenommen werden.&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:Codeblocks_compiler_settings.png&amp;diff=37754</id>
		<title>Datei:Codeblocks compiler settings.png</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:Codeblocks_compiler_settings.png&amp;diff=37754"/>
		<updated>2009-07-13T18:11:21Z</updated>

		<summary type="html">&lt;p&gt;Msk: Dialog für die Compilereinstellungen von Codeblocks
(Quelle: selbst erstellt)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dialog für die Compilereinstellungen von Codeblocks&lt;br /&gt;
(Quelle: selbst erstellt)&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37753</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37753"/>
		<updated>2009-07-13T17:42:25Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png|thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen, dass der [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc] bereits installiert ist.&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;.&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37752</id>
		<title>Code::Blocks</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Code::Blocks&amp;diff=37752"/>
		<updated>2009-07-13T17:40:03Z</updated>

		<summary type="html">&lt;p&gt;Msk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Artikel beschreibt die Installation und den Umgang mit der Entwicklungsumgebung Code::Blocks und deren Unterstützung für AVR-Projekte.&lt;br /&gt;
&lt;br /&gt;
==  Allgemeines zu Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Code::Blocks ist eine freie Entwicklungsumgebung, die neben der normalen C/C++-Entwicklung auch Unterstützung für AVR-Projekte bietet. Sie ist für Linux, Windows und auch Mac OS verfügbar und basiert auf dem freien Cross-Plattform-Toolkit [http://www.wxwidgets.org wxWidgets].&lt;br /&gt;
&lt;br /&gt;
[[Bild:Codeblocks_overview.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Installation von Code::Blocks ==&lt;br /&gt;
&lt;br /&gt;
Auf der Webseite des Projektes ist ein Release der Entwicklungsumgebung verfügbar. Dieses ist jedoch in der Regel nicht sehr aktuell. Es ist auf alle Fälle empfehlenswert, eines der in der Regel sehr stabilen und aktuellen &amp;quot;Nightly Builds&amp;quot; zu nutzen. In den folgenden Abschnitten ist beschrieben, wie man das Nightly Build für das jeweilige Betriebssystem erhalten kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Windows===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Installation unter Linux===&lt;br /&gt;
&lt;br /&gt;
Es wird davon ausgegangen, dass der [http://www.mikrocontroller.net/articles/AVR-GCC avr-gcc] bereits installiert ist.&lt;br /&gt;
Wenn verfügbar, kann Code::Blocks über das der Distribution eigene Paketverwaltungssystem installiert werden. Falls nicht, muss die Entwicklungsumgebung aus den Quellen erstellt werden. Aktuelle Versionen sind dabei per Kommandozeilen-Befehl:&lt;br /&gt;
&lt;br /&gt;
svn checkout http://svn.berlios.de/svnroot/repos/codeblocks/trunk&lt;br /&gt;
&lt;br /&gt;
verfügbar (siehe auch [http://www.codeblocks.org/downloads/7 SVN]). Es wird ein Verzeichnis &amp;quot;trunk&amp;quot; angelegt, in dem sich die Quellen befinden. Eine Anleitung zur Installation befindet sich in der Datei &amp;quot;BUILD&amp;quot;.&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:Codeblocks_overview.png&amp;diff=37751</id>
		<title>Datei:Codeblocks overview.png</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:Codeblocks_overview.png&amp;diff=37751"/>
		<updated>2009-07-13T17:38:32Z</updated>

		<summary type="html">&lt;p&gt;Msk: Screenshot der Programmoberfläche von Code::Blocks
(Quelle: selbst erstellt)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot der Programmoberfläche von Code::Blocks&lt;br /&gt;
(Quelle: selbst erstellt)&lt;/div&gt;</summary>
		<author><name>Msk</name></author>
	</entry>
</feed>