<?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=84.154.149.161</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=84.154.149.161"/>
	<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/articles/Spezial:Beitr%C3%A4ge/84.154.149.161"/>
	<updated>2026-04-18T15:02:39Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Mikrocontroller_Vergleich&amp;diff=9127</id>
		<title>Mikrocontroller Vergleich</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Mikrocontroller_Vergleich&amp;diff=9127"/>
		<updated>2005-09-16T17:28:42Z</updated>

		<summary type="html">&lt;p&gt;84.154.149.161: JTAG auch bei Mega2560 und Mega644, also vom Chip weiterhin unterstützt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ein paar Kriterien für den CPU-Core und die µC-Familie.&lt;br /&gt;
&lt;br /&gt;
==Compiler verfügbar, bzw wieviel will man dafür ausgeben?==&lt;br /&gt;
&lt;br /&gt;
Und wie verbreitet ist der Compiler? Finde ich dafür Hilfe, beispielsweise in Form von Support-Foren?&lt;br /&gt;
&lt;br /&gt;
Für &#039;&#039;&#039;AVR&#039;&#039;&#039; und &#039;&#039;&#039;MSP430&#039;&#039;&#039; gibt es mit GCC einen guten und kostenlosen Compiler.&lt;br /&gt;
&lt;br /&gt;
Für &#039;&#039;&#039;PIC&#039;&#039;&#039; und &#039;&#039;&#039;8051&#039;&#039;&#039; kann man entweder SDCC verwenden (über dessen Qualität mögen andere urteilen, ich kenne ihn nicht). Oder diverse Löhnwares, bis 4-stellige Beträge (Keil: 2600&amp;amp;#8364;), teils auch als Demoversion mit Tricks.&lt;br /&gt;
&lt;br /&gt;
Bei &#039;&#039;&#039;PIC&#039;&#039;&#039; sind das der PICC Lite von HI-TECH, der nur eine handvoll PIC12 und PIC16 unterstützt, und der CC5X, welcher zwar keine High-End PICs unterstützt, dafür die meisten Mid-Range; einzige Einschränkung der freien Version des CC5X ist die Limitierung auf 1024 Instruktionen pro Modul, nicht so gute Codeoptimierung und die Begrenzung von Variablen auf 16-Bit. Ein Vergleich aller C-Compiler für PIC findet sich hier: http://www.informel.de/pic/ccompiler.htm&lt;br /&gt;
&lt;br /&gt;
Bei Zilog &#039;&#039;&#039;Z8e&#039;&#039;&#039; sind IDE und C-Compiler Bestandteil recht günstiger Development Kits.&lt;br /&gt;
&lt;br /&gt;
==Architektur==&lt;br /&gt;
&lt;br /&gt;
Betrifft vor allem Assembler-Programmierung und die Frage, wie einfach oder umständlich sich C-Code in Maschinensprache übersetzen lässt. &lt;br /&gt;
&lt;br /&gt;
Dass für alle Architekturen teils mehrere C-Compiler existieren, hat wenig mit Eignung und viel mit Markt zu tun. Zudem ist meist nur entscheidend, ob ein Controller die Anforderungen erfüllt, nicht jedoch wie gut er das tut.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Manches davon ist durchaus subjektiv. Bei abweichender Meinung bitte als Diskussion starten, nicht einfach löschen.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8051&#039;&#039;&#039;: Typische Akkumulator-orientierte 8-Bit Architektur. Eine gewisse Komplexität entstand durch die sukzessive Erweiterung auf mehr RAM als ursprünglich vorgesehen war, mit etlichen unterschiedlich adressierten RAM-Bereichen als Folge. Für C-Compiler nur eingeschränkt geeignet.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AVR&#039;&#039;&#039;: Register-orientierte, an RISC Prinzipien angelehnte 8-Bit Architektur. Getrennte Adressräume für RAM und ROM. Registersatz nicht einheitlich nutzbar. I/O-Bereich nicht einheitlich adressierbar. Nur ein Teil des I/O-Bereiches ist bitweise manipulierbar. Einheitliche RAM-Adressierung. Für C-Compiler geeignet.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MSP430&#039;&#039;&#039;: Register-orientierte 16-Bit Architektur. 2-Adress-CISC. Einheitlicher Adressraum für RAM und ROM. Exzellente Zielmaschine für C-Compiler. Angelehnt an die legendäre PDP-11, vieles wurde übernommen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PIC&#039;&#039;&#039;: Akkumulator-orientierte 8-Bit Architektur. Getrennte Adressräume für RAM und ROM. RAM-Banking, ROM-banking. Umständlicher Zugriff auf Daten im ROM (nur 12/14-Bit Versionen). Viele für C-Compiler wesentliche Elemente sind nur umständlich realisierbar (z.B. Code/Datenadressierung mit Banking, Vergleich mit Vorzeichen).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Z8e&#039;&#039;&#039;: Register-orientierte 8-Bit Architektur, 2-Adress-CISC. Getrennte Adressräume für RAM und ROM. Historisch bedingt 3 RAM-Adressräume (8-Bit, 12-Bit, 16-Bit). Für C-Compiler geeignet&lt;br /&gt;
&lt;br /&gt;
==Sind CPU-spezifische Erweiterungen in C erforderlich==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8051&#039;&#039;&#039;: &lt;br /&gt;
* 5-6 Speicherklassen für Datenspeicher (direkt, indirekt, 8-Bit &amp;quot;external&amp;quot;, 16-Bit &amp;quot;external&amp;quot;, Flash, evtl. noch Einzelbits).&lt;br /&gt;
* Zugriff auf I/O-Ports erfordert spezielle Zugriffsfunktionen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AVR&#039;&#039;&#039;: &lt;br /&gt;
* 2 Speicherklassen für Datenspeicher (RAM, ROM).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MSP430&#039;&#039;&#039;: nein.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PIC&#039;&#039;&#039;: &lt;br /&gt;
* 3 Speicherklassen für Datenspeicher (shared RAM, banked RAM, ROM).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Z8e&#039;&#039;&#039;:&lt;br /&gt;
* Für atomic execution (s.u.) notwendig, aber nicht existent.&lt;br /&gt;
* 4 Speicherklassen für Datenspeicher (256B, 4KB, 64KB, Flash).&lt;br /&gt;
&lt;br /&gt;
==Sind Daten in RAM und ROM mit dem gleichen Code benutzbar==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8051&#039;&#039;&#039;, &#039;&#039;&#039;AVR&#039;&#039;&#039;, &#039;&#039;&#039;PIC&#039;&#039;&#039;, &#039;&#039;&#039;Z8e&#039;&#039;&#039; wie generell alle [[Harvard-Architektur|Harvard-Architekturen]]: NEIN. Daten im ROM&lt;br /&gt;
erfordern anderen Zugriff als Daten im RAM. Entweder versteckt das der Compiler in Runtime-Routinen für Pointerzugriffe, oder man kann Routinen nicht so schreiben, dass sie beides als Parameter verdauen können. Bei kleinen Programmen von ein paar KB kein Problem, bei grösseren jedoch schon. Bei AVR/GCC ziemlich fehlerträchtig.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MSP430&#039;&#039;&#039;: [[von Neumann-Architektur]], problemlos.&lt;br /&gt;
&lt;br /&gt;
==Lineare Adressierung vom RAM?==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8051&#039;&#039;&#039;, &#039;&#039;&#039;AVR&#039;&#039;&#039;, &#039;&#039;&#039;MSP430&#039;&#039;&#039;, &#039;&#039;&#039;Z8e&#039;&#039;&#039;: kein Problem.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PIC&#039;&#039;&#039;: 16-bit PIC ja, 14-, 12-bit PIC nein. RAM-Puffer die grösser sind als das RAM in einer Bank sind nur mit Klimmzügen möglich.&lt;br /&gt;
&lt;br /&gt;
==Skalierbarkeit==&lt;br /&gt;
&lt;br /&gt;
Vor allem für jene wichtig, die sich scheuen, für&lt;br /&gt;
verschiedene Aufgaben verschiedene Lösungen zu verwenden. &lt;br /&gt;
&lt;br /&gt;
Spezielle Versionen für LCD-Ansteuerung wurden in dieser Übersicht nicht berücksichtigt.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8051&#039;&#039;&#039;: 20-Pin/2KB aufwärts, überwiegend 40/44-Pin und 64/68-Pin. Architekturbedingte Grenze bei 64KB Code, 64KB RAM - Versionen mit mehr Flash existieren wohl, via Banking (Compiler-Support?).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AVR&#039;&#039;&#039;: 8-Pin/1KB bis 64-Pin/128KB, 100-Pin/256KB in Vorbereitung. Architekturbedingte  Grenze bei 8MB Code, 64KB RAM. GCC/WinAVR derzeit nur bis 128KB Code möglich (in Arbeit).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MSP430&#039;&#039;&#039;: 20-Pin/1KB bis 64-Pin/60KB. Architekturbedingte Grenze von 64KB für Code+Daten. Taktfrequenz: 32768 Hz bis maximal 8 bis 16 MHz je nach Familie. Stromaufnahme: Rund 2 uA im LPM3 (real time clock mode) bis ca. 5 mA.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PIC&#039;&#039;&#039;: 6-Pin/512B aufwärts. Im Prinzip grosser Bereich, aber innerhalb der Familie deutlich verschiedene inkompatible Architekturen mit unterschiedlichen architekturbedingen Grenzen und unterschiedlichem Compiler-Support.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Z8e&#039;&#039;&#039;: Bis 64KB Flash. Architekturbedingte Grenze bei 64KB Code, 64KB RAM.&lt;br /&gt;
&lt;br /&gt;
Empfehlung hier: Auch wenn teilweise mehr möglich ist, ist diese Klasse dennoch nur bis maximal 40-60K empfehlenswert. Darüber sollte eine 32-Bit Architektur - z.B. mit [[ARM]]-Core - in Betracht gezogen werden. Insbesondere auch, weil grosse Programme zu Programm- und Datenstrukturen neigen, die sich auf 8-Bit Prozessoren schlecht abbilden lassen.&lt;br /&gt;
&lt;br /&gt;
==Interrupt-feste Programmierung von I/O-Ports==&lt;br /&gt;
&lt;br /&gt;
Das ist besonders bei AVRs (außer den Typen seit 2004: ATtiny2313 usw.) ein Problem. Architekturbedingt ist nur ein Teil der Ports bitweise schaltbar, kein Port kann mehrere Bits gleichzeitig interrupt-fest schalten. Daher ist es eigentlich oft (dann wenn die betreffenden Register in Interrupt-Routinen &#039;&#039;und&#039;&#039; im Hauptprogramm verändert werden) nötig, um Port-I/O herum Port-ändernde Interrupts abzuschalten, was aber kaum jemand macht. Folge: ab und zu &amp;quot;seltsames Verhalten&amp;quot;, nicht reproduzierbar. Besonders gefährlich bei Software-Baukasten-Prinzip, wenn da manche Selbstverständlichkeiten eines Moduls plötzlich nicht mehr so selbstverständlich sind. &lt;br /&gt;
&lt;br /&gt;
PIC, 8051, MSP430, Z8e können AND/OR/XOR zum Port hin, daher im Prinzip kein&lt;br /&gt;
Problem - daran denken muss man aber trotzdem (auch das kommt wohl eher&lt;br /&gt;
selten vor).&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
    port |= 0x03;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
übersetzt sich in&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
    IN  r,port&lt;br /&gt;
    ORI r,0x03&lt;br /&gt;
    OUT port,r&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Wenn nun zwischen IN und OUT ein Interrupt auftritt, der ein anderes Bit des Ports verändert, dann geht mit dem OUT-Befehl diese Änderung verloren.&lt;br /&gt;
&lt;br /&gt;
Bei MSP430 hingegen ist das ein einziger Befehl, somit problemlos:&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
    OR  #0x03,port&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Code wie&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
    port = (port &amp;amp; ~0x0F) | lcd_data;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
ist grundsätzlich problematisch, weil das auf jedem Prozessor in mehrere Befehle zerlegt wird. Bei den AVR Typen seit 2004 lässt sich das ohne Abschaltung von Interrupts beispielsweise durch Verwendung der Pin-Toogle-Funktion lösen:&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
PINA = (PORTA &amp;amp; 0x0F) ^ lcd_data;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Besonders pfiffig ist das beim Z8e gelöst. Ein Befehl fasst die nächsten 3 Befehle zu einer nicht unterbrechbaren Einheit zusammen (atomic execution). Allerdings wird das vom Zilog Compiler nicht unterstützt.&lt;br /&gt;
&lt;br /&gt;
==Zugriff auf I/O-Ports==&lt;br /&gt;
&lt;br /&gt;
Der &#039;&#039;&#039;8051&#039;&#039;&#039; verfügt weder über eigene Register für die Steuerung der Richtung der I/O-Ports, noch über die Möglichkeit, lesend auf den Sollzustand der Ausgänge zuzugreifen. In Assembler ist das kein Problem, da abhängig vom Befehl entweder vom Zustand der Pins (Leseoperationen) oder vom Sollzustand der Ausgänge (kombinierte Lese/Schreiboperationen) ausgegangen wird. Ein korrekt arbeitender C Compiler kann damit jedoch nicht umgehen, weshalb für die Steuerung von Port-Pins spezielle Zugriffsfunktionen und eine sehr genaue Kenntnis der Arbeitsweise der Ports erforderlich sind.&lt;br /&gt;
&lt;br /&gt;
Anmerkung zum Keil 8051-Compiler: Port-Zugriff erfolgt über Pseudo-Variablen wie bei µC üblich. Infolgedessen ist in C Code nicht ersichtlich, ob beispielsweise die Port-Variable P1 für den Zustand der Pins oder den Sollzustand der Ausgänge steht. Nur der erzeugte Assembler-Code kann hier Klarheit schaffen. So haben die beiden prinzipiell identischen Zeilen&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
P1 = P1 | 0x01;&lt;br /&gt;
P1 = (P1 | 0x01) &amp;amp; ~0;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
völlig unterschiedliche Auswirkung auf den Port. Der Code der ersten Zeile setzt Bit 0 und lässt alle anderen Bits unverändert. Der von der zweiten Zeile erzeugte Code setzt zusätzlich auch alle vorher als Eingang definierten Pins im Zustand 0 auf Ausgang mit Zustand 0. Das ist weder hilfreich, noch mit der Sprachdefinition von C vereinbar.&lt;br /&gt;
&lt;br /&gt;
Auch manche Modelle der &#039;&#039;&#039;PIC&#039;&#039;&#039;-Familie können nur auf den Zustand der Pins zugreifen, nicht auf den Sollzustand der Ausgänge.&lt;br /&gt;
&lt;br /&gt;
In beiden Fällen ist folglich bei Ports, die sowohl für Aus- als auch für Eingänge benutzt werden, besondere Sorgfalt nötig.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AVR&#039;&#039;&#039;, &#039;&#039;&#039;Z8e&#039;&#039;&#039; und neuere Modelle der &#039;&#039;&#039;PIC&#039;&#039;&#039;-Familie besitzen diese Probleme nicht.&lt;br /&gt;
&lt;br /&gt;
==Priorisierte Interrupts==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8051&#039;&#039;&#039;: Ja.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AVR:&#039;&#039;&#039; Nein, aber separate Vektoren. Beim Sprung in die Interruptroutine wird implizit ein CLI ausgeführt, beim Rücksprung ein SEI. Ein &amp;quot;unwichtiger Interrupt&amp;quot; blockiert also evtl. einen &amp;quot;wichtigen&amp;quot;. Immerhin haben Interruptquellen im Gegensatz zum PIC ihre eigenen Interruptvektoren, so daß keine Zeit mit der Suche nach der Quelle verbracht wird.&lt;br /&gt;
Um trotzdem für eine von mehreren Interruptquellen eine Reaktionszeiten im unteren Mikrosekundenbereich zu garantieren, hilft nur ein Trick: die weniger wichtigen Interruptroutinen tun nichts als eine Programmadresse auf den Stack zu PUSHen. Das RETI springt also zu dieser Adresse mit der eigentlichen Interruptbehandlung, das RET am Ende der Routine springt zur ursprünglichen Unterbruchstelle zurück; der zeitkritische Interrupt kann damit die andere Interruptbehandlung unterbrechen. &#039;&#039;Achtung: es muß gewährleistet sein, daß auch im worst case ein Interrupt sich nicht selbst unterbricht!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Anmerkung: Eine (unwichtige) Interruptroutine kann sofort nach Ansprung ein SEI ausführen, damit eine (unwichtige) Interruptroutine jederzeit von einer anderen (wichtigeren) Interruptroutine unterbrochen werden kann. Das kann pro Interruptvektor individuell entschieden werden. Dies ist jedoch nicht bei allen Interrupt-Quellen möglich (beispielsweise nicht beim TWI).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MSP430:&#039;&#039;&#039; Nein, aber separate Vektoren.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PIC12 &amp;amp; PIC16:&#039;&#039;&#039; Nein, nur ein Interruptvektor.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PIC18:&#039;&#039;&#039; Jeder Interruptquelle kann separat eine niedrige oder hohe Priorität zugewiesen werden, die dann auf zwei Interruptvektoren verzweigen. Welche Quelle den Interrupt ausgelöst hat, muß aber immer noch händisch festgestellt werden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PIC17:&#039;&#039;&#039; Vier Interruptvektoren mit unterschiedlicher Priorität. Scheint es allerdings nur als OTP zu geben, deswegen wohl eher uninteressant.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Z8e&#039;&#039;&#039;: Ja.&lt;br /&gt;
&lt;br /&gt;
== I/O-Spannung==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8051&#039;&#039;&#039;, &#039;&#039;&#039;AVR&#039;&#039;&#039;, &#039;&#039;&#039;PIC&#039;&#039;&#039;: 3-5V problemlos (evtl. eingeschränkte µC-Auswahl?).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MSP430&#039;&#039;&#039;: nur 1.8-3.6V. Nicht 5V-kompatibel, 5V-Peripherie für I2C/RS485/CAN/... ist also nur mit Pegelkonvertierung einsetzbar.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Z8e&#039;&#039;&#039;: 3V-Core, 5V-kompatibel.&lt;br /&gt;
&lt;br /&gt;
==Debugging in der Schaltung==&lt;br /&gt;
&lt;br /&gt;
Ist beispielsweise ein günstiges JTAG-Interface für In-Circuit&lt;br /&gt;
Debugging verfügbar?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8051&#039;&#039;&#039;: Derivate mit JTAG verfügbar. ICEen gebraucht erschwinglich.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AVR&#039;&#039;&#039;: bei ATmegas mit 16 KB und mehr Flash (Ausnahme: ATmega103 und ATmega168) JTAG günstig verfügbar&lt;br /&gt;
[Evertool, Olimex, Erostech] oder einfach zu bauen. Neue ATtinys und MegaX8 per debugWIRE, arg teuer.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MSP430&#039;&#039;&#039;: alle mit JTAG, Adapter sehr günstig/einfach zu bauen&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PIC&#039;&#039;&#039;: Entweder Microchips MPLAB ICD2 (&amp;amp;#8364;150-200) oder ein kompatibler Nachbau, wie z.B. http://www.stolz.de.be/&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Z8e&#039;&#039;&#039;: Debugging möglich mit &amp;quot;Smart Cable&amp;quot; (kein JTAG), Anschluss über USB oder Seriell&lt;br /&gt;
&lt;br /&gt;
==Starterkits==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8051&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AVR&#039;&#039;&#039;: [[STK200]], [[STK500]], [[AVR_Butterfly]], [[SiSy AVR Starterkit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MSP430&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;PIC&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Z8e&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
==Gehäuse==&lt;br /&gt;
&lt;br /&gt;
Mit DIP oder PLCC bastelt es sich leichter als mit *QFP. Die Domäne von&lt;br /&gt;
AVR/PIC/i51. Z8e-Chips existieren ebenfalls in DIP, sind aber schlechter verfügbar.&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
&lt;br /&gt;
* [http://www.mikrocontroller.net/forum/read-1-185133.html#new Forum]&lt;br /&gt;
* [[8051]]&lt;br /&gt;
* [[AVR]]&lt;br /&gt;
* [[PIC]]&lt;br /&gt;
* [[Z8]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Mikrocontroller]]&lt;/div&gt;</summary>
		<author><name>84.154.149.161</name></author>
	</entry>
</feed>