<?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=Hans</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=Hans"/>
	<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/articles/Spezial:Beitr%C3%A4ge/Hans"/>
	<updated>2026-04-13T08:47:52Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Diskussion:Soft-PWM&amp;diff=25465</id>
		<title>Diskussion:Soft-PWM</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Diskussion:Soft-PWM&amp;diff=25465"/>
		<updated>2008-01-10T15:58:38Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Vielleicht wärs nicht schlecht auch noch drauf hinzuweise, dass man duch ein einfaches bit-reverse die Schaltfrequenz auf die Timer-Zykluszeit hochbringen kann... Damit ist dann das obligatorische Filtern viel einfacher...&lt;br /&gt;
&lt;br /&gt;
Ich hab leider keinen passenden Link gefunden der das illustriert aber mann man ja recht einfach nachprüfen...&lt;br /&gt;
&lt;br /&gt;
Den Zählerwert mit dieser Tabelle &lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
static const unsigned char BitReverseTable256[] = &lt;br /&gt;
{&lt;br /&gt;
  0x00, 0x80, 0x40, 0xC0, 0x20, 0xA0, 0x60, 0xE0, 0x10, 0x90, 0x50, 0xD0, 0x30, 0xB0, 0x70, 0xF0, &lt;br /&gt;
  0x08, 0x88, 0x48, 0xC8, 0x28, 0xA8, 0x68, 0xE8, 0x18, 0x98, 0x58, 0xD8, 0x38, 0xB8, 0x78, 0xF8, &lt;br /&gt;
  0x04, 0x84, 0x44, 0xC4, 0x24, 0xA4, 0x64, 0xE4, 0x14, 0x94, 0x54, 0xD4, 0x34, 0xB4, 0x74, 0xF4, &lt;br /&gt;
  0x0C, 0x8C, 0x4C, 0xCC, 0x2C, 0xAC, 0x6C, 0xEC, 0x1C, 0x9C, 0x5C, 0xDC, 0x3C, 0xBC, 0x7C, 0xFC, &lt;br /&gt;
  0x02, 0x82, 0x42, 0xC2, 0x22, 0xA2, 0x62, 0xE2, 0x12, 0x92, 0x52, 0xD2, 0x32, 0xB2, 0x72, 0xF2, &lt;br /&gt;
  0x0A, 0x8A, 0x4A, 0xCA, 0x2A, 0xAA, 0x6A, 0xEA, 0x1A, 0x9A, 0x5A, 0xDA, 0x3A, 0xBA, 0x7A, 0xFA,&lt;br /&gt;
  0x06, 0x86, 0x46, 0xC6, 0x26, 0xA6, 0x66, 0xE6, 0x16, 0x96, 0x56, 0xD6, 0x36, 0xB6, 0x76, 0xF6, &lt;br /&gt;
  0x0E, 0x8E, 0x4E, 0xCE, 0x2E, 0xAE, 0x6E, 0xEE, 0x1E, 0x9E, 0x5E, 0xDE, 0x3E, 0xBE, 0x7E, 0xFE,&lt;br /&gt;
  0x01, 0x81, 0x41, 0xC1, 0x21, 0xA1, 0x61, 0xE1, 0x11, 0x91, 0x51, 0xD1, 0x31, 0xB1, 0x71, 0xF1,&lt;br /&gt;
  0x09, 0x89, 0x49, 0xC9, 0x29, 0xA9, 0x69, 0xE9, 0x19, 0x99, 0x59, 0xD9, 0x39, 0xB9, 0x79, 0xF9, &lt;br /&gt;
  0x05, 0x85, 0x45, 0xC5, 0x25, 0xA5, 0x65, 0xE5, 0x15, 0x95, 0x55, 0xD5, 0x35, 0xB5, 0x75, 0xF5,&lt;br /&gt;
  0x0D, 0x8D, 0x4D, 0xCD, 0x2D, 0xAD, 0x6D, 0xED, 0x1D, 0x9D, 0x5D, 0xDD, 0x3D, 0xBD, 0x7D, 0xFD,&lt;br /&gt;
  0x03, 0x83, 0x43, 0xC3, 0x23, 0xA3, 0x63, 0xE3, 0x13, 0x93, 0x53, 0xD3, 0x33, 0xB3, 0x73, 0xF3, &lt;br /&gt;
  0x0B, 0x8B, 0x4B, 0xCB, 0x2B, 0xAB, 0x6B, 0xEB, 0x1B, 0x9B, 0x5B, 0xDB, 0x3B, 0xBB, 0x7B, 0xFB,&lt;br /&gt;
  0x07, 0x87, 0x47, 0xC7, 0x27, 0xA7, 0x67, 0xE7, 0x17, 0x97, 0x57, 0xD7, 0x37, 0xB7, 0x77, 0xF7, &lt;br /&gt;
  0x0F, 0x8F, 0x4F, 0xCF, 0x2F, 0xAF, 0x6F, 0xEF, 0x1F, 0x9F, 0x5F, 0xDF, 0x3F, 0xBF, 0x7F, 0xFF&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
und dann vergleicht man eigentlich BitReverseTable256[ZÄHLERWERT] mit dem eingestellten PWM-Wert...&lt;br /&gt;
&lt;br /&gt;
Wenn man jetzt z.b 50% dutycycle betrachtet erkennt man schon ganz deutlich die Verbesserung:&lt;br /&gt;
bei jedem Vergleich wird getoggelt!&lt;br /&gt;
&lt;br /&gt;
Warum kein einziger Controller den ich kenne sowas macht versteh ich nicht...&lt;br /&gt;
&lt;br /&gt;
Derzeit bastle ich an einer einfachen Motorsteuerung und da wird eben ein DC-Motor per PWM vergewaltigt.&lt;br /&gt;
Software-PWM deshalb weil ich den Timer sowieso zur Zeitmessung verwende..&lt;br /&gt;
Mit dieser Methode hab&#039; ich jetzt eine Schaltfrequenz am Motor von 14kHz :)&lt;br /&gt;
&lt;br /&gt;
73&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Vielleicht wärs nicht schlecht auch noch drauf hinzuweise, dass man duch ein &amp;gt;einfaches bit-reverse die Schaltfrequenz auf die Timer-Zykluszeit hochbringen &amp;gt;kann... Damit ist dann das obligatorische Filtern viel einfacher...&lt;br /&gt;
&lt;br /&gt;
Das nennt sich Puls-DICHTE-Modulation&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Wenn man jetzt z.b 50% dutycycle betrachtet erkennt man schon ganz deutlich die &amp;gt;Verbesserung:&lt;br /&gt;
&amp;gt;bei jedem Vergleich wird getoggelt!&lt;br /&gt;
&lt;br /&gt;
Fast.&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Warum kein einziger Controller den ich kenne sowas macht versteh ich nicht...&lt;br /&gt;
&lt;br /&gt;
Für PWM/PDM zur Erzeugung von Referenzspannungen für ADC, whatever ist das ganz nützlich. Aber . . .&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Derzeit bastle ich an einer einfachen Motorsteuerung und da wird eben ein &amp;gt;DC-Motor per PWM vergewaltigt.&lt;br /&gt;
&amp;gt;Software-PWM deshalb weil ich den Timer sowieso zur Zeitmessung verwende..&lt;br /&gt;
&amp;gt;Mit dieser Methode hab&#039; ich jetzt eine Schaltfrequenz am Motor von 14kHz :)&lt;br /&gt;
&lt;br /&gt;
Eben für Leistungsendstufen ist das quasi unbrauchbar, weil dann die Schaltverluste zu hoch werden, weil zu oft geschaltet wird.&lt;br /&gt;
&lt;br /&gt;
MFG&lt;br /&gt;
Falk&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Die Schaltverluste sollten eigentlich mit guten FETs und relativ wenig Strom nicht gravierend sein...&lt;br /&gt;
&lt;br /&gt;
Das einzige was bäse ist beim schnellen Schalten ist das EMV-Problem...&lt;br /&gt;
&lt;br /&gt;
Auf jedenfall rennt bei mir der Motor so sauberer... also viel konstanteres Moment.&lt;br /&gt;
Vor allem wenn er langsam über eine Rampe hochläuft merkt man das...&lt;br /&gt;
&lt;br /&gt;
73&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 16:58, 10. Jan. 2008 (CET)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Diskussion:Soft-PWM&amp;diff=25464</id>
		<title>Diskussion:Soft-PWM</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Diskussion:Soft-PWM&amp;diff=25464"/>
		<updated>2008-01-10T15:58:06Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Vielleicht wärs nicht schlecht auch noch drauf hinzuweise, dass man duch ein einfaches bit-reverse die Schaltfrequenz auf die Timer-Zykluszeit hochbringen kann... Damit ist dann das obligatorische Filtern viel einfacher...&lt;br /&gt;
&lt;br /&gt;
Ich hab leider keinen passenden Link gefunden der das illustriert aber mann man ja recht einfach nachprüfen...&lt;br /&gt;
&lt;br /&gt;
Den Zählerwert mit dieser Tabelle &lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
static const unsigned char BitReverseTable256[] = &lt;br /&gt;
{&lt;br /&gt;
  0x00, 0x80, 0x40, 0xC0, 0x20, 0xA0, 0x60, 0xE0, 0x10, 0x90, 0x50, 0xD0, 0x30, 0xB0, 0x70, 0xF0, &lt;br /&gt;
  0x08, 0x88, 0x48, 0xC8, 0x28, 0xA8, 0x68, 0xE8, 0x18, 0x98, 0x58, 0xD8, 0x38, 0xB8, 0x78, 0xF8, &lt;br /&gt;
  0x04, 0x84, 0x44, 0xC4, 0x24, 0xA4, 0x64, 0xE4, 0x14, 0x94, 0x54, 0xD4, 0x34, 0xB4, 0x74, 0xF4, &lt;br /&gt;
  0x0C, 0x8C, 0x4C, 0xCC, 0x2C, 0xAC, 0x6C, 0xEC, 0x1C, 0x9C, 0x5C, 0xDC, 0x3C, 0xBC, 0x7C, 0xFC, &lt;br /&gt;
  0x02, 0x82, 0x42, 0xC2, 0x22, 0xA2, 0x62, 0xE2, 0x12, 0x92, 0x52, 0xD2, 0x32, 0xB2, 0x72, 0xF2, &lt;br /&gt;
  0x0A, 0x8A, 0x4A, 0xCA, 0x2A, 0xAA, 0x6A, 0xEA, 0x1A, 0x9A, 0x5A, 0xDA, 0x3A, 0xBA, 0x7A, 0xFA,&lt;br /&gt;
  0x06, 0x86, 0x46, 0xC6, 0x26, 0xA6, 0x66, 0xE6, 0x16, 0x96, 0x56, 0xD6, 0x36, 0xB6, 0x76, 0xF6, &lt;br /&gt;
  0x0E, 0x8E, 0x4E, 0xCE, 0x2E, 0xAE, 0x6E, 0xEE, 0x1E, 0x9E, 0x5E, 0xDE, 0x3E, 0xBE, 0x7E, 0xFE,&lt;br /&gt;
  0x01, 0x81, 0x41, 0xC1, 0x21, 0xA1, 0x61, 0xE1, 0x11, 0x91, 0x51, 0xD1, 0x31, 0xB1, 0x71, 0xF1,&lt;br /&gt;
  0x09, 0x89, 0x49, 0xC9, 0x29, 0xA9, 0x69, 0xE9, 0x19, 0x99, 0x59, 0xD9, 0x39, 0xB9, 0x79, 0xF9, &lt;br /&gt;
  0x05, 0x85, 0x45, 0xC5, 0x25, 0xA5, 0x65, 0xE5, 0x15, 0x95, 0x55, 0xD5, 0x35, 0xB5, 0x75, 0xF5,&lt;br /&gt;
  0x0D, 0x8D, 0x4D, 0xCD, 0x2D, 0xAD, 0x6D, 0xED, 0x1D, 0x9D, 0x5D, 0xDD, 0x3D, 0xBD, 0x7D, 0xFD,&lt;br /&gt;
  0x03, 0x83, 0x43, 0xC3, 0x23, 0xA3, 0x63, 0xE3, 0x13, 0x93, 0x53, 0xD3, 0x33, 0xB3, 0x73, 0xF3, &lt;br /&gt;
  0x0B, 0x8B, 0x4B, 0xCB, 0x2B, 0xAB, 0x6B, 0xEB, 0x1B, 0x9B, 0x5B, 0xDB, 0x3B, 0xBB, 0x7B, 0xFB,&lt;br /&gt;
  0x07, 0x87, 0x47, 0xC7, 0x27, 0xA7, 0x67, 0xE7, 0x17, 0x97, 0x57, 0xD7, 0x37, 0xB7, 0x77, 0xF7, &lt;br /&gt;
  0x0F, 0x8F, 0x4F, 0xCF, 0x2F, 0xAF, 0x6F, 0xEF, 0x1F, 0x9F, 0x5F, 0xDF, 0x3F, 0xBF, 0x7F, 0xFF&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
und dann vergleicht man eigentlich BitReverseTable256[ZÄHLERWERT] mit dem eingestellten PWM-Wert...&lt;br /&gt;
&lt;br /&gt;
Wenn man jetzt z.b 50% dutycycle betrachtet erkennt man schon ganz deutlich die Verbesserung:&lt;br /&gt;
bei jedem Vergleich wird getoggelt!&lt;br /&gt;
&lt;br /&gt;
Warum kein einziger Controller den ich kenne sowas macht versteh ich nicht...&lt;br /&gt;
&lt;br /&gt;
Derzeit bastle ich an einer einfachen Motorsteuerung und da wird eben ein DC-Motor per PWM vergewaltigt.&lt;br /&gt;
Software-PWM deshalb weil ich den Timer sowieso zur Zeitmessung verwende..&lt;br /&gt;
Mit dieser Methode hab&#039; ich jetzt eine Schaltfrequenz am Motor von 14kHz :)&lt;br /&gt;
&lt;br /&gt;
73&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Vielleicht wärs nicht schlecht auch noch drauf hinzuweise, dass man duch ein &amp;gt;einfaches bit-reverse die Schaltfrequenz auf die Timer-Zykluszeit hochbringen &amp;gt;kann... Damit ist dann das obligatorische Filtern viel einfacher...&lt;br /&gt;
&lt;br /&gt;
Das nennt sich Puls-DICHTE-Modulation&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Wenn man jetzt z.b 50% dutycycle betrachtet erkennt man schon ganz deutlich die &amp;gt;Verbesserung:&lt;br /&gt;
&amp;gt;bei jedem Vergleich wird getoggelt!&lt;br /&gt;
&lt;br /&gt;
Fast.&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Warum kein einziger Controller den ich kenne sowas macht versteh ich nicht...&lt;br /&gt;
&lt;br /&gt;
Für PWM/PDM zur Erzeugung von Referenzspannungen für ADC, whatever ist das ganz nützlich. Aber . . .&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Derzeit bastle ich an einer einfachen Motorsteuerung und da wird eben ein &amp;gt;DC-Motor per PWM vergewaltigt.&lt;br /&gt;
&amp;gt;Software-PWM deshalb weil ich den Timer sowieso zur Zeitmessung verwende..&lt;br /&gt;
&amp;gt;Mit dieser Methode hab&#039; ich jetzt eine Schaltfrequenz am Motor von 14kHz :)&lt;br /&gt;
&lt;br /&gt;
Eben für Leistungsendstufen ist das quasi unbrauchbar, weil dann die Schaltverluste zu hoch werden, weil zu oft geschaltet wird.&lt;br /&gt;
&lt;br /&gt;
MFG&lt;br /&gt;
Falk&lt;br /&gt;
&lt;br /&gt;
Die Schaltverluste sollten eigentlich mit guten FETs und relativ wenig Strom nicht gravierend sein...&lt;br /&gt;
&lt;br /&gt;
Das einzige was bäse ist beim schnellen Schalten ist das EMV-Problem...&lt;br /&gt;
&lt;br /&gt;
Auf jedenfall rennt bei mir der Motor so sauberer... also viel konstanteres Moment.&lt;br /&gt;
Vor allem wenn er langsam über eine Rampe hochläuft merkt man das...&lt;br /&gt;
&lt;br /&gt;
73&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 16:58, 10. Jan. 2008 (CET)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Diskussion:Soft-PWM&amp;diff=25461</id>
		<title>Diskussion:Soft-PWM</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Diskussion:Soft-PWM&amp;diff=25461"/>
		<updated>2008-01-10T13:31:08Z</updated>

		<summary type="html">&lt;p&gt;Hans: Die Seite wurde neu angelegt: Vielleicht wärs nicht schlecht auch noch drauf hinzuweise, dass man duch ein einfaches bit-reverse die Schaltfrequenz auf die Timer-Zykluszeit hochbringen kann... Dami...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Vielleicht wärs nicht schlecht auch noch drauf hinzuweise, dass man duch ein einfaches bit-reverse die Schaltfrequenz auf die Timer-Zykluszeit hochbringen kann... Damit ist dann das obligatorische Filtern viel einfacher...&lt;br /&gt;
&lt;br /&gt;
Ich hab leider keinen passenden Link gefunden der das illustriert aber mann man ja recht einfach nachprüfen...&lt;br /&gt;
&lt;br /&gt;
Den Zählerwert mit dieser Tabelle &lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
static const unsigned char BitReverseTable256[] = &lt;br /&gt;
{&lt;br /&gt;
  0x00, 0x80, 0x40, 0xC0, 0x20, 0xA0, 0x60, 0xE0, 0x10, 0x90, 0x50, 0xD0, 0x30, 0xB0, 0x70, 0xF0, &lt;br /&gt;
  0x08, 0x88, 0x48, 0xC8, 0x28, 0xA8, 0x68, 0xE8, 0x18, 0x98, 0x58, 0xD8, 0x38, 0xB8, 0x78, 0xF8, &lt;br /&gt;
  0x04, 0x84, 0x44, 0xC4, 0x24, 0xA4, 0x64, 0xE4, 0x14, 0x94, 0x54, 0xD4, 0x34, 0xB4, 0x74, 0xF4, &lt;br /&gt;
  0x0C, 0x8C, 0x4C, 0xCC, 0x2C, 0xAC, 0x6C, 0xEC, 0x1C, 0x9C, 0x5C, 0xDC, 0x3C, 0xBC, 0x7C, 0xFC, &lt;br /&gt;
  0x02, 0x82, 0x42, 0xC2, 0x22, 0xA2, 0x62, 0xE2, 0x12, 0x92, 0x52, 0xD2, 0x32, 0xB2, 0x72, 0xF2, &lt;br /&gt;
  0x0A, 0x8A, 0x4A, 0xCA, 0x2A, 0xAA, 0x6A, 0xEA, 0x1A, 0x9A, 0x5A, 0xDA, 0x3A, 0xBA, 0x7A, 0xFA,&lt;br /&gt;
  0x06, 0x86, 0x46, 0xC6, 0x26, 0xA6, 0x66, 0xE6, 0x16, 0x96, 0x56, 0xD6, 0x36, 0xB6, 0x76, 0xF6, &lt;br /&gt;
  0x0E, 0x8E, 0x4E, 0xCE, 0x2E, 0xAE, 0x6E, 0xEE, 0x1E, 0x9E, 0x5E, 0xDE, 0x3E, 0xBE, 0x7E, 0xFE,&lt;br /&gt;
  0x01, 0x81, 0x41, 0xC1, 0x21, 0xA1, 0x61, 0xE1, 0x11, 0x91, 0x51, 0xD1, 0x31, 0xB1, 0x71, 0xF1,&lt;br /&gt;
  0x09, 0x89, 0x49, 0xC9, 0x29, 0xA9, 0x69, 0xE9, 0x19, 0x99, 0x59, 0xD9, 0x39, 0xB9, 0x79, 0xF9, &lt;br /&gt;
  0x05, 0x85, 0x45, 0xC5, 0x25, 0xA5, 0x65, 0xE5, 0x15, 0x95, 0x55, 0xD5, 0x35, 0xB5, 0x75, 0xF5,&lt;br /&gt;
  0x0D, 0x8D, 0x4D, 0xCD, 0x2D, 0xAD, 0x6D, 0xED, 0x1D, 0x9D, 0x5D, 0xDD, 0x3D, 0xBD, 0x7D, 0xFD,&lt;br /&gt;
  0x03, 0x83, 0x43, 0xC3, 0x23, 0xA3, 0x63, 0xE3, 0x13, 0x93, 0x53, 0xD3, 0x33, 0xB3, 0x73, 0xF3, &lt;br /&gt;
  0x0B, 0x8B, 0x4B, 0xCB, 0x2B, 0xAB, 0x6B, 0xEB, 0x1B, 0x9B, 0x5B, 0xDB, 0x3B, 0xBB, 0x7B, 0xFB,&lt;br /&gt;
  0x07, 0x87, 0x47, 0xC7, 0x27, 0xA7, 0x67, 0xE7, 0x17, 0x97, 0x57, 0xD7, 0x37, 0xB7, 0x77, 0xF7, &lt;br /&gt;
  0x0F, 0x8F, 0x4F, 0xCF, 0x2F, 0xAF, 0x6F, 0xEF, 0x1F, 0x9F, 0x5F, 0xDF, 0x3F, 0xBF, 0x7F, 0xFF&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
und dann vergleicht man eigentlich BitReverseTable256[ZÄHLERWERT] mit dem eingestellten PWM-Wert...&lt;br /&gt;
&lt;br /&gt;
Wenn man jetzt z.b 50% dutycycle betrachtet erkennt man schon ganz deutlich die Verbesserung:&lt;br /&gt;
bei jedem Vergleich wird getoggelt!&lt;br /&gt;
&lt;br /&gt;
Warum kein einziger Controller den ich kenne sowas macht versteh ich nicht...&lt;br /&gt;
&lt;br /&gt;
Derzeit bastle ich an einer einfachen Motorsteuerung und da wird eben ein DC-Motor per PWM vergewaltigt.&lt;br /&gt;
Software-PWM deshalb weil ich den Timer sowieso zur Zeitmessung verwende..&lt;br /&gt;
Mit dieser Methode hab&#039; ich jetzt eine Schaltfrequenz am Motor von 14kHz :)&lt;br /&gt;
&lt;br /&gt;
73&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Schaltungssimulation&amp;diff=23479</id>
		<title>Schaltungssimulation</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Schaltungssimulation&amp;diff=23479"/>
		<updated>2007-08-24T09:24:58Z</updated>

		<summary type="html">&lt;p&gt;Hans: verpasted... Maxima war nicht richtig eingeordnet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Analog==&lt;br /&gt;
Für Analogsimulation und Mixed-Mode (Digital/Analog) ist Spice State-of-the-art.&lt;br /&gt;
Spice ist inzwischen von vielen Herstellern erhältlich.&lt;br /&gt;
&lt;br /&gt;
===PSpice===&lt;br /&gt;
&lt;br /&gt;
http://www.orcad.com/download.orcaddemo.aspx&lt;br /&gt;
* nur für Windows&lt;br /&gt;
* kostenlos mit Größeneinschränkung&lt;br /&gt;
* Version 8 ist etwas übersichtlicher als die aktuelle&lt;br /&gt;
* Einführungen&lt;br /&gt;
** http://people.fh-landshut.de/~wlf/Pspice/Einfuehrung/Einfuehrung.pdf&lt;br /&gt;
** http://www.elektronikschule.de/~krausg/ (links im Menü &amp;quot;Einstieg in PSpice leichtgemacht&amp;quot;)&lt;br /&gt;
** [http://www.spicelab.de/index.htm Robert Heinemanns PSPICE-Seiten]&lt;br /&gt;
&lt;br /&gt;
===Simplorer===&lt;br /&gt;
&lt;br /&gt;
http://www.ansoft.com/downloads.cfm&lt;br /&gt;
*kostenlose Studentenversion&lt;br /&gt;
===LTSpice/SwitcherCAD===&lt;br /&gt;
&lt;br /&gt;
http://www.linear.com/company/software.jsp&lt;br /&gt;
* kostenlos&lt;br /&gt;
* als Einstieg empfehlenswert, da sehr übersichtlich&lt;br /&gt;
* läuft mit wine unter Linux.&lt;br /&gt;
* kleine Einführung: http://www.lme.fh-muenchen.de/lst/spice/LTSpiceInfo.pdf&lt;br /&gt;
* International User Group: http://groups.yahoo.com/group/LTspice/&lt;br /&gt;
&lt;br /&gt;
Eine Liste von Bauteilen, die aus verschiedenen Quellen stammen, ist nach Anmeldung in der obigen User Group zu bekommen. Dort gibt es auch die Modelle zum Download. Die erste Anlaufquelle, um häufig eingsetzte Bauteile zu finden.&lt;br /&gt;
&lt;br /&gt;
===ngSpice===&lt;br /&gt;
&lt;br /&gt;
http://ngspice.sourceforge.net/&lt;br /&gt;
* Kommandozeilenorientiert&lt;br /&gt;
* für Linux, Windows, MacOS&lt;br /&gt;
* Anleitung für gEDA und Spice http://www.brorson.com/gEDA/SPICE/t1.html&lt;br /&gt;
&lt;br /&gt;
===Micro-Cap===&lt;br /&gt;
&lt;br /&gt;
http://www.spectrum-soft.com&lt;br /&gt;
* nur für Windows&lt;br /&gt;
* Evaluation Version (mit Einschränkungen) nach Registrierung erhältlich&lt;br /&gt;
&lt;br /&gt;
===Electronics Workbench===&lt;br /&gt;
http://www.electronicsworkbench.com/edu/eduhom.html&lt;br /&gt;
&lt;br /&gt;
* Freeware Version zwar verfügbar, verfügt aber kein Simulationsfeature&lt;br /&gt;
* nur für Windows&lt;br /&gt;
&lt;br /&gt;
===Tina===&lt;br /&gt;
http://www.tina.com/&lt;br /&gt;
* sehr eingeschränkte Demo-Version (PCB Layout nur mit weniger als 50 Pads erlaubt)&lt;br /&gt;
&lt;br /&gt;
===Gnucap===&lt;br /&gt;
http://www.geda.seul.org/tools/gnucap/&lt;br /&gt;
&lt;br /&gt;
===qucs===&lt;br /&gt;
http://qucs.sourceforge.net/&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows, OS X&lt;br /&gt;
&lt;br /&gt;
=== lcfilter ===&lt;br /&gt;
http://www-users.cs.york.ac.uk/~fisher/lcfilter/&lt;br /&gt;
Online-Filterberechnung L-C-Filter&lt;br /&gt;
&lt;br /&gt;
=== DOLPHIN SMASH ===&lt;br /&gt;
http://www.dolphin-integration.com/medal/smash/smash_overview.html&lt;br /&gt;
* Dolphin Smash is a mixed-signal, multi-language simulator for IC or PCB designs. It uses [[SPICE]] syntax for analog descriptions, [[Verilog]]-HDL and [[VHDL]] for digital, Verilog-A/AMS, VHDL-AMS and ABCD (a combination of SPICE and C) for analog behavioral, and C for [[DSP]] algorithms.&lt;br /&gt;
* Logik, Analog und Mixed-Simulation&lt;br /&gt;
* Für Linux und Windows&lt;br /&gt;
* Engeschränkte Evaluationsversion erhältlich&lt;br /&gt;
&lt;br /&gt;
==Digital==&lt;br /&gt;
&lt;br /&gt;
===DigitalSimulator===&lt;br /&gt;
http://www.digital-simulator.de/&lt;br /&gt;
* nur für Windows&lt;br /&gt;
&lt;br /&gt;
=== HADES ===&lt;br /&gt;
http://tams-www.informatik.uni-hamburg.de/applets/hades/html/index.html&lt;br /&gt;
* betriebssystemunabhängig (Java)&lt;br /&gt;
&lt;br /&gt;
=== mkfilter ===&lt;br /&gt;
http://www-users.cs.york.ac.uk/~fisher/mkfilter/&lt;br /&gt;
Online-Digitalfilterberechnung FIR, IIR&lt;br /&gt;
&lt;br /&gt;
=== edef ===&lt;br /&gt;
[http://edef.sourceforge.net/ edef] - A simple discrete event simulation. The edef framework can be used to simulate typical logical circuits, autoregressive processes or digital controller circuits and maybe some more. It is designed to be simple enougth for use in schools or other educational context. It is also truly easy to extend.&lt;br /&gt;
== Mixed Analog-Digital ==&lt;br /&gt;
===SPECTRE===&lt;br /&gt;
Mixed AD-Simulator auf der Basis von VHDL-AMS&lt;br /&gt;
===HSPICE===&lt;br /&gt;
P-Spice-ähnlicher Simulator, der sowohl ABM-Modelle, als auch eigens erstellte library-Modelle verarbeiten kann.&lt;br /&gt;
&lt;br /&gt;
==Hochfrequenztechnik==&lt;br /&gt;
&lt;br /&gt;
=== Ansoft ===&lt;br /&gt;
Homepage: http://www.ansoft.de/downloads.cfm&lt;br /&gt;
&lt;br /&gt;
free downloads are feature-limited, student versions of some of our&lt;br /&gt;
commercially distributed software. Intended for electrical engineering&lt;br /&gt;
students.  Each download comes with a set of examples specially designed for&lt;br /&gt;
topics commonly studied at the junior, senior, and graduate levels of study.&lt;br /&gt;
&lt;br /&gt;
=== Aplac ===&lt;br /&gt;
Homepage: http://www.aplac.com&lt;br /&gt;
&lt;br /&gt;
AWR-APLAC offers a low-cost University License for educational and&lt;br /&gt;
non-commercial academic research use for universities and &lt;br /&gt;
other educational institutions.&lt;br /&gt;
&lt;br /&gt;
=== ARRL Radio Designer ===&lt;br /&gt;
für 169&amp;amp;#8364; bei http://www.ukw-berichte.de erhältlich  http://www.arrl.org&lt;br /&gt;
* Amateurversion der amerikanischen Design-Software Super Compact.&lt;br /&gt;
* Mittlerweile durch Ansoft Designer (ehem. Ansoft Serenade) überholt&lt;br /&gt;
&lt;br /&gt;
=== AADE Filter Design ===&lt;br /&gt;
Homepage: http://www.aade.com/filter.htm&lt;br /&gt;
&lt;br /&gt;
kostenlose Analog-Filterberechnung:&lt;br /&gt;
* Butterworth, Chebyshev, Elliptic (Cauer), Bessel, Legendre and Linear Phase&lt;br /&gt;
* low-pass, high-pass, band-Pass, and band-reject filters.&lt;br /&gt;
* Coupled Resonator band-pass filters&lt;br /&gt;
* Crystal Ladder band-pass filters using identical crystals&lt;br /&gt;
&lt;br /&gt;
=== ActiveFilterDesign ===&lt;br /&gt;
Active Filter Design für Matlab, kostenloser Download: http://academics.vmi.edu/ee_js/Research/Programs/materials/AFD12.zip&lt;br /&gt;
&lt;br /&gt;
Handbuch: http://academics.vmi.edu/ee_js/Research/Programs/materials/Analog%20Filter%20Designer.pdf&lt;br /&gt;
&lt;br /&gt;
* FIR, IIR, analoge Filter, Synthese und Analyse&lt;br /&gt;
&lt;br /&gt;
=== FilterFree ===&lt;br /&gt;
http://www.nuhertz.com/filter/&lt;br /&gt;
&lt;br /&gt;
Filter Free is the free version of Filter Solutions and Filter Light. Functionality is limited 3rd order analog and IIR filters, and 10 tap FIR filters. Filters are synthesized. Frequency, time, and reflection analysis are performed on the ideal, unmodified filters only. Transfer functions are displayed in standard form only.&lt;br /&gt;
&lt;br /&gt;
=== HP AppCAD ===&lt;br /&gt;
http://www.hp.woodshot.com/&lt;br /&gt;
&lt;br /&gt;
RF design software is provided free of charge by Agilent Technologies&lt;br /&gt;
as a service to the RF and microwave design community&lt;br /&gt;
&lt;br /&gt;
=== PUFF - Microwave Design Software ===&lt;br /&gt;
für 22&amp;amp;#8364; bei http://www.ukw-berichte.de/ erhältlich&lt;br /&gt;
* altes DOS-Programm für HF-Simulation und Platinenentwurf&lt;br /&gt;
* Microstrip HF-Berechnungen, Smith-Diagramm&lt;br /&gt;
* in den UKW-Berichten standen schon mehrere Artikel mit Beispielen&lt;br /&gt;
* zur Nutzung einer Kombination aus PUFF und Ansoft SV (=Studentenversion)&lt;br /&gt;
&lt;br /&gt;
=== Microwave-Office / Tx-Line ===&lt;br /&gt;
Gratis: Tx-Line, ein &amp;quot;interactive transmission line calculator&amp;quot; &lt;br /&gt;
http://web.appwave.com/Products/Microwave_Office/Feature_Guide.php?bullet_id=9&lt;br /&gt;
&lt;br /&gt;
=== RF-Sim 99 ===&lt;br /&gt;
kostenlos z.B. von: http://www.janson-soft.de/amateurfunk/rfsim99/rfsim99.htm&lt;br /&gt;
&lt;br /&gt;
oder neben anderen PDFs zur HF-Technik: http://home.sandiego.edu/~ekim/e194rfs01/&lt;br /&gt;
* Berechnung aktiver und passiver Filter einschließlich Schaltplaneingabe&lt;br /&gt;
* Ausgabe von Frequenz- und Phasengang, Smith-Diagramm&lt;br /&gt;
&lt;br /&gt;
=== Smith Plot ===&lt;br /&gt;
Neben diversen Mathcad-Beispielen und Skripten aus der HF-Technik eine Smith-Chart-Software:&lt;br /&gt;
http://www.fritz.dellsperger.net/downloads.htm&lt;br /&gt;
&lt;br /&gt;
=== Sonnet Lite ===&lt;br /&gt;
Sonnet Lite provides a full-wave EM solution for 3D planar circuits&lt;br /&gt;
A fully functional and powerful EM analysis software. &lt;br /&gt;
Get started on your EM analysis within the next 30 minutes by downloading SONNET Lite!&lt;br /&gt;
http://www.sonnetusa.com/products/lite/&lt;br /&gt;
&lt;br /&gt;
===qucs===&lt;br /&gt;
http://qucs.sourceforge.net/&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows, OS X&lt;br /&gt;
* hervorragende technische Dokumentation&lt;br /&gt;
* Impedanzrechenfunktionen für Strip- und Microstripleitungen&lt;br /&gt;
* Filterberechnungstool&lt;br /&gt;
&lt;br /&gt;
==Antennensimulation==&lt;br /&gt;
&lt;br /&gt;
=== EZ-NEC ===&lt;br /&gt;
Homepage: http://eznec.com/&lt;br /&gt;
* Antennenberechnung&lt;br /&gt;
demo program allows only 20 segments, which limits the complexity of antenna&lt;br /&gt;
you can analyze. (EZNEC 4.0 allows 500 )&lt;br /&gt;
&lt;br /&gt;
=== MiniNEC ===&lt;br /&gt;
Homepage: http://www.emsci.com/&lt;br /&gt;
* Antennenberechnung mittels &amp;quot;Momentenmethode&amp;quot; (Zerlegung der Antenne in kleine Segmente, Überlagerung der Teilfelder)&lt;br /&gt;
* eingeschränkte Studenten/Amateurversion erhältlich&lt;br /&gt;
* NEC = Numerical Electromagnetics Code&lt;br /&gt;
&lt;br /&gt;
=== SuperNEC ===&lt;br /&gt;
Homepage: http://www.supernec.com/&lt;br /&gt;
* Antennenberechnung mittels &amp;quot;Momentenmethode&amp;quot;&lt;br /&gt;
* 30-Tage-Testversion sowie unbegrenzt lauffähige Studentenversion (gegen Nachweis) erhältlich&lt;br /&gt;
&lt;br /&gt;
==Numerische Berechnungswerkzeuge==&lt;br /&gt;
&lt;br /&gt;
===Derive===&lt;br /&gt;
http://education.ti.com&lt;br /&gt;
&lt;br /&gt;
===FreeMat===&lt;br /&gt;
http://freemat.sourceforge.net&lt;br /&gt;
* freier MatLab-Clone&lt;br /&gt;
* für Windows, Linux, Mac OS X&lt;br /&gt;
&lt;br /&gt;
===GAUSS===&lt;br /&gt;
Wissenschaftliche Simulationssoftware zur Berechung 3-dimensionaler Ladungsverteilungen in z.B. Halbleitern. Kann aus Geometrie und Dotierungsprofilen die Halbleitergleichungen ableiten.&lt;br /&gt;
&lt;br /&gt;
===GnuPlot===&lt;br /&gt;
http://www.gnuplot.info/&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows und weitere&lt;br /&gt;
* sehr mächtiges Tool, aber eher im Bereich der Datenauswertung (Diagramme)&lt;br /&gt;
&lt;br /&gt;
===Maple===&lt;br /&gt;
Wissenschaftliche Analyse und Simulationssystem zur Lösung komplexester Aufgaben der Mathematik. Lizenzpflichtig.&lt;br /&gt;
&lt;br /&gt;
===JMathLib===&lt;br /&gt;
http://mathlib.sourceforge.net&lt;br /&gt;
* freier Matlab-Clone in 100% Java&lt;br /&gt;
* für Windows, Linux, ...&lt;br /&gt;
&lt;br /&gt;
===MatLab===&lt;br /&gt;
http://www.mathworks.com/&lt;br /&gt;
&lt;br /&gt;
===MuPad===&lt;br /&gt;
http://www.mupad.de/&lt;br /&gt;
&lt;br /&gt;
===Mathcad===&lt;br /&gt;
http://www.mathsoft.com/ http://www.ptc.com/appserver/mkt/products/home.jsp?k=3901&lt;br /&gt;
* rechnen mit Formeln wie auf dem Papier&lt;br /&gt;
&lt;br /&gt;
===Maxima===&lt;br /&gt;
http://maxima.sourceforge.net/&lt;br /&gt;
* freie Software für Linux, OSX, Windows&lt;br /&gt;
&lt;br /&gt;
===Octave===&lt;br /&gt;
http://www.octave.org/&lt;br /&gt;
* freier MatLab-Clone. Die Syntax ist überwiegend identisch&lt;br /&gt;
* für Linux, Windows, OSX&lt;br /&gt;
&lt;br /&gt;
===GNU R===&lt;br /&gt;
http://www.r-project.org/&lt;br /&gt;
* freier S-Clone. Die Syntax ist überwiegend identisch&lt;br /&gt;
* für Linux, Windows, OSX&lt;br /&gt;
&lt;br /&gt;
===SciLab===&lt;br /&gt;
http://www.scilab.org/&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows, MacOS&lt;br /&gt;
* stellt eine C++ Library bereit, die in eigene DSP-Systeme eingebunden werden kann&lt;br /&gt;
&lt;br /&gt;
===scipy===&lt;br /&gt;
scipy [http://www.scipy.org/] ist eine Erweiterung der Skriptsprache Python [http://www.python.org] mit numerischen Funktionen&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows, OSX&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Schaltungssimulation&amp;diff=23478</id>
		<title>Schaltungssimulation</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Schaltungssimulation&amp;diff=23478"/>
		<updated>2007-08-24T09:24:00Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Analog==&lt;br /&gt;
Für Analogsimulation und Mixed-Mode (Digital/Analog) ist Spice State-of-the-art.&lt;br /&gt;
Spice ist inzwischen von vielen Herstellern erhältlich.&lt;br /&gt;
&lt;br /&gt;
===PSpice===&lt;br /&gt;
&lt;br /&gt;
http://www.orcad.com/download.orcaddemo.aspx&lt;br /&gt;
* nur für Windows&lt;br /&gt;
* kostenlos mit Größeneinschränkung&lt;br /&gt;
* Version 8 ist etwas übersichtlicher als die aktuelle&lt;br /&gt;
* Einführungen&lt;br /&gt;
** http://people.fh-landshut.de/~wlf/Pspice/Einfuehrung/Einfuehrung.pdf&lt;br /&gt;
** http://www.elektronikschule.de/~krausg/ (links im Menü &amp;quot;Einstieg in PSpice leichtgemacht&amp;quot;)&lt;br /&gt;
** [http://www.spicelab.de/index.htm Robert Heinemanns PSPICE-Seiten]&lt;br /&gt;
&lt;br /&gt;
===Simplorer===&lt;br /&gt;
&lt;br /&gt;
http://www.ansoft.com/downloads.cfm&lt;br /&gt;
*kostenlose Studentenversion&lt;br /&gt;
===LTSpice/SwitcherCAD===&lt;br /&gt;
&lt;br /&gt;
http://www.linear.com/company/software.jsp&lt;br /&gt;
* kostenlos&lt;br /&gt;
* als Einstieg empfehlenswert, da sehr übersichtlich&lt;br /&gt;
* läuft mit wine unter Linux.&lt;br /&gt;
* kleine Einführung: http://www.lme.fh-muenchen.de/lst/spice/LTSpiceInfo.pdf&lt;br /&gt;
* International User Group: http://groups.yahoo.com/group/LTspice/&lt;br /&gt;
&lt;br /&gt;
Eine Liste von Bauteilen, die aus verschiedenen Quellen stammen, ist nach Anmeldung in der obigen User Group zu bekommen. Dort gibt es auch die Modelle zum Download. Die erste Anlaufquelle, um häufig eingsetzte Bauteile zu finden.&lt;br /&gt;
&lt;br /&gt;
===ngSpice===&lt;br /&gt;
&lt;br /&gt;
http://ngspice.sourceforge.net/&lt;br /&gt;
* Kommandozeilenorientiert&lt;br /&gt;
* für Linux, Windows, MacOS&lt;br /&gt;
* Anleitung für gEDA und Spice http://www.brorson.com/gEDA/SPICE/t1.html&lt;br /&gt;
&lt;br /&gt;
===Micro-Cap===&lt;br /&gt;
&lt;br /&gt;
http://www.spectrum-soft.com&lt;br /&gt;
* nur für Windows&lt;br /&gt;
* Evaluation Version (mit Einschränkungen) nach Registrierung erhältlich&lt;br /&gt;
&lt;br /&gt;
===Electronics Workbench===&lt;br /&gt;
http://www.electronicsworkbench.com/edu/eduhom.html&lt;br /&gt;
&lt;br /&gt;
* Freeware Version zwar verfügbar, verfügt aber kein Simulationsfeature&lt;br /&gt;
* nur für Windows&lt;br /&gt;
&lt;br /&gt;
===Tina===&lt;br /&gt;
http://www.tina.com/&lt;br /&gt;
* sehr eingeschränkte Demo-Version (PCB Layout nur mit weniger als 50 Pads erlaubt)&lt;br /&gt;
&lt;br /&gt;
===Gnucap===&lt;br /&gt;
http://www.geda.seul.org/tools/gnucap/&lt;br /&gt;
&lt;br /&gt;
===qucs===&lt;br /&gt;
http://qucs.sourceforge.net/&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows, OS X&lt;br /&gt;
&lt;br /&gt;
=== lcfilter ===&lt;br /&gt;
http://www-users.cs.york.ac.uk/~fisher/lcfilter/&lt;br /&gt;
Online-Filterberechnung L-C-Filter&lt;br /&gt;
&lt;br /&gt;
=== DOLPHIN SMASH ===&lt;br /&gt;
http://www.dolphin-integration.com/medal/smash/smash_overview.html&lt;br /&gt;
* Dolphin Smash is a mixed-signal, multi-language simulator for IC or PCB designs. It uses [[SPICE]] syntax for analog descriptions, [[Verilog]]-HDL and [[VHDL]] for digital, Verilog-A/AMS, VHDL-AMS and ABCD (a combination of SPICE and C) for analog behavioral, and C for [[DSP]] algorithms.&lt;br /&gt;
* Logik, Analog und Mixed-Simulation&lt;br /&gt;
* Für Linux und Windows&lt;br /&gt;
* Engeschränkte Evaluationsversion erhältlich&lt;br /&gt;
&lt;br /&gt;
==Digital==&lt;br /&gt;
&lt;br /&gt;
===DigitalSimulator===&lt;br /&gt;
http://www.digital-simulator.de/&lt;br /&gt;
* nur für Windows&lt;br /&gt;
&lt;br /&gt;
=== HADES ===&lt;br /&gt;
http://tams-www.informatik.uni-hamburg.de/applets/hades/html/index.html&lt;br /&gt;
* betriebssystemunabhängig (Java)&lt;br /&gt;
&lt;br /&gt;
=== mkfilter ===&lt;br /&gt;
http://www-users.cs.york.ac.uk/~fisher/mkfilter/&lt;br /&gt;
Online-Digitalfilterberechnung FIR, IIR&lt;br /&gt;
&lt;br /&gt;
=== edef ===&lt;br /&gt;
[http://edef.sourceforge.net/ edef] - A simple discrete event simulation. The edef framework can be used to simulate typical logical circuits, autoregressive processes or digital controller circuits and maybe some more. It is designed to be simple enougth for use in schools or other educational context. It is also truly easy to extend.&lt;br /&gt;
== Mixed Analog-Digital ==&lt;br /&gt;
===SPECTRE===&lt;br /&gt;
Mixed AD-Simulator auf der Basis von VHDL-AMS&lt;br /&gt;
===HSPICE===&lt;br /&gt;
P-Spice-ähnlicher Simulator, der sowohl ABM-Modelle, als auch eigens erstellte library-Modelle verarbeiten kann.&lt;br /&gt;
&lt;br /&gt;
==Hochfrequenztechnik==&lt;br /&gt;
&lt;br /&gt;
=== Ansoft ===&lt;br /&gt;
Homepage: http://www.ansoft.de/downloads.cfm&lt;br /&gt;
&lt;br /&gt;
free downloads are feature-limited, student versions of some of our&lt;br /&gt;
commercially distributed software. Intended for electrical engineering&lt;br /&gt;
students.  Each download comes with a set of examples specially designed for&lt;br /&gt;
topics commonly studied at the junior, senior, and graduate levels of study.&lt;br /&gt;
&lt;br /&gt;
=== Aplac ===&lt;br /&gt;
Homepage: http://www.aplac.com&lt;br /&gt;
&lt;br /&gt;
AWR-APLAC offers a low-cost University License for educational and&lt;br /&gt;
non-commercial academic research use for universities and &lt;br /&gt;
other educational institutions.&lt;br /&gt;
&lt;br /&gt;
=== ARRL Radio Designer ===&lt;br /&gt;
für 169&amp;amp;#8364; bei http://www.ukw-berichte.de erhältlich  http://www.arrl.org&lt;br /&gt;
* Amateurversion der amerikanischen Design-Software Super Compact.&lt;br /&gt;
* Mittlerweile durch Ansoft Designer (ehem. Ansoft Serenade) überholt&lt;br /&gt;
&lt;br /&gt;
=== AADE Filter Design ===&lt;br /&gt;
Homepage: http://www.aade.com/filter.htm&lt;br /&gt;
&lt;br /&gt;
kostenlose Analog-Filterberechnung:&lt;br /&gt;
* Butterworth, Chebyshev, Elliptic (Cauer), Bessel, Legendre and Linear Phase&lt;br /&gt;
* low-pass, high-pass, band-Pass, and band-reject filters.&lt;br /&gt;
* Coupled Resonator band-pass filters&lt;br /&gt;
* Crystal Ladder band-pass filters using identical crystals&lt;br /&gt;
&lt;br /&gt;
=== ActiveFilterDesign ===&lt;br /&gt;
Active Filter Design für Matlab, kostenloser Download: http://academics.vmi.edu/ee_js/Research/Programs/materials/AFD12.zip&lt;br /&gt;
&lt;br /&gt;
Handbuch: http://academics.vmi.edu/ee_js/Research/Programs/materials/Analog%20Filter%20Designer.pdf&lt;br /&gt;
&lt;br /&gt;
* FIR, IIR, analoge Filter, Synthese und Analyse&lt;br /&gt;
&lt;br /&gt;
=== FilterFree ===&lt;br /&gt;
http://www.nuhertz.com/filter/&lt;br /&gt;
&lt;br /&gt;
Filter Free is the free version of Filter Solutions and Filter Light. Functionality is limited 3rd order analog and IIR filters, and 10 tap FIR filters. Filters are synthesized. Frequency, time, and reflection analysis are performed on the ideal, unmodified filters only. Transfer functions are displayed in standard form only.&lt;br /&gt;
&lt;br /&gt;
=== HP AppCAD ===&lt;br /&gt;
http://www.hp.woodshot.com/&lt;br /&gt;
&lt;br /&gt;
RF design software is provided free of charge by Agilent Technologies&lt;br /&gt;
as a service to the RF and microwave design community&lt;br /&gt;
&lt;br /&gt;
=== PUFF - Microwave Design Software ===&lt;br /&gt;
für 22&amp;amp;#8364; bei http://www.ukw-berichte.de/ erhältlich&lt;br /&gt;
* altes DOS-Programm für HF-Simulation und Platinenentwurf&lt;br /&gt;
* Microstrip HF-Berechnungen, Smith-Diagramm&lt;br /&gt;
* in den UKW-Berichten standen schon mehrere Artikel mit Beispielen&lt;br /&gt;
* zur Nutzung einer Kombination aus PUFF und Ansoft SV (=Studentenversion)&lt;br /&gt;
&lt;br /&gt;
=== Microwave-Office / Tx-Line ===&lt;br /&gt;
Gratis: Tx-Line, ein &amp;quot;interactive transmission line calculator&amp;quot; &lt;br /&gt;
http://web.appwave.com/Products/Microwave_Office/Feature_Guide.php?bullet_id=9&lt;br /&gt;
&lt;br /&gt;
=== RF-Sim 99 ===&lt;br /&gt;
kostenlos z.B. von: http://www.janson-soft.de/amateurfunk/rfsim99/rfsim99.htm&lt;br /&gt;
&lt;br /&gt;
oder neben anderen PDFs zur HF-Technik: http://home.sandiego.edu/~ekim/e194rfs01/&lt;br /&gt;
* Berechnung aktiver und passiver Filter einschließlich Schaltplaneingabe&lt;br /&gt;
* Ausgabe von Frequenz- und Phasengang, Smith-Diagramm&lt;br /&gt;
&lt;br /&gt;
=== Smith Plot ===&lt;br /&gt;
Neben diversen Mathcad-Beispielen und Skripten aus der HF-Technik eine Smith-Chart-Software:&lt;br /&gt;
http://www.fritz.dellsperger.net/downloads.htm&lt;br /&gt;
&lt;br /&gt;
=== Sonnet Lite ===&lt;br /&gt;
Sonnet Lite provides a full-wave EM solution for 3D planar circuits&lt;br /&gt;
A fully functional and powerful EM analysis software. &lt;br /&gt;
Get started on your EM analysis within the next 30 minutes by downloading SONNET Lite!&lt;br /&gt;
http://www.sonnetusa.com/products/lite/&lt;br /&gt;
&lt;br /&gt;
===qucs===&lt;br /&gt;
http://qucs.sourceforge.net/&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows, OS X&lt;br /&gt;
* hervorragende technische Dokumentation&lt;br /&gt;
* Impedanzrechenfunktionen für Strip- und Microstripleitungen&lt;br /&gt;
* Filterberechnungstool&lt;br /&gt;
&lt;br /&gt;
==Antennensimulation==&lt;br /&gt;
&lt;br /&gt;
=== EZ-NEC ===&lt;br /&gt;
Homepage: http://eznec.com/&lt;br /&gt;
* Antennenberechnung&lt;br /&gt;
demo program allows only 20 segments, which limits the complexity of antenna&lt;br /&gt;
you can analyze. (EZNEC 4.0 allows 500 )&lt;br /&gt;
&lt;br /&gt;
=== MiniNEC ===&lt;br /&gt;
Homepage: http://www.emsci.com/&lt;br /&gt;
* Antennenberechnung mittels &amp;quot;Momentenmethode&amp;quot; (Zerlegung der Antenne in kleine Segmente, Überlagerung der Teilfelder)&lt;br /&gt;
* eingeschränkte Studenten/Amateurversion erhältlich&lt;br /&gt;
* NEC = Numerical Electromagnetics Code&lt;br /&gt;
&lt;br /&gt;
=== SuperNEC ===&lt;br /&gt;
Homepage: http://www.supernec.com/&lt;br /&gt;
* Antennenberechnung mittels &amp;quot;Momentenmethode&amp;quot;&lt;br /&gt;
* 30-Tage-Testversion sowie unbegrenzt lauffähige Studentenversion (gegen Nachweis) erhältlich&lt;br /&gt;
&lt;br /&gt;
==Numerische Berechnungswerkzeuge==&lt;br /&gt;
&lt;br /&gt;
===Derive===&lt;br /&gt;
http://education.ti.com&lt;br /&gt;
&lt;br /&gt;
===FreeMat===&lt;br /&gt;
http://freemat.sourceforge.net&lt;br /&gt;
* freier MatLab-Clone&lt;br /&gt;
* für Windows, Linux, Mac OS X&lt;br /&gt;
&lt;br /&gt;
===GAUSS===&lt;br /&gt;
Wissenschaftliche Simulationssoftware zur Berechung 3-dimensionaler Ladungsverteilungen in z.B. Halbleitern. Kann aus Geometrie und Dotierungsprofilen die Halbleitergleichungen ableiten.&lt;br /&gt;
&lt;br /&gt;
===GnuPlot===&lt;br /&gt;
http://www.gnuplot.info/&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows und weitere&lt;br /&gt;
* sehr mächtiges Tool, aber eher im Bereich der Datenauswertung (Diagramme)&lt;br /&gt;
&lt;br /&gt;
===Maple===&lt;br /&gt;
Wissenschaftliche Analyse und Simulationssystem zur Lösung komplexester Aufgaben der Mathematik. Lizenzpflichtig.&lt;br /&gt;
&lt;br /&gt;
===JMathLib===&lt;br /&gt;
http://mathlib.sourceforge.net&lt;br /&gt;
* freier Matlab-Clone in 100% Java&lt;br /&gt;
* für Windows, Linux, ...&lt;br /&gt;
&lt;br /&gt;
===MatLab===&lt;br /&gt;
http://www.mathworks.com/&lt;br /&gt;
&lt;br /&gt;
===MuPad===&lt;br /&gt;
http://www.mupad.de/&lt;br /&gt;
&lt;br /&gt;
===Maxima===&lt;br /&gt;
http://maxima.sourceforge.net/&lt;br /&gt;
* freie Software für Linux, OSX, Windows&lt;br /&gt;
&lt;br /&gt;
===Mathcad===&lt;br /&gt;
http://www.mathsoft.com/ http://www.ptc.com/appserver/mkt/products/home.jsp?k=3901&lt;br /&gt;
* rechnen mit Formeln wie auf dem Papier&lt;br /&gt;
&lt;br /&gt;
===Octave===&lt;br /&gt;
http://www.octave.org/&lt;br /&gt;
* freier MatLab-Clone. Die Syntax ist überwiegend identisch&lt;br /&gt;
* für Linux, Windows, OSX&lt;br /&gt;
&lt;br /&gt;
===GNU R===&lt;br /&gt;
http://www.r-project.org/&lt;br /&gt;
* freier S-Clone. Die Syntax ist überwiegend identisch&lt;br /&gt;
* für Linux, Windows, OSX&lt;br /&gt;
&lt;br /&gt;
===SciLab===&lt;br /&gt;
http://www.scilab.org/&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows, MacOS&lt;br /&gt;
* stellt eine C++ Library bereit, die in eigene DSP-Systeme eingebunden werden kann&lt;br /&gt;
&lt;br /&gt;
===scipy===&lt;br /&gt;
scipy [http://www.scipy.org/] ist eine Erweiterung der Skriptsprache Python [http://www.python.org] mit numerischen Funktionen&lt;br /&gt;
* freie Software&lt;br /&gt;
* für Linux, Windows, OSX&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Mac_OS_X&amp;diff=20973</id>
		<title>Mac OS X</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Mac_OS_X&amp;diff=20973"/>
		<updated>2007-04-11T11:09:06Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es ist zwar nicht verbreitet, am Macintosh mit Mikrocontrollern zu hantieren, aber durch den Unix/BSD-Kern des Betriebssystems ist es insbesondere mit [[AVR]]-Controllern relativ problemlos.&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
=== Programmierung von µC ===&lt;br /&gt;
====AVR====&lt;br /&gt;
Eine etwas ältere Version der GNU Toolchain aus [[AVR-GCC]], [[avr-libc]] und [[uisp]] ist als geschlossenes Binärpaket verfügbar und kann von der Seite [http://www.eecs.berkeley.edu/~mseeman/resources/macmicro.html] heruntergeladen werden. Aktuellere Versionen bekommt man in [http://avr-gcc.darwinports.com/ Darwinports]. Ab hier gelten die gleichen Regeln wie für das Programmieren unter Linux.&lt;br /&gt;
&lt;br /&gt;
====PIC====&lt;br /&gt;
Für PICmicro gibt es die [http://gputils.sourceforge.net/ GPUTILS], die mit GPASM und GPLINK eine gute Alternative zu Microchips MPASM und MPLINK bieten.&lt;br /&gt;
&lt;br /&gt;
[http://sdcc.sourceforge.net/ SDCC] ist ein C-Compiler speziell für 8-Bit Microcontroller, dessen PIC-Unterstützung allerdings noch nicht ausgereift ist. Wer einen brauchbaren C-Compiler möchte, könnte die DOS-Version von [http://www.bknd.com/cc5x/downl-stud.shtml CC5X] unter [http://dosbox.sourceforge.net/ DOSBox] ausführen.&lt;br /&gt;
&lt;br /&gt;
Von Microchip gibt es einen billigen Brenner für Anfänger namens [http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&amp;amp;nodeId=1406&amp;amp;dDocName=en010053 &#039;&#039;PICkit 1&#039;&#039;], der den Vorteil hat, dass er über USB angeschlossen wird. Die [http://ww1.microchip.com/downloads/en/DeviceDoc/pickit.tgz OSX-Software] von Microchip meldet mir beim Schreiben einen Fehler, scheint aber dennoch zu funktionieren. Alternativ gibt es auch noch die Portierung des Linux-Tools [http://blog.paddlefish.net/archives/2004/12/usb_pickit_tool.html usb_pickit].&lt;br /&gt;
&lt;br /&gt;
Darüber hinaus kann mit mit der Kombination  gpasm (im Paket [http://gputils.sourceforge.net/ gputils] enthalten) und [http://home.pacbell.net/theposts/picmicro/ pk2] mit dem pickit2 am mac gearbeitet werden. Dadurch kann eine Breite Palette an Pics Programmiert werden.&lt;br /&gt;
&lt;br /&gt;
=== Elektroniksoftware ===&lt;br /&gt;
&lt;br /&gt;
Neben den hier genannten Programmen sind außerdem i.d.R. alle Open-Source-Programme für X/Linux unter Mac OS X kompilierbar.&lt;br /&gt;
&lt;br /&gt;
* [[Eagle]] Layout Editor&lt;br /&gt;
* [http://ivionosx.sourceforge.net/ IVIonOSX] - VHDL- und Verilog-Simulator, Open Source&lt;br /&gt;
* [http://www.gmvhdl.com/mac-dv.html DirectVHDL] - VHDL-Simulator, $ 99&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Hardware==&lt;br /&gt;
&lt;br /&gt;
Macs sind durchdesigned bis aufs Mark - so fehlt an allen modernen Macintosh-Computern die serielle und die parallele Schnittstelle. USB-seriell-Adapter können hier Abhilfe schaffen. Wichtig ist hier:&lt;br /&gt;
* Der ISP muss die serielle Schnittstelle benutzen (die einfachen AVR-Programmer für die parallele Schnittstelle funktionieren nicht)&lt;br /&gt;
* Der USB-Seriell-Adapter muss Macintosh-kompatibel sein.&lt;br /&gt;
&lt;br /&gt;
Die Mac-Kompatibilität ist hier der Knackpunkt. Bei den Manhattan-Adapterkabeln, die günstig bei eBay zu haben sind, werden zwar Mac-Treiber mitgeliefert, allerdings sind sie unzuverlässig und die Kommunikation klappt nicht immer. Besser sind angeblich die Adapterkabel der Firma Keyspan, die jedoch nicht so einfach verfügbar sind.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Bei mir haben sich bis jetzt die PL2303-Chips als sehr gut herausgestellt... Driver gibts auf der Homepage von  [http://www.prolific.com.tw/eng/downloads.asp?ID=31 Prolific]&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 13:09, 11. Apr 2007 (CEST)&lt;br /&gt;
----&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Mehrere_Layouts_auf_einer_Seite_ausdrucken&amp;diff=18996</id>
		<title>Mehrere Layouts auf einer Seite ausdrucken</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Mehrere_Layouts_auf_einer_Seite_ausdrucken&amp;diff=18996"/>
		<updated>2007-01-05T01:26:06Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Platinen]]&lt;br /&gt;
&lt;br /&gt;
Im Forum wird oft gefragt wie man am einfachsten mehrere Layouts auf eine Seite bekommt. Das ist nicht ganz so einfach wie man sich das erhofft.&lt;br /&gt;
&lt;br /&gt;
Der beste Weg um Mehrere Platinen ist imho das Layout in ein Vektorformat zu bekommen und dann in einem Programm die einzelnen Platinen aneinanderzufügen wie man möchte.&lt;br /&gt;
&lt;br /&gt;
Als Programm hierfür drängt sich [http://www.inkscape.org Inkscape] auf, da es auf so ziemlich jeder Plattform verfügbar und recht einfach bedienbar ist.&lt;br /&gt;
&lt;br /&gt;
Alles weitere ist aber nun Plattformabhängig :(&lt;br /&gt;
&lt;br /&gt;
= Linux/MacOS-X/Unix-Like =&lt;br /&gt;
Die ganzen netten Unix-Like Betriebssysteme bieten wie üblich unzählige Möglichkeiten für dies Problem ;)&lt;br /&gt;
&lt;br /&gt;
== pstoedit ==&lt;br /&gt;
[http://www.gnu.org/software/plotutils/ plotutils] compilieren (aufpassen das &#039;libplotter&#039; auch kompiliert wird!&lt;br /&gt;
&lt;br /&gt;
[http://www.pstoedit.net/pstoedit pstoedit] kompilieren (brauchst die libplotter für svg files)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
pstoedit -f plot-svg &amp;lt;ps oder pdf-Datei&amp;gt; &amp;lt;svg-Datei&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ImageMagick ==&lt;br /&gt;
&lt;br /&gt;
[http://www.imagemagick.org ImageMagick] kann alles in alles verwandeln... also auch PS in SVG :)&lt;br /&gt;
Wie genau ist dem Handbuch zu entnehmen&lt;br /&gt;
&lt;br /&gt;
== Grafik ==&lt;br /&gt;
Eagle z.b bietet die Möglichkeit das Layout als &#039;PNG&#039; zu exportieren. Dieses kann Inkscape auch verarbeiten. Aber Achtung: Skalieren von Pixel-Grafiken macht das ganze unscharf, pixelig und ungenaut!&lt;br /&gt;
&lt;br /&gt;
= Windows =&lt;br /&gt;
Windows Benutzer stehen hier schon vor ein paar Problemen...&lt;br /&gt;
PDFs oder PS-Files müssten per Ghostscript oä. erzeugt werden.&lt;br /&gt;
&lt;br /&gt;
die einfache &#039;pstoedit&#039;-Variante geht hier nicht... ImageMagick muss hier aushelfen...&lt;br /&gt;
&lt;br /&gt;
Die Bild-Export-Import Variante sollte auch hier Funktionieren&lt;br /&gt;
&lt;br /&gt;
= Tricks =&lt;br /&gt;
&lt;br /&gt;
Recht einfach bekommt man genaue skalierungen hin wenn man bei der Eagle-Freeware eine Seite der halben Euro-Platine mit er netten Linie verschönert oder einfach den Dimension-Layer &#039;mitausdruckt&#039; sofern er nicht stört. &#039;pstoedit&#039; findet dann eine bounding-box die man einfach skalieren kann.&lt;br /&gt;
&lt;br /&gt;
Fußzeilen sollte man auch ausschalten... die stören nur beim Anordnen!&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Diskussion:USB_Oszilloskop&amp;diff=18494</id>
		<title>Diskussion:USB Oszilloskop</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Diskussion:USB_Oszilloskop&amp;diff=18494"/>
		<updated>2006-11-29T11:47:15Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Software */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Neuentwicklung, Adaption, Mitmachen=&lt;br /&gt;
Sollte das USB Oszilloskop komplett neu entwicklet werden oder sich an andere Projekte anlehnen? Oder soll das hier nur eine Untertstützung von den aufgelisteten Projekten dienen?&lt;br /&gt;
&lt;br /&gt;
= Verschiedene &amp;quot;Flavours&amp;quot; =&lt;br /&gt;
Hi, ich habe mir so überlegt, dass es vielleicht gut wäre, wenn man gleich von vornerein verschiedene &amp;quot;Flavours&amp;quot; also Abwandlungen durch Modularisierung möglich macht:&lt;br /&gt;
*Ausbau zu kompletten OSZI mit eigenem LCD Monitor&lt;br /&gt;
*Nutzung anderer Schnittstellen (RJ45, VGA,...)&lt;br /&gt;
*mobile &amp;quot;pocket&amp;quot; Variante (geringerer Auflösung und weniger Schnickschnack)&lt;br /&gt;
&lt;br /&gt;
Was meint Ihr dazu?&lt;br /&gt;
--[[Benutzer:0undNichtig|0undNichtig]] 19:24, 17. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Es ist mal die grundsätzliche Frage, ob so ein Instrument Jetzt und Verbesserungwürdig oder Nie und Perfekt oder sogar eine Eierlegendewollmilchsau sein soll. Dazwischen gibt es natürlich auch verschiedene Stufen.&lt;br /&gt;
&lt;br /&gt;
Ab einer gewissen Grenze/Features kann man es nur in ein FPGA realisieren. Ob dort auch USB oder sogar VGA/Ethernet gemacht werden, hängt prinzipiell vom Preis des FPGA´s ab. Andererseits ist dann aber Vorteilhaft, ein Entwicklungboard zu nehmen, und es damit zu implementieren. Der Preis ist dann auch nicht mehr gering, aber immerhing um den Faktor 10 billiger als ein Professionelles. --franceso&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Ja an FPGAs wird wohl nix dran vorbei gehen. Da ich wie gesagt eher Software-Mensch bin, folge ich instinktiv &amp;quot;think BIG&amp;quot;. Im Nachhinein ist es naturgemäß immer schwer Änderungen einfließen zu lassen, wenn das nicht bei der Planung bedacht wurde. Deshalb erstmal meine Theorie zur EierlegendenWollmilchSau ;-) Wieso ist es denn besser ein FPGA Eval-Board zu nehmen? Dann müssten ja alle anderen sich ebenfalls dieses Board kaufen und es modifizieren. Ich würde auch aufgrund der Unabhängigkeit ein komplett eigenes Design bevorzugen. --0undNichtig 18:38, 18. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Weil es generell preiswerter ist, als ein neues Board zu machen, speziell bei einer applikation wie ein Logik-Analyzer. Der Analogteil ist sowieso besser, wenn er auf einem eigenen Board ist. Natürlich bei 25+ Boards sieht das dann vielleicht anders aus. Dies bei kleineren bis mittleren FPGA´s. Wieso schließt du dich nicht dem Mikrocontroller-LA an, das scheint eigentlich das zu sein, was du machen willst. Der ADC Frontent kommt dann später. Mit einem 32bit LA kann man ein 2-Kanal DSO Frontend dranstecken. --Franceso 02:54, 19. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Gerne mache ich beim LA mit (viel werde ich allerdings eh nicht beitragen können), der LA schien bloß ein wenig eingeschlaafen ;-) Allerdings fände ich es natürlich schön, wenn das ganze vielleicht doch eher zur Laborplatine wird... Zu deiner PM: Nein Analogteil habe ich noch nicht, wie gesagt bin fast zu 100% Softwaremensch ^^ --0undNichtig 15:35, 19. Nov 2006 (CET) &lt;br /&gt;
&lt;br /&gt;
&amp;gt;Das LA Projekt scheint auf der VHDL-Seite eingeschlafen zu sein. Derzeit layoute ich gerade ein zweiseitiges XC2S100E-6PQ208C oder XC2S50E-6PQ208C Board im halben Euro-Format mit 2.54mm Stiftleistenim. Der FPGA ist im 208pin Gehäuse und hat 140 verfügbare I/O pins die abgegriffen werden können. Diese Fpga sind in kleineren Mengen günstig.&lt;br /&gt;
&lt;br /&gt;
&amp;gt;&lt;br /&gt;
Als Vorschlag, für eine FPGA Lösung, kann auch VGA:&lt;br /&gt;
http://www.xess.com/prod034.php3&lt;br /&gt;
&lt;br /&gt;
Hat genug RAM, sowie 72 freie I/O. Kein USB, kann man aber extern dranhängen.&lt;br /&gt;
Der Preis ist auch gut.&lt;br /&gt;
&lt;br /&gt;
Ich fände es gut, wenn du nicht gleich ganze Blöcke wegradieren würdest und ein wenig hilfst das chronologisch zu ordnen. Ein ansprechender Name wäre darüber hinaus auch nett ;-)&lt;br /&gt;
&lt;br /&gt;
Also, da ich hier nur der Einzige bin, der was hineinpostet, und du mir hier&lt;br /&gt;
auf diesem Board was vom PM geantwortest hast, ohne daß die Frage auch zu posten, erschien mir dies alles als wirklich Unangebracht. Weiters ist es auch so, daß ich nicht wirklich Interresse habe, sowas neu zu machen, da ich erst vor kurzem sowas änliches gemacht habe bzw nur mehr zu bestücken habe, sobald die&lt;br /&gt;
Platinen kommen.&lt;br /&gt;
--[[Benutzer:Franceso|Franceso]] 18:41, 20. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------------------&lt;br /&gt;
Es kommt alles auf die preisliche Orientierung an, weil z.B bekommt man für ~300€ ein DSO-2100. Die Eierlegendewollmilchsau halte ich für keine gute Idee. Als Schnittstelle sollte USB genügen. Eine sinnvolle zusätzliche Möglichkeit, wäre ev. ein 240*128 Pixel LCD. Desweiteren ev. FFT, Spectrumanalyzer. Weil einen Logikanalyzer per weiteren USB Anschluß anzuschließen, sofern der mal fertig wird, sollte wohl kein Problem darstellen. Es soll meines erachtens ein USB Scope bleiben. Dafür halt  Spannungsvorteiler usw.. Sinnvoll wäre ev. auch noch eine autonome Datenaufzeichnung auf SD/MMC Card.&lt;br /&gt;
&lt;br /&gt;
Mfg Sascha&lt;br /&gt;
--------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&amp;gt;Sry [[Benutzer:Franceso|Franceso]], wollte dich weder zurechtweisen noch deine PM ignorieren, habe einfach keine Möglichkeit gefunden zu antworten und war ein wenig verwundert über das plötzliche Loch durch die Löschung :-(&lt;br /&gt;
&lt;br /&gt;
Auch ich kann nicht von mir behaupten, dass ich nur irgendetwas von dem Projekte (von SW mal abgesehen) realisieren könnte. Mir geht es erstmal nur um &amp;quot;Brainstorming&amp;quot;. Das Problem ist ebend Preis und Leistungsfähigkeit und Nachbaumöglichkeit unter einen Hut zu bringen. Da der Preis für Amateure (die wohl am meisten von sowas träumen aber kein Geld für Profigeräte haben) machbar sein sollte aber auch die Parameter so gut sein müssen, dass es nicht nur ein &amp;quot;Schätzeisen&amp;quot; ist sondern auch den Werdegang des Amateurs begleiten muss (NF,qC+Logik,HF,...).&lt;br /&gt;
Da würde ich mal so per Daumen &amp;lt; 150€ ansetzen. Da würde IMHO ein FPGA Eval.-Board  den Rahmen sprengen. Aber FPGAs &amp;quot;so&amp;quot; auflöten? Ich denke das ist nicht wirklich ohne gute Ausstattung und Mikroskop möglich(gerade für einen Amateur)? Also könnte man den Zusammenbau und Vertrieb z.B. Unis überlassen, die daran ihre Studenten trainieren?&lt;br /&gt;
--[[Benutzer:0undNichtig|0undNichtig]] 18:37, 21. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
&amp;gt; @Sascha ein LCD hatte ich ja als einen &amp;quot;Flavour&amp;quot; vorgesehen, wäre schon ganz neckisch als Servicegerät aber ich glaube, dass das ein ganzes Stück Arbeit wäre. Auch ob man da wirklich was erkennen kann oder auch nur das ganze schnell genug vom Anwender eingestellt werden kann halte ich für ein bißchen kritisch.&lt;br /&gt;
--[[Benutzer:0undNichtig|0undNichtig]] 18:43, 21. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
&amp;gt; Mal nicht um den heißen Brei herum, wofür würdet Ihr denn so ein Teil nutzen wollen, vielleicht kriegen wir dann ein paar Kategorien hin? Also wann nutzt ihr welche Features? Vielleicht sogar Außer-Haus-Service?--[[Benutzer:0undNichtig|0undNichtig]] 20:24, 23. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
Bei der Oszilloskop Seite hast du Datenblätter von ADC´s mit 1 bis 3Gs/s&lt;br /&gt;
aufgelistet, glaubst du, daß du den Analogteil eintsprechend hinbekommst ?&lt;br /&gt;
Ansonsten denke ich, sind diese Datenraten sinnlos. --[[Benutzer:Franceso|Franceso]]&lt;br /&gt;
&lt;br /&gt;
Die habe ich eigentlich nicht aufgelistet sondern jemand anderes. Aber ich lese mir gerade noch mehr an, für wahr der Analoge Teil scheint schlimm zu werden :-(--[[Benutzer:0undNichtig|0undNichtig]] 07:26, 28. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
Das war ich ;-)&lt;br /&gt;
Ich denke, der ADC sollte mindestens 0,5GS/s haben, sonst macht das wenig&lt;br /&gt;
Sinn. Für den Anfang wäre doch ein Analogteil mit 100MHz ok, man hat dann&lt;br /&gt;
noch genug Reserven um z.B. Rechteckschwingungen ordentlich zu erfassen.&lt;br /&gt;
Leider ist das nicht ganz billig: der 1Gs/s-Chip kostet bei Spoerle 210 €,&lt;br /&gt;
wobei der bestimmt nicht lieferbar ist :-(&lt;br /&gt;
Auch das passende FPGA (XC4VLX15) ist nicht ohne, bei RS: 459,10 €, wow!&lt;br /&gt;
Hat jemand eine Vorstellung was eine Bestückung (SMD, BGA) kostet?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Naja, mein Design ist sehr einfach.&lt;br /&gt;
Externe (interface) Beschreibung:&lt;br /&gt;
 - zuschaltbare Terminierung (50/500k/1M ohm)&lt;br /&gt;
 - zuschaltbarer 1:10 Teiler&lt;br /&gt;
&lt;br /&gt;
Intern ist das so realisiert, daß die Eingangsspannung auf einem 25:1 Teiler&lt;br /&gt;
geht, im Falle einer Terminierung gefolgt von einer Schutzschaltung.&lt;br /&gt;
Im Falle von 500K ist der Teiler 12:1, weil dies Komponenten spart.&lt;br /&gt;
Hier ist dann ein OP mit 2Mohm Eingangsimpedanz (+-6V supply)&lt;br /&gt;
gefolgt von einem OP welcher die Offsetspannung regelt. Dann ist ein OP mit umschaltbare Verstärkung zwischen G=1 und G=10.&lt;br /&gt;
Hier zweigt eine Schaltung zur Anti-Alias Detektion ab.&lt;br /&gt;
Weiters kann der zweite Kanal hier wegsummiert werden.&lt;br /&gt;
Dann kommt ein OP mit einstellbarer Verstärkung gefolgt von einem Spannungteiler 6:1 sowie einen weiteren OP, der ein fixes Offset addiert.&lt;br /&gt;
Erst jetzt kommt der ADC.&lt;br /&gt;
Die Anti-Alias Detektion geht so, daß das Signal noch mit einem Langsamen&lt;br /&gt;
OP verstärkt wird, und dann die Differenz mit einem schnellen gemessen.&lt;br /&gt;
Dies geht dann auf einen digitalen Eingang.&lt;br /&gt;
--[[Benutzer:Franceso|Franceso]]&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
Also ich habe mir ja schon sehr viele Projekte angeschaut aber die Softwareseite wird da irgendwie immer ein wenig vernachlässigt. Die GUIs sehen irgendwie tyisch Expertensoftware verschroben aus ;-) und eine einheitliche Software, in die man die unterschiedliche Hardware anbinden kann gibt es leider nicht. So muss man bei jeder z.B. die Protokolle neu hinzufügen und und und. In der Seite vom [http://www.elektronik-projekt.de/thread.php?threadid=3509 Elektronik Projekt - Digital Oszilloskop im Selbstbau] wurde schon einiges diskuttiert (Labview,...). Wäre natürlich gut, wenn man auch Steuersequenzen und einfache Kommunikationsabfolgen machen könnte, wobei man dann schon eher bei einer EierlegendenWollMilchSau wäre... ;-)&lt;br /&gt;
--[[Benutzer:0undNichtig|0undNichtig]] 19:29, 23. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
Xoscilloscop schon gesehen ?&lt;br /&gt;
&lt;br /&gt;
Du meinst Xoscope? Ja habe ich schon gesehen, wäre ein Anfang, geht mir aber noch nicht weit genug :-)&lt;br /&gt;
Ich bin fasst der Meinung, dass die Software erstmal wohl Hauptaugenmerk ist. Mal eine vernünftige, die alle Hardware die da ist anschließen kann und Mess/Steuer-Aufgaben durchführen kann. Vielleicht sollte das wirklich mehr in Richtung Laborplatine gehen...&lt;br /&gt;
Was wären denn dann unsere Wünsche? DSO,LA,PSU,Patterngenerator? Das mit HF wird man sich wohl eh aus dem Kopf schlagen müssen, oder?--[[Benutzer:0undNichtig|0undNichtig]] 08:12, 27. Nov 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
warum nicht gleich viele kleine sachen per usb auf ein motherboard stecken und am motherboard befindet sich dann ein einfacher usb-hub... dann für alles ein extra prog.. sprich für patterngen, DSO,.. und man definiert nur die IPC schnittstellen... dann können sich die programme untereinander steuern wenn du willst aber du kannst die dinger trotzdem auch einzeln benutzen...&lt;br /&gt;
&lt;br /&gt;
sprich ich würd da viele kleine boards machen und dann eben die einzelnen software-projekte mit definierten schnittstellen ausstatten...&lt;br /&gt;
&lt;br /&gt;
73 --[[Benutzer:Hans|Hans]] 12:47, 29. Nov 2006 (CET)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Snippets&amp;diff=16963</id>
		<title>Snippets</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Snippets&amp;diff=16963"/>
		<updated>2006-08-28T11:06:50Z</updated>

		<summary type="html">&lt;p&gt;Hans: Korrekturfaktor&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Snippets&amp;diff=16962</id>
		<title>Snippets</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Snippets&amp;diff=16962"/>
		<updated>2006-08-28T10:16:17Z</updated>

		<summary type="html">&lt;p&gt;Hans: &amp;lt;pre&amp;gt; =&amp;gt; &amp;lt;c&amp;gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Snippets&amp;diff=16961</id>
		<title>Snippets</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Snippets&amp;diff=16961"/>
		<updated>2006-08-28T10:15:25Z</updated>

		<summary type="html">&lt;p&gt;Hans: code war nicht ganz sauber... bitte adc-init nochmal anschaun .. ist bei mir schon länger her...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=LPC2000&amp;diff=15955</id>
		<title>LPC2000</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=LPC2000&amp;diff=15955"/>
		<updated>2006-06-25T18:19:30Z</updated>

		<summary type="html">&lt;p&gt;Hans: link auf olimex eclipse tutorial war tot&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Editoren/IDEs&amp;diff=13905</id>
		<title>Editoren/IDEs</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Editoren/IDEs&amp;diff=13905"/>
		<updated>2006-05-24T19:13:28Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Unix/Linux */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Texteditoren für Programmierer ==&lt;br /&gt;
&lt;br /&gt;
=== Unix/Linux ===&lt;br /&gt;
&lt;br /&gt;
* [http://ftp.gnu.org/gnu/emacs/ Emacs]&lt;br /&gt;
* [http://www.vim.org/ Vim]&lt;br /&gt;
* [http://kate.kde.org/ Kate]&lt;br /&gt;
* [http://www.gnu.org/software/ed/ed.html ed]&lt;br /&gt;
* [http://www.gnome.org/projects/gedit gedit]&lt;br /&gt;
* [http://www.objectcentral.com/vide.htm VIDE] (IDE für GNU g++ und Java)&lt;br /&gt;
* [http://www.scintilla.org/SciTE.html SciTE]&lt;br /&gt;
* [http://geany.uvena.de/ Geany] (GTK2 also auch mit Windows-Binaries !)&lt;br /&gt;
&lt;br /&gt;
=== Mac OS X ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.codingmonkeys.de/subethaedit/ SubEthaEdit] (nicht mehr frei für nichtkommerzielle Nutzung (seit Version 2.3), erlaubt das gemeinsame Bearbeiten einer Datei von mehreren Personen gleichzeitig)&lt;br /&gt;
* jEdit [http://www.jedit.org/]&lt;br /&gt;
* Außerdem gibt es natürlich alle Unix-/Linux-Editoren als OS X-Port, je nachdem im Terminal oder unter X11. vim und Emacs gibt es als fertige Pakete über Fink oder die Darwinports.&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.pspad.com PSPad] (Freeware, vglb. mit UltraEdit)&lt;br /&gt;
* [http://www.ultraedit.com UltraEdit] (Shareware)&lt;br /&gt;
* [http://www.pnotepad.org/ Programmers Notepad] (Freeware, in WinAVR enthalten)&lt;br /&gt;
* [http://www.atmel.com AVR-Studio] (für AVR-Assembler/C)&lt;br /&gt;
* [http://www.myAVR.com myAVRWorkpad] (für AVR-Assembler/C, lauffähige DEMO verfügbar)&lt;br /&gt;
* [http://www.mcselec.com BASCOM] (für BASIC Dialekt für AVR, lauffähige DEMO verfügbar)&lt;br /&gt;
* [http://ftp.gnu.org/gnu/emacs/windows/ Emacs] &lt;br /&gt;
Emacs läuft direkt unter Windows nur in der [http://www.xemacs.org Xemacs] - Fork Version. Wer den Xemacs nicht mag kann auch gerne unter Windows [http://www.cygwin.com Cygwin] installieren. Cygwin bringt den GNU Emacs mit. &lt;br /&gt;
&#039;&#039;&#039;Was ist Cygwin?&#039;&#039;&#039; Cygwin ist eine Sammlung freier Software, die unter verschiedenen Versionen von Microsoft Windows eine Vielzahl von Funktionen einer UNIX-Umgebung bereitstellt (aus: [http://de.wikipedia.org/wiki/Cygwin Wikipedia])&lt;br /&gt;
* [http://www.winvi.de/ WinVi]&lt;br /&gt;
* [http://www.vim.org/ Vim]&lt;br /&gt;
* [http://syn.sourceforge.net/ Syn] (Open Source)&lt;br /&gt;
* [http://www.scintilla.org/SciTE.html SciTE]&lt;br /&gt;
* [http://www.textpad.com/ Textpad] (Shareware)&lt;br /&gt;
* [http://www.bloodshed.net/dev/devcpp.html Dev-C++] (GNU, komplette IDE für C/C++)&lt;br /&gt;
* [http://www.meybohm.de/proton.html Proton] (Texteditor)&lt;br /&gt;
* [http://www.objectcentral.com/vide.htm VIDE] (IDE für GNU g++ und Java)&lt;br /&gt;
&lt;br /&gt;
* Eclipse (erweiterbare IDE, Multiplattform)&lt;br /&gt;
* Code::Blocks (IDE, gdb-Interface, Multiplattform)&lt;br /&gt;
&lt;br /&gt;
=== Ok, und welchen Editor nehme ich jetzt? ===&lt;br /&gt;
&lt;br /&gt;
Nun sind hier einige Editoren genannt, aber welchen soll ich als blutiger Anfänger nehmen?&lt;br /&gt;
Nunja die Wahl des Editors ist in Unix-Umkreisen schon eine Art Religion geworden und daher muß auch jeder selber wissen womit er arbeitet.&lt;br /&gt;
Wichtig ist es jedoch sich mit seinem Editor auszukennen. Wer bei seinem Editor nur das einfache Suchen/Ersetzen beherrscht der kann nicht produktiv arbeiten.&lt;br /&gt;
Wichtig ist es, daß man sich schnell und sicher in seinem Editor bewegen kann. Wer schonmal die Befehle oder Tastaturkürzel für ans Zeile-Anfang und Zeile-Ende kennt und auch anwendet, dem ist schon stark geholfen. Als weiteres kann es sinnvoll sein zu wissen wie man an den Anfang/Ende des Absatzes kommt. Wer sich dann auch durch den Text bewegen kann, ohne dass er lästig mit den Pfeiltasten sich Buchstabe für Buchstabe vorarbeiten muss, dem sei schon arg geholfen.&lt;br /&gt;
&lt;br /&gt;
Ein weiterer wichtiger Punkt ist für mich das Highlighting, also das Einfärben des Textes.&lt;br /&gt;
Ebenfalls nützlich und sehr produktiv ist es den Compiler direkt aus dem Editor rauszustarten.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Also Leute, lernt mit Eurem Editor produktiv zu arbeiten. &#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
Der Weg dorthin ist sehr hart, da man sich immer wieder erwischt anstatt schneller Tastaturkürzel sich mühsam mit den Pfeiltasten durch den Text zu wühlen. Wer es jedoch schafft wird irgendwann feststellen, dass es ein verdammt geiles Gefühl ist. Im Übrigen ist derjenige kein Warmduscher, der immer eine Reference Card neben sich liegen hat. Im Gegenteil beidemjenigen, bei dem sich die Reference Card mit eigenen Einträgen füllt, der ist der Gewinner!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ok wer jetzt doch noch einen Tip hören will! Ehrlich gesagt weiß ich nicht ob ich eingeschränkt den &#039;&#039;&#039;&#039;&#039;Emacs&#039;&#039;&#039;&#039;&#039; empfehlen kann. &lt;br /&gt;
Fürs Auge ist das Ding leider nichts (Xemacs sieht ein wenig besser aus) und es lässt sich für Anfänger auch nicht intuitiv bedienen. Wenn man mich selber nicht dazu genötigt hätte mit diesen Editor ein halbes Jahr zu programmieren hätte ich ihn immer und ewig gemieden. Jedoch habe ich mich in dem halben Jahr damit arrangiert und gelernt mit Emacs produktiv zu arbeiten.&lt;br /&gt;
Die Tastaturkürzel sind teilweise grauenhaft und sehr wichtig ist die Konfiguration. Leider ist gerade die Konfiguration der Knackpunkt. Besonders wenn man irgendwann häufiger mit dem Emacs arbeitet will man bestimmte Funktionen schnelle erreichen. Im Grunde jedoch gibt es keine Funktion die der Emacs nicht kennt. Empfehlen kann ich die Versionsmanagementfunktion. Somit kann man sich selber erziehen um seine Programme mit einer Versionskontrolle zu schreiben. Auch dieser Schritt sollte sich jeder Programmierer mal überlegen. Wie oft hat man schon Programme umgeschrieben, auskommentiert, gelöscht und nachher wieder alles neu geschrieben. Mit dem Ergebniss, dass das Ergebnis vorm auskommentieren und löschen  nicht viel anderes aussieht wie danach.&lt;br /&gt;
&lt;br /&gt;
== Ready to Run ==&lt;br /&gt;
&lt;br /&gt;
Als sehr interessannte Alternative zu vielen fertigen IDEs kann ich eine bootbare CD empfehlen.&lt;br /&gt;
Guido Socher von [http://www.tuxgraphics.org Tuxgraphics] hat ein bootbares Linux erstellt. Die IDE besteht aus mehreren Editoren, dem Gnu-C-AVR Compiler inkl. Bibliotheken und einem Programmierer.&lt;br /&gt;
Somit kann man auch auf anderer Hardware seine Atmegas programmieren. Auch wenn man sich den Compiler und Programmierer auf dem Rechner installert (Anleitung auch bei Tuxgraphics) und dann losprogrammiert kann es häufiger passieren, dass es nicht funktioniert. Dann steht man davor zu entscheiden ob die Programmierumgebung kaputt ist oder der das Board nicht so will. Abhilfe: CD-Rein und dann ausschliessen....&lt;br /&gt;
Zugegebenermassen soweit ich weiss ist die CD nur käuflich zu erhalten. &lt;br /&gt;
Der Preis ist mit Handbuch und Programmieradapter auch für mich als Student mit knapp 16 Euro mehr wie akzeptabel.&lt;br /&gt;
&lt;br /&gt;
Die Oberfläche ist jedoch ein wenig gewöhnungsbedürftig. Für Leute die keinerlei Erfahrung mit Linux haben und auch nicht experimentierfreudig sind kann ich diese CD nur bedingt empfehlen.&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Miniwebserver&amp;diff=13023</id>
		<title>Miniwebserver</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Miniwebserver&amp;diff=13023"/>
		<updated>2006-05-17T17:46:21Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Winzig kleine Webserver =&lt;br /&gt;
In diesem Artikel möchte ich Informationen über alle Geräte sammeln, die folgende Eigenschaften besitzen:&lt;br /&gt;
*Ethernetanschluß (Buchse oder Anschlußpins für eine Buchse)&lt;br /&gt;
*Webseiten ausliefern&lt;br /&gt;
*Sehr kleine Abmessungen&lt;br /&gt;
&lt;br /&gt;
Keine Voraussetzung ist:&lt;br /&gt;
*Programme ausführen&lt;br /&gt;
*Weitere Anschlußmöglichkeiten&lt;br /&gt;
*Mailserver&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Kandidaten ==&lt;br /&gt;
===XPort (ab 65 Euro)===&lt;br /&gt;
*Ethernetbuchse eingebaut&lt;br /&gt;
*Webseiten, aber nur abrufbar, keine serverseitigen Programme&lt;br /&gt;
*3 I/O Ports direkt ansprechbar per UDP und TCP&lt;br /&gt;
*RS232-Schnittstelle&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Picotux (ab 100 Euro)===&lt;br /&gt;
&lt;br /&gt;
*Ethernetbuchse eingebaut&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===FOX Board (139 Euro)===&lt;br /&gt;
*Ethernetbuchse eingebaut&lt;br /&gt;
*Axis ETRAX LX100 Multi Chip Module&lt;br /&gt;
*32 Bit RISC CPU, 100MHz Takt, MMU, 8KB Cache&lt;br /&gt;
*4 MB Flash, 16 MB SDRAM&lt;br /&gt;
*10/100 Mbps Ethernet Port (RJ45-Buchse)&lt;br /&gt;
*2x USB-Port (Full-Speed Host)&lt;br /&gt;
*RS232-Port (TTL-Pegel) und I2C&lt;br /&gt;
*IDE, SCSI oder Wide-SCSI&lt;br /&gt;
*zwei Stiftleisten mit je 2x20 Pins&lt;br /&gt;
*3,3V-IOs, 5V-tolerant&lt;br /&gt;
*Versorgung: 5V=, ca. 280mA&lt;br /&gt;
*Abmessungen: 66mm x 72mm&lt;br /&gt;
*Ready-to-run Embedded Linux System (Kernel 2.6)&lt;br /&gt;
*Standardanwendungen: HTTP (Web-Server), FTP, Telnet, DHCP, SSH, PPP...&lt;br /&gt;
*Firmwareupdates jederzeit einfach via LAN-SDK, FTP-Client oder Web-Browser!&lt;br /&gt;
&lt;br /&gt;
=== ADDS-BF533-STAMP Blackfin Eval-Board (136.50 Euro excl. z.b bei Farnell) ===&lt;br /&gt;
*ADSP-BF533 500 MHz Blackfin®-Prozessor&lt;br /&gt;
*128 MB SDRAM (64M x 16)&lt;br /&gt;
*4 MB FLASH-Speicher&lt;br /&gt;
*Ethernet-Controller SMSC 91C111&lt;br /&gt;
*serielle RS232-Schnittstelle&lt;br /&gt;
*E/A-Erweiterungsanschlüsse für Blackfin-Peripherie&lt;br /&gt;
**PPI&lt;br /&gt;
**SPORT0 &amp;amp; SPORT1&lt;br /&gt;
**SPI&lt;br /&gt;
**Timer&lt;br /&gt;
**IrDA&lt;br /&gt;
**2-Leiter-Schnittstelle&lt;br /&gt;
*JTAG-Schnittstelle für Fehlersuche und FLASH-Programmierung&lt;br /&gt;
*LEDs (3) und Taster (3)&lt;br /&gt;
*Netzteil&lt;br /&gt;
*fertiger ucLinux-Port :)&lt;br /&gt;
&lt;br /&gt;
== private Projekte ==&lt;br /&gt;
===unfertig===&lt;br /&gt;
*[[ENC28J60]]&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:NetAction|NetAction]] 15:00, 16. Mai 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Ports_benutzen_(PHP)&amp;diff=14826</id>
		<title>Ports benutzen (PHP)</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Ports_benutzen_(PHP)&amp;diff=14826"/>
		<updated>2006-05-07T18:42:36Z</updated>

		<summary type="html">&lt;p&gt;Hans: wiederhergestellt....&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Linux]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&lt;br /&gt;
Da es schon einen netten Artikel über die Benutzung von Standard-Ports unter Linux in C/C++ gibt und ich die serielle Schnittstelle erst kürzlich unter PHP für mich entdeckt habe, war der Schritt einen Artikel, der an den für C/C++ gedachten angelehnt ist, bereits absehbar...&lt;br /&gt;
&lt;br /&gt;
Nun werden sich einige fragen warum jemand überhaupt unter PHP schnittstellen direkt verwenden will...&lt;br /&gt;
&lt;br /&gt;
Hier ist vielleicht interessant für welche Zwecke ich PHP missbraucht habe.&lt;br /&gt;
&lt;br /&gt;
Also es wandern Daten über die Serielle rein und sollen in eine Datenbank geschrieben werden.&lt;br /&gt;
Weiter sollen diese jetzt in der Datenbank stehenden Werte per HTTP (ist am einfachsten zu implementieren) wieder ausgelesen werden können. Ich habe also einen netten Server gebraucht, der über RS232 Daten holen, über HTTP Daten ausgeben und nebenbei auch alles in einer Datenbank speichern kann...&lt;br /&gt;
&lt;br /&gt;
PHP war zwar nicht mein 1. Gedanke aber als ich bei NanoWeb über eine PHP-Daemon-Class gestolpert bin war alles klar ;)&lt;br /&gt;
&lt;br /&gt;
PHP5 unterstützt Objekt-Orientierte Entwicklung und bietet eine gute Unterstützung für Datenbanken aller Art... (ich habe mich der Einfachheit halber auf SQLite beschränkt)&lt;br /&gt;
&lt;br /&gt;
Daher ist PHP meiner Meinung nach ausgezeichnet geeignet um schnell solche Probleme zu bewältigen.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel ist derzeit im Prinzip nur eine Umgestaltung der zugehörigen Manual Pages... nach Durchsicht meines bestehenden Codes am Wochenende (hoffentlich das letzte im Juni und nicht ein späteres ;) werde ich hier den kompletten Daemon unter GPL oä. zur Verfügung stellen...&lt;br /&gt;
&lt;br /&gt;
==Voraussetzungen==&lt;br /&gt;
&lt;br /&gt;
Man sollte sich in PHP auskennen und nötigenfalls in der Lage sein PHP neu zu kompilieren&lt;br /&gt;
(siehe [http://www.php.net/manual/de/ref.dio.php PHP-Manual XXII. Direkte Ein-/Ausgabe Funktionen] =&amp;gt; Um die DIO Funktionen benutzen zu können, muss PHP mit der Option &#039;&#039;--enable-dio&#039;&#039; konfiguriert werden.)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Allgemein==&lt;br /&gt;
&lt;br /&gt;
Unter PHP greift man auf Schnittstellen über die &#039;Direct-IO&#039;-Funktionen zu, die da wären:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|&#039;&#039;void&#039;&#039; [http://www.php.net/manual/de/function.dio-close.php dio_close]&#039;&#039;( resource fd )&#039;&#039;&lt;br /&gt;
|Schliesst die Datei&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;mixed&#039;&#039; [http://www.php.net/manual/de/function.dio-fcntl.php dio_fcntl] &#039;&#039;( resource fd, int cmd [, mixed arg] )&#039;&#039;&lt;br /&gt;
|Ändert den Dateideskriptor&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;resource&#039;&#039; [http://www.php.net/manual/de/function.dio-open.php dio_open] &#039;&#039; ( string filename, int flags [, int mode] )&#039;&#039;&lt;br /&gt;
|Öffnet eine Datei mit den angegebenen Rechten &lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;string&#039;&#039; [http://www.php.net/manual/de/function.dio-read.php dio_read] &#039;&#039;( resource fd [, int n] )&#039;&#039;&lt;br /&gt;
|Liest &#039;&#039;n&#039;&#039; Bytes und gibt sie zurück, ist &#039;&#039;n&#039;&#039; nicht angegeben wird ein 1K Block gelesen &lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;int&#039;&#039; [http://www.php.net/manual/de/function.dio-seek.php dio_seek] &#039;&#039; ( resource fd, int pos, int whence )&#039;&#039;&lt;br /&gt;
|Setzt den Dateizeiger&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;array&#039;&#039; [http://www.php.net/manual/de/function.dio-stat.php dio_stat] &#039;&#039;( resource fd )&#039;&#039;&lt;br /&gt;
|Liefert Statusinformationen über eine Datei&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;void&#039;&#039; [http://www.php.net/manual/de/function.dio-tcsetattr.php dio_tcsetattr] &#039;&#039; ( resource fd, array options )&#039;&#039;&lt;br /&gt;
|Setzt Terminalattribute und die Baudrate für einen seriellen Port&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; [http://www.php.net/manual/de/function.dio-truncate.php dio_truncate] &#039;&#039;truncate ( resource fd, int offset )&#039;&#039;&lt;br /&gt;
|Schneidet eine Datei ab&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;int&#039;&#039; [http://www.php.net/manual/de/function.dio-write.php dio_write] &#039;&#039;( resource fd, string data [, int len] )&#039;&#039;&lt;br /&gt;
|Schreibt Daten in eine Datei&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weitere Erfordernisse (wie zum Beispiel die Rechtevergabe damit der &#039;&#039;PHP-User&#039;&#039; auf die Schnittstellen zugreifen kann finden sich im Artikel [[Ports benutzen (GCC)]] !&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Beispiel==&lt;br /&gt;
&lt;br /&gt;
Folgendes [http://www.php.net/manual/de/function.dio-tcsetattr.php Beispiel] ist im PHP-Manual zu finden... es Bedarf meiner Meinung nach keiner Erklärung (die oben aufgeführten Funktionen und deren Beschreibung im PHP Manual sollten alles Offene kurz und gut erläutern).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$fd = dio_open(&#039;/dev/ttyS0&#039;, O_RDWR | O_NOCTTY | O_NONBLOCK);&lt;br /&gt;
&lt;br /&gt;
dio_fcntl($fd, F_SETFL, O_SYNC);&lt;br /&gt;
&lt;br /&gt;
dio_tcsetattr($fd, array(&lt;br /&gt;
  &#039;baud&#039; =&amp;gt; 9600,&lt;br /&gt;
  &#039;bits&#039; =&amp;gt; 8,&lt;br /&gt;
  &#039;stop&#039;  =&amp;gt; 1,&lt;br /&gt;
  &#039;parity&#039; =&amp;gt; 0&lt;br /&gt;
)); &lt;br /&gt;
&lt;br /&gt;
while (1) {&lt;br /&gt;
&lt;br /&gt;
  $data = dio_read($fd, 256);&lt;br /&gt;
&lt;br /&gt;
  if ($data) {&lt;br /&gt;
      echo $data;&lt;br /&gt;
  }&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
?&amp;gt; &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In diesem Beispiel find ich die Zeile&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$data = dio_read($fd, 256);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
unglücklich, da die Funktion &#039;&#039;dio_read&#039;&#039; immer 256 Bytes liest und erst danach einen String zurückliefert.&lt;br /&gt;
&lt;br /&gt;
Dagegen liefert&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$data = dio_read($fd, 1);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
jedes einzelne byte =&amp;gt; Das was man reinschickt wird auch &#039;&#039;&#039;sofort&#039;&#039;&#039; angezeigt und nicht immer blockweise.&lt;br /&gt;
&lt;br /&gt;
Damit wäre dieses Script (über die Konsole gestartet) schon ein einfaches Terminal.&lt;br /&gt;
&lt;br /&gt;
Die Daemon Class muss ich noch überarbeiten, da in der von mir verwendeten Klasse einfach zu viele Fehler bzw. unzulänglichkeiten im Code vorhanden sind =&amp;gt; ReWrite ;)&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 21:43, 24. Jun 2005 (CEST)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Absolute_Beginner&amp;diff=12889</id>
		<title>Absolute Beginner</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Absolute_Beginner&amp;diff=12889"/>
		<updated>2006-05-05T19:25:08Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Sinnvolles Wissen */ coffee howto&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Auf dieser Wiki-Seite möchte ich innerhalb der nächsten Tage zusammenfassen, was in diesem [http://www.mikrocontroller.net/forum/read-1-344257.html#new Thread] aufgeführt wurde. &lt;br /&gt;
&lt;br /&gt;
==Dieser Artikel wird derzeit erstellt== &lt;br /&gt;
Wie ihr seht, ist der Artikel noch im Aufbau, ich habe lediglich einen Grundstock gelegt. Wer diesen Artikel ergänzen möchte, soll dies gerne tun.&lt;br /&gt;
Auf was wir jedoch achten müssen ist, dass der Artikel sich wirklich an die absoluten Anfänger richten soll. Also frei nach der Devise so viel wie nötig, so wenig wie möglich.&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
Gestern tat es einen Schlag,&amp;lt;br/&amp;gt;&lt;br /&gt;
wovon ich hier berichten mag.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Drosselspulen, Widerstände,&amp;lt;br/&amp;gt;&lt;br /&gt;
alles fällt mir in die Hände.&amp;lt;br/&amp;gt;&lt;br /&gt;
Da bau ich eine Schaltung auf.&amp;lt;br/&amp;gt;&lt;br /&gt;
Ein Kühlblech kommt da auch noch drauf.&amp;lt;br/&amp;gt;&lt;br /&gt;
An Einstellreglern rumgedreht,&amp;lt;br/&amp;gt;&lt;br /&gt;
bis dann plötzlich nichts mehr geht.&amp;lt;br/&amp;gt;&lt;br /&gt;
Elkos hab ich nicht gebraucht,&amp;lt;br/&amp;gt;&lt;br /&gt;
Widerstände abgeraucht.&amp;lt;br/&amp;gt;&lt;br /&gt;
Jetzt ist die Bude voller Qualm,&amp;lt;br/&amp;gt;&lt;br /&gt;
zum Himmel schick ich einen Psalm.&amp;lt;br/&amp;gt;&lt;br /&gt;
Transistoren an den Ohren.&amp;lt;br/&amp;gt;&lt;br /&gt;
Dioden an den Hoden.&amp;lt;br/&amp;gt;&lt;br /&gt;
Kabel am Nabel.&amp;lt;br/&amp;gt;&lt;br /&gt;
Phase an der Nase!&amp;lt;br/&amp;gt;&lt;br /&gt;
Herzkammer flimmert; kann nur noch fluchen.&amp;lt;br/&amp;gt;&lt;br /&gt;
Muß mir ein neues Hobby suchen!&amp;lt;br/&amp;gt;&lt;br /&gt;
MfG Paul&amp;lt;br/&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Dass dieses von Paul so plastisch dargestellte Anfängerszenario gar nicht erst eintritt, werden auf dieser Artikelseite von http://www.mikrocontroller.net einige Dinge aufgeführt, die unbedingt notwendig sind, wenn man sich mit Elektronikbasteleien auseinandersetzt. Die Seite richtet sich bewusst an den absoluten Anfänger um so interessierten Leuten den Einstieg in die Welt der Elektronik und damit auch zum Programmieren von Mikrocontrollern möglichst einfach zu gestalten.&lt;br /&gt;
&lt;br /&gt;
Natürlich ist das Programmieren von Mikrocontrollern auch ohne Elektronikkenntnisse machbar, aber die Aussenanbindung eines Mikrocontrollers zu verstehen ist häufig sinnvoll, so z.B. wenn man ein Signal auswerten möchte.&lt;br /&gt;
&lt;br /&gt;
==Literatur==&lt;br /&gt;
Ohne Lektüre (egal ob in Papierform oder im Internet) wird das mit der Elektronik in Eigenregie nix. &lt;br /&gt;
Möchte man sich ernsthaft mit der Materie beschäftigen, so kommt man nicht umhin, sich mit den Grundlagen der Elektronik zu beschäftigen. Während man im Internet viele Schaltungen findet, die einfach nachzubauen sind, bietet sich für das Grundlagenstudium eher ein Buch an. Da gute Elektronikbücher häufig teuer sind, will ich dir folgenden Tipp geben: Schau einfach mal in die nächste größere Bibliothek. Wenn dir ein Buch dort gefällt, kannst du es jeder Zeit noch kaufen. Wer sich nicht irgendwann mit den Grundlagen beschäftigt, wird nie über das Stadium herauskommen, in dem er Schaltungen aus dem Internet kapiert. Aber unser aller Ziel ist es doch, auch zu verstehen, weshalb hier jetzt genau der rot-rot-schwarze Widerstand rein muss und was er tut...&lt;br /&gt;
*&#039;&#039;&#039;Fachzeitschriften&#039;&#039;&#039; am Kiosk&lt;br /&gt;
*&#039;&#039;&#039;Internet&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;[http://www.elektronik-kompendium.de/ Das Elektronik Kompendium]&#039;&#039;&#039; Ziel von das ELKO ist es die Themen Elektronik, Computertechnik, Kommunikationstechnik und Netzwerktechnik allgemeinverständlich zu erklären und der Allgemeinheit zu präsentieren. Die Zielgruppe sind vor allem Schüler und Auszubildende, die sich mit Elektronik näher beschäftigen müssen oder wollen. Weiterhin sollen alle privat und beruflich an Elektronik interessierte angesprochen werden.&lt;br /&gt;
**&#039;&#039;&#039;http://www.dse-faq.elektronik-kompendium.de/&#039;&#039;&#039; Es gibt zwar von der Startseite des ELKO einen Link zum FAQ aber es schadet sicher nicht es hier explizit aufzuführen.&lt;br /&gt;
**&#039;&#039;&#039;http://www.b-kainka.de/&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;http://www.dieelektronikerseite.de/&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;http://www.howstuffworks.com/&#039;&#039;&#039;&lt;br /&gt;
**Diverse Application Notes der großen Halbleiterhersteller sind auch immer eine gute Informationsquelle und beschäftigen sich teilweise auch mit sehr grundlegenden Problemen&lt;br /&gt;
*&#039;&#039;&#039;Bücher&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;[http://www.amazon.com/gp/product/0521370957/103-9884703-3518215?v=glance&amp;amp;n=283155 Art Of Electronics]&#039;&#039;&#039; Bitte nur die englihsche Version nutzen, da die Übersetzung nicht gut gelungen ist.&lt;br /&gt;
** &#039;&#039;&#039;[http://www.amazon.de/exec/obidos/ASIN/3426037920/qid=1146692611/sr=8-1/ref=sr_8_xs_ap_i1_xgl/302-0461878-1759243 Elektronik ohne Geheimnisse]&#039;&#039;&#039; Von der Anfängerschaltung bis zum Radio Franzis-Verlag ISBN 3-426-03792-0&lt;br /&gt;
**&#039;&#039;&#039;Schaltkreisbastelbuch&#039;&#039;&#039; von H.Jakubaschk und das&lt;br /&gt;
**&#039;&#039;&#039;Radiobastelbuch&#039;&#039;&#039; von K,H. Schubert. Das sind sehr alte DDR-Bücher. Aber die sind für Einsteiger äußerst nahrhaft.&lt;br /&gt;
&lt;br /&gt;
==Bauteile die in jeder Werkstatt sein müssen==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[[Breadboard]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Widerstände:&#039;&#039;&#039; 330 Ohm, 1 K Ohm, 10 K Ohm, 1 M Ohm&lt;br /&gt;
*&#039;&#039;&#039;Kondensatoren:&#039;&#039;&#039;&lt;br /&gt;
** Elkos: 1 µF, 10 µF, 2000 µF&lt;br /&gt;
** keramische Kondensatoren: 100 nF, 33 pF für Quarze&lt;br /&gt;
*&#039;&#039;&#039;Dioden:&#039;&#039;&#039; 1N4148, 1N4004&lt;br /&gt;
*&#039;&#039;&#039;[[LED]]s&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[Transistor]]en:&#039;&#039;&#039; BC547, BC557. Diese beiden Transistoren sind die Standart npn- und pnp Transistoren.&lt;br /&gt;
*&#039;&#039;&#039;Operationsverstärker:&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[Festspannungsregler]]:&#039;&#039;&#039; (7805)  Kann durch ein regelbares Netzteil  mit Anzeige unnötig werden, ist aber sinnvoll, wenn man mal eine Schaltung autark arbeiten lassen möchte. Dann benötigt man in den meisten Fällen noch einen geeigneten Trafo und einen Brückengleichrichter.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Schalter&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Taster&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Lötnägel&#039;&#039;&#039; &#039;&#039;Frage: Sind diese auch für das Breadboard geeignet, oder nur um in Platinen einzulöten?&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Ein Satz Kabel mit Krokoklemmen an beiden Enden&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Draht&#039;&#039;&#039;&lt;br /&gt;
** dünne Litze,&lt;br /&gt;
** dünner isolierter Draht (je dünner je besser), ideal: Wrap-Draht ca. AWG30, leider etwas schwer erhältlich und teuer,&lt;br /&gt;
** dünner blanker verzinnter Draht (möglichst &amp;lt; 0,5mm, leider etwas schwer erhältlich), oder lötbarer Silberdraht.&lt;br /&gt;
Es hat wenig Sinn, mit 220V-Litze oder normalem Klingeldraht&lt;br /&gt;
Lochraster-Schaltungen zu bauen. Und wenn mal ernsthaft Strom fliessen soll, entsprechend dickerer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für die Kleinteile ist ein Sortimentkasten sehr zu empfehlen. Man muss sich nicht von vorneherein auf spezielle Bauteile festlegen.&lt;br /&gt;
&lt;br /&gt;
==Werkzeug==&lt;br /&gt;
* &#039;&#039;&#039;Lötkolben&#039;&#039;&#039; mindestens 30 Watt&lt;br /&gt;
**&#039;&#039;&#039; Lötzinn&#039;&#039;&#039; 1mm&lt;br /&gt;
** &#039;&#039;&#039;Lötschwamm &#039;&#039;&#039; (ein Baumwoll-Lumpen tut es notfalls auch)&lt;br /&gt;
** &#039;&#039;&#039;Entlötlitze&#039;&#039;&#039;&lt;br /&gt;
Detaillierte Informationen zum Löten findest du im Artikel [[Löten_(praktisch)]].&lt;br /&gt;
* &#039;&#039;&#039;Seitenschneider&#039;&#039;&#039;, klein - Opas Kneifzange ist ungeeignet&lt;br /&gt;
* &#039;&#039;&#039;Abisolierzange&#039;&#039;&#039;, Bauform vgl. Wasserrohrzange, die symmetrischen mit dem Loch vorne sind eher für Starkstromleitungen gedacht&lt;br /&gt;
* &#039;&#039;&#039;[http://de.wikipedia.org/wiki/Multimeter Multimeter]&#039;&#039;&#039; Man sollte auf jeden Fall 1 oder 2 Multimeter kaufen. Vor allem, wenn man alleine ist, bietet sich eine Klemmprüfspitze an, so hat man die Hände frei für wichtigere Dinge. Die [http://de.wikipedia.org/wiki/Digitalmultimeter digitalen] Multimeter sind in der regel günstiger. (Beispiel: 3,95 bei [http://www.pollin.de pollin])&lt;br /&gt;
* &#039;&#039;&#039;Netzteil mit Strombegrenzeung&#039;&#039;&#039; hilft zu verhindern, dass dir ständig die Bauteile flöten gehen.&lt;br /&gt;
* &#039;&#039;&#039;[[Oszilloskop]]&#039;&#039;&#039; Zu Beginn noch nicht unbedingt notwendig. Wenn man sich eine Weile mit der Materie beschäftigt, kommt der Wunsch danach von alleine. Eine kleine Hilfe zur Auswahl von Oszis findet man auf dieser Seite.&lt;br /&gt;
* &#039;&#039;&#039;Simulationstool am PC&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;elecronic workbench&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;SwichtcherCAD&#039;&#039;&#039; Sehr viel Zeit und Frust kannst du dir mit einem Simulationsprogramm SwitcherCAD, kostenlos) ersparen. Dann weißt du schon vorher ob eine Schaltung NICHT funktionieren wird (der Umkehrschluß ist leider nicht immer möglich).&lt;br /&gt;
&lt;br /&gt;
==Baukästen== &lt;br /&gt;
Elektronikbaukästen bieten die Möglichkeit, das was man gelernt hat gleich praktisch anzuwenden. Sie beinhalten die notwendigen Bauteile und oft didaktisch sinnvoll aufgebaut.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Kosmos XN&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;XN1000&#039;&#039;&#039; Bereits für Kinder geeignet. Prof Armstron und der kleine Roboter führen spielend in die Welt der Elektronik ein.&lt;br /&gt;
** &#039;&#039;&#039;XN2000&#039;&#039;&#039; Die Erweiterung. &lt;br /&gt;
** &#039;&#039;&#039;XN3000&#039;&#039;&#039; Nicht mehr auf Kinder, sondern auf Jugendliche ausgerichtet. Relativ anspruchsvoll, aber verständlich.   &lt;br /&gt;
&#039;&#039;Nachteil:&#039;&#039; relativ teuer&lt;br /&gt;
*&#039;&#039;&#039;Busch-Elektronik-Kästen (conrad)&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Nachteil:&#039;&#039; Weil die Bauteile auf kleinen Platten&lt;br /&gt;
befestigt sind, kann man mit ihnen keine eigenen Schaltungen aufbauen.&lt;br /&gt;
*&#039;&#039;&#039;Polytronic A B C (exDDR)&#039;&#039;&#039; .... aber nicht um jeden Peis im&lt;br /&gt;
Kaufhaus kaufen - alos Vorstufe zum Steckbrett&lt;br /&gt;
&lt;br /&gt;
== Sinnvolles Wissen ==&lt;br /&gt;
*Also kannst du das Ohm´sche Gesetz und die Kirchhoffschen Regeln?&lt;br /&gt;
*http://www.tldp.org/HOWTO/html_single/Coffee/ ;)&lt;br /&gt;
&lt;br /&gt;
==Bezugsquellen==&lt;br /&gt;
*&#039;&#039;&#039;http://www.reichelt.de&#039;&#039;&#039; Günstiger Anbieter, führt leider nicht alles, was das Elektronikerherz begehrt. Der Grund hierfür ist der, dass er sich hauptsächlich auf Mainstreamprodukte stützt, die einen großen Absatz finden. Nur so ist der günstige Preis möglich. Angeblich sind die Versandkosten ins Ausland relativ hoch.&lt;br /&gt;
* &#039;&#039;&#039;[http://www.pollin.de Pollin]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Absolute_Beginner&amp;diff=12888</id>
		<title>Absolute Beginner</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Absolute_Beginner&amp;diff=12888"/>
		<updated>2006-05-05T19:19:53Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Literatur */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Auf dieser Wiki-Seite möchte ich innerhalb der nächsten Tage zusammenfassen, was in diesem [http://www.mikrocontroller.net/forum/read-1-344257.html#new Thread] aufgeführt wurde. &lt;br /&gt;
&lt;br /&gt;
==Dieser Artikel wird derzeit erstellt== &lt;br /&gt;
Wie ihr seht, ist der Artikel noch im Aufbau, ich habe lediglich einen Grundstock gelegt. Wer diesen Artikel ergänzen möchte, soll dies gerne tun.&lt;br /&gt;
Auf was wir jedoch achten müssen ist, dass der Artikel sich wirklich an die absoluten Anfänger richten soll. Also frei nach der Devise so viel wie nötig, so wenig wie möglich.&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
Gestern tat es einen Schlag,&amp;lt;br/&amp;gt;&lt;br /&gt;
wovon ich hier berichten mag.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Drosselspulen, Widerstände,&amp;lt;br/&amp;gt;&lt;br /&gt;
alles fällt mir in die Hände.&amp;lt;br/&amp;gt;&lt;br /&gt;
Da bau ich eine Schaltung auf.&amp;lt;br/&amp;gt;&lt;br /&gt;
Ein Kühlblech kommt da auch noch drauf.&amp;lt;br/&amp;gt;&lt;br /&gt;
An Einstellreglern rumgedreht,&amp;lt;br/&amp;gt;&lt;br /&gt;
bis dann plötzlich nichts mehr geht.&amp;lt;br/&amp;gt;&lt;br /&gt;
Elkos hab ich nicht gebraucht,&amp;lt;br/&amp;gt;&lt;br /&gt;
Widerstände abgeraucht.&amp;lt;br/&amp;gt;&lt;br /&gt;
Jetzt ist die Bude voller Qualm,&amp;lt;br/&amp;gt;&lt;br /&gt;
zum Himmel schick ich einen Psalm.&amp;lt;br/&amp;gt;&lt;br /&gt;
Transistoren an den Ohren.&amp;lt;br/&amp;gt;&lt;br /&gt;
Dioden an den Hoden.&amp;lt;br/&amp;gt;&lt;br /&gt;
Kabel am Nabel.&amp;lt;br/&amp;gt;&lt;br /&gt;
Phase an der Nase!&amp;lt;br/&amp;gt;&lt;br /&gt;
Herzkammer flimmert; kann nur noch fluchen.&amp;lt;br/&amp;gt;&lt;br /&gt;
Muß mir ein neues Hobby suchen!&amp;lt;br/&amp;gt;&lt;br /&gt;
MfG Paul&amp;lt;br/&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Dass dieses von Paul so plastisch dargestellte Anfängerszenario gar nicht erst eintritt, werden auf dieser Artikelseite von http://www.mikrocontroller.net einige Dinge aufgeführt, die unbedingt notwendig sind, wenn man sich mit Elektronikbasteleien auseinandersetzt. Die Seite richtet sich bewusst an den absoluten Anfänger um so interessierten Leuten den Einstieg in die Welt der Elektronik und damit auch zum Programmieren von Mikrocontrollern möglichst einfach zu gestalten.&lt;br /&gt;
&lt;br /&gt;
Natürlich ist das Programmieren von Mikrocontrollern auch ohne Elektronikkenntnisse machbar, aber die Aussenanbindung eines Mikrocontrollers zu verstehen ist häufig sinnvoll, so z.B. wenn man ein Signal auswerten möchte.&lt;br /&gt;
&lt;br /&gt;
==Literatur==&lt;br /&gt;
Ohne Lektüre (egal ob in Papierform oder im Internet) wird das mit der Elektronik in Eigenregie nix. &lt;br /&gt;
Möchte man sich ernsthaft mit der Materie beschäftigen, so kommt man nicht umhin, sich mit den Grundlagen der Elektronik zu beschäftigen. Während man im Internet viele Schaltungen findet, die einfach nachzubauen sind, bietet sich für das Grundlagenstudium eher ein Buch an. Da gute Elektronikbücher häufig teuer sind, will ich dir folgenden Tipp geben: Schau einfach mal in die nächste größere Bibliothek. Wenn dir ein Buch dort gefällt, kannst du es jeder Zeit noch kaufen. Wer sich nicht irgendwann mit den Grundlagen beschäftigt, wird nie über das Stadium herauskommen, in dem er Schaltungen aus dem Internet kapiert. Aber unser aller Ziel ist es doch, auch zu verstehen, weshalb hier jetzt genau der rot-rot-schwarze Widerstand rein muss und was er tut...&lt;br /&gt;
*&#039;&#039;&#039;Fachzeitschriften&#039;&#039;&#039; am Kiosk&lt;br /&gt;
*&#039;&#039;&#039;Internet&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;[http://www.elektronik-kompendium.de/ Das Elektronik Kompendium]&#039;&#039;&#039; Ziel von das ELKO ist es die Themen Elektronik, Computertechnik, Kommunikationstechnik und Netzwerktechnik allgemeinverständlich zu erklären und der Allgemeinheit zu präsentieren. Die Zielgruppe sind vor allem Schüler und Auszubildende, die sich mit Elektronik näher beschäftigen müssen oder wollen. Weiterhin sollen alle privat und beruflich an Elektronik interessierte angesprochen werden.&lt;br /&gt;
**&#039;&#039;&#039;http://www.dse-faq.elektronik-kompendium.de/&#039;&#039;&#039; Es gibt zwar von der Startseite des ELKO einen Link zum FAQ aber es schadet sicher nicht es hier explizit aufzuführen.&lt;br /&gt;
**&#039;&#039;&#039;http://www.b-kainka.de/&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;http://www.dieelektronikerseite.de/&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;http://www.howstuffworks.com/&#039;&#039;&#039;&lt;br /&gt;
**Diverse Application Notes der großen Halbleiterhersteller sind auch immer eine gute Informationsquelle und beschäftigen sich teilweise auch mit sehr grundlegenden Problemen&lt;br /&gt;
*&#039;&#039;&#039;Bücher&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;[http://www.amazon.com/gp/product/0521370957/103-9884703-3518215?v=glance&amp;amp;n=283155 Art Of Electronics]&#039;&#039;&#039; Bitte nur die englihsche Version nutzen, da die Übersetzung nicht gut gelungen ist.&lt;br /&gt;
** &#039;&#039;&#039;[http://www.amazon.de/exec/obidos/ASIN/3426037920/qid=1146692611/sr=8-1/ref=sr_8_xs_ap_i1_xgl/302-0461878-1759243 Elektronik ohne Geheimnisse]&#039;&#039;&#039; Von der Anfängerschaltung bis zum Radio Franzis-Verlag ISBN 3-426-03792-0&lt;br /&gt;
**&#039;&#039;&#039;Schaltkreisbastelbuch&#039;&#039;&#039; von H.Jakubaschk und das&lt;br /&gt;
**&#039;&#039;&#039;Radiobastelbuch&#039;&#039;&#039; von K,H. Schubert. Das sind sehr alte DDR-Bücher. Aber die sind für Einsteiger äußerst nahrhaft.&lt;br /&gt;
&lt;br /&gt;
==Bauteile die in jeder Werkstatt sein müssen==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[[Breadboard]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Widerstände:&#039;&#039;&#039; 330 Ohm, 1 K Ohm, 10 K Ohm, 1 M Ohm&lt;br /&gt;
*&#039;&#039;&#039;Kondensatoren:&#039;&#039;&#039;&lt;br /&gt;
** Elkos: 1 µF, 10 µF, 2000 µF&lt;br /&gt;
** keramische Kondensatoren: 100 nF, 33 pF für Quarze&lt;br /&gt;
*&#039;&#039;&#039;Dioden:&#039;&#039;&#039; 1N4148, 1N4004&lt;br /&gt;
*&#039;&#039;&#039;[[LED]]s&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[Transistor]]en:&#039;&#039;&#039; BC547, BC557. Diese beiden Transistoren sind die Standart npn- und pnp Transistoren.&lt;br /&gt;
*&#039;&#039;&#039;Operationsverstärker:&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[Festspannungsregler]]:&#039;&#039;&#039; (7805)  Kann durch ein regelbares Netzteil  mit Anzeige unnötig werden, ist aber sinnvoll, wenn man mal eine Schaltung autark arbeiten lassen möchte. Dann benötigt man in den meisten Fällen noch einen geeigneten Trafo und einen Brückengleichrichter.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Schalter&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Taster&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Lötnägel&#039;&#039;&#039; &#039;&#039;Frage: Sind diese auch für das Breadboard geeignet, oder nur um in Platinen einzulöten?&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Ein Satz Kabel mit Krokoklemmen an beiden Enden&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Draht&#039;&#039;&#039;&lt;br /&gt;
** dünne Litze,&lt;br /&gt;
** dünner isolierter Draht (je dünner je besser), ideal: Wrap-Draht ca. AWG30, leider etwas schwer erhältlich und teuer,&lt;br /&gt;
** dünner blanker verzinnter Draht (möglichst &amp;lt; 0,5mm, leider etwas schwer erhältlich), oder lötbarer Silberdraht.&lt;br /&gt;
Es hat wenig Sinn, mit 220V-Litze oder normalem Klingeldraht&lt;br /&gt;
Lochraster-Schaltungen zu bauen. Und wenn mal ernsthaft Strom fliessen soll, entsprechend dickerer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für die Kleinteile ist ein Sortimentkasten sehr zu empfehlen. Man muss sich nicht von vorneherein auf spezielle Bauteile festlegen.&lt;br /&gt;
&lt;br /&gt;
==Werkzeug==&lt;br /&gt;
* &#039;&#039;&#039;Lötkolben&#039;&#039;&#039; mindestens 30 Watt&lt;br /&gt;
**&#039;&#039;&#039; Lötzinn&#039;&#039;&#039; 1mm&lt;br /&gt;
** &#039;&#039;&#039;Lötschwamm &#039;&#039;&#039; (ein Baumwoll-Lumpen tut es notfalls auch)&lt;br /&gt;
** &#039;&#039;&#039;Entlötlitze&#039;&#039;&#039;&lt;br /&gt;
Detaillierte Informationen zum Löten findest du im Artikel [[Löten_(praktisch)]].&lt;br /&gt;
* &#039;&#039;&#039;Seitenschneider&#039;&#039;&#039;, klein - Opas Kneifzange ist ungeeignet&lt;br /&gt;
* &#039;&#039;&#039;Abisolierzange&#039;&#039;&#039;, Bauform vgl. Wasserrohrzange, die symmetrischen mit dem Loch vorne sind eher für Starkstromleitungen gedacht&lt;br /&gt;
* &#039;&#039;&#039;[http://de.wikipedia.org/wiki/Multimeter Multimeter]&#039;&#039;&#039; Man sollte auf jeden Fall 1 oder 2 Multimeter kaufen. Vor allem, wenn man alleine ist, bietet sich eine Klemmprüfspitze an, so hat man die Hände frei für wichtigere Dinge. Die [http://de.wikipedia.org/wiki/Digitalmultimeter digitalen] Multimeter sind in der regel günstiger. (Beispiel: 3,95 bei [http://www.pollin.de pollin])&lt;br /&gt;
* &#039;&#039;&#039;Netzteil mit Strombegrenzeung&#039;&#039;&#039; hilft zu verhindern, dass dir ständig die Bauteile flöten gehen.&lt;br /&gt;
* &#039;&#039;&#039;[[Oszilloskop]]&#039;&#039;&#039; Zu Beginn noch nicht unbedingt notwendig. Wenn man sich eine Weile mit der Materie beschäftigt, kommt der Wunsch danach von alleine. Eine kleine Hilfe zur Auswahl von Oszis findet man auf dieser Seite.&lt;br /&gt;
* &#039;&#039;&#039;Simulationstool am PC&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;elecronic workbench&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;SwichtcherCAD&#039;&#039;&#039; Sehr viel Zeit und Frust kannst du dir mit einem Simulationsprogramm SwitcherCAD, kostenlos) ersparen. Dann weißt du schon vorher ob eine Schaltung NICHT funktionieren wird (der Umkehrschluß ist leider nicht immer möglich).&lt;br /&gt;
&lt;br /&gt;
==Baukästen== &lt;br /&gt;
Elektronikbaukästen bieten die Möglichkeit, das was man gelernt hat gleich praktisch anzuwenden. Sie beinhalten die notwendigen Bauteile und oft didaktisch sinnvoll aufgebaut.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Kosmos XN&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;XN1000&#039;&#039;&#039; Bereits für Kinder geeignet. Prof Armstron und der kleine Roboter führen spielend in die Welt der Elektronik ein.&lt;br /&gt;
** &#039;&#039;&#039;XN2000&#039;&#039;&#039; Die Erweiterung. &lt;br /&gt;
** &#039;&#039;&#039;XN3000&#039;&#039;&#039; Nicht mehr auf Kinder, sondern auf Jugendliche ausgerichtet. Relativ anspruchsvoll, aber verständlich.   &lt;br /&gt;
&#039;&#039;Nachteil:&#039;&#039; relativ teuer&lt;br /&gt;
*&#039;&#039;&#039;Busch-Elektronik-Kästen (conrad)&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Nachteil:&#039;&#039; Weil die Bauteile auf kleinen Platten&lt;br /&gt;
befestigt sind, kann man mit ihnen keine eigenen Schaltungen aufbauen.&lt;br /&gt;
*&#039;&#039;&#039;Polytronic A B C (exDDR)&#039;&#039;&#039; .... aber nicht um jeden Peis im&lt;br /&gt;
Kaufhaus kaufen - alos Vorstufe zum Steckbrett&lt;br /&gt;
&lt;br /&gt;
== Sinnvolles Wissen ==&lt;br /&gt;
*Also kannst du das Ohm´sche Gesetz und die Kirchhoffschen Regeln?&lt;br /&gt;
&lt;br /&gt;
==Bezugsquellen==&lt;br /&gt;
*&#039;&#039;&#039;http://www.reichelt.de&#039;&#039;&#039; Günstiger Anbieter, führt leider nicht alles, was das Elektronikerherz begehrt. Der Grund hierfür ist der, dass er sich hauptsächlich auf Mainstreamprodukte stützt, die einen großen Absatz finden. Nur so ist der günstige Preis möglich. Angeblich sind die Versandkosten ins Ausland relativ hoch.&lt;br /&gt;
* &#039;&#039;&#039;[http://www.pollin.de Pollin]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Absolute_Beginner&amp;diff=12887</id>
		<title>Absolute Beginner</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Absolute_Beginner&amp;diff=12887"/>
		<updated>2006-05-05T19:19:17Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Literatur */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Auf dieser Wiki-Seite möchte ich innerhalb der nächsten Tage zusammenfassen, was in diesem [http://www.mikrocontroller.net/forum/read-1-344257.html#new Thread] aufgeführt wurde. &lt;br /&gt;
&lt;br /&gt;
==Dieser Artikel wird derzeit erstellt== &lt;br /&gt;
Wie ihr seht, ist der Artikel noch im Aufbau, ich habe lediglich einen Grundstock gelegt. Wer diesen Artikel ergänzen möchte, soll dies gerne tun.&lt;br /&gt;
Auf was wir jedoch achten müssen ist, dass der Artikel sich wirklich an die absoluten Anfänger richten soll. Also frei nach der Devise so viel wie nötig, so wenig wie möglich.&lt;br /&gt;
==Einleitung==&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
Gestern tat es einen Schlag,&amp;lt;br/&amp;gt;&lt;br /&gt;
wovon ich hier berichten mag.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Drosselspulen, Widerstände,&amp;lt;br/&amp;gt;&lt;br /&gt;
alles fällt mir in die Hände.&amp;lt;br/&amp;gt;&lt;br /&gt;
Da bau ich eine Schaltung auf.&amp;lt;br/&amp;gt;&lt;br /&gt;
Ein Kühlblech kommt da auch noch drauf.&amp;lt;br/&amp;gt;&lt;br /&gt;
An Einstellreglern rumgedreht,&amp;lt;br/&amp;gt;&lt;br /&gt;
bis dann plötzlich nichts mehr geht.&amp;lt;br/&amp;gt;&lt;br /&gt;
Elkos hab ich nicht gebraucht,&amp;lt;br/&amp;gt;&lt;br /&gt;
Widerstände abgeraucht.&amp;lt;br/&amp;gt;&lt;br /&gt;
Jetzt ist die Bude voller Qualm,&amp;lt;br/&amp;gt;&lt;br /&gt;
zum Himmel schick ich einen Psalm.&amp;lt;br/&amp;gt;&lt;br /&gt;
Transistoren an den Ohren.&amp;lt;br/&amp;gt;&lt;br /&gt;
Dioden an den Hoden.&amp;lt;br/&amp;gt;&lt;br /&gt;
Kabel am Nabel.&amp;lt;br/&amp;gt;&lt;br /&gt;
Phase an der Nase!&amp;lt;br/&amp;gt;&lt;br /&gt;
Herzkammer flimmert; kann nur noch fluchen.&amp;lt;br/&amp;gt;&lt;br /&gt;
Muß mir ein neues Hobby suchen!&amp;lt;br/&amp;gt;&lt;br /&gt;
MfG Paul&amp;lt;br/&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Dass dieses von Paul so plastisch dargestellte Anfängerszenario gar nicht erst eintritt, werden auf dieser Artikelseite von http://www.mikrocontroller.net einige Dinge aufgeführt, die unbedingt notwendig sind, wenn man sich mit Elektronikbasteleien auseinandersetzt. Die Seite richtet sich bewusst an den absoluten Anfänger um so interessierten Leuten den Einstieg in die Welt der Elektronik und damit auch zum Programmieren von Mikrocontrollern möglichst einfach zu gestalten.&lt;br /&gt;
&lt;br /&gt;
Natürlich ist das Programmieren von Mikrocontrollern auch ohne Elektronikkenntnisse machbar, aber die Aussenanbindung eines Mikrocontrollers zu verstehen ist häufig sinnvoll, so z.B. wenn man ein Signal auswerten möchte.&lt;br /&gt;
&lt;br /&gt;
==Literatur==&lt;br /&gt;
Ohne Lektüre (egal ob in Papierform oder im Internet) wird das mit der Elektronik in Eigenregie nix. &lt;br /&gt;
Möchte man sich ernsthaft mit der Materie beschäftigen, so kommt man nicht umhin, sich mit den Grundlagen der Elektronik zu beschäftigen. Während man im Internet viele Schaltungen findet, die einfach nachzubauen sind, bietet sich für das Grundlagenstudium eher ein Buch an. Da gute Elektronikbücher häufig teuer sind, will ich dir folgenden Tipp geben: Schau einfach mal in die nächste größere Bibliothek. Wenn dir ein Buch dort gefällt, kannst du es jeder Zeit noch kaufen. Wer sich nicht irgendwann mit den Grundlagen beschäftigt, wird nie über das Stadium herauskommen, in dem er Schaltungen aus dem Internet kapiert. Aber unser aller Ziel ist es doch, auch zu verstehen, weshalb hier jetzt genau der rot-rot-schwarze Widerstand rein muss und was er tut...&lt;br /&gt;
*&#039;&#039;&#039;Fachzeitschriften&#039;&#039;&#039; am Kiosk&lt;br /&gt;
*&#039;&#039;&#039;Internet&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;[http://www.elektronik-kompendium.de/ Das Elektronik Kompendium]&#039;&#039;&#039; Ziel von das ELKO ist es die Themen Elektronik, Computertechnik, Kommunikationstechnik und Netzwerktechnik allgemeinverständlich zu erklären und der Allgemeinheit zu präsentieren. Die Zielgruppe sind vor allem Schüler und Auszubildende, die sich mit Elektronik näher beschäftigen müssen oder wollen. Weiterhin sollen alle privat und beruflich an Elektronik interessierte angesprochen werden.&lt;br /&gt;
**&#039;&#039;&#039;http://www.dse-faq.elektronik-kompendium.de/&#039;&#039;&#039; Es gibt zwar von der Startseite des ELKO einen Link zum FAQ aber es schadet sicher nicht es hier explizit aufzuführen.&lt;br /&gt;
**&#039;&#039;&#039;http://www.b-kainka.de/&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;http://www.dieelektronikerseite.de/&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;http://www.howstuffworks.com/&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Diverse Application Notes der großen Halbleiterhersteller sind auch immer eine gute Informationsquelle und beschäftigen sich teilweise auch mit sehr grundlegenden Problemen&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Bücher&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;[http://www.amazon.com/gp/product/0521370957/103-9884703-3518215?v=glance&amp;amp;n=283155 Art Of Electronics]&#039;&#039;&#039; Bitte nur die englihsche Version nutzen, da die Übersetzung nicht gut gelungen ist.&lt;br /&gt;
** &#039;&#039;&#039;[http://www.amazon.de/exec/obidos/ASIN/3426037920/qid=1146692611/sr=8-1/ref=sr_8_xs_ap_i1_xgl/302-0461878-1759243 Elektronik ohne Geheimnisse]&#039;&#039;&#039; Von der Anfängerschaltung bis zum Radio Franzis-Verlag ISBN 3-426-03792-0&lt;br /&gt;
**&#039;&#039;&#039;Schaltkreisbastelbuch&#039;&#039;&#039; von H.Jakubaschk und das&lt;br /&gt;
**&#039;&#039;&#039;Radiobastelbuch&#039;&#039;&#039; von K,H. Schubert. Das sind sehr alte DDR-Bücher. Aber die sind für Einsteiger äußerst nahrhaft.&lt;br /&gt;
&lt;br /&gt;
==Bauteile die in jeder Werkstatt sein müssen==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[[Breadboard]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Widerstände:&#039;&#039;&#039; 330 Ohm, 1 K Ohm, 10 K Ohm, 1 M Ohm&lt;br /&gt;
*&#039;&#039;&#039;Kondensatoren:&#039;&#039;&#039;&lt;br /&gt;
** Elkos: 1 µF, 10 µF, 2000 µF&lt;br /&gt;
** keramische Kondensatoren: 100 nF, 33 pF für Quarze&lt;br /&gt;
*&#039;&#039;&#039;Dioden:&#039;&#039;&#039; 1N4148, 1N4004&lt;br /&gt;
*&#039;&#039;&#039;[[LED]]s&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[Transistor]]en:&#039;&#039;&#039; BC547, BC557. Diese beiden Transistoren sind die Standart npn- und pnp Transistoren.&lt;br /&gt;
*&#039;&#039;&#039;Operationsverstärker:&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[Festspannungsregler]]:&#039;&#039;&#039; (7805)  Kann durch ein regelbares Netzteil  mit Anzeige unnötig werden, ist aber sinnvoll, wenn man mal eine Schaltung autark arbeiten lassen möchte. Dann benötigt man in den meisten Fällen noch einen geeigneten Trafo und einen Brückengleichrichter.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Schalter&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Taster&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Lötnägel&#039;&#039;&#039; &#039;&#039;Frage: Sind diese auch für das Breadboard geeignet, oder nur um in Platinen einzulöten?&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Ein Satz Kabel mit Krokoklemmen an beiden Enden&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Draht&#039;&#039;&#039;&lt;br /&gt;
** dünne Litze,&lt;br /&gt;
** dünner isolierter Draht (je dünner je besser), ideal: Wrap-Draht ca. AWG30, leider etwas schwer erhältlich und teuer,&lt;br /&gt;
** dünner blanker verzinnter Draht (möglichst &amp;lt; 0,5mm, leider etwas schwer erhältlich), oder lötbarer Silberdraht.&lt;br /&gt;
Es hat wenig Sinn, mit 220V-Litze oder normalem Klingeldraht&lt;br /&gt;
Lochraster-Schaltungen zu bauen. Und wenn mal ernsthaft Strom fliessen soll, entsprechend dickerer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für die Kleinteile ist ein Sortimentkasten sehr zu empfehlen. Man muss sich nicht von vorneherein auf spezielle Bauteile festlegen.&lt;br /&gt;
&lt;br /&gt;
==Werkzeug==&lt;br /&gt;
* &#039;&#039;&#039;Lötkolben&#039;&#039;&#039; mindestens 30 Watt&lt;br /&gt;
**&#039;&#039;&#039; Lötzinn&#039;&#039;&#039; 1mm&lt;br /&gt;
** &#039;&#039;&#039;Lötschwamm &#039;&#039;&#039; (ein Baumwoll-Lumpen tut es notfalls auch)&lt;br /&gt;
** &#039;&#039;&#039;Entlötlitze&#039;&#039;&#039;&lt;br /&gt;
Detaillierte Informationen zum Löten findest du im Artikel [[Löten_(praktisch)]].&lt;br /&gt;
* &#039;&#039;&#039;Seitenschneider&#039;&#039;&#039;, klein - Opas Kneifzange ist ungeeignet&lt;br /&gt;
* &#039;&#039;&#039;Abisolierzange&#039;&#039;&#039;, Bauform vgl. Wasserrohrzange, die symmetrischen mit dem Loch vorne sind eher für Starkstromleitungen gedacht&lt;br /&gt;
* &#039;&#039;&#039;[http://de.wikipedia.org/wiki/Multimeter Multimeter]&#039;&#039;&#039; Man sollte auf jeden Fall 1 oder 2 Multimeter kaufen. Vor allem, wenn man alleine ist, bietet sich eine Klemmprüfspitze an, so hat man die Hände frei für wichtigere Dinge. Die [http://de.wikipedia.org/wiki/Digitalmultimeter digitalen] Multimeter sind in der regel günstiger. (Beispiel: 3,95 bei [http://www.pollin.de pollin])&lt;br /&gt;
* &#039;&#039;&#039;Netzteil mit Strombegrenzeung&#039;&#039;&#039; hilft zu verhindern, dass dir ständig die Bauteile flöten gehen.&lt;br /&gt;
* &#039;&#039;&#039;[[Oszilloskop]]&#039;&#039;&#039; Zu Beginn noch nicht unbedingt notwendig. Wenn man sich eine Weile mit der Materie beschäftigt, kommt der Wunsch danach von alleine. Eine kleine Hilfe zur Auswahl von Oszis findet man auf dieser Seite.&lt;br /&gt;
* &#039;&#039;&#039;Simulationstool am PC&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;elecronic workbench&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;SwichtcherCAD&#039;&#039;&#039; Sehr viel Zeit und Frust kannst du dir mit einem Simulationsprogramm SwitcherCAD, kostenlos) ersparen. Dann weißt du schon vorher ob eine Schaltung NICHT funktionieren wird (der Umkehrschluß ist leider nicht immer möglich).&lt;br /&gt;
&lt;br /&gt;
==Baukästen== &lt;br /&gt;
Elektronikbaukästen bieten die Möglichkeit, das was man gelernt hat gleich praktisch anzuwenden. Sie beinhalten die notwendigen Bauteile und oft didaktisch sinnvoll aufgebaut.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Kosmos XN&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;XN1000&#039;&#039;&#039; Bereits für Kinder geeignet. Prof Armstron und der kleine Roboter führen spielend in die Welt der Elektronik ein.&lt;br /&gt;
** &#039;&#039;&#039;XN2000&#039;&#039;&#039; Die Erweiterung. &lt;br /&gt;
** &#039;&#039;&#039;XN3000&#039;&#039;&#039; Nicht mehr auf Kinder, sondern auf Jugendliche ausgerichtet. Relativ anspruchsvoll, aber verständlich.   &lt;br /&gt;
&#039;&#039;Nachteil:&#039;&#039; relativ teuer&lt;br /&gt;
*&#039;&#039;&#039;Busch-Elektronik-Kästen (conrad)&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Nachteil:&#039;&#039; Weil die Bauteile auf kleinen Platten&lt;br /&gt;
befestigt sind, kann man mit ihnen keine eigenen Schaltungen aufbauen.&lt;br /&gt;
*&#039;&#039;&#039;Polytronic A B C (exDDR)&#039;&#039;&#039; .... aber nicht um jeden Peis im&lt;br /&gt;
Kaufhaus kaufen - alos Vorstufe zum Steckbrett&lt;br /&gt;
&lt;br /&gt;
== Sinnvolles Wissen ==&lt;br /&gt;
*Also kannst du das Ohm´sche Gesetz und die Kirchhoffschen Regeln?&lt;br /&gt;
&lt;br /&gt;
==Bezugsquellen==&lt;br /&gt;
*&#039;&#039;&#039;http://www.reichelt.de&#039;&#039;&#039; Günstiger Anbieter, führt leider nicht alles, was das Elektronikerherz begehrt. Der Grund hierfür ist der, dass er sich hauptsächlich auf Mainstreamprodukte stützt, die einen großen Absatz finden. Nur so ist der günstige Preis möglich. Angeblich sind die Versandkosten ins Ausland relativ hoch.&lt;br /&gt;
* &#039;&#039;&#039;[http://www.pollin.de Pollin]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Temperatursensor&amp;diff=11726</id>
		<title>Temperatursensor</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Temperatursensor&amp;diff=11726"/>
		<updated>2006-02-24T14:08:17Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* DS1621 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will man mit einem [[Mikrocontroller]] Temperaturen messen, dann braucht man&lt;br /&gt;
* einen Meßwertaufnehmer, der die Wärme z.B. in eine Spannung umwandelt&lt;br /&gt;
* einen [[AD-Wandler]], der das Signal digitalisiert. Der kann durchaus auch schon auf dem Mikrocontroller integriert sein.&lt;br /&gt;
&lt;br /&gt;
Dies gibt es nun in allen möglichen Varianten. Vom temperaturabhängigen [[Widerstand]] bis zum fertig abgeglichenen All-in-one-Bauteil mit digitalem Ausgang.&lt;br /&gt;
&lt;br /&gt;
== NTC/PTC ==&lt;br /&gt;
NTC (Heißleiter) und PTC (Kaltleiter) sind temperaturabhängige Widerstände. Um den Widerstandswert zu messen schaltet man sie mit einem normalen Widerstand in Reihe und mißt dann den [[Spannungsfall|Spannungsabfall]]. Eine Beispielschaltung findet sich [http://www.mathar.com/msp_thermo1.html hier].&lt;br /&gt;
&lt;br /&gt;
Vorteil:&lt;br /&gt;
* billig (Reichelt 0,29 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteil:&lt;br /&gt;
* müssen abgeglichen werden&lt;br /&gt;
* brauchen A/D-Wandler&lt;br /&gt;
&lt;br /&gt;
== LM335 ==&lt;br /&gt;
Ein [[IC]], das pro Kelvin 10mV ausgibt. In verschiedenen Bauformen erhältlich. Beispielschaltungen finden sich im Datenblatt; eine Schaltung, die mit einem Komparator (statt eines &amp;quot;richtigen&amp;quot; A/D-Wandlers) auskommt findet sich [http://medo.fov.uni-mb.si/mapp/ds_adc/ hier].&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* auch ohne Kalibrierung Genauigkeit von einem Grad (bei 25°C)&lt;br /&gt;
* relativ billig (Reichelt ab 0,87 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* benötigt A/D-Wandler&lt;br /&gt;
* bei längerer Anschlussleitung wird sehr viel Brumm induziert&lt;br /&gt;
&lt;br /&gt;
== LM334 ==&lt;br /&gt;
Ein [[IC]] ähnlich dem LM335 mit dem Unterschied, dass der durch das IC fließende Strom proportional von der Temperatur abhängt. Mit einer &amp;quot;Schaltung&amp;quot; (zwei Widerstände) aus dem Datenblatt kann man dann den Strom in einer Weise wandeln, dass pro Kelvin 10mV ausgegeben werden. Da die Strom/Spannungswandlung auf der Platine (und damit nahe am AD-Wandler) stattfindet und die Messung durch einen Strom stattfindet, ist die Störung durch Netzbrumm etc. viel geringer als beim LM335&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* auch ohne Kalibrierung Genauigkeit von einem Grad (bei 25°C)&lt;br /&gt;
* relativ billig (Reichelt 0,90 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* benötigt A/D-Wandler&lt;br /&gt;
* Bereich 0°C-70°C&lt;br /&gt;
&lt;br /&gt;
== DS1621 ==&lt;br /&gt;
Der DS1621 ist Temperatursensor und A/D-Wandler in einem. Er gibt seine Daten per [[I2C]]-[[Bus]] aus. Ein Schaltplan für einen elektronischen Thermometer mit diesem IC findet sich [http://www.myplace.nu/avr/thermo/ hier].&lt;br /&gt;
&lt;br /&gt;
Vorteile: &lt;br /&gt;
* bereits kalibriert&lt;br /&gt;
* kein A/D-Wandler nötig&lt;br /&gt;
* da I2C ein Bus ist, kann man mehrere DS1621 und andere I2C-Bausteine zusammen anschließen und braucht dafür trotzdem nur zwei I/O-Ports.&lt;br /&gt;
* Genauigkeit +-0,5°&lt;br /&gt;
&lt;br /&gt;
Nachteil:&lt;br /&gt;
* teuer (Segor 5,80 EUR; RS 3,95EUR; Conrad 4,99EUR)&lt;br /&gt;
&lt;br /&gt;
== LM75 ==&lt;br /&gt;
Der LM75 ist so ähnlich wie der DS1621, allerdings nur in SMD erhältlich und nicht so genau. Er ist aber öfters mal auf PC-Mainboards zu finden, so dass man beim Schlachten eines solchen günstig an einen Temperatursensor kommen kann. Einen Schaltplan findet man [http://www.mcselec.com/index.php?option=com_docman&amp;amp;task=cat_view&amp;amp;gid=83&amp;amp;limit=1&amp;amp;limitstart=35 hier].&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* bereits kalibriert&lt;br /&gt;
* kein A/D-Wandler nötig&lt;br /&gt;
* I2C-Bus Ausgang&lt;br /&gt;
* billiger als DS1621 (Reichelt 2,10 EUR; RS 3V: 3,75EUR; 5V: 2,72EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* nur im SMD-Gehäuse erhältlich&lt;br /&gt;
* sehr ungenau (+-2°)&lt;br /&gt;
&lt;br /&gt;
== DS18S20 / DS18B20 ==&lt;br /&gt;
Der DS18S20 (Nachfolger des DS1820) und DS18B20 sind ebenfalls Temperatursensoren und A/D-Wandler in einem. Ihre Daten geben sie über ein 1-Wire-Interface aus, wodurch man am [[Mikrocontroller]] sogar nur einen einzigen I/O-Pin braucht. Außerdem beherrschen sie die parasitäre Stromversorgung, d.h. man braucht für Daten und Stromversorgung zusammen nur zwei Leitungen.  Der DS18B20 hat per default 12 Bit Auflösung gegenüber 9 Bit Auflösung beim DS18S20.&lt;br /&gt;
&lt;br /&gt;
Links:&lt;br /&gt;
* Einen Schaltplan findet man auf http://chaokhun.kmitl.ac.th/~kswichit/avrthermo/avrthermo.html&lt;br /&gt;
* Code zur Ansteuerung auf http://www.mikrocontroller.net/forum/read-4-27035.html.&lt;br /&gt;
* Datenblatt DS18S20: http://pdfserv.maxim-ic.com/en/ds/DS18S20.pdf&lt;br /&gt;
* Datenblatt DS18B20: http://pdfserv.maxim-ic.com/en/ds/DS18B20.pdf&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* bereits kalibriert&lt;br /&gt;
* Genauigkeit +-0,5°&lt;br /&gt;
* 1-Wire-Ausgang&lt;br /&gt;
&lt;br /&gt;
Nachteil:&lt;br /&gt;
* ziemlich teuer (Reichelt 5,45 EUR)&lt;br /&gt;
&lt;br /&gt;
== SHT11 ==&lt;br /&gt;
Der SHT11 ist ein [[Temperatursensor|Temperatur]]- und Feuchtesensor von [http://www.sensirion.com Sensirion].&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* einfache [[I2C]]-ähnliche Ansteuerung&lt;br /&gt;
* keine Kalibrierung notwendig&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* relativ teuer (Farnell 18,60 EUR)&lt;br /&gt;
&lt;br /&gt;
== Sonstiges ==&lt;br /&gt;
Es gibt noch zahlreiche andere ICs für diese Aufgabe und natürlich auch viele andere Meßmöglichkeiten.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.sprut.de/electronic/temeratur/temp.htm http://www.sprut.de/electronic/temeratur/temp.htm] insbesondere temperaturabhängige Stromquelle und NTC/PTC inclusive Linearisierung&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Temperatursensor&amp;diff=11479</id>
		<title>Temperatursensor</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Temperatursensor&amp;diff=11479"/>
		<updated>2006-02-24T14:07:50Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* LM75 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will man mit einem [[Mikrocontroller]] Temperaturen messen, dann braucht man&lt;br /&gt;
* einen Meßwertaufnehmer, der die Wärme z.B. in eine Spannung umwandelt&lt;br /&gt;
* einen [[AD-Wandler]], der das Signal digitalisiert. Der kann durchaus auch schon auf dem Mikrocontroller integriert sein.&lt;br /&gt;
&lt;br /&gt;
Dies gibt es nun in allen möglichen Varianten. Vom temperaturabhängigen [[Widerstand]] bis zum fertig abgeglichenen All-in-one-Bauteil mit digitalem Ausgang.&lt;br /&gt;
&lt;br /&gt;
== NTC/PTC ==&lt;br /&gt;
NTC (Heißleiter) und PTC (Kaltleiter) sind temperaturabhängige Widerstände. Um den Widerstandswert zu messen schaltet man sie mit einem normalen Widerstand in Reihe und mißt dann den [[Spannungsfall|Spannungsabfall]]. Eine Beispielschaltung findet sich [http://www.mathar.com/msp_thermo1.html hier].&lt;br /&gt;
&lt;br /&gt;
Vorteil:&lt;br /&gt;
* billig (Reichelt 0,29 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteil:&lt;br /&gt;
* müssen abgeglichen werden&lt;br /&gt;
* brauchen A/D-Wandler&lt;br /&gt;
&lt;br /&gt;
== LM335 ==&lt;br /&gt;
Ein [[IC]], das pro Kelvin 10mV ausgibt. In verschiedenen Bauformen erhältlich. Beispielschaltungen finden sich im Datenblatt; eine Schaltung, die mit einem Komparator (statt eines &amp;quot;richtigen&amp;quot; A/D-Wandlers) auskommt findet sich [http://medo.fov.uni-mb.si/mapp/ds_adc/ hier].&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* auch ohne Kalibrierung Genauigkeit von einem Grad (bei 25°C)&lt;br /&gt;
* relativ billig (Reichelt ab 0,87 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* benötigt A/D-Wandler&lt;br /&gt;
* bei längerer Anschlussleitung wird sehr viel Brumm induziert&lt;br /&gt;
&lt;br /&gt;
== LM334 ==&lt;br /&gt;
Ein [[IC]] ähnlich dem LM335 mit dem Unterschied, dass der durch das IC fließende Strom proportional von der Temperatur abhängt. Mit einer &amp;quot;Schaltung&amp;quot; (zwei Widerstände) aus dem Datenblatt kann man dann den Strom in einer Weise wandeln, dass pro Kelvin 10mV ausgegeben werden. Da die Strom/Spannungswandlung auf der Platine (und damit nahe am AD-Wandler) stattfindet und die Messung durch einen Strom stattfindet, ist die Störung durch Netzbrumm etc. viel geringer als beim LM335&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* auch ohne Kalibrierung Genauigkeit von einem Grad (bei 25°C)&lt;br /&gt;
* relativ billig (Reichelt 0,90 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* benötigt A/D-Wandler&lt;br /&gt;
* Bereich 0°C-70°C&lt;br /&gt;
&lt;br /&gt;
== DS1621 ==&lt;br /&gt;
Der DS1621 ist Temperatursensor und A/D-Wandler in einem. Er gibt seine Daten per [[I2C]]-[[Bus]] aus. Ein Schaltplan für einen elektronischen Thermometer mit diesem IC findet sich [http://www.myplace.nu/avr/thermo/ hier].&lt;br /&gt;
&lt;br /&gt;
Vorteile: &lt;br /&gt;
* bereits kalibriert&lt;br /&gt;
* kein A/D-Wandler nötig&lt;br /&gt;
* da I2C ein Bus ist, kann man mehrere DS1621 und andere I2C-Bausteine zusammen anschließen und braucht dafür trotzdem nur zwei I/O-Ports.&lt;br /&gt;
* Genauigkeit +-0,5°&lt;br /&gt;
&lt;br /&gt;
Nachteil:&lt;br /&gt;
* teuer (Segor 5,80 EUR; RS 3,95; Conrad 4,99)&lt;br /&gt;
&lt;br /&gt;
== LM75 ==&lt;br /&gt;
Der LM75 ist so ähnlich wie der DS1621, allerdings nur in SMD erhältlich und nicht so genau. Er ist aber öfters mal auf PC-Mainboards zu finden, so dass man beim Schlachten eines solchen günstig an einen Temperatursensor kommen kann. Einen Schaltplan findet man [http://www.mcselec.com/index.php?option=com_docman&amp;amp;task=cat_view&amp;amp;gid=83&amp;amp;limit=1&amp;amp;limitstart=35 hier].&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* bereits kalibriert&lt;br /&gt;
* kein A/D-Wandler nötig&lt;br /&gt;
* I2C-Bus Ausgang&lt;br /&gt;
* billiger als DS1621 (Reichelt 2,10 EUR; RS 3V: 3,75EUR; 5V: 2,72EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* nur im SMD-Gehäuse erhältlich&lt;br /&gt;
* sehr ungenau (+-2°)&lt;br /&gt;
&lt;br /&gt;
== DS18S20 / DS18B20 ==&lt;br /&gt;
Der DS18S20 (Nachfolger des DS1820) und DS18B20 sind ebenfalls Temperatursensoren und A/D-Wandler in einem. Ihre Daten geben sie über ein 1-Wire-Interface aus, wodurch man am [[Mikrocontroller]] sogar nur einen einzigen I/O-Pin braucht. Außerdem beherrschen sie die parasitäre Stromversorgung, d.h. man braucht für Daten und Stromversorgung zusammen nur zwei Leitungen.  Der DS18B20 hat per default 12 Bit Auflösung gegenüber 9 Bit Auflösung beim DS18S20.&lt;br /&gt;
&lt;br /&gt;
Links:&lt;br /&gt;
* Einen Schaltplan findet man auf http://chaokhun.kmitl.ac.th/~kswichit/avrthermo/avrthermo.html&lt;br /&gt;
* Code zur Ansteuerung auf http://www.mikrocontroller.net/forum/read-4-27035.html.&lt;br /&gt;
* Datenblatt DS18S20: http://pdfserv.maxim-ic.com/en/ds/DS18S20.pdf&lt;br /&gt;
* Datenblatt DS18B20: http://pdfserv.maxim-ic.com/en/ds/DS18B20.pdf&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* bereits kalibriert&lt;br /&gt;
* Genauigkeit +-0,5°&lt;br /&gt;
* 1-Wire-Ausgang&lt;br /&gt;
&lt;br /&gt;
Nachteil:&lt;br /&gt;
* ziemlich teuer (Reichelt 5,45 EUR)&lt;br /&gt;
&lt;br /&gt;
== SHT11 ==&lt;br /&gt;
Der SHT11 ist ein [[Temperatursensor|Temperatur]]- und Feuchtesensor von [http://www.sensirion.com Sensirion].&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* einfache [[I2C]]-ähnliche Ansteuerung&lt;br /&gt;
* keine Kalibrierung notwendig&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* relativ teuer (Farnell 18,60 EUR)&lt;br /&gt;
&lt;br /&gt;
== Sonstiges ==&lt;br /&gt;
Es gibt noch zahlreiche andere ICs für diese Aufgabe und natürlich auch viele andere Meßmöglichkeiten.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.sprut.de/electronic/temeratur/temp.htm http://www.sprut.de/electronic/temeratur/temp.htm] insbesondere temperaturabhängige Stromquelle und NTC/PTC inclusive Linearisierung&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Temperatursensor&amp;diff=11478</id>
		<title>Temperatursensor</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Temperatursensor&amp;diff=11478"/>
		<updated>2006-02-24T14:06:19Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* DS1621 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will man mit einem [[Mikrocontroller]] Temperaturen messen, dann braucht man&lt;br /&gt;
* einen Meßwertaufnehmer, der die Wärme z.B. in eine Spannung umwandelt&lt;br /&gt;
* einen [[AD-Wandler]], der das Signal digitalisiert. Der kann durchaus auch schon auf dem Mikrocontroller integriert sein.&lt;br /&gt;
&lt;br /&gt;
Dies gibt es nun in allen möglichen Varianten. Vom temperaturabhängigen [[Widerstand]] bis zum fertig abgeglichenen All-in-one-Bauteil mit digitalem Ausgang.&lt;br /&gt;
&lt;br /&gt;
== NTC/PTC ==&lt;br /&gt;
NTC (Heißleiter) und PTC (Kaltleiter) sind temperaturabhängige Widerstände. Um den Widerstandswert zu messen schaltet man sie mit einem normalen Widerstand in Reihe und mißt dann den [[Spannungsfall|Spannungsabfall]]. Eine Beispielschaltung findet sich [http://www.mathar.com/msp_thermo1.html hier].&lt;br /&gt;
&lt;br /&gt;
Vorteil:&lt;br /&gt;
* billig (Reichelt 0,29 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteil:&lt;br /&gt;
* müssen abgeglichen werden&lt;br /&gt;
* brauchen A/D-Wandler&lt;br /&gt;
&lt;br /&gt;
== LM335 ==&lt;br /&gt;
Ein [[IC]], das pro Kelvin 10mV ausgibt. In verschiedenen Bauformen erhältlich. Beispielschaltungen finden sich im Datenblatt; eine Schaltung, die mit einem Komparator (statt eines &amp;quot;richtigen&amp;quot; A/D-Wandlers) auskommt findet sich [http://medo.fov.uni-mb.si/mapp/ds_adc/ hier].&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* auch ohne Kalibrierung Genauigkeit von einem Grad (bei 25°C)&lt;br /&gt;
* relativ billig (Reichelt ab 0,87 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* benötigt A/D-Wandler&lt;br /&gt;
* bei längerer Anschlussleitung wird sehr viel Brumm induziert&lt;br /&gt;
&lt;br /&gt;
== LM334 ==&lt;br /&gt;
Ein [[IC]] ähnlich dem LM335 mit dem Unterschied, dass der durch das IC fließende Strom proportional von der Temperatur abhängt. Mit einer &amp;quot;Schaltung&amp;quot; (zwei Widerstände) aus dem Datenblatt kann man dann den Strom in einer Weise wandeln, dass pro Kelvin 10mV ausgegeben werden. Da die Strom/Spannungswandlung auf der Platine (und damit nahe am AD-Wandler) stattfindet und die Messung durch einen Strom stattfindet, ist die Störung durch Netzbrumm etc. viel geringer als beim LM335&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* auch ohne Kalibrierung Genauigkeit von einem Grad (bei 25°C)&lt;br /&gt;
* relativ billig (Reichelt 0,90 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* benötigt A/D-Wandler&lt;br /&gt;
* Bereich 0°C-70°C&lt;br /&gt;
&lt;br /&gt;
== DS1621 ==&lt;br /&gt;
Der DS1621 ist Temperatursensor und A/D-Wandler in einem. Er gibt seine Daten per [[I2C]]-[[Bus]] aus. Ein Schaltplan für einen elektronischen Thermometer mit diesem IC findet sich [http://www.myplace.nu/avr/thermo/ hier].&lt;br /&gt;
&lt;br /&gt;
Vorteile: &lt;br /&gt;
* bereits kalibriert&lt;br /&gt;
* kein A/D-Wandler nötig&lt;br /&gt;
* da I2C ein Bus ist, kann man mehrere DS1621 und andere I2C-Bausteine zusammen anschließen und braucht dafür trotzdem nur zwei I/O-Ports.&lt;br /&gt;
* Genauigkeit +-0,5°&lt;br /&gt;
&lt;br /&gt;
Nachteil:&lt;br /&gt;
* teuer (Segor 5,80 EUR; RS 3,95; Conrad 4,99)&lt;br /&gt;
&lt;br /&gt;
== LM75 ==&lt;br /&gt;
Der LM75 ist so ähnlich wie der DS1621, allerdings nur in SMD erhältlich und nicht so genau. Er ist aber öfters mal auf PC-Mainboards zu finden, so dass man beim Schlachten eines solchen günstig an einen Temperatursensor kommen kann. Einen Schaltplan findet man [http://www.mcselec.com/index.php?option=com_docman&amp;amp;task=cat_view&amp;amp;gid=83&amp;amp;limit=1&amp;amp;limitstart=35 hier].&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* bereits kalibriert&lt;br /&gt;
* kein A/D-Wandler nötig&lt;br /&gt;
* I2C-Bus Ausgang&lt;br /&gt;
* billiger als DS1621 (Reichelt 2,10 EUR)&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* nur im SMD-Gehäuse erhältlich&lt;br /&gt;
* sehr ungenau (+-2°)&lt;br /&gt;
&lt;br /&gt;
== DS18S20 / DS18B20 ==&lt;br /&gt;
Der DS18S20 (Nachfolger des DS1820) und DS18B20 sind ebenfalls Temperatursensoren und A/D-Wandler in einem. Ihre Daten geben sie über ein 1-Wire-Interface aus, wodurch man am [[Mikrocontroller]] sogar nur einen einzigen I/O-Pin braucht. Außerdem beherrschen sie die parasitäre Stromversorgung, d.h. man braucht für Daten und Stromversorgung zusammen nur zwei Leitungen.  Der DS18B20 hat per default 12 Bit Auflösung gegenüber 9 Bit Auflösung beim DS18S20.&lt;br /&gt;
&lt;br /&gt;
Links:&lt;br /&gt;
* Einen Schaltplan findet man auf http://chaokhun.kmitl.ac.th/~kswichit/avrthermo/avrthermo.html&lt;br /&gt;
* Code zur Ansteuerung auf http://www.mikrocontroller.net/forum/read-4-27035.html.&lt;br /&gt;
* Datenblatt DS18S20: http://pdfserv.maxim-ic.com/en/ds/DS18S20.pdf&lt;br /&gt;
* Datenblatt DS18B20: http://pdfserv.maxim-ic.com/en/ds/DS18B20.pdf&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* bereits kalibriert&lt;br /&gt;
* Genauigkeit +-0,5°&lt;br /&gt;
* 1-Wire-Ausgang&lt;br /&gt;
&lt;br /&gt;
Nachteil:&lt;br /&gt;
* ziemlich teuer (Reichelt 5,45 EUR)&lt;br /&gt;
&lt;br /&gt;
== SHT11 ==&lt;br /&gt;
Der SHT11 ist ein [[Temperatursensor|Temperatur]]- und Feuchtesensor von [http://www.sensirion.com Sensirion].&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* einfache [[I2C]]-ähnliche Ansteuerung&lt;br /&gt;
* keine Kalibrierung notwendig&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* relativ teuer (Farnell 18,60 EUR)&lt;br /&gt;
&lt;br /&gt;
== Sonstiges ==&lt;br /&gt;
Es gibt noch zahlreiche andere ICs für diese Aufgabe und natürlich auch viele andere Meßmöglichkeiten.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.sprut.de/electronic/temeratur/temp.htm http://www.sprut.de/electronic/temeratur/temp.htm] insbesondere temperaturabhängige Stromquelle und NTC/PTC inclusive Linearisierung&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=I2C_als_Hausbus&amp;diff=12740</id>
		<title>I2C als Hausbus</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=I2C_als_Hausbus&amp;diff=12740"/>
		<updated>2006-02-05T16:39:42Z</updated>

		<summary type="html">&lt;p&gt;Hans: Appnotes von Philips&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Projekte]]&lt;br /&gt;
[[Category:AVR]]&lt;br /&gt;
[[Category:I2C]]&lt;br /&gt;
&lt;br /&gt;
=Infos=&lt;br /&gt;
&lt;br /&gt;
Infos allgemein zu [[Hausbus]] ,[[I2C]].&lt;br /&gt;
&lt;br /&gt;
=Verkabelung=&lt;br /&gt;
&lt;br /&gt;
=offizielle Spezifikationen=&lt;br /&gt;
Die beiden Leitungen dürfen eine maximale Kapazität von 400pF nicht übersteigen. Dies sind in der Praxis einige Meter.&lt;br /&gt;
&lt;br /&gt;
=eigene Erfahrungen=&lt;br /&gt;
Wenn die Busgeschwindigkeit angepasst wird, sind große Strecken und umfangreiche Verzweigungen möglich. &lt;br /&gt;
Ein 30 Meter Bus funktioniert zum Beispiel noch mit rund 20kHz fast ohne Probleme.&lt;br /&gt;
&lt;br /&gt;
== Was passiert, wenn die Leitungen zu lang sind? ==&lt;br /&gt;
Vor einigen Jahren war ich als Servicetechniker bei einer Geräteinstallation im Einsatz, bei der die laut Datenblatt möglichen Längen bei weitem überschritten wurden. Ab 12m ging nix mehr. Der Grund war aber nicht der I2C-Bus, sondern die Spannungsversorgung der entfernten Geräte. Die Masseleitung war auch 12m lang, und der Stromverbrauch der Geräte hat den Massepegel soweit angehoben, dass der I2C-Bus nicht mehr funktioniert hat. Mit einer dickeren Masseleitung hats sofort wieder funktioniert.&lt;br /&gt;
&lt;br /&gt;
Dabei hab ich beobachtet, daß der I2C-Bus automatisch langsamer geworden ist, je länger das Kabel war. Das war nicht einprogrammiert, sondern hat sich von selbst ergeben. Wieweit das geht weiß ich nicht, aber es hat mich damals sehr erstaunt. Kann sein, das kommt durch die Möglichkeit für Slaves den Takt auszubremsen.&lt;br /&gt;
&lt;br /&gt;
Die Kabel sind (bezüglich der gemeinsamen Masse) eine Kette über differentiell kleiner Widerstände parallel geschaltener differentiell kleiner Kondensatoren. Durch einen Pegel-Wechsel müssen all diese kleinen Kondensatoren über die Widerstände umgeladen werden. Folge ist eine deutlich kleinere Ausbreitungs-Geschwindigkeit des Signals und ein geringerer Spannungs-Anstieg an den Anschlüssen der Geräte. Zu der Kapazität der Kabel kommt vor allem noch die Kapazität der Geräte.&lt;br /&gt;
Im I2C-Standard von Philips ist diese Kapazität auf 400pF limitiert.&lt;br /&gt;
Im access.bus-Standard (welcher für Computer-Komponenten und Peripherie entwickelt wurde) ist diese Kapazität auf 1000pF beschränkt.&lt;br /&gt;
Vgl. Ausbreitungsgeschwindigkeiten, Kapazitäten bei anderen Bus-Systemen wie USB, SATA, RS485&lt;br /&gt;
&lt;br /&gt;
Philips hat Long Distance I2C vorgesehen. Dafür gibt es eigene Busexpander z.B. der P82B715, der unter anderem die zulässige Kapazität auf 3000pF erhöhen soll. Ich habe mal einen Link auf eine interessante Philips Seite zu dem Thema angehängt.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Ich nehme an du meinst folgendes:&lt;br /&gt;
&lt;br /&gt;
[http://www.standardics.philips.com/support/appnotes/microcontrollers/pdf/an452.pdf AN452] bzw. [http://www.standardics.philips.com/support/appnotes/i2c/pdf/an444.pdf AN444]&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 17:39, 5. Feb 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
=passende Sensoren / Module=&lt;br /&gt;
* Temperatursensor mit dem [[DS1621]]&lt;br /&gt;
* [[I2C-Schaltmodul]] mit dem [[PCF8574]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Links=&lt;br /&gt;
* http://www.semiconductors.philips.com/markets/mms/protocols/i2c/&lt;br /&gt;
* [[CAN Hausbus]]&lt;br /&gt;
* http://www.standardics.philips.com/products/i2chubs/&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AD-Wandler&amp;diff=11195</id>
		<title>AD-Wandler</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AD-Wandler&amp;diff=11195"/>
		<updated>2006-02-03T14:04:33Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ein Analog-Digital-Wandler wandelt eine [[analog]]e Spannung in einen [[digital]]en Wert um.&lt;br /&gt;
&lt;br /&gt;
Die Stufenauflösung beträgt üblicherweise zwischen 1(Komperator) und 24 [[Bit]]. Den durch die Wandlung entstehenden Fehler zwischen dem tatsächlichen Wert und dem ausgegebenen (gewandelten) Wert nennt man [[Quantisierung|Quantisierungsfehler]].&lt;br /&gt;
&lt;br /&gt;
Prinzipell sollte während des Sampling-Vorgangs die Eingangsgröße konstant bleiben. (Auch beim Flash-ADC da nicht alle Komperatoren gleich schnell sind.) Hierfür werden &#039;Track and Hold&#039; bzw &#039;Sample and Hold&#039; Schaltungen verwendet.&lt;br /&gt;
&lt;br /&gt;
Gegenstück: [[DA-Wandler]]&lt;br /&gt;
&lt;br /&gt;
== Verfahren ==&lt;br /&gt;
&lt;br /&gt;
* &#039;Flash&#039; oder Parallel-Wandler: Sind sehr schnell und brauchen daher viel Strom. Sie benötigen für _jeden_ Ausgangswert einen Komperator (und damit auch eine eigene Referent =&amp;gt; Spannungsteiler)&lt;br /&gt;
* sukzessive Approximation (SAR): Stufenweise Annäherung, Wägeverfahren. benötigt eine DAC, mit dem man sich Bit für Bit an die zu messende Spannung herantastet.&lt;br /&gt;
** Der interne AD Wandler eines [[AVR]] verwendet diese Methode&lt;br /&gt;
* Single Slope, Dual Slope Verfahren: Werden meist in Multimeter oder ähnlichen Messgeräten verwendet da sie billig sind, wenig Strom brauchen und gute Linearitäten besitzen. Im Prinzip wird hier die Spannung über eine Zeitmessung realisiert.&lt;br /&gt;
* Delta Sigma: Vor allem für sehr genaue Messungen (24Bit). Preisgünstig herstellbar, da nur ein Komperator und Logik-Elemente benötigt werden. &lt;br /&gt;
* Spannungs-Frequenz-Umsetzer&lt;br /&gt;
* Nachlauf-Verfahren: Es wird auch hier ein DAC benötigt, der von einem Auf-Abwärtszähler gesteuert wird. Ein Komperator steuert ob auf- oder abwärts gezählt wird.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Kenngrößen ==&lt;br /&gt;
&lt;br /&gt;
Als Kenngrößen gibts es bei einem ADC bedeutent mehr als nur die Auflösung. Z.b wäre es nicht schlecht, wenn er keine sg. &#039;Missing-Codes&#039; hätte. Hier &#039;fehlen&#039; einfach gewisse Ausgangswerte. Weiters wichtig ist die Linearität. Es kann sein, dass die Kennlinie nicht linear ist (Kennlinie Ausgangscode-Eingangsspannung gebogen) oder aber die einzelnen Stufen sind nicht gleich groß.&lt;br /&gt;
&lt;br /&gt;
Weiters wichtig sind Eingangsrauschen, Sampling-Zeit und Stromverbrauch.&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Diskussion:AD-Wandler&amp;diff=14506</id>
		<title>Diskussion:AD-Wandler</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Diskussion:AD-Wandler&amp;diff=14506"/>
		<updated>2006-02-03T13:46:17Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mmmh. Eigenlich müsste man ja schreiben, dass die Auflösung bei EINEM Bit losgeht :)&lt;br /&gt;
Ein einzelner Komparator ist im Prinzip auch schon ein ADC...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1,6,8,16,24Bit.. alles andere kenne ich nicht...&lt;br /&gt;
Nachlauf-verfahren gibts dann auch noch...&lt;br /&gt;
&lt;br /&gt;
Sample-Hold,Track-Hold müsste auch erwähnt werden...&lt;br /&gt;
&lt;br /&gt;
Ganz nebenbei gäbe es auch noch referenzgrößen die vllt auch noch beschrieben werden sollten...&lt;br /&gt;
&lt;br /&gt;
Interfaces (SPI,I2C,Parallel) sind auch noch relevant... Kenngrößen allgemein und zu guterletzt sollte man auch noch einsatzgebiete angeben....&lt;br /&gt;
&lt;br /&gt;
Ich werd einfach mal anfangen... viel spass beim fortsetzen ;)&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 14:46, 3. Feb 2006 (CET)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Platinenherstellung_mit_der_Photo-Positiv-Methode&amp;diff=12730</id>
		<title>Platinenherstellung mit der Photo-Positiv-Methode</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Platinenherstellung_mit_der_Photo-Positiv-Methode&amp;diff=12730"/>
		<updated>2006-01-04T23:38:46Z</updated>

		<summary type="html">&lt;p&gt;Hans: Neu formatiert, Fehler entfernt, umformuliert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welche Software man zum Zeichnen nimmt ist Geschmackssache. Darum gehts gleich zum Drucken ;)&lt;br /&gt;
&lt;br /&gt;
= Drucken =&lt;br /&gt;
&lt;br /&gt;
Generell muss so gedruckt werden, dass die bedruckte Seite am Kupfer aufliegt. Sonst bekommt man keine schönen Bahnen hin.&lt;br /&gt;
&lt;br /&gt;
Am Besten druckt man sich das ganze mit niedriger Qualität auf Papier aus und schaut ob alles wie gewünscht erscheint (Masseflächen, Beschriftung, Pass-Marken,...) &lt;br /&gt;
&lt;br /&gt;
Weiters noch die Einstellungen um schöne, schwarze Ausdrucke zu bekommen.&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
=== Target ===&lt;br /&gt;
In Target sollte man folgendes einschalten...&lt;br /&gt;
&lt;br /&gt;
* hart schwarz-weiss&lt;br /&gt;
&lt;br /&gt;
===Eagle===&lt;br /&gt;
&lt;br /&gt;
* black&lt;br /&gt;
* solid&lt;br /&gt;
&lt;br /&gt;
== Drucksorten ==&lt;br /&gt;
&lt;br /&gt;
=== Transparentpapier ===&lt;br /&gt;
&lt;br /&gt;
Wenn die Tinte passt, bekommt man auch auf Transparentpapier gute Ergebnisse (zumindest mit meinem alten HP).&lt;br /&gt;
&lt;br /&gt;
Mit einem Laserdrucker (Kyocera-Mita FS1020D, Auflösung 1200x1200 dpi) sind auf Transparentpapier Leiterbahnen mit 0.4mm Breite problemlos möglich&lt;br /&gt;
&lt;br /&gt;
=== Normalpapier ===&lt;br /&gt;
&lt;br /&gt;
Wenn nur bedrahtete Bauteile auf dem PCB und die Leiterbahnen auch schön breit sind, gibt es keinen Grund nicht normales Papier zu verwenden... man muss nur eine lange Belichtungszeite einplanen... ggf. dünneres Papier probieren (&amp;lt;math&amp;gt;40g/m^2&amp;lt;/math&amp;gt;) ;)&lt;br /&gt;
&lt;br /&gt;
=== Inkjet-Folie ===&lt;br /&gt;
&lt;br /&gt;
Für feine Layouts mit Tintenstrahl-Drucker meiner Meinung nach am Besten geeignet.&lt;br /&gt;
&lt;br /&gt;
Epson C44Ux mit Nachbau-Tinte von Conrad auf Zweckform-Folie 2503 und 2304 (hat einen weißen Streifen damit der drucker die Folie erkennt) gibts keine Probleme.&lt;br /&gt;
&lt;br /&gt;
Unter Windows ist der Drucker auf &#039;&#039;Premium Glossy Photo Paper&#039;&#039; Foto zu stellen - unter Linux &#039;&#039;Premium Glossy Photo Paper&#039;&#039; und die Auflösung auf &#039;&#039;1440x720&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Das Layout muss 2-3 mal ausgedruckt und übereinandergelegt werden damit man keine kleinen Löcher hat.&lt;br /&gt;
&lt;br /&gt;
Mit Laserdruck auf Klarsichtfolie erzielt man schlechte Ergebnisse, auf matter Folie hingegen reicht schon ein Ausdruck auf einer Folie.&lt;br /&gt;
&lt;br /&gt;
= Fertigung =&lt;br /&gt;
&lt;br /&gt;
Das Ätzen teilt sich auf in Belichten, Entwickeln und  das Ätzen...&lt;br /&gt;
&lt;br /&gt;
Vielleicht hat jemand mehr lust das jetzt ausführlich zu beschreiben.. ich beschreibe mal alles ganz grob...&lt;br /&gt;
&lt;br /&gt;
== Belichten ==&lt;br /&gt;
&lt;br /&gt;
=== UV-Lampe ===&lt;br /&gt;
&lt;br /&gt;
Es gibt sg. &#039;&#039;Nitraphot&#039;&#039;-Lampen die 250-300W haben. Damit hab ichs anfangs gemacht. Das Hauptproblem dabei ist die erzeugte Wärme... Wo gibts denn vernünftige Fassungen für 300W-Birnen :)&lt;br /&gt;
&lt;br /&gt;
=== UV-Röhren ===&lt;br /&gt;
&lt;br /&gt;
Ich persönlich habe mir den Luxus gegönnt und mir Ersatzlampen für die Isel Geräte besorgt. (Conrad)&lt;br /&gt;
&lt;br /&gt;
* 2x8W Philips Röhren - ca 10cm Abstand - 3xOverhead-Folie übereinander =&amp;gt; ca 5 Minuten&lt;br /&gt;
* 4x8W Ersatzröhren für die Reichelt-Belichtungsgeräte - ca 12cm - Transparentpapier =&amp;gt; 7-8 Minuten&lt;br /&gt;
&lt;br /&gt;
=== Baustrahler ===&lt;br /&gt;
&lt;br /&gt;
Geht angeblich ganz gut habe aber keine Erfahrung damit gemacht.&lt;br /&gt;
&lt;br /&gt;
== Entwickeln ==&lt;br /&gt;
&lt;br /&gt;
Entwickeln kann man mit Ätznatron ( um die 10g/l eher darunter falls man die Zeit übersehen sollte und man etwas unterentwickeln muss).&lt;br /&gt;
&lt;br /&gt;
Die Luxus-Variante gibts bei Conrad in Form von Bungard-Entwickler. 1 Säckchen für 1l Entwickler&lt;br /&gt;
Laut Bungard ist die unbelichtete Beschichtung einige Minuten gegen den Entwickler resistent... Der Entwickler muss aber mindestens Zimmertemperatur haben... sonst dauert&#039;s ewig :)&lt;br /&gt;
&lt;br /&gt;
== Ätzen ==&lt;br /&gt;
&lt;br /&gt;
=== Salpetersäure ===&lt;br /&gt;
&lt;br /&gt;
Geht ähnlich gut wie mit Salzsäure nur will nicht jeder einem das Zeug in die Hand geben... =&amp;gt; lieber Salzsäure!&lt;br /&gt;
&lt;br /&gt;
Möglich sind Zeiten von &amp;lt;1min bis 10min.. je nach Konzentration&lt;br /&gt;
&lt;br /&gt;
=== Salzsäure ===&lt;br /&gt;
&lt;br /&gt;
Mischung 1 Teil HCl 1 Teil H2O2 2Teile H2O geht suppi (würd ich mir nicht traun mit nochkonzentrierter.. lieber die Säure unter 20% bringen und nach bedarf H2O2 dazu tun) &lt;br /&gt;
&lt;br /&gt;
=== Eisen-3-Chlorid ===&lt;br /&gt;
&lt;br /&gt;
Mit Eisen-3-Chlorid ätzt es sich gut. Nach etwa 10 Minuten ist die Platine fertig. Hier ist gut entwickeltes Material nötig, sonst sind die dünnen Konturen schnell weggeätzt.&lt;br /&gt;
&lt;br /&gt;
= Nachbehandlung =&lt;br /&gt;
&lt;br /&gt;
Die Platine ist also soweit fertig. Jetzt noch mit Stahlwolle reinigen (ist das Einfachste meiner Meinung nach) und mit Lötlack einsprühen... Kolophonium (oder auch Saupech genannt) in Nitro-Verdünnung gelöst soll billiger sein und die gleiche Wirkung erziehlt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Um schön glänzende Platinen zu bekommen kann man die Platine auch mit Lötpaste einschmieren und mit einem Heißluft-Fön bearbeiten. Dafür braucht man aber etwas Übung um die Platine nicht zu heiß zu machen und die richtige Menge Paste aufzutragen.&lt;br /&gt;
&lt;br /&gt;
Alternativ zur Stahlwolle geht Spiritus, Isopropanol,... auch ganz gut.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ursprünglich von OE6JWF / Hans&lt;br /&gt;
&lt;br /&gt;
edited by: Clemens Helfmeier&lt;br /&gt;
&lt;br /&gt;
Umformatiert von --[[Benutzer:Hans|Hans]] 00:38, 5. Jan 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
[[Category:Platinen]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=LPC2000&amp;diff=10635</id>
		<title>LPC2000</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=LPC2000&amp;diff=10635"/>
		<updated>2005-12-23T18:41:09Z</updated>

		<summary type="html">&lt;p&gt;Hans: Feature-Liste angepasst&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ARM]]&lt;br /&gt;
[[Category:Mikrocontroller]]&lt;br /&gt;
LPC2104, LPC2105, LPC2106,&lt;br /&gt;
LPC2114, LPC2119, LPC2129,&lt;br /&gt;
LPC2210, LPC2212, LPC2214,&lt;br /&gt;
LPC2290, LPC2292, LPC2294,&lt;br /&gt;
LPC213x, LPC214x&lt;br /&gt;
&lt;br /&gt;
Zum Typenvergleich siehe Tabelle auf der [http://www.semiconductors.philips.com/markets/mms/products/microcontrollers/key_solutions/32bit/index.html Philips-Seite].&lt;br /&gt;
&lt;br /&gt;
* Hersteller: [http://www.philips.com Philips]&lt;br /&gt;
* 32-Bit [[ARM]]7&#039;&#039;&#039;T&#039;&#039;&#039;DMI-S Prozessor (inkl. 16bit &amp;quot;&#039;&#039;&#039;T&#039;&#039;&#039;humb-Mode&amp;quot;)&lt;br /&gt;
* 16-64kB [[RAM|SRAM]].&lt;br /&gt;
* bis zu 512kB [[Flash-ROM]]-Programmspeicher (LPC2138)&lt;br /&gt;
* vorinstallierter serieller [[Bootloader]] mit automatischer [[Baud]]rate-Erkennung&lt;br /&gt;
* [[JTAG]]-Interface&lt;br /&gt;
* ETM Trace-Interface&lt;br /&gt;
* 2 [[UART]]-Schnittstellen (eine davon mit allen üblichen Handshake-Leitungen)&lt;br /&gt;
* 1-2[[SPI]]-Schnittstelle(n)&lt;br /&gt;
* Hardware-[[I2C]](I²C)-Schnittstelle&lt;br /&gt;
* teilw. mit CAN-Schnittstellen&lt;br /&gt;
* LPC211x, LPC22xx, LPC213x, LPC214x mit integrierten A/D-Wandlern&lt;br /&gt;
* teilw. mit D/A-Wandler (LPC2132/2138, LPC2142/44/46/48)&lt;br /&gt;
* 2 32 Bit [[Timer]], 6 [[Pulsweitenmodulation|PWM]]-Ausgänge, [[RTC]], [[Watchdog]]&lt;br /&gt;
* bis 60 MHz interne Taktfrequenz (über integrierte PLL für programmierbare Takterzeugung aus externer (Quarz-)Taktfrequenz)&lt;br /&gt;
* [[IC-Gehäuseformen|LQFP48]]-Gehäuse (LPC210x) bis LQFP144 (LPC22xx)&lt;br /&gt;
* ausser bei den LPC213x und LPC214x: Core-Spannung 1,65-1,95V, IO-Spannung 3,0-3,6V (d.h. zum Betrieb sind 2 Versorgungsspannungen erforderlich)&lt;br /&gt;
* geringe Leistungsaufnahme (ca. 60 mW bei 60 MHz und Endlosschleife)&lt;br /&gt;
* 5V-tolerante IOs&lt;br /&gt;
* Watchdog&lt;br /&gt;
* USB2.0 (LPC214x)&lt;br /&gt;
* RTC (teilweise mit eigenem Oszillator)&lt;br /&gt;
== Verwendung des Bootloaders ==&lt;br /&gt;
&lt;br /&gt;
Benötigte Software: lpc21isp von http://www.engelschall.com/~martin/lpc21xx/isp/index.html&lt;br /&gt;
&lt;br /&gt;
# BSL-Jumper setzen&lt;br /&gt;
# Reset-Knopf drücken&lt;br /&gt;
# lpc21isp starten&lt;br /&gt;
#* Linux: lpc21isp programm.hex /dev/ttyS0 115200 14746&lt;br /&gt;
#* Windows: lpc21isp programm.hex com1 115200 14746&lt;br /&gt;
&lt;br /&gt;
Die Übertragung des Programms zum Controller &amp;lt;!-- Download vom Host zum Target! ?mt: igendwas vom Rechner auf irgendeinen anderen Rechner ablegen ist doch eigentlich &amp;quot;uploaden&amp;quot; --&amp;gt; sollte jetzt beginnen. Um das Programm zu starten den &#039;&#039;&#039;BSL-Jumper entfernen&#039;&#039;&#039; und Reset drücken.&lt;br /&gt;
&lt;br /&gt;
Alternativ kann unter MS-Windows das von Philips bereitgestellte &amp;quot;Flash-Tool&amp;quot; mit grafischer Benutzeroberfläche genutzt werden.&lt;br /&gt;
&lt;br /&gt;
== WinARM ==&lt;br /&gt;
&lt;br /&gt;
WinARM ist ein Komplettpaket für MS-Windows, in dem der (arm-elf-Cross-)Compiler, Hilfsprogramme und alle benötigten Bibliotheken enthalten sind. Das Konzept ist angelehnt an WinAVR. Unterstützt werden alle Plattformen/Controller, die auch von gnuarm unterstützt werden. Inklusive einiger Beispiel fuer Philips ARM7 (4/2005: Paket mit arm-elf-gcc 4.0.0 verfügbar, &amp;quot;Testberichte&amp;quot; willkommen. Adresse unten auf der verlinkten Seite.)&lt;br /&gt;
&lt;br /&gt;
* http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/#winarm&lt;br /&gt;
&lt;br /&gt;
== GNUARM ==&lt;br /&gt;
&lt;br /&gt;
GCC-Installationspakete für Windows, Linux und MacOS X gibt es auf http://www.gnuarm.com/. Enthalten sind [[Binutils]], [[GCC]], [[Newlib]] und [[GDB|Insight]].&lt;br /&gt;
&lt;br /&gt;
Um alle Funktionen der Newlib-Bibliothek mit den LPC-Mikrocontrollern verwenden zu können, benötigt man außerdem die Datei newlib-lpc.zip von http://www.aeolusdevelopment.com/Articles/download.html. Nachdem man die Datei entpackt hat muss man die Pfade im Makefile (example.mak) und im Linker-Script (lpc210x.ld) an das eigene System anpassen und mit &amp;quot;make -f example.mak lib&amp;quot; die Datei newlib-lpc.a erstellen. Wenn das ohne Fehler geklappt hat benennt man die Datei in &amp;quot;libnewlib-lpc.a&amp;quot; um und kopiert sie in eines der Verzeichnisse die im Linker-Script unter &amp;quot;SEARCH_DIR&amp;quot; angegeben sind (z.B. /usr/local/arm/lib/gcc-lib/arm-elf/3.3.2/). Jetzt sollten sich die Beispiele (test?.c) mit &amp;quot;make -f example.mak&amp;quot; kompilieren lassen.&lt;br /&gt;
&lt;br /&gt;
Um die 64kB RAM des LPC2106 komplett ausnutzen zu können, muss man im Linker-Script der newlib-lpc die in den Kommentaren beschriebenen Änderungen durchführen.&lt;br /&gt;
&lt;br /&gt;
Für erste Experimente mit dem LPC2106/LPC2xxx (z.B. LED blinken lassen) sind weder die newlib noch deren Anpassung an die LPC2000-Serie notwendig. Ein für den LPC angepasstes Linker-Skript (.ld) und ein Startup-Code (typisch in Assembler, Endung .S) sind jedoch erforderlich. Diese sind z.B. auch in neueren Versionen von [http://www.freertos.org|FreeRTOS] oder der WinARM-Beispielsammlung enthalten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Installationshilfe für das Windows(CygWin)-Paket ===&lt;br /&gt;
&lt;br /&gt;
* CygWin installieren (Paket &#039;make&#039; auswählen, ist nicht im Base-Paket enthalten!)&lt;br /&gt;
* Aktuellste (danach suchen) &#039;cygwin1.dll&#039; nach &#039;C:\cygwin\bin&#039; kopieren, Verzeichnis in den Suchpfad (PATH) aufnehmen und alle anderen &#039;cygwin1.dll&#039; aus dem Pfad entfernen!&lt;br /&gt;
* [http://www.gnuarm.com/ GNUARM]-Toolchain herunterladen und nach &#039;C:\Programme\GNUARM&#039; installieren. Nach der Installation muss die Pfadangabe, die vom Installer zu &amp;quot;PATH&amp;quot; hinzugefügt wurde, angepasst werden: &#039;...;&amp;quot;C:\Programme\GNUARM&amp;quot;&#039; muss zu &#039;...;C:\Programme\GNUARM&#039; geändert werden (Gänsefüßchen weg, sonst kommt die CygWin-Shell damit nicht klar!)&lt;br /&gt;
* newlib auf jeden Fall selbst kompilieren (erstellen)&lt;br /&gt;
** [ftp://sources.redhat.com/pub/newlib/newlib-1.12.0.tar.gz newlib-1.12.0.tar.gz] oder aktuellere Version herunterladen&lt;br /&gt;
** Erstellen der newlib C runtime library:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ export PREFIX=`pwd`/install&lt;br /&gt;
  $ export TARGET=arm-elf&lt;br /&gt;
&lt;br /&gt;
  $ mkdir build-newlib&lt;br /&gt;
  $ mkdir install&lt;br /&gt;
  &lt;br /&gt;
  $ tar xzvf newlib-1.12.0.tar.gz&lt;br /&gt;
&lt;br /&gt;
  $ cd build-newlib&lt;br /&gt;
  $ ../newlib-1.12.0/configure --target=$TARGET --prefix=$PREFIX&lt;br /&gt;
&lt;br /&gt;
  ------------------------------------------------------------------------------------&lt;br /&gt;
  Im Makefile -DREENTRANT_SYSCALLS_PROVIDED zur Variable CFLAGS_FOR_TARGET hinzufügen.&lt;br /&gt;
  ------------------------------------------------------------------------------------&lt;br /&gt;
  &lt;br /&gt;
  $ make all install&lt;br /&gt;
  $ cd ..&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [http://www.aeolusdevelopment.com/Files/newlib-lpc_rel_2.zip newlib-lpc_rel_2] (oder aktuellere Version) herunterladen und nach &#039;C:\Programme\GNUARM\arm-elf\newlib-lpc_rel_2\&#039; entpacken&lt;br /&gt;
* CygWin- oder Windows-Version des &#039;lpc21isp&#039; Pakets herunterladen und nach &#039;C:\cygwin\bin&#039; entpacken&lt;br /&gt;
* Verzeichnis wechseln nach &#039;C:\Programme\GNUARM\arm-elf\newlib-lpc_rel_2&#039;&lt;br /&gt;
* &#039;example.mak&#039; zu &#039;Makefile&#039; kopieren&lt;br /&gt;
* im &#039;Makefile&#039; die Pfade anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
Makefile:&lt;br /&gt;
[..]&lt;br /&gt;
cfgl_arm = -v -Map $@.map -o$@ \&lt;br /&gt;
/cygdrive/c/Programme/GNUARM/arm-elf/newlib-lpc_rel_2/crt0.o $+ -Tlpc210x.ld&lt;br /&gt;
cfg_arm_gc = -mcpu=arm7tdmi -ggdb -c -Os -nostdinc -isystem \&lt;br /&gt;
/cygdrive/c/Programme/GNUARM/arm-elf/include/ \&lt;br /&gt;
-isystem /cygdrive/c/Programme/GNUARM/lib/gcc-lib/arm-elf/3.3.3/include/ \&lt;br /&gt;
-isystem /cygdrive/c/Programme/GNUARM/arm-elf/newlib-lpc_rel_2/include/ -o $@ &lt;br /&gt;
[..]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Linkerscript &#039;lpc210x.ld&#039; editieren und ebenfalls Pfade anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
lpc210x.d:&lt;br /&gt;
[..]&lt;br /&gt;
 /* Search directories for libraries.  Modify as needed. */&lt;br /&gt;
 &lt;br /&gt;
 SEARCH_DIR( /cygdrive/c/Programme/GNUARM/lib)&lt;br /&gt;
 SEARCH_DIR( /cygdrive/c/Programme/GNUARM/arm-elf/lib)&lt;br /&gt;
 SEARCH_DIR( /cygdrive/c/Programme/GNUARM/lib/gcc-lib/arm-elf/3.3.3)&lt;br /&gt;
 &lt;br /&gt;
 /*  Memory layout for processor.  Modify RAM size upwards for 2105 and 	*/&lt;br /&gt;
 /* 2106									*/&lt;br /&gt;
 MEMORY {&lt;br /&gt;
   flash : ORIGIN = 0, LENGTH = 120K&lt;br /&gt;
   ram : ORIGIN = 0x40000000, LENGTH = 64K&lt;br /&gt;
   }&lt;br /&gt;
 &lt;br /&gt;
 /*  Places stack at top of RAM,  Again needs modification for 2105 and	*/&lt;br /&gt;
 /* 2106.								*/&lt;br /&gt;
 __stack_end__ = 0x40000000 + 64K - 4;&lt;br /&gt;
[..]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* CygWin shell öffnen und nach &#039;/cygdrive/c/Programme/GNUARM/arm-elf/newlib-lpc_rel_2&#039; wechseln&lt;br /&gt;
* Library erstellen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ make lib&lt;br /&gt;
  $ cp newlib-lpc.a ../lib/libnewlib-lpc.a&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* in den test-Sourcen müssen einige Zeilen angepasst werden&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
test2.c:&lt;br /&gt;
[..]&lt;br /&gt;
 (void)SetNativeSpeed(_impure_ptr, 14746uL);&lt;br /&gt;
 &lt;br /&gt;
 /* Desired serial line characteristics 115200,n81			*/&lt;br /&gt;
 sp.baud   = 115200uL;&lt;br /&gt;
 sp.length = UART_WORD_LEN_8;&lt;br /&gt;
 sp.parity = UART_PARITY_NONE;&lt;br /&gt;
 sp.stop   = UART_STOP_BITS_1;&lt;br /&gt;
[..]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Kompilieren:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ make all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* BSL-Jumper stecken&lt;br /&gt;
* RST-Taster betätigen&lt;br /&gt;
* Programm mit Hilfe des Bootloaders in den Controller laden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ lpc21isp -term test2.hex com1 115200 14746&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* BSL-Jumper ziehen&lt;br /&gt;
* RST-Taster betätigen&lt;br /&gt;
* Ausgaben sehen...&lt;br /&gt;
&lt;br /&gt;
== Beispielprojekte ==&lt;br /&gt;
&lt;br /&gt;
* [[Media:LPC2106-gcc-Demo.zip|LPC2106-gcc-Demo.zip]] Dieses Beispielprojekt wurde mit [http://www.eclipse.org Eclipse] erstellt, kann aber durchaus auch in der Konsole oder jeder anderen IDE/Editor gebaut werden (dank Makefile;).&lt;br /&gt;
&lt;br /&gt;
* [http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects weitere Beispielanwendungen (externer Link auf M. Thomas&#039; ARM-&amp;quot;Projekte&amp;quot;-Seite)] für LPC2106 und LPC2129 (z.B. auf LPC-P2106- bzw. LPC-P2129-Demo-Boards)&lt;br /&gt;
&lt;br /&gt;
== JTAG/ICE/OCD ==&lt;br /&gt;
&lt;br /&gt;
Neben teuren JTAG-Interfaces (300 EUR - x kEUR) für ARM-Controller existieren auch einfache Parallelport-Interfaces - sogenannte Wiggler. Das Original für ARM und andere Controller ist von Macraigor und kostet ca. 150 USD (im folgenden OWM). Schaltpläne für ähnliche aber nicht unbedingt zum OWM kompatible Nachbauten findet man über google (Suchbegriffe: wiggler jtag schematic; Bauteilkosten &amp;lt;10EUR). Gekauft werden kann ein Nachbau (nicht vollständig OWM-Kompatibel) bei Olimex oder shop.mikrocontroller.net &amp;lt;!--(...oder oder...)--&amp;gt;. Für das OWM stellt Macraigor Software bereit (ocdremote/hwsupport), die eine Schnittstelle (Server) zwischen der Wiggler-Hardware und dem gnu-Debugger gdb bzw. Insight herstellt. Bei Nachbauten ist darauf zu achten, dass eine Verbindung zwischen Pin8 und Pin15 am Parallelportanschluss exisitiert, sonst wird die Hardware durch aktuelle Macraigor-Software nicht erkannt (&amp;quot;Cable detect&amp;quot;-Fehler, wohl eine Art Nachbauschutz). Falls es dennoch zu Verbindungsproblemen kommt, testweise die Geschwindigkeit herabsetzen (&amp;quot;speed&amp;quot;-Parameter erhöhen).&lt;br /&gt;
&lt;br /&gt;
Die (teure) Entwicklungsumgebung von Rowley arbeitet mit wigglerähnlichen Nachbauten und dem OWM wohl problemlos zusammen (Macraigor-Software ist dabei nicht erforderlich).&lt;br /&gt;
&lt;br /&gt;
Weitere relativ günstige JTAG-Schnittstellen sind z.B. das J-LINK von Segger mit USB-Anschluss (einzeln ca. 200-300EUR, als Bestandteil von Starterkits meist günstiger) oder das U-LINK von Keil mit USB-Anschluss (ca. 200-300EUR, ebenfalls als Teil von Starterkits meist günstiger).&lt;br /&gt;
&lt;br /&gt;
== Allgemeine Hinweise ==&lt;br /&gt;
* Der Softwareschutz bei den LPC210x ist fehlerhaft (Stand 4/2005). Ein Schutz des geistigen Eigentums also bei diesen Controllern nicht gewährleistet. Andere Controller aus der LPC2000-Serie sind davon nicht betroffen.&lt;br /&gt;
* auf vielen &amp;lt;!--allen?--&amp;gt; (Stand 4/2005) LPC2000 existiert ein Fehler bei der Verwaltung der Interrupt-Flags (&amp;quot;race condition&amp;quot;, &amp;quot;timer issue&amp;quot;). Der Fehler und mögliche Abhilfen sind in den Erratas von Philips erläutert.&lt;br /&gt;
* Bei Nutzung des SPI-Interfaces im &amp;quot;Master-Mode&amp;quot; ist bei allen LPC2000 ausser den LPC213x auf die richtige Beschaltung des &amp;quot;Chip-Select&amp;quot;-Pins zu achten. &lt;br /&gt;
* Bei neueren LPCs (LPC213x) sollte die aktuelle Fassung der Philips ISP-Software genutzt werden (Stand 4/2005: V2.2.1, erhältlich auf der Philips Web-Site). Ältere Versionen funktionieren nicht zuverlässig.&lt;br /&gt;
* Bei Problemen immer auch das Archiv der LPC2000 yahoo-Gruppe absuchen. Dort finden sich, leider oft etwas zerstreut, sehr nützliche Hinweise. Die Anmeldung bei der Gruppe (yahoo-Account erforderlich) gewährt Zugang zum Download-Bereich der Gruppe. Dort finden sich sehr nützliche Beispielprogramme, Libraries und Dokumente.&lt;br /&gt;
* Bei Entwicklungen mit der GNU-Toolchain erweisen sich Beispiele von kommerziellen Compiler/IDE-Anbietern, die ebenfalls den GNU-Compiler nutzen, oft als gute Informationsquelle vor allem bei Einstellungen zum Startup-Code oder im Linker-Script. (vgl. u.a. Rowley, Keil)&lt;br /&gt;
* siehe auch: [http://www.open-research.org.uk/ARMuC/index.cgi?LPC2100Tips LPC2100-Tips] im ARMuC Wiki (englisch)&lt;br /&gt;
&lt;br /&gt;
== LPC-P2148 ==&lt;br /&gt;
Das LPC-P2148 von Olimex hat 2 kleine Macken, die es zu umschiffen gilt um schön mit ihm entwicklen zu können.&lt;br /&gt;
&lt;br /&gt;
Um überhaupt Daten auf den Chip zu bekommen darf man bei lpc21isp die &#039;&#039;-control&#039;&#039; Option angeben und die Baudrate auf 38400 heruntersetzen. Die niedrige Baudrate haben wir dem 12Mhz Quarz zu verdanken, der aber für den USB-Port benötigt ist. Der Aufruf sieht also folgendermaßen aus:&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
lpc21isp -control lpc2148_USB.hex  /dev/ttyS1 38400 12000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die 2. Macke kann eigentlich schon fast als &amp;quot;Bug&amp;quot; deklariert werden, denn die eigentliche Funktion der Option &#039;&#039;-control&#039;&#039; kann sich am LPC-P2148 nicht entfalten. Zwar kann ein Reset von lpc21isp ausgelöst werden, aber der EnableBootloader-Pin kann von der Software nicht gesteuert werden. Dieses Feature ist zum Entwicklen aber doch nicht unbedingt unwichtig daher hier eine kleine Umbauanleitung...&lt;br /&gt;
&lt;br /&gt;
R12 (1k) wird ausgelötet am Gnd-Pin kommt der Emitter eines NPN-Transistors hin, der Kollector kommt an den 2. Pin freigewordenen Pin. Jetzt noch eine Z-Diode (Kathode an die Basis, Anode an GND) und einen R(bei mir 18k weil er gerade da war ) zum Strombegrenzen (zwischen Kathode bzw Basis und RTS von RS232_0 - also Pin 7). Schon kann lpc21isp selbst den Bootloader starten und nach dem Flashen das Programm laufen lassen :)&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 19:34, 23. Dez 2005 (CET)&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[LPC-P2106]] Development Board&lt;br /&gt;
* [[Linksammlung]]&lt;br /&gt;
* [[ARM-elf-GCC-Tutorial]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.semiconductors.philips.com/markets/mms/products/microcontrollers/key_solutions/32bit/index.html Philips LPC2000 &amp;quot;Homepage&amp;quot;]&lt;br /&gt;
* [http://groups.yahoo.com/group/lpc2000/ LPC2000 Yahoo Group]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gnuarm.com/ GNU-Toolchain für Windows (cygwin), Linux und MacOS]&lt;br /&gt;
* [http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/index.html WinARM - GNU-Toolchain für MS-Windows (ohne cygwin)] arm-elf Cross-Compiler mit Zugaben, vom Konzept vergleichbar mit WinAVR. &lt;br /&gt;
* [http://sourceware.org/binutils/docs-2.16/ld/index.html Dokumentation über Linker Scripte]&lt;br /&gt;
* [http://www.olimex.com/dev/pdf/ARM%20Cross%20Development%20with%20Eclipse%20version%202.pdf Sehr detaillierte Einführung in eine Entwicklungsumgebung mit GNUARM/Eclipse für Philips LPC]&lt;br /&gt;
* [http://www.dreamislife.com/arm/ LPC210x ARM7 Microcontroller Tutorial]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.engelschall.com/~martin/lpc21xx/isp/index.html lpc21isp] &amp;quot;Kommandozeilen&amp;quot;-ISP-Tool für Linux und MS-Windows&lt;br /&gt;
* [http://www.pjrc.com/arm/lpc2k_pgm/ LPC2K_PGM] ISP-Tool mit GUI für Linux/GTK&lt;br /&gt;
* [http://www.net-attack.de/?p=lpcflash&amp;amp;l=de lpcflash4linux] ISP-Tool für Linux (Kommandozeile)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=LPC2000&amp;diff=10629</id>
		<title>LPC2000</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=LPC2000&amp;diff=10629"/>
		<updated>2005-12-23T18:34:00Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* LPC2148 und lpc21isp */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ARM]]&lt;br /&gt;
[[Category:Mikrocontroller]]&lt;br /&gt;
LPC2104, LPC2105, LPC2106,&lt;br /&gt;
LPC2114, LPC2119, LPC2129,&lt;br /&gt;
LPC2210, LPC2212, LPC2214,&lt;br /&gt;
LPC2290, LPC2292, LPC2294,&lt;br /&gt;
LPC213x&lt;br /&gt;
&lt;br /&gt;
Zum Typenvergleich siehe Tabelle auf der [http://www.semiconductors.philips.com/markets/mms/products/microcontrollers/key_solutions/32bit/index.html Philips-Seite].&lt;br /&gt;
&lt;br /&gt;
* Hersteller: [http://www.philips.com Philips]&lt;br /&gt;
* 32-Bit [[ARM]]7&#039;&#039;&#039;T&#039;&#039;&#039;DMI-S Prozessor (inkl. 16bit &amp;quot;&#039;&#039;&#039;T&#039;&#039;&#039;humb-Mode&amp;quot;)&lt;br /&gt;
* 16-64kB [[RAM|SRAM]].&lt;br /&gt;
* bis zu 512kB [[Flash-ROM]]-Programmspeicher (LPC2138)&lt;br /&gt;
* vorinstallierter serieller [[Bootloader]] mit automatischer [[Baud]]rate-Erkennung&lt;br /&gt;
* [[JTAG]]-Interface&lt;br /&gt;
* ETM Trace-Interface&lt;br /&gt;
* 2 [[UART]]-Schnittstellen (eine davon mit allen üblichen Handshake-Leitungen)&lt;br /&gt;
* 1-2[[SPI]]-Schnittstelle(n)&lt;br /&gt;
* Hardware-[[I2C]](I²C)-Schnittstelle&lt;br /&gt;
* teilw. mit CAN-Schnittstellen&lt;br /&gt;
* LPC211x, LPC22xx und LPC213x mit integrierten A/D-Wandlern&lt;br /&gt;
* teilw. mit D/A-Wandler (LPC2132/2138)&lt;br /&gt;
* 2 32 Bit [[Timer]], 6 [[Pulsweitenmodulation|PWM]]-Ausgänge, [[RTC]], [[Watchdog]]&lt;br /&gt;
* bis 60 MHz interne Taktfrequenz (über integrierte PLL für programmierbare Takterzeugung aus externer (Quarz-)Taktfrequenz)&lt;br /&gt;
* [[IC-Gehäuseformen|LQFP48]]-Gehäuse (LPC210x) bis LQFP144 (LPC22xx)&lt;br /&gt;
* ausser bei den LPC213x: Core-Spannung 1,65-1,95V, IO-Spannung 3,0-3,6V (d.h. zum Betrieb sind 2 Versorgungsspannungen erforderlich)&lt;br /&gt;
* geringe Leistungsaufnahme (ca. 60 mW bei 60 MHz und Endlosschleife)&lt;br /&gt;
* 5V-tolerante IOs&lt;br /&gt;
* Watchdog&lt;br /&gt;
&lt;br /&gt;
== Verwendung des Bootloaders ==&lt;br /&gt;
&lt;br /&gt;
Benötigte Software: lpc21isp von http://www.engelschall.com/~martin/lpc21xx/isp/index.html&lt;br /&gt;
&lt;br /&gt;
# BSL-Jumper setzen&lt;br /&gt;
# Reset-Knopf drücken&lt;br /&gt;
# lpc21isp starten&lt;br /&gt;
#* Linux: lpc21isp programm.hex /dev/ttyS0 115200 14746&lt;br /&gt;
#* Windows: lpc21isp programm.hex com1 115200 14746&lt;br /&gt;
&lt;br /&gt;
Die Übertragung des Programms zum Controller &amp;lt;!-- Download vom Host zum Target! ?mt: igendwas vom Rechner auf irgendeinen anderen Rechner ablegen ist doch eigentlich &amp;quot;uploaden&amp;quot; --&amp;gt; sollte jetzt beginnen. Um das Programm zu starten den &#039;&#039;&#039;BSL-Jumper entfernen&#039;&#039;&#039; und Reset drücken.&lt;br /&gt;
&lt;br /&gt;
Alternativ kann unter MS-Windows das von Philips bereitgestellte &amp;quot;Flash-Tool&amp;quot; mit grafischer Benutzeroberfläche genutzt werden.&lt;br /&gt;
&lt;br /&gt;
== WinARM ==&lt;br /&gt;
&lt;br /&gt;
WinARM ist ein Komplettpaket für MS-Windows, in dem der (arm-elf-Cross-)Compiler, Hilfsprogramme und alle benötigten Bibliotheken enthalten sind. Das Konzept ist angelehnt an WinAVR. Unterstützt werden alle Plattformen/Controller, die auch von gnuarm unterstützt werden. Inklusive einiger Beispiel fuer Philips ARM7 (4/2005: Paket mit arm-elf-gcc 4.0.0 verfügbar, &amp;quot;Testberichte&amp;quot; willkommen. Adresse unten auf der verlinkten Seite.)&lt;br /&gt;
&lt;br /&gt;
* http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/#winarm&lt;br /&gt;
&lt;br /&gt;
== GNUARM ==&lt;br /&gt;
&lt;br /&gt;
GCC-Installationspakete für Windows, Linux und MacOS X gibt es auf http://www.gnuarm.com/. Enthalten sind [[Binutils]], [[GCC]], [[Newlib]] und [[GDB|Insight]].&lt;br /&gt;
&lt;br /&gt;
Um alle Funktionen der Newlib-Bibliothek mit den LPC-Mikrocontrollern verwenden zu können, benötigt man außerdem die Datei newlib-lpc.zip von http://www.aeolusdevelopment.com/Articles/download.html. Nachdem man die Datei entpackt hat muss man die Pfade im Makefile (example.mak) und im Linker-Script (lpc210x.ld) an das eigene System anpassen und mit &amp;quot;make -f example.mak lib&amp;quot; die Datei newlib-lpc.a erstellen. Wenn das ohne Fehler geklappt hat benennt man die Datei in &amp;quot;libnewlib-lpc.a&amp;quot; um und kopiert sie in eines der Verzeichnisse die im Linker-Script unter &amp;quot;SEARCH_DIR&amp;quot; angegeben sind (z.B. /usr/local/arm/lib/gcc-lib/arm-elf/3.3.2/). Jetzt sollten sich die Beispiele (test?.c) mit &amp;quot;make -f example.mak&amp;quot; kompilieren lassen.&lt;br /&gt;
&lt;br /&gt;
Um die 64kB RAM des LPC2106 komplett ausnutzen zu können, muss man im Linker-Script der newlib-lpc die in den Kommentaren beschriebenen Änderungen durchführen.&lt;br /&gt;
&lt;br /&gt;
Für erste Experimente mit dem LPC2106/LPC2xxx (z.B. LED blinken lassen) sind weder die newlib noch deren Anpassung an die LPC2000-Serie notwendig. Ein für den LPC angepasstes Linker-Skript (.ld) und ein Startup-Code (typisch in Assembler, Endung .S) sind jedoch erforderlich. Diese sind z.B. auch in neueren Versionen von [http://www.freertos.org|FreeRTOS] oder der WinARM-Beispielsammlung enthalten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Installationshilfe für das Windows(CygWin)-Paket ===&lt;br /&gt;
&lt;br /&gt;
* CygWin installieren (Paket &#039;make&#039; auswählen, ist nicht im Base-Paket enthalten!)&lt;br /&gt;
* Aktuellste (danach suchen) &#039;cygwin1.dll&#039; nach &#039;C:\cygwin\bin&#039; kopieren, Verzeichnis in den Suchpfad (PATH) aufnehmen und alle anderen &#039;cygwin1.dll&#039; aus dem Pfad entfernen!&lt;br /&gt;
* [http://www.gnuarm.com/ GNUARM]-Toolchain herunterladen und nach &#039;C:\Programme\GNUARM&#039; installieren. Nach der Installation muss die Pfadangabe, die vom Installer zu &amp;quot;PATH&amp;quot; hinzugefügt wurde, angepasst werden: &#039;...;&amp;quot;C:\Programme\GNUARM&amp;quot;&#039; muss zu &#039;...;C:\Programme\GNUARM&#039; geändert werden (Gänsefüßchen weg, sonst kommt die CygWin-Shell damit nicht klar!)&lt;br /&gt;
* newlib auf jeden Fall selbst kompilieren (erstellen)&lt;br /&gt;
** [ftp://sources.redhat.com/pub/newlib/newlib-1.12.0.tar.gz newlib-1.12.0.tar.gz] oder aktuellere Version herunterladen&lt;br /&gt;
** Erstellen der newlib C runtime library:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ export PREFIX=`pwd`/install&lt;br /&gt;
  $ export TARGET=arm-elf&lt;br /&gt;
&lt;br /&gt;
  $ mkdir build-newlib&lt;br /&gt;
  $ mkdir install&lt;br /&gt;
  &lt;br /&gt;
  $ tar xzvf newlib-1.12.0.tar.gz&lt;br /&gt;
&lt;br /&gt;
  $ cd build-newlib&lt;br /&gt;
  $ ../newlib-1.12.0/configure --target=$TARGET --prefix=$PREFIX&lt;br /&gt;
&lt;br /&gt;
  ------------------------------------------------------------------------------------&lt;br /&gt;
  Im Makefile -DREENTRANT_SYSCALLS_PROVIDED zur Variable CFLAGS_FOR_TARGET hinzufügen.&lt;br /&gt;
  ------------------------------------------------------------------------------------&lt;br /&gt;
  &lt;br /&gt;
  $ make all install&lt;br /&gt;
  $ cd ..&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [http://www.aeolusdevelopment.com/Files/newlib-lpc_rel_2.zip newlib-lpc_rel_2] (oder aktuellere Version) herunterladen und nach &#039;C:\Programme\GNUARM\arm-elf\newlib-lpc_rel_2\&#039; entpacken&lt;br /&gt;
* CygWin- oder Windows-Version des &#039;lpc21isp&#039; Pakets herunterladen und nach &#039;C:\cygwin\bin&#039; entpacken&lt;br /&gt;
* Verzeichnis wechseln nach &#039;C:\Programme\GNUARM\arm-elf\newlib-lpc_rel_2&#039;&lt;br /&gt;
* &#039;example.mak&#039; zu &#039;Makefile&#039; kopieren&lt;br /&gt;
* im &#039;Makefile&#039; die Pfade anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
Makefile:&lt;br /&gt;
[..]&lt;br /&gt;
cfgl_arm = -v -Map $@.map -o$@ \&lt;br /&gt;
/cygdrive/c/Programme/GNUARM/arm-elf/newlib-lpc_rel_2/crt0.o $+ -Tlpc210x.ld&lt;br /&gt;
cfg_arm_gc = -mcpu=arm7tdmi -ggdb -c -Os -nostdinc -isystem \&lt;br /&gt;
/cygdrive/c/Programme/GNUARM/arm-elf/include/ \&lt;br /&gt;
-isystem /cygdrive/c/Programme/GNUARM/lib/gcc-lib/arm-elf/3.3.3/include/ \&lt;br /&gt;
-isystem /cygdrive/c/Programme/GNUARM/arm-elf/newlib-lpc_rel_2/include/ -o $@ &lt;br /&gt;
[..]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Linkerscript &#039;lpc210x.ld&#039; editieren und ebenfalls Pfade anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
lpc210x.d:&lt;br /&gt;
[..]&lt;br /&gt;
 /* Search directories for libraries.  Modify as needed. */&lt;br /&gt;
 &lt;br /&gt;
 SEARCH_DIR( /cygdrive/c/Programme/GNUARM/lib)&lt;br /&gt;
 SEARCH_DIR( /cygdrive/c/Programme/GNUARM/arm-elf/lib)&lt;br /&gt;
 SEARCH_DIR( /cygdrive/c/Programme/GNUARM/lib/gcc-lib/arm-elf/3.3.3)&lt;br /&gt;
 &lt;br /&gt;
 /*  Memory layout for processor.  Modify RAM size upwards for 2105 and 	*/&lt;br /&gt;
 /* 2106									*/&lt;br /&gt;
 MEMORY {&lt;br /&gt;
   flash : ORIGIN = 0, LENGTH = 120K&lt;br /&gt;
   ram : ORIGIN = 0x40000000, LENGTH = 64K&lt;br /&gt;
   }&lt;br /&gt;
 &lt;br /&gt;
 /*  Places stack at top of RAM,  Again needs modification for 2105 and	*/&lt;br /&gt;
 /* 2106.								*/&lt;br /&gt;
 __stack_end__ = 0x40000000 + 64K - 4;&lt;br /&gt;
[..]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* CygWin shell öffnen und nach &#039;/cygdrive/c/Programme/GNUARM/arm-elf/newlib-lpc_rel_2&#039; wechseln&lt;br /&gt;
* Library erstellen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ make lib&lt;br /&gt;
  $ cp newlib-lpc.a ../lib/libnewlib-lpc.a&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* in den test-Sourcen müssen einige Zeilen angepasst werden&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
test2.c:&lt;br /&gt;
[..]&lt;br /&gt;
 (void)SetNativeSpeed(_impure_ptr, 14746uL);&lt;br /&gt;
 &lt;br /&gt;
 /* Desired serial line characteristics 115200,n81			*/&lt;br /&gt;
 sp.baud   = 115200uL;&lt;br /&gt;
 sp.length = UART_WORD_LEN_8;&lt;br /&gt;
 sp.parity = UART_PARITY_NONE;&lt;br /&gt;
 sp.stop   = UART_STOP_BITS_1;&lt;br /&gt;
[..]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Kompilieren:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ make all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* BSL-Jumper stecken&lt;br /&gt;
* RST-Taster betätigen&lt;br /&gt;
* Programm mit Hilfe des Bootloaders in den Controller laden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ lpc21isp -term test2.hex com1 115200 14746&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* BSL-Jumper ziehen&lt;br /&gt;
* RST-Taster betätigen&lt;br /&gt;
* Ausgaben sehen...&lt;br /&gt;
&lt;br /&gt;
== Beispielprojekte ==&lt;br /&gt;
&lt;br /&gt;
* [[Media:LPC2106-gcc-Demo.zip|LPC2106-gcc-Demo.zip]] Dieses Beispielprojekt wurde mit [http://www.eclipse.org Eclipse] erstellt, kann aber durchaus auch in der Konsole oder jeder anderen IDE/Editor gebaut werden (dank Makefile;).&lt;br /&gt;
&lt;br /&gt;
* [http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects weitere Beispielanwendungen (externer Link auf M. Thomas&#039; ARM-&amp;quot;Projekte&amp;quot;-Seite)] für LPC2106 und LPC2129 (z.B. auf LPC-P2106- bzw. LPC-P2129-Demo-Boards)&lt;br /&gt;
&lt;br /&gt;
== JTAG/ICE/OCD ==&lt;br /&gt;
&lt;br /&gt;
Neben teuren JTAG-Interfaces (300 EUR - x kEUR) für ARM-Controller existieren auch einfache Parallelport-Interfaces - sogenannte Wiggler. Das Original für ARM und andere Controller ist von Macraigor und kostet ca. 150 USD (im folgenden OWM). Schaltpläne für ähnliche aber nicht unbedingt zum OWM kompatible Nachbauten findet man über google (Suchbegriffe: wiggler jtag schematic; Bauteilkosten &amp;lt;10EUR). Gekauft werden kann ein Nachbau (nicht vollständig OWM-Kompatibel) bei Olimex oder shop.mikrocontroller.net &amp;lt;!--(...oder oder...)--&amp;gt;. Für das OWM stellt Macraigor Software bereit (ocdremote/hwsupport), die eine Schnittstelle (Server) zwischen der Wiggler-Hardware und dem gnu-Debugger gdb bzw. Insight herstellt. Bei Nachbauten ist darauf zu achten, dass eine Verbindung zwischen Pin8 und Pin15 am Parallelportanschluss exisitiert, sonst wird die Hardware durch aktuelle Macraigor-Software nicht erkannt (&amp;quot;Cable detect&amp;quot;-Fehler, wohl eine Art Nachbauschutz). Falls es dennoch zu Verbindungsproblemen kommt, testweise die Geschwindigkeit herabsetzen (&amp;quot;speed&amp;quot;-Parameter erhöhen).&lt;br /&gt;
&lt;br /&gt;
Die (teure) Entwicklungsumgebung von Rowley arbeitet mit wigglerähnlichen Nachbauten und dem OWM wohl problemlos zusammen (Macraigor-Software ist dabei nicht erforderlich).&lt;br /&gt;
&lt;br /&gt;
Weitere relativ günstige JTAG-Schnittstellen sind z.B. das J-LINK von Segger mit USB-Anschluss (einzeln ca. 200-300EUR, als Bestandteil von Starterkits meist günstiger) oder das U-LINK von Keil mit USB-Anschluss (ca. 200-300EUR, ebenfalls als Teil von Starterkits meist günstiger).&lt;br /&gt;
&lt;br /&gt;
== Allgemeine Hinweise ==&lt;br /&gt;
* Der Softwareschutz bei den LPC210x ist fehlerhaft (Stand 4/2005). Ein Schutz des geistigen Eigentums also bei diesen Controllern nicht gewährleistet. Andere Controller aus der LPC2000-Serie sind davon nicht betroffen.&lt;br /&gt;
* auf vielen &amp;lt;!--allen?--&amp;gt; (Stand 4/2005) LPC2000 existiert ein Fehler bei der Verwaltung der Interrupt-Flags (&amp;quot;race condition&amp;quot;, &amp;quot;timer issue&amp;quot;). Der Fehler und mögliche Abhilfen sind in den Erratas von Philips erläutert.&lt;br /&gt;
* Bei Nutzung des SPI-Interfaces im &amp;quot;Master-Mode&amp;quot; ist bei allen LPC2000 ausser den LPC213x auf die richtige Beschaltung des &amp;quot;Chip-Select&amp;quot;-Pins zu achten. &lt;br /&gt;
* Bei neueren LPCs (LPC213x) sollte die aktuelle Fassung der Philips ISP-Software genutzt werden (Stand 4/2005: V2.2.1, erhältlich auf der Philips Web-Site). Ältere Versionen funktionieren nicht zuverlässig.&lt;br /&gt;
* Bei Problemen immer auch das Archiv der LPC2000 yahoo-Gruppe absuchen. Dort finden sich, leider oft etwas zerstreut, sehr nützliche Hinweise. Die Anmeldung bei der Gruppe (yahoo-Account erforderlich) gewährt Zugang zum Download-Bereich der Gruppe. Dort finden sich sehr nützliche Beispielprogramme, Libraries und Dokumente.&lt;br /&gt;
* Bei Entwicklungen mit der GNU-Toolchain erweisen sich Beispiele von kommerziellen Compiler/IDE-Anbietern, die ebenfalls den GNU-Compiler nutzen, oft als gute Informationsquelle vor allem bei Einstellungen zum Startup-Code oder im Linker-Script. (vgl. u.a. Rowley, Keil)&lt;br /&gt;
* siehe auch: [http://www.open-research.org.uk/ARMuC/index.cgi?LPC2100Tips LPC2100-Tips] im ARMuC Wiki (englisch)&lt;br /&gt;
&lt;br /&gt;
== LPC-P2148 ==&lt;br /&gt;
Das LPC-P2148 von Olimex hat 2 kleine Macken, die es zu umschiffen gilt um schön mit ihm entwicklen zu können.&lt;br /&gt;
&lt;br /&gt;
Um überhaupt Daten auf den Chip zu bekommen darf man bei lpc21isp die &#039;&#039;-control&#039;&#039; Option angeben und die Baudrate auf 38400 heruntersetzen. Die niedrige Baudrate haben wir dem 12Mhz Quarz zu verdanken, der aber für den USB-Port benötigt ist. Der Aufruf sieht also folgendermaßen aus:&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
lpc21isp -control lpc2148_USB.hex  /dev/ttyS1 38400 12000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die 2. Macke kann eigentlich schon fast als &amp;quot;Bug&amp;quot; deklariert werden, denn die eigentliche Funktion der Option &#039;&#039;-control&#039;&#039; kann sich am LPC-P2148 nicht entfalten. Zwar kann ein Reset von lpc21isp ausgelöst werden, aber der EnableBootloader-Pin kann von der Software nicht gesteuert werden. Dieses Feature ist zum Entwicklen aber doch nicht unbedingt unwichtig daher hier eine kleine Umbauanleitung...&lt;br /&gt;
&lt;br /&gt;
R12 (1k) wird ausgelötet am Gnd-Pin kommt der Emitter eines NPN-Transistors hin, der Kollector kommt an den 2. Pin freigewordenen Pin. Jetzt noch eine Z-Diode (Kathode an die Basis, Anode an GND) und einen R(bei mir 18k weil er gerade da war ) zum Strombegrenzen (zwischen Kathode bzw Basis und RTS von RS232_0 - also Pin 7). Schon kann lpc21isp selbst den Bootloader starten und nach dem Flashen das Programm laufen lassen :)&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 19:34, 23. Dez 2005 (CET)&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[LPC-P2106]] Development Board&lt;br /&gt;
* [[Linksammlung]]&lt;br /&gt;
* [[ARM-elf-GCC-Tutorial]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.semiconductors.philips.com/markets/mms/products/microcontrollers/key_solutions/32bit/index.html Philips LPC2000 &amp;quot;Homepage&amp;quot;]&lt;br /&gt;
* [http://groups.yahoo.com/group/lpc2000/ LPC2000 Yahoo Group]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gnuarm.com/ GNU-Toolchain für Windows (cygwin), Linux und MacOS]&lt;br /&gt;
* [http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/index.html WinARM - GNU-Toolchain für MS-Windows (ohne cygwin)] arm-elf Cross-Compiler mit Zugaben, vom Konzept vergleichbar mit WinAVR. &lt;br /&gt;
* [http://sourceware.org/binutils/docs-2.16/ld/index.html Dokumentation über Linker Scripte]&lt;br /&gt;
* [http://www.olimex.com/dev/pdf/ARM%20Cross%20Development%20with%20Eclipse%20version%202.pdf Sehr detaillierte Einführung in eine Entwicklungsumgebung mit GNUARM/Eclipse für Philips LPC]&lt;br /&gt;
* [http://www.dreamislife.com/arm/ LPC210x ARM7 Microcontroller Tutorial]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.engelschall.com/~martin/lpc21xx/isp/index.html lpc21isp] &amp;quot;Kommandozeilen&amp;quot;-ISP-Tool für Linux und MS-Windows&lt;br /&gt;
* [http://www.pjrc.com/arm/lpc2k_pgm/ LPC2K_PGM] ISP-Tool mit GUI für Linux/GTK&lt;br /&gt;
* [http://www.net-attack.de/?p=lpcflash&amp;amp;l=de lpcflash4linux] ISP-Tool für Linux (Kommandozeile)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=LPC2000&amp;diff=10449</id>
		<title>LPC2000</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=LPC2000&amp;diff=10449"/>
		<updated>2005-12-08T15:10:26Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ARM]]&lt;br /&gt;
[[Category:Mikrocontroller]]&lt;br /&gt;
LPC2104, LPC2105, LPC2106,&lt;br /&gt;
LPC2114, LPC2119, LPC2129,&lt;br /&gt;
LPC2210, LPC2212, LPC2214,&lt;br /&gt;
LPC2290, LPC2292, LPC2294,&lt;br /&gt;
LPC213x&lt;br /&gt;
&lt;br /&gt;
Zum Typenvergleich siehe Tabelle auf der [http://www.semiconductors.philips.com/markets/mms/products/microcontrollers/key_solutions/32bit/index.html Philips-Seite].&lt;br /&gt;
&lt;br /&gt;
* Hersteller: [http://www.philips.com Philips]&lt;br /&gt;
* 32-Bit [[ARM]]7&#039;&#039;&#039;T&#039;&#039;&#039;DMI-S Prozessor (inkl. 16bit &amp;quot;&#039;&#039;&#039;T&#039;&#039;&#039;humb-Mode&amp;quot;)&lt;br /&gt;
* 16-64kB [[RAM|SRAM]].&lt;br /&gt;
* bis zu 512kB [[Flash-ROM]]-Programmspeicher (LPC2138)&lt;br /&gt;
* vorinstallierter serieller [[Bootloader]] mit automatischer [[Baud]]rate-Erkennung&lt;br /&gt;
* [[JTAG]]-Interface&lt;br /&gt;
* ETM Trace-Interface&lt;br /&gt;
* 2 [[UART]]-Schnittstellen (eine davon mit allen üblichen Handshake-Leitungen)&lt;br /&gt;
* 1-2[[SPI]]-Schnittstelle(n)&lt;br /&gt;
* Hardware-[[I2C]](I²C)-Schnittstelle&lt;br /&gt;
* teilw. mit CAN-Schnittstellen&lt;br /&gt;
* LPC211x, LPC22xx und LPC213x mit integrierten A/D-Wandlern&lt;br /&gt;
* teilw. mit D/A-Wandler (LPC2132/2138)&lt;br /&gt;
* 2 32 Bit [[Timer]], 6 [[Pulsweitenmodulation|PWM]]-Ausgänge, [[RTC]], [[Watchdog]]&lt;br /&gt;
* bis 60 MHz interne Taktfrequenz (über integrierte PLL für programmierbare Takterzeugung aus externer (Quarz-)Taktfrequenz)&lt;br /&gt;
* [[IC-Gehäuseformen|LQFP48]]-Gehäuse (LPC210x) bis LQFP144 (LPC22xx)&lt;br /&gt;
* ausser bei den LPC213x: Core-Spannung 1,65-1,95V, IO-Spannung 3,0-3,6V (d.h. zum Betrieb sind 2 Versorgungsspannungen erforderlich)&lt;br /&gt;
* geringe Leistungsaufnahme (ca. 60 mW bei 60 MHz und Endlosschleife)&lt;br /&gt;
* 5V-tolerante IOs&lt;br /&gt;
* Watchdog&lt;br /&gt;
&lt;br /&gt;
== Verwendung des Bootloaders ==&lt;br /&gt;
&lt;br /&gt;
Benötigte Software: lpc21isp von http://www.engelschall.com/~martin/lpc21xx/isp/index.html&lt;br /&gt;
&lt;br /&gt;
# BSL-Jumper setzen&lt;br /&gt;
# Reset-Knopf drücken&lt;br /&gt;
# lpc21isp starten&lt;br /&gt;
#* Linux: lpc21isp programm.hex /dev/ttyS0 115200 14746&lt;br /&gt;
#* Windows: lpc21isp programm.hex com1 115200 14746&lt;br /&gt;
&lt;br /&gt;
Die Übertragung des Programms zum Controller &amp;lt;!-- Download vom Host zum Target! ?mt: igendwas vom Rechner auf irgendeinen anderen Rechner ablegen ist doch eigentlich &amp;quot;uploaden&amp;quot; --&amp;gt; sollte jetzt beginnen. Um das Programm zu starten den &#039;&#039;&#039;BSL-Jumper entfernen&#039;&#039;&#039; und Reset drücken.&lt;br /&gt;
&lt;br /&gt;
Alternativ kann unter MS-Windows das von Philips bereitgestellte &amp;quot;Flash-Tool&amp;quot; mit grafischer Benutzeroberfläche genutzt werden.&lt;br /&gt;
&lt;br /&gt;
== WinARM ==&lt;br /&gt;
&lt;br /&gt;
WinARM ist ein Komplettpaket für MS-Windows, in dem der (arm-elf-Cross-)Compiler, Hilfsprogramme und alle benötigten Bibliotheken enthalten sind. Das Konzept ist angelehnt an WinAVR. Unterstützt werden alle Plattformen/Controller, die auch von gnuarm unterstützt werden. Inklusive einiger Beispiel fuer Philips ARM7 (4/2005: Paket mit arm-elf-gcc 4.0.0 verfügbar, &amp;quot;Testberichte&amp;quot; willkommen. Adresse unten auf der verlinkten Seite.)&lt;br /&gt;
&lt;br /&gt;
* http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/#winarm&lt;br /&gt;
&lt;br /&gt;
== GNUARM ==&lt;br /&gt;
&lt;br /&gt;
GCC-Installationspakete für Windows, Linux und MacOS X gibt es auf http://www.gnuarm.com/. Enthalten sind [[Binutils]], [[GCC]], [[Newlib]] und [[GDB|Insight]].&lt;br /&gt;
&lt;br /&gt;
Um alle Funktionen der Newlib-Bibliothek mit den LPC-Mikrocontrollern verwenden zu können, benötigt man außerdem die Datei newlib-lpc.zip von http://www.aeolusdevelopment.com/Articles/download.html. Nachdem man die Datei entpackt hat muss man die Pfade im Makefile (example.mak) und im Linker-Script (lpc210x.ld) an das eigene System anpassen und mit &amp;quot;make -f example.mak lib&amp;quot; die Datei newlib-lpc.a erstellen. Wenn das ohne Fehler geklappt hat benennt man die Datei in &amp;quot;libnewlib-lpc.a&amp;quot; um und kopiert sie in eines der Verzeichnisse die im Linker-Script unter &amp;quot;SEARCH_DIR&amp;quot; angegeben sind (z.B. /usr/local/arm/lib/gcc-lib/arm-elf/3.3.2/). Jetzt sollten sich die Beispiele (test?.c) mit &amp;quot;make -f example.mak&amp;quot; kompilieren lassen.&lt;br /&gt;
&lt;br /&gt;
Um die 64kB RAM des LPC2106 komplett ausnutzen zu können, muss man im Linker-Script der newlib-lpc die in den Kommentaren beschriebenen Änderungen durchführen.&lt;br /&gt;
&lt;br /&gt;
Für erste Experimente mit dem LPC2106/LPC2xxx (z.B. LED blinken lassen) sind weder die newlib noch deren Anpassung an die LPC2000-Serie notwendig. Ein für den LPC angepasstes Linker-Skript (.ld) und ein Startup-Code (typisch in Assembler, Endung .S) sind jedoch erforderlich. Diese sind z.B. auch in neueren Versionen von [http://www.freertos.org|FreeRTOS] oder der WinARM-Beispielsammlung enthalten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Installationshilfe für das Windows(CygWin)-Paket ===&lt;br /&gt;
&lt;br /&gt;
* CygWin installieren (Paket &#039;make&#039; auswählen, ist nicht im Base-Paket enthalten!)&lt;br /&gt;
* Aktuellste (danach suchen) &#039;cygwin1.dll&#039; nach &#039;C:\cygwin\bin&#039; kopieren, Verzeichnis in den Suchpfad (PATH) aufnehmen und alle anderen &#039;cygwin1.dll&#039; aus dem Pfad entfernen!&lt;br /&gt;
* [http://www.gnuarm.com/ GNUARM]-Toolchain herunterladen und nach &#039;C:\Programme\GNUARM&#039; installieren. Nach der Installation muss die Pfadangabe, die vom Installer zu &amp;quot;PATH&amp;quot; hinzugefügt wurde, angepasst werden: &#039;...;&amp;quot;C:\Programme\GNUARM&amp;quot;&#039; muss zu &#039;...;C:\Programme\GNUARM&#039; geändert werden (Gänsefüßchen weg, sonst kommt die CygWin-Shell damit nicht klar!)&lt;br /&gt;
* newlib auf jeden Fall selbst kompilieren (erstellen)&lt;br /&gt;
** [ftp://sources.redhat.com/pub/newlib/newlib-1.12.0.tar.gz newlib-1.12.0.tar.gz] oder aktuellere Version herunterladen&lt;br /&gt;
** Erstellen der newlib C runtime library:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ export PREFIX=`pwd`/install&lt;br /&gt;
  $ export TARGET=arm-elf&lt;br /&gt;
&lt;br /&gt;
  $ mkdir build-newlib&lt;br /&gt;
  $ mkdir install&lt;br /&gt;
  &lt;br /&gt;
  $ tar xzvf newlib-1.12.0.tar.gz&lt;br /&gt;
&lt;br /&gt;
  $ cd build-newlib&lt;br /&gt;
  $ ../newlib-1.12.0/configure --target=$TARGET --prefix=$PREFIX&lt;br /&gt;
&lt;br /&gt;
  ------------------------------------------------------------------------------------&lt;br /&gt;
  Im Makefile -DREENTRANT_SYSCALLS_PROVIDED zur Variable CFLAGS_FOR_TARGET hinzufügen.&lt;br /&gt;
  ------------------------------------------------------------------------------------&lt;br /&gt;
  &lt;br /&gt;
  $ make all install&lt;br /&gt;
  $ cd ..&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [http://www.aeolusdevelopment.com/Files/newlib-lpc_rel_2.zip newlib-lpc_rel_2] (oder aktuellere Version) herunterladen und nach &#039;C:\Programme\GNUARM\arm-elf\newlib-lpc_rel_2\&#039; entpacken&lt;br /&gt;
* CygWin- oder Windows-Version des &#039;lpc21isp&#039; Pakets herunterladen und nach &#039;C:\cygwin\bin&#039; entpacken&lt;br /&gt;
* Verzeichnis wechseln nach &#039;C:\Programme\GNUARM\arm-elf\newlib-lpc_rel_2&#039;&lt;br /&gt;
* &#039;example.mak&#039; zu &#039;Makefile&#039; kopieren&lt;br /&gt;
* im &#039;Makefile&#039; die Pfade anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
Makefile:&lt;br /&gt;
[..]&lt;br /&gt;
cfgl_arm = -v -Map $@.map -o$@ \&lt;br /&gt;
/cygdrive/c/Programme/GNUARM/arm-elf/newlib-lpc_rel_2/crt0.o $+ -Tlpc210x.ld&lt;br /&gt;
cfg_arm_gc = -mcpu=arm7tdmi -ggdb -c -Os -nostdinc -isystem \&lt;br /&gt;
/cygdrive/c/Programme/GNUARM/arm-elf/include/ \&lt;br /&gt;
-isystem /cygdrive/c/Programme/GNUARM/lib/gcc-lib/arm-elf/3.3.3/include/ \&lt;br /&gt;
-isystem /cygdrive/c/Programme/GNUARM/arm-elf/newlib-lpc_rel_2/include/ -o $@ &lt;br /&gt;
[..]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Linkerscript &#039;lpc210x.ld&#039; editieren und ebenfalls Pfade anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
lpc210x.d:&lt;br /&gt;
[..]&lt;br /&gt;
 /* Search directories for libraries.  Modify as needed. */&lt;br /&gt;
 &lt;br /&gt;
 SEARCH_DIR( /cygdrive/c/Programme/GNUARM/lib)&lt;br /&gt;
 SEARCH_DIR( /cygdrive/c/Programme/GNUARM/arm-elf/lib)&lt;br /&gt;
 SEARCH_DIR( /cygdrive/c/Programme/GNUARM/lib/gcc-lib/arm-elf/3.3.3)&lt;br /&gt;
 &lt;br /&gt;
 /*  Memory layout for processor.  Modify RAM size upwards for 2105 and 	*/&lt;br /&gt;
 /* 2106									*/&lt;br /&gt;
 MEMORY {&lt;br /&gt;
   flash : ORIGIN = 0, LENGTH = 120K&lt;br /&gt;
   ram : ORIGIN = 0x40000000, LENGTH = 64K&lt;br /&gt;
   }&lt;br /&gt;
 &lt;br /&gt;
 /*  Places stack at top of RAM,  Again needs modification for 2105 and	*/&lt;br /&gt;
 /* 2106.								*/&lt;br /&gt;
 __stack_end__ = 0x40000000 + 64K - 4;&lt;br /&gt;
[..]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* CygWin shell öffnen und nach &#039;/cygdrive/c/Programme/GNUARM/arm-elf/newlib-lpc_rel_2&#039; wechseln&lt;br /&gt;
* Library erstellen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ make lib&lt;br /&gt;
  $ cp newlib-lpc.a ../lib/libnewlib-lpc.a&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* in den test-Sourcen müssen einige Zeilen angepasst werden&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
test2.c:&lt;br /&gt;
[..]&lt;br /&gt;
 (void)SetNativeSpeed(_impure_ptr, 14746uL);&lt;br /&gt;
 &lt;br /&gt;
 /* Desired serial line characteristics 115200,n81			*/&lt;br /&gt;
 sp.baud   = 115200uL;&lt;br /&gt;
 sp.length = UART_WORD_LEN_8;&lt;br /&gt;
 sp.parity = UART_PARITY_NONE;&lt;br /&gt;
 sp.stop   = UART_STOP_BITS_1;&lt;br /&gt;
[..]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Kompilieren:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ make all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* BSL-Jumper stecken&lt;br /&gt;
* RST-Taster betätigen&lt;br /&gt;
* Programm mit Hilfe des Bootloaders in den Controller laden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  $ lpc21isp -term test2.hex com1 115200 14746&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* BSL-Jumper ziehen&lt;br /&gt;
* RST-Taster betätigen&lt;br /&gt;
* Ausgaben sehen...&lt;br /&gt;
&lt;br /&gt;
== Beispielprojekte ==&lt;br /&gt;
&lt;br /&gt;
* [[Media:LPC2106-gcc-Demo.zip|LPC2106-gcc-Demo.zip]] Dieses Beispielprojekt wurde mit [http://www.eclipse.org Eclipse] erstellt, kann aber durchaus auch in der Konsole oder jeder anderen IDE/Editor gebaut werden (dank Makefile;).&lt;br /&gt;
&lt;br /&gt;
* [http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects weitere Beispielanwendungen (externer Link auf M. Thomas&#039; ARM-&amp;quot;Projekte&amp;quot;-Seite)] für LPC2106 und LPC2129 (z.B. auf LPC-P2106- bzw. LPC-P2129-Demo-Boards)&lt;br /&gt;
&lt;br /&gt;
== JTAG/ICE/OCD ==&lt;br /&gt;
&lt;br /&gt;
Neben teuren JTAG-Interfaces (300 EUR - x kEUR) für ARM-Controller existieren auch einfache Parallelport-Interfaces - sogenannte Wiggler. Das Original für ARM und andere Controller ist von Macraigor und kostet ca. 150 USD (im folgenden OWM). Schaltpläne für ähnliche aber nicht unbedingt zum OWM kompatible Nachbauten findet man über google (Suchbegriffe: wiggler jtag schematic; Bauteilkosten &amp;lt;10EUR). Gekauft werden kann ein Nachbau (nicht vollständig OWM-Kompatibel) bei Olimex oder shop.mikrocontroller.net &amp;lt;!--(...oder oder...)--&amp;gt;. Für das OWM stellt Macraigor Software bereit (ocdremote/hwsupport), die eine Schnittstelle (Server) zwischen der Wiggler-Hardware und dem gnu-Debugger gdb bzw. Insight herstellt. Bei Nachbauten ist darauf zu achten, dass eine Verbindung zwischen Pin8 und Pin15 am Parallelportanschluss exisitiert, sonst wird die Hardware durch aktuelle Macraigor-Software nicht erkannt (&amp;quot;Cable detect&amp;quot;-Fehler, wohl eine Art Nachbauschutz). Falls es dennoch zu Verbindungsproblemen kommt, testweise die Geschwindigkeit herabsetzen (&amp;quot;speed&amp;quot;-Parameter erhöhen).&lt;br /&gt;
&lt;br /&gt;
Die (teure) Entwicklungsumgebung von Rowley arbeitet mit wigglerähnlichen Nachbauten und dem OWM wohl problemlos zusammen (Macraigor-Software ist dabei nicht erforderlich).&lt;br /&gt;
&lt;br /&gt;
Weitere relativ günstige JTAG-Schnittstellen sind z.B. das J-LINK von Segger mit USB-Anschluss (einzeln ca. 200-300EUR, als Bestandteil von Starterkits meist günstiger) oder das U-LINK von Keil mit USB-Anschluss (ca. 200-300EUR, ebenfalls als Teil von Starterkits meist günstiger).&lt;br /&gt;
&lt;br /&gt;
== Allgemeine Hinweise ==&lt;br /&gt;
* Der Softwareschutz bei den LPC210x ist fehlerhaft (Stand 4/2005). Ein Schutz des geistigen Eigentums also bei diesen Controllern nicht gewährleistet. Andere Controller aus der LPC2000-Serie sind davon nicht betroffen.&lt;br /&gt;
* auf vielen &amp;lt;!--allen?--&amp;gt; (Stand 4/2005) LPC2000 existiert ein Fehler bei der Verwaltung der Interrupt-Flags (&amp;quot;race condition&amp;quot;, &amp;quot;timer issue&amp;quot;). Der Fehler und mögliche Abhilfen sind in den Erratas von Philips erläutert.&lt;br /&gt;
* Bei Nutzung des SPI-Interfaces im &amp;quot;Master-Mode&amp;quot; ist bei allen LPC2000 ausser den LPC213x auf die richtige Beschaltung des &amp;quot;Chip-Select&amp;quot;-Pins zu achten. &lt;br /&gt;
* Bei neueren LPCs (LPC213x) sollte die aktuelle Fassung der Philips ISP-Software genutzt werden (Stand 4/2005: V2.2.1, erhältlich auf der Philips Web-Site). Ältere Versionen funktionieren nicht zuverlässig.&lt;br /&gt;
* Bei Problemen immer auch das Archiv der LPC2000 yahoo-Gruppe absuchen. Dort finden sich, leider oft etwas zerstreut, sehr nützliche Hinweise. Die Anmeldung bei der Gruppe (yahoo-Account erforderlich) gewährt Zugang zum Download-Bereich der Gruppe. Dort finden sich sehr nützliche Beispielprogramme, Libraries und Dokumente.&lt;br /&gt;
* Bei Entwicklungen mit der GNU-Toolchain erweisen sich Beispiele von kommerziellen Compiler/IDE-Anbietern, die ebenfalls den GNU-Compiler nutzen, oft als gute Informationsquelle vor allem bei Einstellungen zum Startup-Code oder im Linker-Script. (vgl. u.a. Rowley, Keil)&lt;br /&gt;
* siehe auch: [http://www.open-research.org.uk/ARMuC/index.cgi?LPC2100Tips LPC2100-Tips] im ARMuC Wiki (englisch)&lt;br /&gt;
&lt;br /&gt;
== LPC2148 und lpc21isp ==&lt;br /&gt;
Ich habe mir als Einsteigsboard das LPC-P2148 zugelegt. Dann gleich lpc21isp angewofen und wie Murphy es will wurde kein Bootloader erkannt. Nach &amp;quot;einigen&amp;quot; Versuchen auch mit anderen Programmen hatte ich nur mäßigen Erfolg. Schlussendlich kam ich mit der Option &#039;&#039;-control&#039;&#039; und 38400Baud zum Ziel. Sowohl am Onboard Port alsauch über einen USB-Dongel (ohne RS232-Verlängerung) gings nicht schneller. Mein PL2303 wollte aus einem unerfindlichen Grund überhaupt nicht kommunizieren. Unter Linux solte lpc21isp also mittels &#039;&#039;lpc21isp -detectonly -control lpc2148_USB.hex  /dev/ttyS1 38400 12000&#039;&#039; funktionieren.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[LPC-P2106]] Development Board&lt;br /&gt;
* [[Linksammlung]]&lt;br /&gt;
* [[ARM-elf-GCC-Tutorial]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.semiconductors.philips.com/markets/mms/products/microcontrollers/key_solutions/32bit/index.html Philips LPC2000 &amp;quot;Homepage&amp;quot;]&lt;br /&gt;
* [http://groups.yahoo.com/group/lpc2000/ LPC2000 Yahoo Group]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gnuarm.com/ GNU-Toolchain für Windows (cygwin), Linux und MacOS]&lt;br /&gt;
* [http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/index.html WinARM - GNU-Toolchain für MS-Windows (ohne cygwin)] arm-elf Cross-Compiler mit Zugaben, vom Konzept vergleichbar mit WinAVR. &lt;br /&gt;
* [http://sourceware.org/binutils/docs-2.16/ld/index.html Dokumentation über Linker Scripte]&lt;br /&gt;
* [http://www.olimex.com/dev/pdf/ARM%20Cross%20Development%20with%20Eclipse%20version%202.pdf Sehr detaillierte Einführung in eine Entwicklungsumgebung mit GNUARM/Eclipse für Philips LPC]&lt;br /&gt;
* [http://www.dreamislife.com/arm/ LPC210x ARM7 Microcontroller Tutorial]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.engelschall.com/~martin/lpc21xx/isp/index.html lpc21isp] &amp;quot;Kommandozeilen&amp;quot;-ISP-Tool für Linux und MS-Windows&lt;br /&gt;
* [http://www.pjrc.com/arm/lpc2k_pgm/ LPC2K_PGM] ISP-Tool mit GUI für Linux/GTK&lt;br /&gt;
* [http://www.net-attack.de/?p=lpcflash&amp;amp;l=de lpcflash4linux] ISP-Tool für Linux (Kommandozeile)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Benutzer_Diskussion:Hans&amp;diff=14907</id>
		<title>Benutzer Diskussion:Hans</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Benutzer_Diskussion:Hans&amp;diff=14907"/>
		<updated>2005-12-08T14:49:22Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Diskussion:Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=14860</id>
		<title>Diskussion:Logic Analyzer-Projekt: Ideen zur Software</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Diskussion:Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=14860"/>
		<updated>2005-10-07T07:52:09Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;nur so als hinweis, ich selbst hab zugegegebenermassen nicht wirklich ahnung davon: wxwidgets hat auch eine klasse, um dlls zu laden, plattformuebergreifend natuerlich: [http://www.wxwidgets.org/manuals/2.6.1/wx_wxdynamiclibrary.html wxDynamicLibrary]&lt;br /&gt;
&lt;br /&gt;
Wie wäre es als Viewer GTKWave [http://www.cs.manchester.ac.uk/apt/projects/tools/gtkwave/] zu nutzen, dann muesste &amp;quot;nur&amp;quot; ein Treiber programmiert werden, bzw ein Tool welches die Daten in eine Datei schreibt?&lt;br /&gt;
&lt;br /&gt;
Äußerst interessantes programm GTKWave.. vorallem der win32-port :)&lt;br /&gt;
Der ist zwar &amp;quot;etwas&amp;quot; älter doch sollte es eigentlich kein problem darstellen eine up-to-date version zu kompilieren ... Danke für den tipp... ich werd mir mal den code anschaun... hab nächste woche noch eine nette prüfung dann hab ich bis dezember zeit... &lt;br /&gt;
73 --[[Benutzer:Hans|Hans]] 09:52, 7. Okt 2005 (CEST)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8534</id>
		<title>Logic Analyzer-Projekt: Ideen zur Software</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8534"/>
		<updated>2005-07-24T17:03:13Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Plugins */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nachdem jetzt offensichtlich doch einige Blut geleckt haben und der [[Logic Analyzer]] nun mit ziemlicher Sicherheit zustande kommt hier schonmal vorab die Software-Seite.&lt;br /&gt;
&lt;br /&gt;
Hier soll bis es die ersten Analyzer gibt eine &#039;&#039;Feature-List&#039;&#039; entstehen.&lt;br /&gt;
&lt;br /&gt;
= Wishlist =&lt;br /&gt;
&lt;br /&gt;
Bitte hier alle gewünschten Funktionen reintun... alles fällt mir auch nicht auf Anhieb ein ;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Was ist mit JAVA? ist vielleicht nicht die schnellste lösung, doch schneller als JAVA kann man ja ohnehin nicht guggen :). Damit ist das Programm auch ohne Probleme auf Sun,Sparc &amp;amp; Co. lauffähig und man könnte z.B. für USB-Anbindung jUSB verwenden (ich glaube aber nur auf x86).&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Ich möchte mal auf [http://www.wxwidgets.org/platform.htm das hier] verweisen...&lt;br /&gt;
Derzeit ist nur 1 String schuld,dass es nicht sofort unter allen Plattformen laufen wird.. aber die Kleinigkeit hab ich auch nur zu Testzwecken drinnen ;)&lt;br /&gt;
&lt;br /&gt;
Der Einwand mit Java ist zwar nicht grundlos.. aber wie ich im Forum schon mal gesagt hab... ich mags nicht *g*&lt;br /&gt;
&lt;br /&gt;
Und nachdem es den gcc für alles mögliche gibt läuft die Soft auch auf den meisten Plattformen... eigentlich überall wo die GTK+ oder M$ läuft ;)...&lt;br /&gt;
&lt;br /&gt;
und für den Rest... x86 Emu drauf und warten bis [http://www.ReactOS.org ReactOS] kompatibel genug ist...(es dürfte eigentlich nur USB Unterstützung fehlen ;)&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 07:51, 20. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
== Framework, Libs, Widgetset... ==&lt;br /&gt;
* [http://www.wxwidgets.org/ wxWidgets]&lt;br /&gt;
* C++ (VC++ 6.0, gcc)&lt;br /&gt;
* [http://www.sqlite.org/ SQLite]&lt;br /&gt;
* [http://www.zlib.net/ zlib]&lt;br /&gt;
&lt;br /&gt;
== Daten &#039;&#039;Projektweise&#039;&#039; organisieren ==&lt;br /&gt;
Projekt Dateien sind eigentlich [http://www.sqlite.org SQLite] Datenbanken.&lt;br /&gt;
In 2 Tabellen werden Einstellungen und Daten gespeichert.&lt;br /&gt;
&lt;br /&gt;
Um die Dateien nicht unnötig aufzublähen wird der Daten-BLOB vor dem Speichern noch komprimiert (zlib ???).&lt;br /&gt;
&lt;br /&gt;
=== Daten ===&lt;br /&gt;
* Beschreibung&lt;br /&gt;
* Datenblob&lt;br /&gt;
 * 4 Byte Timestamp (DWORD ausreizen)&lt;br /&gt;
 * 2 Byte/8 Pins für HighZ-Detection (=&amp;gt; sicher nett für die Schnittstellenanalyze) und Daten&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration ===&lt;br /&gt;
* Datenstruktur Version&lt;br /&gt;
* Analyzer Typ&lt;br /&gt;
* Projekt Beschreibung&lt;br /&gt;
&lt;br /&gt;
=== Messungen ===&lt;br /&gt;
* Plugin Id&lt;br /&gt;
* Plugin Version&lt;br /&gt;
* Messungs-Typ&lt;br /&gt;
* Daten-Blob&lt;br /&gt;
&lt;br /&gt;
=== Projekt History ===&lt;br /&gt;
* Datum&lt;br /&gt;
* Kommentar&lt;br /&gt;
&lt;br /&gt;
== Plugins ==&lt;br /&gt;
Ich habe vor möglichst viel aum Basiscode auszulagern und nur das aller Nötigste zu integrieren.&lt;br /&gt;
So soll mehrere Plugin-Typen geben:&lt;br /&gt;
* Input : Stellen die Verbindung zwischen Software und Capture-Engine her (wie auch immer sie aussehen soll)&lt;br /&gt;
* Analyze : Analysieren die Daten. Dies kann jetzt von Jitter-Anaylse bis zum Protokoll-Analyzer alles sein&lt;br /&gt;
* Output : Unter Umständen der Datenbank Export nicht in dieser Art und Weise erwünscht bzw sinnvoll. Dann könnte man z.B über ein Output Plugin noch Daten-Dezimierung einführen oder was auch immer&lt;br /&gt;
* View : Ein richtiger Protokoll-Analyzer stellt die daten sicher anders da =&amp;gt; Plugin und Fertig&lt;br /&gt;
&lt;br /&gt;
Unter Windows ist eine Plugin-Architektur eigentlich ganz brauchbar machbar über DLLs.&lt;br /&gt;
Ähnliches gilt auch für Linux wie [http://www.linuxgazette.com/issue84/bradley.html hier] zu lesen ist.&lt;br /&gt;
&lt;br /&gt;
Eine Alternative ist die Verwendung von [http://www.gnu.org/software/libtool/libtool.html libtool] in Verbindung mit der autoconfig/automake Package. Sie stellt einen Wrapper für den unter Unix oft verwendeten dlopen (Solaris, Linux and various BSD flavors) Mechanismus bereit und ist auch unter Win32 für LoadLibrary anwendbar (neben shl_load/HP-UX und load_add_on/BeOS). Unter Windows wird dadurch ggf. [http://www.mingw.org/ mingw] oder [http://www.cygwin.com/ cygwin] erforderlich.&lt;br /&gt;
&lt;br /&gt;
Die Plugin-Grundstruktur läuft mittlerweile mehr oder weniger problemlos.&lt;br /&gt;
Derzeit sieht die ganze Angelegenheit ungefähr so aus:&lt;br /&gt;
&lt;br /&gt;
Die Plugin-DLLs exportieren die Funktion &#039;&#039;&#039;GetPluginObject&#039;&#039;&#039;. Diese liefert einen Pointer auf ein von&lt;br /&gt;
&#039;&#039;&#039;CPlugInBase&#039;&#039;&#039; abgeleitetes Projekt.&lt;br /&gt;
&lt;br /&gt;
Von diesem Objekt holt sich die Applikation nun die benötigten Information.&lt;br /&gt;
&lt;br /&gt;
Das Framework lädt dynamisch die vom Plugin angegebenen Menüs und fügt sie an der richtigen Stelle ein. Events werden natürlich auch registriert und an das Plugin gesendet.&lt;br /&gt;
&lt;br /&gt;
Der Klassenstruktur wird nun noch ein Interface auf den Data-Manager hinzugefügt und schon sollten sich Daten laden lassen.&lt;br /&gt;
&lt;br /&gt;
Im Laufe der nächsten Woche könnte ich bereits einen Snapshot online stellen.. für den Fall jemand möchte sich einbringen ;)&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Ope|Ope]] 13:27, 23. Jul 2005 (CEST) Wie wäre es mit einem cvs? ggf. sourceforge?&lt;br /&gt;
&lt;br /&gt;
hab ich mir auch schon überlegt... das dürfte aber erst halbwegs sinnvoll sein wenn am core nicht mehr allzuviel gedreht wird... wenn nur mehr plugins rangebastelt werden müssen wird das schon interessant...&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 19:03, 24. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Betriebsysteme =&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* Linux&lt;br /&gt;
&lt;br /&gt;
Weitere sollten sich einfach durch Neukompilieren hinzugesellen können.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Hardware =&lt;br /&gt;
Hier kommen sie dann... die im Forum dikutierten CPLD/FPGA-Captureengines sowie noch Ultra-Lowcost AVR,dsPic,Parallel-Port oder wasauchimmer Gerätschaften.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer Project|Software]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8466</id>
		<title>Logic Analyzer-Projekt: Ideen zur Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8466"/>
		<updated>2005-07-20T12:16:43Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hier mal das Lastenheft für den Logic Analyser (LA). Bitte je nach Anforderung einen Strich mittels ALT GR + &amp;lt;&amp;gt; Taste links neben dem Ypsilon.&lt;br /&gt;
Die Aufteilung könnt ihr ja ändern/erweitern falls was fehlt. Ich gebe mal meine Maximalanforderungen ein.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kanalanzahl&#039;&#039;&#039;&lt;br /&gt;
* .8 Kanäle : ||&lt;br /&gt;
* 16 Kanäle: ||||| ||||&lt;br /&gt;
* 20 Kanäle: |&lt;br /&gt;
* 24 Kanäle: |&lt;br /&gt;
* 32 Kanäle: ||||&lt;br /&gt;
* Modulair (erweiterbar X mal 8/16 Kanäle) ||&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Samplingfrequenz&#039;&#039;&#039;&lt;br /&gt;
* ....8   MHz : |&lt;br /&gt;
* ..16  MHz : |&lt;br /&gt;
* ..32  MHz : ||&lt;br /&gt;
* &amp;gt;32 MHz : ||||| ||||| |||&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Speichertiefe&#039;&#039;&#039;&lt;br /&gt;
*....32 kByte: |&lt;br /&gt;
*....64 kByte: &lt;br /&gt;
*..256 kByte: |&lt;br /&gt;
*..512 kByte: &lt;br /&gt;
*1024 kByte: |&lt;br /&gt;
&lt;br /&gt;
Anmerkung: Wäre es nicht sinnvoller, die Speichertiefe in &amp;quot;Samples&amp;quot; anzugeben. So macht das nicht viel Sinn, da die Anzahl der Samples wenn man immer nur 8 Bits abspeichert ne andere ist als wie wenn man 32 Bits pro Sample speichert.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;integrierter Pattern Generator&#039;&#039;&#039;&lt;br /&gt;
* .8 Kanäle : |&lt;br /&gt;
* 16 Kanäle: &lt;br /&gt;
&lt;br /&gt;
Anm.: könnte bis zu einer gewissen Geschwindigkeit vom AVR erledigt werden... =&amp;gt; uU. Mega16 drauf&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 14:16, 20. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schnittstelle zum Computer&#039;&#039;&#039;&lt;br /&gt;
* Seriell syncron...................: |&lt;br /&gt;
* Seriell asyncron (RS232).: ||||&lt;br /&gt;
* USB......................................: ||||| |||||||&lt;br /&gt;
* Parallelport.........................: ||&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Am PC läuft/wird laufen&#039;&#039;&#039;&lt;br /&gt;
* Windows .: ||||| ||||&lt;br /&gt;
* Linux   ........: ||||| |||||&lt;br /&gt;
* MacOS X .: |&lt;br /&gt;
* Solaris ..: |&lt;br /&gt;
* Anderes ..: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Status =&lt;br /&gt;
&lt;br /&gt;
(--[[Benutzer:84.182.216.49|84.182.216.49]] 12:57, 20. Jul 2005 (CEST))&lt;br /&gt;
&lt;br /&gt;
Da der Logic Analyzer (LA) Thread schnell wächst und entsprechend schwer zu verfolgen ist, ständig sich irgend etwas ändert, kommt hier eine Zusammenfassung der Diskussion. Ich versuche sie halbwegs aktuell zu halten, öfteres Vorbeischauen lohnt sich also.&lt;br /&gt;
&lt;br /&gt;
Eine fertige Lösung existiert jeodch noch nicht und einer alleine macht sich tot, zumal derjenige ja auch ein Real-Life hat und kein professioneller Designer für LA ist - daher ist das Projekt auf aktive Hilfe angewiesen sonst wird es sterben!&lt;br /&gt;
&lt;br /&gt;
= Das Ziel =&lt;br /&gt;
&lt;br /&gt;
Nun ja, preiswert und universell und für den Großteil der Probleme brauchbar soll er sein. Zudem sollen die Bauteile z.B. auch in Schweiz/Österreich gut verfügbar sein. Dass er sich mit einem LA der großen Hersteller messen lassen kann, ist aufgrund des Proof-on-Concepts eher unwahrscheinlich. Unter den eben genanntenn Prämissen sollen die verfügbaren Mittel optimal genutzt werden.&lt;br /&gt;
Je nach Ergebnis, Lust und Laune wird es irgendwann evtl. eine Fortsetzung geben - aber das ist Zukunftsmusik.&lt;br /&gt;
&lt;br /&gt;
= Grundlegende Überlegungen =&lt;br /&gt;
&lt;br /&gt;
Im Internet kann man verschiedene, einfache Konzepte für einen LA finden, z.B. mittels Parallelport. Forumgerecht, reicht für einen einfachen LA bereits ein Mikrokontroller aus, der seine Ports polled um so die Logik Pegel mitzuschneiden. Allerdings ist diese Lösung begrenzt, wenn es um höhere Taktraten geht.&lt;br /&gt;
&lt;br /&gt;
Eine erschwingliche Alternative stellt ein CPLD (Complex programmable logic devices) dar. Die CPLD z.B. von Xilinx können mit über 100MHz arbeiten und sind somit für diese Aufgabe prädestiniert. Leider ist die Anzahl der Macro Zellen zu gering, um eine hohe Speichertiefe zu erreichen. Daher werden die Daten vom CPLD in einem SRAM geschrieben. Damit ist der CPLD für die Triggerbedingungen des LA, dem Speicherinterface und natürlich dem eigentlichen sampeln der Eingänge verantwortlich. Der Mikrokontroller liest die Daten des SRAM über den CPLD aus und schickt sie an den Computer, übernimmt also die Kommunikation. Die Software stellt die gesampelten Daten sinnvoll und ansprechend dar.&lt;br /&gt;
&lt;br /&gt;
Um die Störungen gering zu halten, wird als Versorgungspannung 3.3V Vorzug gegeben - ironischer Weise sind die Xilinx CPLD XC95000XL mit dieser Spannung preiswerter als in der 5V Version.&lt;br /&gt;
&lt;br /&gt;
= Die Komponenten =&lt;br /&gt;
&lt;br /&gt;
== Der CPLD und das Speicherinterface ==&lt;br /&gt;
&lt;br /&gt;
Nach einigen Hin- und Her hat sich der XC95144XL10TQG14 als beste Option herausgestellt. Auch FPGAs waren kurz im Gespräch, aufgrund der sich im Gespräch heraustellenden Komplexität. Allerdings war die Komplexität des FPGA und der Preis auch gleichzeitig das KO-Kriterium dafür.&lt;br /&gt;
&lt;br /&gt;
Kurzinfo XC95144XL10TQ144 [http://www.mhl.tuc.gr/data_books/Xilinx/Xc9500/95144XL.pdf]:&lt;br /&gt;
&lt;br /&gt;
* 144Macro, 3.3V, 117 I/O, 10ns, TQFP144 für ca. 10&amp;amp;#8364; bei [http://www.darisus.de/Elektonikshop/Framesets/Shopset1.php]&lt;br /&gt;
&lt;br /&gt;
Dieser bietet genug I/O um:&lt;br /&gt;
&lt;br /&gt;
* 2x SRAM 256k x 16 (18 AD, 16 DB, 3 Ctrl)&lt;br /&gt;
* 2x 8-bit-Channel&lt;br /&gt;
* uC parallel Port (8 DB, Ctrl (CS_ und R/W_) und 2 AB)&lt;br /&gt;
* 2x Clock (CPLD und uC externer Takt)&lt;br /&gt;
* JTAG&lt;br /&gt;
&lt;br /&gt;
anschließen zu können.&lt;br /&gt;
&lt;br /&gt;
Der Grund für die 2 Speicherbänke liegt in der Zugriffszeit des SRAM. Um hier nicht unnötig den CPLD auszubremsen, werden beide im Interleave angesprochen, d.h. einer mit gerader, der andere mit ungerader Adresse. Da die Adressen und Daten aber eine gewisse Zeit lang stabil anliegen müssen, besitzt jeder SRAM seinen eigenen Daten- und Adressbus, d.h. der CPLD übernimmt die Funktionen des Latches. Der Nachteil der Lösung ist der doppelte Verbrauch an I/O, weshalb ein XC9572TQ100 nicht mehr ausreicht (genaugenommen war man deswegen schon bei 3 CPLD bzw. FPGA für einen 16Bit LA angekommen und widersprach somit den Intentionen). Bei synchronen RAMs würde das Latch entfallen, diese sind allerdings teurer als die bisher angedachten asynchronen.&lt;br /&gt;
&lt;br /&gt;
Konkret besitzt der CPLD also zwei 18bit-Adresszähler (odd/even) und die Adress- und Datenleitungen der beiden SRAM liegen am CPLD. Ebenso liegen am CPLD dann noch die OE, WR, CS Steuerleitung des SRAM.&lt;br /&gt;
&lt;br /&gt;
Der Grund für die Verwendung von 16bit breiten SRAM liegt im größeren Aufwand und der steigenden Fehlerwahrscheinlichkeit bei Verwendung von 2x 8Bit breiten SRAM - im Interleave sogar von 4 Stck.&lt;br /&gt;
&lt;br /&gt;
Bei Verwendung des 2x 256k x 16 Bit SRAM eröffnet sich weiterhin die Möglichkeit, den Transitional Timing Analysis Mode zu realisieren, d.h. nur Bit-Änderungen werden mit einem Timestamp gespeichert - also ideal für langsame Busse. Hier kann man eine 18bit Time-Stamp-Adresse (256k) mit einem 14bit Pattern speichern. Ein Interleave ist nicht mehr möglich und es bedeutet ggf. einen anderen VHDL Code für den CPLD (je nach Anzahl freier Macrozellen).&lt;br /&gt;
&lt;br /&gt;
Der konkrete Typ des SRAM steht noch nicht fest, da er gut verfügbar und preiswert sein soll. Aber gute Ideen. Bei asynchronen SRAM müssen wie eingangs erwähnt die Adressen und Daten in einem Latch zwischen gespeichert werden. Bei einem synchronen SRAM werden die Adressen bei mit Flanke gespeichert, ebenso die Daten. Die Setup und Hold Zeiten gehen daher gegen Null... Außerdem muss man WR\ nicht toggeln, was wertvolle Zeit kostet, sondern es reicht, den Sampletakt anzulegen.&lt;br /&gt;
&lt;br /&gt;
Asynchrone SRAM:&lt;br /&gt;
&lt;br /&gt;
* CY22393,CY22394,CY22395 [http://www.cypress.com/portal/server.pt/gateway/PTARGS_0_2_1524_209_259_43/http%3B/sjapp20.mis.cypress.com%3B7001/publishedcontent/publish/design_resources/datasheets/contents/cy22393_4_5_5.pdf] mit Layout Hinweisen [http://www.cypress.com/portal/server.pt?space=CommunityPage&amp;amp;control=SetCommunity&amp;amp;CommunityID=209&amp;amp;PageID=418&amp;amp;r_folder=Application%20Notes&amp;amp;r_title=Layout%20Recommendations%20for%20the%20CY2239x%20Devices]&lt;br /&gt;
* IC61LV25616 (asynchroner SRAM 256KB x 16) [http://www.icsi.com.tw/english/products/products-frame.asp?Title=Datasheet-Async%20SRAM&amp;amp;URL=http%3A//web.icsi.com.tw/English/Datasheets/ASYNCHRONOUSSTATICRAM.html] bzw. [http://web.icsi.com.tw/domino/packinfo.nsf/F384F466ECEF4C1F48256F320003B3E6/$FILE/ic61LV25616.pdf] bei [http://www.glyn.de]&lt;br /&gt;
* AS7C34098-12TCN (256K x 16, 12ns) [http://www.alsc.com/pdf/sram.pdf/fa/AS7C4098.pdf] und AS7C31026B-12TCN (64k x 16, 12ns) Asynchroner SRAM bei Farnell&lt;br /&gt;
&lt;br /&gt;
Synchrone SRAM:&lt;br /&gt;
&lt;br /&gt;
* CY7C1327G (256k*18) [http://www.cypress.com/portal/server.pt/gateway/PTARGS_0_2_1524_209_259_43/http%3B/sjapp20.mis.cypress.com%3B7001/publishedcontent/publish/design_resources/datasheets/contents/cy7c1327g_5.pdf]&lt;br /&gt;
* CY7C1327F (256k*18) [http://www.cypress.com/portal/server.pt/gateway/PTARGS_0_2_1524_209_259_43/http%3B/sjapp20.mis.cypress.com%3B7001/publishedcontent/publish/design_resources/datasheets/contents/cy7c1327f_5.pdf]&lt;br /&gt;
&lt;br /&gt;
Den CY7C1327B (TQFP100 256Kx18, 3.3V, 4ns ) gibt&#039;s zumindest bei R&amp;amp;S für 11,60&amp;amp;#8364;&lt;br /&gt;
&lt;br /&gt;
== Interface CPLD &amp;lt;-&amp;gt; uC ==&lt;br /&gt;
&lt;br /&gt;
Ist noch nicht so ganz ausgegoren. Zur Diskussion steht das Parallel Interface (s.o.) oder einfach SPI.&lt;br /&gt;
&lt;br /&gt;
Eine grundlegende Idee ist, dass der CPLD doppelt benutzt wird. Er enthält ja einen Addresszähler zum Schreiben des SRAM&#039;s. Dieser kann aber auch zum Lesen des SRAM&#039;s benutzt werden. Der SRAM wird immer sequentiell vom PLD geschrieben und gelesen. &lt;br /&gt;
&lt;br /&gt;
Der uC muß einen 8 Bit Port freimachen und diesen auf den Datenbus legen. Der CPLD taktet nun gesteuert vom uC die Addresse langsam hoch. Der uC liest daraufhin seinen 8 Bit Port ein. Das ist pro Byte mit 3 Takten erledigt. Vorteil ist dabei, dass man nun auch z.B. 512Kb statische SRAM&#039;s benutzen kann ohne dass der uC ein kompliziertes Memory Banking benutzen müsste.&lt;br /&gt;
&lt;br /&gt;
Bei der Variante mit SPI wird eben nur alles seriell ausgelesen, die prinzipiellen Vorteile bleiben bestehen.&lt;br /&gt;
&lt;br /&gt;
== Interface uC &amp;lt;-&amp;gt; Computer ==&lt;br /&gt;
&lt;br /&gt;
Steckt ebenfalls noch in der Diskussion, allerdings geht der Trend aus technischen Gründen eindeutig zu USB (specs. bei www.usb.org [http://www.usb.org]), was die Abstimmungen oben unterstreichen. Zur Auswahl stehen Chips von SILABS und FTDI.&lt;br /&gt;
&lt;br /&gt;
* CP2102 [http://www.silabs.com/public/documents/tpub_doc/dshort/Microcontrollers/Interface/en/CP2102_short.pdf] &lt;br /&gt;
* FT232BM [http://www.ftdichip.com/Documents/DataSheets/ds232b17.pdf] &lt;br /&gt;
&lt;br /&gt;
uC mit integrierten USB standen auch in der Disskusion. Aufgrund vieler Unwägbarkeiten, wie Beschaffung, Preis, HID Treiber etc. sind diese Ideen wieder verworfen worden.&lt;br /&gt;
&lt;br /&gt;
Apropos:&lt;br /&gt;
Falls USB als Schnittstelle verwendet wird, ist es hilfreich, einen schnellen Transfer zuzulassen. Ggf. keinen normalen FTDI-Chip einsetzen. Phillips ist auch günstiger bei Reichelt (PDI USB D12D).&lt;br /&gt;
&lt;br /&gt;
* Und wer schreibt den Treiber? Fuer 2 Euro Einsparung pro Stueck lohnt sich das garantiert nicht. --[[Benutzer:Andreas|Andreas]] 11:37, 13. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
* Alternativ CP2102 =&amp;gt; bei farnell für unter 5&amp;amp;#8364;... der braucht anscheinend keine externen komponenten und im gegensatz zum ft232 bekomm ich den problemlos bei farnell ;) infos gibt&#039;s [http://www.silabs.com/tgwWebApp/public/web_content/products/Microcontrollers/Interface/en/interface.htm   hier] --[[Benutzer:Hans|Hans]] 17:36, 13. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Interface LA &amp;lt;-&amp;gt; DUT (Device under Test) ==&lt;br /&gt;
&lt;br /&gt;
Prinzipiell gibt es zwei Wege, wie der LA an seine Informationen kommt. Der rein digitale Weg geht z.B. über 74AHC245 oder 74ACT14 womit allerdings die Logikpegel feststehen. Ein anderer Weg geht über Analog-Komparatoren, bei denen die Logikpegel variabel sind. &lt;br /&gt;
&lt;br /&gt;
Für den Komparator steht momentan der MAX964 zur Debatte, dessen Beschaffungsquellen jedoch noch offen sind.&lt;br /&gt;
* MAX964 [http://pdfserv.maxim-ic.com/en/ds/MAX961-MAX999.pdf]&lt;br /&gt;
&lt;br /&gt;
mit &lt;br /&gt;
&lt;br /&gt;
* 4.5 Typ Prop. Delay (ns)&lt;br /&gt;
* Supply 2.7 to 5.5 Voltage (V)&lt;br /&gt;
* 8000 Max Supply Current per Comp. (µA) - also 8mA/C = 32mA/IC worst-case&lt;br /&gt;
* VEE-0.10 to VCC+0.10 Input Voltage Range (V)&lt;br /&gt;
&lt;br /&gt;
Ebenso ist die konkrete Schaltung noch nicht diskutiert wurden, Einigkeit besteht jedoch in der notwendigen Schutzschaltung, z.B. mit einem Dioden-Array. Auch darf die Eingangsspannung den Input Voltage Range nicht überschreiten.&lt;br /&gt;
&lt;br /&gt;
Die Schwelle für den Komparator wird durch einen DAC vorgegeben, der vom uC über TWI gesteuert wird. Als DAC steht der&lt;br /&gt;
&lt;br /&gt;
* AD5337 [http://www.analog.com/UploadedFiles/Data_Sheets/247817225AD5337_8_9_a.pdf]&lt;br /&gt;
&lt;br /&gt;
zur Disskusion, ein Duo 8-BIT DAC mit 2WIRE. Dieses wird wesentlich einfacher als PWM per uC mit anschließenden Tiefpaß mit OPVs, welches die Fehlerrate steigen lassen kann.&lt;br /&gt;
&lt;br /&gt;
== Clock Rate Generierung ==&lt;br /&gt;
&lt;br /&gt;
Aufgrund seiner Bandbreite bietet sich die Generierung des Systemtaktes durch den CPLD an. Dieser benutzt einen 1/N Teiler um den Sample Takt zu generieren.&lt;br /&gt;
&lt;br /&gt;
Prinzipiell kann er auch gleichzeitig den Takt für den uC erzeugen - dieser wird also extern getaktet und man erhält dadurch Synchronität zwischen CPLD und uC und spart den Quarz am uC. Allerdings bieted sich auch ein eigener Quarz für den uC an. Man sieht - hier wird noch diskutiert.&lt;br /&gt;
&lt;br /&gt;
Zur Generierung des Mastertaktes bieten sich zwei Weg an:&lt;br /&gt;
* Quarz, bei 50-64 MHz dürfte da wegen Verfügbarkeit/Preis wohl Schluss sein, auch sind Obertonquarze nicht ganz unkritisch. Auch kann man dann nur noch durch umlöten und wecheln den Mastertakt ändern, falls es Probleme gibt.&lt;br /&gt;
* VCO/PLL ggf. per uC programmierbar, damit kann man dann echt die Grenzen des Designs austesten. Die Chips dazu gibt&#039;s bei Maxim/AD und den anderen üblichen Verdächtigen, stehen also noch nicht fest. Konkret wurden CY22393, CY22394, CY22395 [http://www.cypress.com/portal/server.pt/gateway/PTARGS_0_2_1524_209_259_43/http%3B/sjapp20.mis.cypress.com%3B7001/publishedcontent/publish/design_resources/datasheets/contents/cy22393_4_5_5.pdf] genannt, aber auch ICD2053B [http://www.commtech-fastcom.com/data_sheets/icd2053b.pdf]. Problematisch sind bisher jedoch die Bezugsquellen, Verfügbarkeit und Preis.&lt;br /&gt;
&lt;br /&gt;
Die Grenzen liegen zum einem in den verwendeten Bauelementen (&amp;gt;100MHz), aber vielmehr wird der begrenzende Faktor das Layout und die Leiterplatte sein. Ein 4-Layer-PCB ist aus technischer Sicht sicher das optimale, nur schaut der Geldbeutel danach sehr leer aus.&lt;br /&gt;
&lt;br /&gt;
== Stromversorgung ==&lt;br /&gt;
&lt;br /&gt;
Tja, auch ein LA braucht Strom. Bei Verwendung eines USB kann dieses elegant gelöst werden, da dieser (nach Anforderungen an das OS) bis zu 500mA liefern kann. Eine kurze worst-case &amp;quot;Stromrechnung&amp;quot; zeigt:&lt;br /&gt;
&lt;br /&gt;
* XC95144XL pauschal 150mA lt. DB&lt;br /&gt;
* Max964 8mA/Comparator x 16 = 128 mA&lt;br /&gt;
&lt;br /&gt;
fehlen konkret Speicher, uC, und USB(?) Chip.&lt;br /&gt;
&lt;br /&gt;
Die FTDI-Chips haben für Geräte, die über 100mA ziehen (darin wird wohl der LA u.U. fallen ), aber noch bus-powered sein sollen, einen Schaltausgang, an den z.B. ein p-Kanal-FET angeschlossen werden kann, der den stromhungrigen Teil der Schaltung erst nach der  Registrierung beim Computer einschaltet. Dazu hat er einen &amp;quot;sleep&amp;quot;-Ausgang, mit dem man den angeschlossenen AVR schlafen legen kann. In den FTDI-Docs bzw. Application Notes finden sich dazu genüg Beispiele mit kompletten Schaltbildern. &lt;br /&gt;
&lt;br /&gt;
Einsetzbar wäre auch ein LM2575S-3.3 [http://www.national.com/ds/LM/LM1575.pdf] für 2,47&amp;amp;#8364; (Farnell), der sieht gut und einfach in der Handhabung aus im Falle einer externen Stromversorgung.&lt;br /&gt;
&lt;br /&gt;
= Programmierung =&lt;br /&gt;
&lt;br /&gt;
== AVR ==&lt;br /&gt;
Recht früh hat sich in dem Forum heraus kristallisiert, dass der AVR per Bootloader vom Computer her programmiert werden sollte. Hierdurch sind Firmware Updates sehr einfach möglich und verschiedene Bootloader sind verfügbar. Die Bootloader Option setzt damit einen AVR der ATMega Serie vorraus. Bisher spricht nichts gegen einen ATMega8L.&lt;br /&gt;
&lt;br /&gt;
== CPLD ==&lt;br /&gt;
&lt;br /&gt;
Die Programmierung des CPLD ist dagegen noch nicht konkret. Wünschenswert wäre es, ebenfalls seine Firmaware über den Computer zu updaten.&lt;br /&gt;
&lt;br /&gt;
Der Standardweg der Programmierung der Xilinx CPLD sieht einen JTAG Stiftsockel vor. Dann kann die Programmierung z.B. über ein Xilinx JTAG/Parallel Download Cable [http://www.xilinx.com/support/programr/jtag_cable.pdf] aus dem ISE/impact geschehen.&lt;br /&gt;
&lt;br /&gt;
Einen möglichen Weg stellt die XApp058 [http://direct.xilinx.com/bvdocs/appnotes/xapp058.pdf] dar, darin wird beschrieben, wie der CPLD mittels uC beschrieben wird. &lt;br /&gt;
&lt;br /&gt;
Dieses Thema wurde bereits im Forum &amp;quot;AVR Ethernet Platine&amp;quot; aufgegriffen. In diesem Thread [http://www.mikrocontroller.net/forum/read-1-138024.html#157356] kam man allerdings zu der Überzeugung, dass die XSVF Datei mit 45kByte für uC Verhältnisse extrem groß ist und somit nur in einen ATMega128 (und größer) [http://www.atmel.com/dyn/products/devices.asp?family_id=607#760] reinpassen würde da das SVF JTAG Protokoll riesige Datenbuffer im SRAM benötigt. Dies ist protokollbedingt - es wurden 10kByte für ein FPGA genannt. Dabei sind die Xilinx CPLD Speicherplatz effezienter als welche von Altera. Leider sind die Xilinx CPLD eben nur über JTAG programmierbar. &lt;br /&gt;
&lt;br /&gt;
Allerdings wurde in diesem Zusammenhang auch auf den XSVF Executor [http://www.ethernut.de/en/xsvfexec/index.html] verwiesen.&lt;br /&gt;
Auch ist die Frage noch offen, inwiefern die XSVF Datei über die RS232/USB geladen werden kann, ebenso das Timing der JTAG Schnittstelle.&lt;br /&gt;
&lt;br /&gt;
Aufgrund der vielen offenen Fragen ist die schnellste und sicherste Lösung die Anbindung über den JTAG Stecker um den CPLD per JTAG/Parallel Download Cable zu programmieren. Zusätzlich wird eine JTAG Verbindung zum AVR Port eingerichtet, falls das Problem irgendwann &#039;mal später gelöst wird.&lt;br /&gt;
&lt;br /&gt;
= PCB =&lt;br /&gt;
&lt;br /&gt;
Dieses Thema kommt noch intensiv.&lt;br /&gt;
&lt;br /&gt;
Dabei sind u.a. die folgenden Appl. Notes nützlich:&lt;br /&gt;
&lt;br /&gt;
== AVR ==&lt;br /&gt;
&lt;br /&gt;
* AVR040: EMC Design Considerations [http://www.atmel.com/dyn/resources/prod_documents/doc1619.pdf]&lt;br /&gt;
* AVR042: AVR Hardware Design Considerations [http://www.atmel.com/dyn/resources/prod_documents/doc2521.pdf]&lt;br /&gt;
&lt;br /&gt;
== CPLD ==&lt;br /&gt;
&lt;br /&gt;
* Device Package User Guide [http://www.xilinx.com/bvdocs/userguides/ug112.pdf]&lt;br /&gt;
* XAPP112 - Designing With XC9500XL CPLDs [http://www.xilinx.com/bvdocs/appnotes/xapp112.pdf]&lt;br /&gt;
* XAPP114 - Understanding XC9500XL CPLD Power [http://www.xilinx.com/bvdocs/appnotes/xapp114.pdf]&lt;br /&gt;
* XAPP115 - Planning for High Speed XC9500XL Designs [http://www.xilinx.com/bvdocs/appnotes/xapp115.pdf]&lt;br /&gt;
* XAPP784 - Bulletproof CPLD Design Practices [http://www.xilinx.com/bvdocs/appnotes/xapp784.pdf]&lt;br /&gt;
&lt;br /&gt;
= Resumee =&lt;br /&gt;
&lt;br /&gt;
Keep-It-Simple ist ein Grundsatz hier. Je komplexer, desto schwerer zu beherrschen. Sicher hat jeder von Komplexität eine andere Vorstellung, aber wir arbeiten daran und hoffen ein nachbaufähiges, stabiles Gerät zu bekommen. Dennoch kommt man bei diesem Projekt um SMD löten mit 0.5mm Beinchen nicht umhin!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Und was soll das kosten? =&lt;br /&gt;
&lt;br /&gt;
Schwierig, da noch nicht alles feststeht - als Ziel steht aber im Forum mehr oder weniger ungeschrieben die 100&amp;amp;#8364; Marke einschließlich PCB.&lt;br /&gt;
&lt;br /&gt;
== Datenblätter, Bezugsquellen und Preise (allg.) ==&lt;br /&gt;
&lt;br /&gt;
... oder was bisher so zusammengetragen wurde.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;IC&#039;&#039;&#039;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;Gehäuse&#039;&#039;&#039;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;Kommentar&#039;&#039;&#039;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;Datenblatt/Appnotes&#039;&#039;&#039;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;Bezugsquelle&#039;&#039;&#039;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;Preis&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
| &#039;&#039;CPLD&#039;&#039; / XC95144XL10TQ144&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | TQFP144&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.mhl.tuc.gr/data_books/Xilinx/Xc9500/95144XL.pdf], [http://www.xilinx.com/xlnx/xweb/xil_publications_index.jsp?category=Publications/CPLD+Device+Families&amp;amp;iLanguageID=1]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Darius.De [http://www.darisus.de/Elektonikshop/Framesets/Shopset1.php]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | ca. 10?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;USB&#039;&#039; / CP1202&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.silabs.com/public/documents/tpub_doc/dshort/Microcontrollers/Interface/en/CP2102_short.pdf] &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;USB&#039;&#039; / FT232BM&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | LQFP-32&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.ftdichip.com/Documents/DataSheets/ds232b17.pdf], [http://www.ftdichip.com/Documents/AppNotes.htm]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;USB&#039;&#039; / FT245BM&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | LQFP-32&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.ftdichip.com/Documents/DataSheets/ds245b16.pdf], [http://www.ftdichip.com/Documents/AppNotes.htm]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;Comp&#039;&#039; / Max964 &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://pdfserv.maxim-ic.com/en/ds/MAX961-MAX999.pdf]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;Comp&#039;&#039; / LT1715 &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Dual 4ns, 5V/3V, Independent I/O Supplies&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.linear.com/pc/downloadDocument.do?navId=H0,C1,C1154,C1004,C1012,P1908,D2821]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;Comp&#039;&#039; / LT1720/LT1721 &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Dual/Quad 4.5ns, 3V, Rail-to-RailOut, Quad schlecht für&#039;s Layout&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.linear.com/pc/downloadDocument.do?navId=H0,C1,C1154,C1004,C1012,P1707,D3080]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;ECL-Comp&#039;&#039; / Max9600 &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Schwierig zu realisieren: 2 &amp;quot;Wandlungsstufen&amp;quot; notwendig. 1x Inputpegel -&amp;gt; ECL, 1x ECL -&amp;gt; Logikpegel CPLD&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://pdfserv.maxim-ic.com/en/ds/MAX9600-MAX9602.pdf]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;DAC&#039;&#039; / TLV5626&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | SOIC-8&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | 8-Bit Dual, 3.3V, int. Uref 1.024V&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://focus.ti.com/lit/ds/symlink/tlv5626.pdf]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Farnell.De [http://www.farnell.de]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | 5.29?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;DAC&#039;&#039; / TLV5637&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | SOIC-8&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | 10-Bit Dual, 3.3V, int. Uref 1.024V&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://focus.ti.com/lit/ds/symlink/tlv5637.pdf]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Farnell.De [http://www.farnell.de]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | 6.35?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;DAC&#039;&#039; / TLV5638&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | SOIC-8&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | 12-Bit Dual, 3.3V, int. Uref 1.024V&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://focus.ti.com/lit/ds/symlink/tlv5638.pdf]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Farnell.De [http://www.farnell.de]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | 7.44?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;DAC&#039;&#039; / LTC1446L&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | SO-8&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Dual 12-Bit, 3.3V, int. Uref=2.5V&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.linear.com/pc/downloadDocument.do?navId=H0,C1,C1155,C1005,C1156,P1507,D1746]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&amp;amp;S [http://www.rsonline.de]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | 12.35?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;Clk&#039;&#039; / CY22393,CY22394,CY22395&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.cypress.com/portal/server.pt/gateway/PTARGS_0_2_1524_209_259_43/http%3B/sjapp20.mis.cypress.com%3B7001/publishedcontent/publish/design_resources/datasheets/contents/cy22393_4_5_5.pdf] ,[http://www.cypress.com/portal/server.pt?space=CommunityPage&amp;amp;control=SetCommunity&amp;amp;CommunityID=209&amp;amp;PageID=418&amp;amp;r_folder=Application%20Notes&amp;amp;r_title=Layout%20Recommendations%20for%20the%20CY2239x%20Devices]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;Clk&#039;&#039; / ICD2053B &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.commtech-fastcom.com/data_sheets/icd2053b.pdf]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;SRAM&#039;&#039; / IC61LV25616&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | asynchroner SRAM 256KB x 16&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.icsi.com.tw/english/products/products-frame.asp?Title=Datasheet-Async%20SRAM&amp;amp;URL=http%3A//web.icsi.com.tw/English/Datasheets/ASYNCHRONOUSSTATICRAM.html] &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Glyn.De [http://www.glyn.de] ???&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | ???&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;SRAM&#039;&#039; / AS7C34098-12TCN &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | TSOP, SOJ&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | asynchroner SRAM 256K x 16, 12ns&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.alsc.com/pdf/sram.pdf/fa/AS7C4098.pdf]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Farnell.De [http://www.farnell.de]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | 13,17?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;SRAM&#039;&#039; / CY7C1327B&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | TQFP100&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | synchr SRAM 256k x 18, 3.3V, 4ns&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | R&amp;amp;S (DE) [http://www.rsonlin.de]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | 11,60?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;SRAM&#039;&#039; / CY7C1327G&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | TQFP100&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | synchr SRAM 256k x 18&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.cypress.com/portal/server.pt/gateway/PTARGS_0_2_1524_209_259_43/http%3B/sjapp20.mis.cypress.com%3B7001/publishedcontent/publish/design_resources/datasheets/contents/cy7c1327g_5.pdf]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;SRAM&#039;&#039; / CY7C1327F&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | TQFP100&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | synchr SRAM 256k x 18&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | [http://www.cypress.com/portal/server.pt/gateway/PTARGS_0_2_1524_209_259_43/http%3B/sjapp20.mis.cypress.com%3B7001/publishedcontent/publish/design_resources/datasheets/contents/cy7c1327f_5.pdf]&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;IC&#039;&#039; / Dummy&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | -?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Literatur =&lt;br /&gt;
&lt;br /&gt;
* [http://web.mit.edu/6.111/www/s2005/HANDOUTS/LA.pdf] Agilent XYZs of Logic Analyzers&lt;br /&gt;
* [http://cp.literature.agilent.com/litweb/pdf/5988-9125EN.pdf] Agilent Logic Analyzer Probing Techniques for High-Speed Digital Systems &lt;br /&gt;
* [http://www.home.agilent.com/USeng/nav/-536898184.0/pc.html] Agilent Logic Analyzer Probing Solutions&lt;br /&gt;
* [http://www.designcon.com/2003/marketing/HP3-5.pdf] Logic Analyzer Probing Techniques for High-Speed Digital Systems (DesignCon 2003)&lt;br /&gt;
* [http://www.xilinx.com/bvdocs/appnotes/xapp368.pdf] Handheld Pocket Logic Analyzer (XApp368)&lt;br /&gt;
* [http://www.xilinx.com/bvdocs/appnotes/xapp369.pdf] Handheld 1553 Bus Data Analyzer (XApp369)&lt;br /&gt;
* [http://www.amateurfunkbasteln.de/pcla/pcla.html] PC-basierter 32-Kanal-Logik-Analysator&lt;br /&gt;
* [http://www.bitscope.com] bitscope &lt;br /&gt;
* [http://alternatezone.com/electronics/pcla.htm] PC LA&lt;br /&gt;
* [http://eebit.com/] FPGA-based Logic Analyzer&lt;br /&gt;
* [http://www.nci-usa.com/default.htm] Kommerziell: GoLogic, mit guten Texten und Videos&lt;br /&gt;
* [http://www.ethernut.de/en/xsvfexec/index.html] XSVF Executor&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer Project|Hardware]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8515</id>
		<title>Logic Analyzer-Projekt: Ideen zur Software</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8515"/>
		<updated>2005-07-20T05:51:19Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Wishlist */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nachdem jetzt offensichtlich doch einige Blut geleckt haben und der [[Logic Analyzer]] nun mit ziemlicher Sicherheit zustande kommt hier schonmal vorab die Software-Seite.&lt;br /&gt;
&lt;br /&gt;
Hier soll bis es die ersten Analyzer gibt eine &#039;&#039;Feature-List&#039;&#039; entstehen.&lt;br /&gt;
&lt;br /&gt;
= Wishlist =&lt;br /&gt;
&lt;br /&gt;
Bitte hier alle gewünschten Funktionen reintun... alles fällt mir auch nicht auf Anhieb ein ;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Was ist mit JAVA? ist vielleicht nicht die schnellste lösung, doch schneller als JAVA kann man ja ohnehin nicht guggen :). Damit ist das Programm auch ohne Probleme auf Sun,Sparc &amp;amp; Co. lauffähig und man könnte z.B. für USB-Anbindung jUSB verwenden (ich glaube aber nur auf x86).&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Ich möchte mal auf [http://www.wxwidgets.org/platform.htm das hier] verweisen...&lt;br /&gt;
Derzeit ist nur 1 String schuld,dass es nicht sofort unter allen Plattformen laufen wird.. aber die Kleinigkeit hab ich auch nur zu Testzwecken drinnen ;)&lt;br /&gt;
&lt;br /&gt;
Der Einwand mit Java ist zwar nicht grundlos.. aber wie ich im Forum schon mal gesagt hab... ich mags nicht *g*&lt;br /&gt;
&lt;br /&gt;
Und nachdem es den gcc für alles mögliche gibt läuft die Soft auch auf den meisten Plattformen... eigentlich überall wo die GTK+ oder M$ läuft ;)...&lt;br /&gt;
&lt;br /&gt;
und für den Rest... x86 Emu drauf und warten bis [http://www.ReactOS.org ReactOS] kompatibel genug ist...(es dürfte eigentlich nur USB Unterstützung fehlen ;)&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 07:51, 20. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
== Framework, Libs, Widgetset... ==&lt;br /&gt;
* [http://www.wxwidgets.org/ wxWidgets]&lt;br /&gt;
* C++ (VC++ 6.0, gcc)&lt;br /&gt;
* [http://www.sqlite.org/ SQLite]&lt;br /&gt;
* [http://www.zlib.net/ zlib]&lt;br /&gt;
&lt;br /&gt;
== Daten &#039;&#039;Projektweise&#039;&#039; organisieren ==&lt;br /&gt;
Projekt Dateien sind eigentlich [http://www.sqlite.org SQLite] Datenbanken.&lt;br /&gt;
In 2 Tabellen werden Einstellungen und Daten gespeichert.&lt;br /&gt;
&lt;br /&gt;
Um die Dateien nicht unnötig aufzublähen wird der Daten-BLOB vor dem Speichern noch komprimiert (zlib ???).&lt;br /&gt;
&lt;br /&gt;
=== Daten ===&lt;br /&gt;
* Beschreibung&lt;br /&gt;
* Datenblob&lt;br /&gt;
 * 4 Byte Timestamp (DWORD ausreizen)&lt;br /&gt;
 * 2 Byte/8 Pins für HighZ-Detection (=&amp;gt; sicher nett für die Schnittstellenanalyze) und Daten&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration ===&lt;br /&gt;
* Datenstruktur Version&lt;br /&gt;
* Analyzer Typ&lt;br /&gt;
* Projekt Beschreibung&lt;br /&gt;
&lt;br /&gt;
=== Messungen ===&lt;br /&gt;
* Plugin Id&lt;br /&gt;
* Plugin Version&lt;br /&gt;
* Messungs-Typ&lt;br /&gt;
* Daten-Blob&lt;br /&gt;
&lt;br /&gt;
=== Projekt History ===&lt;br /&gt;
* Datum&lt;br /&gt;
* Kommentar&lt;br /&gt;
&lt;br /&gt;
== Plugins ==&lt;br /&gt;
Ich habe vor möglichst viel aum Basiscode auszulagern und nur das aller Nötigste zu integrieren.&lt;br /&gt;
So soll mehrere Plugin-Typen geben:&lt;br /&gt;
* Input : Stellen die Verbindung zwischen Software und Capture-Engine her (wie auch immer sie aussehen soll)&lt;br /&gt;
* Analyze : Analysieren die Daten. Dies kann jetzt von Jitter-Anaylse bis zum Protokoll-Analyzer alles sein&lt;br /&gt;
* Output : Unter Umständen der Datenbank Export nicht in dieser Art und Weise erwünscht bzw sinnvoll. Dann könnte man z.B über ein Output Plugin noch Daten-Dezimierung einführen oder was auch immer&lt;br /&gt;
* View : Ein richtiger Protokoll-Analyzer stellt die daten sicher anders da =&amp;gt; Plugin und Fertig&lt;br /&gt;
&lt;br /&gt;
Unter Windows ist eine Plugin-Architektur eigentlich ganz brauchbar machbar über DLLs.&lt;br /&gt;
Ähnliches gilt auch für Linux wie [http://www.linuxgazette.com/issue84/bradley.html hier] zu lesen ist.&lt;br /&gt;
&lt;br /&gt;
Die Plugin-Grundstruktur läuft mittlerweile mehr oder weniger problemlos.&lt;br /&gt;
Derzeit sieht die ganze Angelegenheit ungefähr so aus:&lt;br /&gt;
&lt;br /&gt;
Die Plugin-DLLs exportieren die Funktion &#039;&#039;&#039;GetPluginObject&#039;&#039;&#039;. Diese liefert einen Pointer auf ein von&lt;br /&gt;
&#039;&#039;&#039;CPlugInBase&#039;&#039;&#039; abgeleitetes Projekt.&lt;br /&gt;
&lt;br /&gt;
Von diesem Objekt holt sich die Applikation nun die benötigten Information.&lt;br /&gt;
&lt;br /&gt;
Das Framework lädt dynamisch die vom Plugin angegebenen Menüs und fügt sie an der richtigen Stelle ein. Events werden natürlich auch registriert und an das Plugin gesendet.&lt;br /&gt;
&lt;br /&gt;
Der Klassenstruktur wird nun noch ein Interface auf den Data-Manager hinzugefügt und schon sollten sich Daten laden lassen.&lt;br /&gt;
&lt;br /&gt;
Im Laufe der nächsten Woche könnte ich bereits einen Snapshot online stellen.. für den Fall jemand möchte sich einbringen ;)&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Betriebsysteme =&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* Linux&lt;br /&gt;
&lt;br /&gt;
Weitere sollten sich einfach durch Neukompilieren hinzugesellen können.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Hardware =&lt;br /&gt;
Hier kommen sie dann... die im Forum dikutierten CPLD/FPGA-Captureengines sowie noch Ultra-Lowcost AVR,dsPic,Parallel-Port oder wasauchimmer Gerätschaften.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer Project|Software]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8442</id>
		<title>Logic Analyzer-Projekt: Ideen zur Software</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8442"/>
		<updated>2005-07-20T05:51:03Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Wishlist */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nachdem jetzt offensichtlich doch einige Blut geleckt haben und der [[Logic Analyzer]] nun mit ziemlicher Sicherheit zustande kommt hier schonmal vorab die Software-Seite.&lt;br /&gt;
&lt;br /&gt;
Hier soll bis es die ersten Analyzer gibt eine &#039;&#039;Feature-List&#039;&#039; entstehen.&lt;br /&gt;
&lt;br /&gt;
= Wishlist =&lt;br /&gt;
&lt;br /&gt;
Bitte hier alle gewünschten Funktionen reintun... alles fällt mir auch nicht auf Anhieb ein ;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Was ist mit JAVA? ist vielleicht nicht die schnellste lösung, doch schneller als JAVA kann man ja ohnehin nicht guggen :). Damit ist das Programm auch ohne Probleme auf Sun,Sparc &amp;amp; Co. lauffähig und man könnte z.B. für USB-Anbindung jUSB verwenden (ich glaube aber nur auf x86).&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Ich möchte mal auf [http://www.wxwidgets.org/platform.htm das hier] verweisen...&lt;br /&gt;
Derzeit ist nur 1 String schuld,dass es nicht sofort unter allen Plattformen laufen wird.. aber die Kleinigkeit hab ich auch nur zu Testzwecken drinnen ;)&lt;br /&gt;
&lt;br /&gt;
Der Einwand mit Java ist zwar nicht grundlos.. aber wie ich im Forum schon mal gesagt hab... ich mags nicht *g*&lt;br /&gt;
&lt;br /&gt;
Und nachdem es den gcc für alles mögliche gibt läuft die Soft auch auf den meisten Plattformen... eigentlich überall wo die GTK+ oder M$ läuft ;)...&lt;br /&gt;
&lt;br /&gt;
und für den Rest... x86 Emu drauf und warten bis [http://www.ReactOS.org ReactOS] kompatibel genug ist...(es dürfte eigentlich nur USB Unterstützung fehlen ;)&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 07:51, 20. Jul 2005 (CEST)[[Benutzer:80.120.195.26|80.120.195.26]] 07:45, 20. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
== Framework, Libs, Widgetset... ==&lt;br /&gt;
* [http://www.wxwidgets.org/ wxWidgets]&lt;br /&gt;
* C++ (VC++ 6.0, gcc)&lt;br /&gt;
* [http://www.sqlite.org/ SQLite]&lt;br /&gt;
* [http://www.zlib.net/ zlib]&lt;br /&gt;
&lt;br /&gt;
== Daten &#039;&#039;Projektweise&#039;&#039; organisieren ==&lt;br /&gt;
Projekt Dateien sind eigentlich [http://www.sqlite.org SQLite] Datenbanken.&lt;br /&gt;
In 2 Tabellen werden Einstellungen und Daten gespeichert.&lt;br /&gt;
&lt;br /&gt;
Um die Dateien nicht unnötig aufzublähen wird der Daten-BLOB vor dem Speichern noch komprimiert (zlib ???).&lt;br /&gt;
&lt;br /&gt;
=== Daten ===&lt;br /&gt;
* Beschreibung&lt;br /&gt;
* Datenblob&lt;br /&gt;
 * 4 Byte Timestamp (DWORD ausreizen)&lt;br /&gt;
 * 2 Byte/8 Pins für HighZ-Detection (=&amp;gt; sicher nett für die Schnittstellenanalyze) und Daten&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration ===&lt;br /&gt;
* Datenstruktur Version&lt;br /&gt;
* Analyzer Typ&lt;br /&gt;
* Projekt Beschreibung&lt;br /&gt;
&lt;br /&gt;
=== Messungen ===&lt;br /&gt;
* Plugin Id&lt;br /&gt;
* Plugin Version&lt;br /&gt;
* Messungs-Typ&lt;br /&gt;
* Daten-Blob&lt;br /&gt;
&lt;br /&gt;
=== Projekt History ===&lt;br /&gt;
* Datum&lt;br /&gt;
* Kommentar&lt;br /&gt;
&lt;br /&gt;
== Plugins ==&lt;br /&gt;
Ich habe vor möglichst viel aum Basiscode auszulagern und nur das aller Nötigste zu integrieren.&lt;br /&gt;
So soll mehrere Plugin-Typen geben:&lt;br /&gt;
* Input : Stellen die Verbindung zwischen Software und Capture-Engine her (wie auch immer sie aussehen soll)&lt;br /&gt;
* Analyze : Analysieren die Daten. Dies kann jetzt von Jitter-Anaylse bis zum Protokoll-Analyzer alles sein&lt;br /&gt;
* Output : Unter Umständen der Datenbank Export nicht in dieser Art und Weise erwünscht bzw sinnvoll. Dann könnte man z.B über ein Output Plugin noch Daten-Dezimierung einführen oder was auch immer&lt;br /&gt;
* View : Ein richtiger Protokoll-Analyzer stellt die daten sicher anders da =&amp;gt; Plugin und Fertig&lt;br /&gt;
&lt;br /&gt;
Unter Windows ist eine Plugin-Architektur eigentlich ganz brauchbar machbar über DLLs.&lt;br /&gt;
Ähnliches gilt auch für Linux wie [http://www.linuxgazette.com/issue84/bradley.html hier] zu lesen ist.&lt;br /&gt;
&lt;br /&gt;
Die Plugin-Grundstruktur läuft mittlerweile mehr oder weniger problemlos.&lt;br /&gt;
Derzeit sieht die ganze Angelegenheit ungefähr so aus:&lt;br /&gt;
&lt;br /&gt;
Die Plugin-DLLs exportieren die Funktion &#039;&#039;&#039;GetPluginObject&#039;&#039;&#039;. Diese liefert einen Pointer auf ein von&lt;br /&gt;
&#039;&#039;&#039;CPlugInBase&#039;&#039;&#039; abgeleitetes Projekt.&lt;br /&gt;
&lt;br /&gt;
Von diesem Objekt holt sich die Applikation nun die benötigten Information.&lt;br /&gt;
&lt;br /&gt;
Das Framework lädt dynamisch die vom Plugin angegebenen Menüs und fügt sie an der richtigen Stelle ein. Events werden natürlich auch registriert und an das Plugin gesendet.&lt;br /&gt;
&lt;br /&gt;
Der Klassenstruktur wird nun noch ein Interface auf den Data-Manager hinzugefügt und schon sollten sich Daten laden lassen.&lt;br /&gt;
&lt;br /&gt;
Im Laufe der nächsten Woche könnte ich bereits einen Snapshot online stellen.. für den Fall jemand möchte sich einbringen ;)&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Betriebsysteme =&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* Linux&lt;br /&gt;
&lt;br /&gt;
Weitere sollten sich einfach durch Neukompilieren hinzugesellen können.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Hardware =&lt;br /&gt;
Hier kommen sie dann... die im Forum dikutierten CPLD/FPGA-Captureengines sowie noch Ultra-Lowcost AVR,dsPic,Parallel-Port oder wasauchimmer Gerätschaften.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer Project|Software]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8421</id>
		<title>Logic Analyzer-Projekt: Ideen zur Software</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8421"/>
		<updated>2005-07-18T10:49:04Z</updated>

		<summary type="html">&lt;p&gt;Hans: wishlist&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nachdem jetzt offensichtlich doch einige Blut geleckt haben und der [[Logic Analyzer]] nun mit ziemlicher Sicherheit zustande kommt hier schonmal vorab die Software-Seite.&lt;br /&gt;
&lt;br /&gt;
Hier soll bis es die ersten Analyzer gibt eine &#039;&#039;Feature-List&#039;&#039; entstehen.&lt;br /&gt;
&lt;br /&gt;
= Wishlist =&lt;br /&gt;
&lt;br /&gt;
Bitte hier alle gewünschten Funktionen reintun... alles fällt mir auch nicht auf Anhieb ein ;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
== Framework, Libs, Widgetset... ==&lt;br /&gt;
* [http://www.wxwidgets.org/ wxWidgets]&lt;br /&gt;
* C++ (VC++ 6.0, gcc)&lt;br /&gt;
* [http://www.sqlite.org/ SQLite]&lt;br /&gt;
* [http://www.zlib.net/ zlib]&lt;br /&gt;
&lt;br /&gt;
== Daten &#039;&#039;Projektweise&#039;&#039; organisieren ==&lt;br /&gt;
Projekt Dateien sind eigentlich [http://www.sqlite.org SQLite] Datenbanken.&lt;br /&gt;
In 2 Tabellen werden Einstellungen und Daten gespeichert.&lt;br /&gt;
&lt;br /&gt;
Um die Dateien nicht unnötig aufzublähen wird der Daten-BLOB vor dem Speichern noch komprimiert (zlib ???).&lt;br /&gt;
&lt;br /&gt;
=== Daten ===&lt;br /&gt;
* Beschreibung&lt;br /&gt;
* Datenblob&lt;br /&gt;
 * 4 Byte Timestamp (DWORD ausreizen)&lt;br /&gt;
 * 2 Byte/8 Pins für HighZ-Detection (=&amp;gt; sicher nett für die Schnittstellenanalyze) und Daten&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration ===&lt;br /&gt;
* Datenstruktur Version&lt;br /&gt;
* Analyzer Typ&lt;br /&gt;
* Projekt Beschreibung&lt;br /&gt;
&lt;br /&gt;
=== Messungen ===&lt;br /&gt;
* Plugin Id&lt;br /&gt;
* Plugin Version&lt;br /&gt;
* Messungs-Typ&lt;br /&gt;
* Daten-Blob&lt;br /&gt;
&lt;br /&gt;
=== Projekt History ===&lt;br /&gt;
* Datum&lt;br /&gt;
* Kommentar&lt;br /&gt;
&lt;br /&gt;
== Plugins ==&lt;br /&gt;
Ich habe vor möglichst viel aum Basiscode auszulagern und nur das aller Nötigste zu integrieren.&lt;br /&gt;
So soll mehrere Plugin-Typen geben:&lt;br /&gt;
* Input : Stellen die Verbindung zwischen Software und Capture-Engine her (wie auch immer sie aussehen soll)&lt;br /&gt;
* Analyze : Analysieren die Daten. Dies kann jetzt von Jitter-Anaylse bis zum Protokoll-Analyzer alles sein&lt;br /&gt;
* Output : Unter Umständen der Datenbank Export nicht in dieser Art und Weise erwünscht bzw sinnvoll. Dann könnte man z.B über ein Output Plugin noch Daten-Dezimierung einführen oder was auch immer&lt;br /&gt;
* View : Ein richtiger Protokoll-Analyzer stellt die daten sicher anders da =&amp;gt; Plugin und Fertig&lt;br /&gt;
&lt;br /&gt;
Unter Windows ist eine Plugin-Architektur eigentlich ganz brauchbar machbar über DLLs.&lt;br /&gt;
Ähnliches gilt auch für Linux wie [http://www.linuxgazette.com/issue84/bradley.html hier] zu lesen ist.&lt;br /&gt;
&lt;br /&gt;
Die Plugin-Grundstruktur läuft mittlerweile mehr oder weniger problemlos.&lt;br /&gt;
Derzeit sieht die ganze Angelegenheit ungefähr so aus:&lt;br /&gt;
&lt;br /&gt;
Die Plugin-DLLs exportieren die Funktion &#039;&#039;&#039;GetPluginObject&#039;&#039;&#039;. Diese liefert einen Pointer auf ein von&lt;br /&gt;
&#039;&#039;&#039;CPlugInBase&#039;&#039;&#039; abgeleitetes Projekt.&lt;br /&gt;
&lt;br /&gt;
Von diesem Objekt holt sich die Applikation nun die benötigten Information.&lt;br /&gt;
&lt;br /&gt;
Das Framework läd dynamisch die vom Plugin angegebenen Menüs und fügt sie an der richtigen Stelle ein. Eventy werden natürlich auch registriert und an das Plugin gesendet.&lt;br /&gt;
&lt;br /&gt;
Der Klassenstruktur wird nun noch ein Interface auf den Data-Manager hinzugefügt und schon sollte sich Daten Laden lassen.&lt;br /&gt;
&lt;br /&gt;
Im Laufe der nächsten Woche könnte ich bereits einen Snapshot online stellen.. für den Fall jemand möchte sich einbringen ;)&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Betriebsysteme =&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* Linux&lt;br /&gt;
&lt;br /&gt;
Weitere sollten sich einfach durch Neukompilieren hinzugesellen können.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Hardware =&lt;br /&gt;
Hier kommen sie dann... die im Forum dikutierten CPLD/FPGA-Captureengines sowie noch Ultra-Lowcost AVR,dsPic,Parallel-Port oder wasauchimmer Gerätschaften.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer Project|Software]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8418</id>
		<title>Logic Analyzer-Projekt: Ideen zur Software</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8418"/>
		<updated>2005-07-18T10:47:43Z</updated>

		<summary type="html">&lt;p&gt;Hans: plugin infos...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nachdem jetzt offensichtlich doch einige Blut geleckt haben und der [[Logic Analyzer]] nun mit ziemlicher Sicherheit zustande kommt hier schonmal vorab die Software-Seite.&lt;br /&gt;
&lt;br /&gt;
Hier soll bis es die ersten Analyzer gibt eine &#039;&#039;Feature-List&#039;&#039; entstehen.&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
== Framework, Libs, Widgetset... ==&lt;br /&gt;
* [http://www.wxwidgets.org/ wxWidgets]&lt;br /&gt;
* C++ (VC++ 6.0, gcc)&lt;br /&gt;
* [http://www.sqlite.org/ SQLite]&lt;br /&gt;
* [http://www.zlib.net/ zlib]&lt;br /&gt;
&lt;br /&gt;
== Daten &#039;&#039;Projektweise&#039;&#039; organisieren ==&lt;br /&gt;
Projekt Dateien sind eigentlich [http://www.sqlite.org SQLite] Datenbanken.&lt;br /&gt;
In 2 Tabellen werden Einstellungen und Daten gespeichert.&lt;br /&gt;
&lt;br /&gt;
Um die Dateien nicht unnötig aufzublähen wird der Daten-BLOB vor dem Speichern noch komprimiert (zlib ???).&lt;br /&gt;
&lt;br /&gt;
=== Daten ===&lt;br /&gt;
* Beschreibung&lt;br /&gt;
* Datenblob&lt;br /&gt;
 * 4 Byte Timestamp (DWORD ausreizen)&lt;br /&gt;
 * 2 Byte/8 Pins für HighZ-Detection (=&amp;gt; sicher nett für die Schnittstellenanalyze) und Daten&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration ===&lt;br /&gt;
* Datenstruktur Version&lt;br /&gt;
* Analyzer Typ&lt;br /&gt;
* Projekt Beschreibung&lt;br /&gt;
&lt;br /&gt;
=== Messungen ===&lt;br /&gt;
* Plugin Id&lt;br /&gt;
* Plugin Version&lt;br /&gt;
* Messungs-Typ&lt;br /&gt;
* Daten-Blob&lt;br /&gt;
&lt;br /&gt;
=== Projekt History ===&lt;br /&gt;
* Datum&lt;br /&gt;
* Kommentar&lt;br /&gt;
&lt;br /&gt;
== Plugins ==&lt;br /&gt;
Ich habe vor möglichst viel aum Basiscode auszulagern und nur das aller Nötigste zu integrieren.&lt;br /&gt;
So soll mehrere Plugin-Typen geben:&lt;br /&gt;
* Input : Stellen die Verbindung zwischen Software und Capture-Engine her (wie auch immer sie aussehen soll)&lt;br /&gt;
* Analyze : Analysieren die Daten. Dies kann jetzt von Jitter-Anaylse bis zum Protokoll-Analyzer alles sein&lt;br /&gt;
* Output : Unter Umständen der Datenbank Export nicht in dieser Art und Weise erwünscht bzw sinnvoll. Dann könnte man z.B über ein Output Plugin noch Daten-Dezimierung einführen oder was auch immer&lt;br /&gt;
* View : Ein richtiger Protokoll-Analyzer stellt die daten sicher anders da =&amp;gt; Plugin und Fertig&lt;br /&gt;
&lt;br /&gt;
Unter Windows ist eine Plugin-Architektur eigentlich ganz brauchbar machbar über DLLs.&lt;br /&gt;
Ähnliches gilt auch für Linux wie [http://www.linuxgazette.com/issue84/bradley.html hier] zu lesen ist.&lt;br /&gt;
&lt;br /&gt;
Die Plugin-Grundstruktur läuft mittlerweile mehr oder weniger problemlos.&lt;br /&gt;
Derzeit sieht die ganze Angelegenheit ungefähr so aus:&lt;br /&gt;
&lt;br /&gt;
Die Plugin-DLLs exportieren die Funktion &#039;&#039;&#039;GetPluginObject&#039;&#039;&#039;. Diese liefert einen Pointer auf ein von&lt;br /&gt;
&#039;&#039;&#039;CPlugInBase&#039;&#039;&#039; abgeleitetes Projekt.&lt;br /&gt;
&lt;br /&gt;
Von diesem Objekt holt sich die Applikation nun die benötigten Information.&lt;br /&gt;
&lt;br /&gt;
Das Framework läd dynamisch die vom Plugin angegebenen Menüs und fügt sie an der richtigen Stelle ein. Eventy werden natürlich auch registriert und an das Plugin gesendet.&lt;br /&gt;
&lt;br /&gt;
Der Klassenstruktur wird nun noch ein Interface auf den Data-Manager hinzugefügt und schon sollte sich Daten Laden lassen.&lt;br /&gt;
&lt;br /&gt;
Im Laufe der nächsten Woche könnte ich bereits einen Snapshot online stellen.. für den Fall jemand möchte sich einbringen ;)&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Betriebsysteme =&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* Linux&lt;br /&gt;
&lt;br /&gt;
Weitere sollten sich einfach durch Neukompilieren hinzugesellen können.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Hardware =&lt;br /&gt;
Hier kommen sie dann... die im Forum dikutierten CPLD/FPGA-Captureengines sowie noch Ultra-Lowcost AVR,dsPic,Parallel-Port oder wasauchimmer Gerätschaften.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer Project|Software]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8400</id>
		<title>Logic Analyzer-Projekt: Ideen zur Software</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8400"/>
		<updated>2005-07-17T17:01:13Z</updated>

		<summary type="html">&lt;p&gt;Hans: /* Plugins */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nachdem jetzt offensichtlich doch einige Blut geleckt haben und der [[Logic Analyzer]] nun mit ziemlicher Sicherheit zustande kommt hier schonmal vorab die Software-Seite.&lt;br /&gt;
&lt;br /&gt;
Hier soll bis es die ersten Analyzer gibt eine &#039;&#039;Feature-List&#039;&#039; entstehen.&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
== Framework,Libs,Widgetset... ==&lt;br /&gt;
* wxWidgets&lt;br /&gt;
* C++ (VC++ 6.0,gcc)&lt;br /&gt;
* SQLite&lt;br /&gt;
* zlib&lt;br /&gt;
&lt;br /&gt;
== Daten &#039;&#039;Projektweise&#039;&#039; organisieren ==&lt;br /&gt;
Projekt Dateien sind eigentlich [http://www.sqlite.org SQLite] Datenbanken.&lt;br /&gt;
In 2 Tabellen werden Einstellungen und Daten gespeichert.&lt;br /&gt;
&lt;br /&gt;
Um die Dateien nicht unnötig aufzublähen wird der Daten-BLOB vor dem Speichern noch komprimiert (zlib ???).&lt;br /&gt;
&lt;br /&gt;
=== Daten ===&lt;br /&gt;
* Beschreibung&lt;br /&gt;
* Datenblob&lt;br /&gt;
 * 4 Byte Timestamp (DWORD ausreizen)&lt;br /&gt;
 * 2 Byte/8 Pins für HighZ-Detection (=&amp;gt; sicher nett für die Schnittstellenanalyze) und Daten&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration ===&lt;br /&gt;
* Datenstruktur Version&lt;br /&gt;
* Analyzer Typ&lt;br /&gt;
* Projekt Beschreibung&lt;br /&gt;
&lt;br /&gt;
=== Messungen ===&lt;br /&gt;
* Plugin Id&lt;br /&gt;
* Plugin Version&lt;br /&gt;
* Messungs-Typ&lt;br /&gt;
* Daten-Blob&lt;br /&gt;
&lt;br /&gt;
=== Projekt History ===&lt;br /&gt;
* Datum&lt;br /&gt;
* Kommentar&lt;br /&gt;
&lt;br /&gt;
== Plugins ==&lt;br /&gt;
Ich habe vor möglichst viel aum Basiscode auszulagern und nur das aller Nötigste zu integrieren.&lt;br /&gt;
So soll mehrere Plugin-Typen geben:&lt;br /&gt;
* Input : Stellen die Verbindung zwischen Software und Capture-Engine her (wie auch immer sie aussehen soll)&lt;br /&gt;
* Analyze : Analysieren die Daten. Dies kann jetzt von Jitter-Anaylse bis zum Protokoll-Analyzer alles sein&lt;br /&gt;
* Output : Unter Umständen der Datenbank Export nicht in dieser Art und Weise erwünscht bzw sinnvoll. Dann könnte man z.B über ein Output Plugin noch Daten-Dezimierung einführen oder was auch immer&lt;br /&gt;
* View : Ein richtiger Protokoll-Analyzer stellt die daten sicher anders da =&amp;gt; Plugin und Fertig&lt;br /&gt;
&lt;br /&gt;
Unter Windows ist eine Plugin-Architektur eigentlich ganz brauchbar machbar über DLLs.&lt;br /&gt;
Ähnliches gilt auch für Linux wie [http://www.linuxgazette.com/issue84/bradley.html hier] zu lesen ist.&lt;br /&gt;
&lt;br /&gt;
Die Plugin-Grundstruktur läuft mittlerweile mehr oder weniger problemlos.&lt;br /&gt;
Derzeit sieht die ganze Angelegenheit ungefähr so aus:&lt;br /&gt;
&lt;br /&gt;
Die Plugin-DLLs exportieren die Funktion &#039;&#039;&#039;GetPluginObject&#039;&#039;&#039;. Diese liefert einen Pointer auf ein von&lt;br /&gt;
&#039;&#039;&#039;CPlugInBase&#039;&#039;&#039; abgeleitetes Projekt.&lt;br /&gt;
&lt;br /&gt;
Von diesem Objekt holt sich die Applikation nun die benötigten Information.&lt;br /&gt;
&lt;br /&gt;
Der Klassenstruktur wird nun noch ein Interface auf den Data-Manager hinzugefügt und schon sollte sich Daten Laden lassen.&lt;br /&gt;
&lt;br /&gt;
Im Laufe der nächsten Woche könnte ich bereits einen Snapshot online stellen.. für den Fall jemand möchte sich einbringen ;)&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Betriebsysteme =&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* Linux&lt;br /&gt;
&lt;br /&gt;
Weitere sollten sich einfach durch Neukompilieren hinzugesellen können.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Hardware =&lt;br /&gt;
Hier kommen sie dann... die im Forum dikutierten CPLD/FPGA-Captureengines sowie noch Ultra-Lowcost AVR,dsPic,Parallel-Port oder wasauchimmer Gerätschaften.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer Project|Software]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Kategorie_Diskussion:Logic_Analyzer_Project&amp;diff=14851</id>
		<title>Kategorie Diskussion:Logic Analyzer Project</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Kategorie_Diskussion:Logic_Analyzer_Project&amp;diff=14851"/>
		<updated>2005-07-15T05:40:53Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;eine eigene kategorie fuer zwei artikel erscheint mir ehrlich gesagt ziemlich uebertrieben&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Ich sehe das so: jetzt haben wir erst Software und Hardware Brainstorming..&lt;br /&gt;
Im Forum hab ich schon von existierenden Lösungen gelesen, die in die Software integriert werden können...&lt;br /&gt;
Weiters haben schon einige von einer extrem abgespeckten Variante gesprochen =&amp;gt; die kommen in die Kategorie..&lt;br /&gt;
&lt;br /&gt;
Außerdem kann ich mir gut Vorstellen die Soft- und Hardwarehilfe(bestücken etc.) auch als eigenen Artikel reinzustellen.&lt;br /&gt;
&lt;br /&gt;
Also hat das schon Sinn... schon klar, dass es jetzt &amp;quot;etwas&amp;quot; übertrieben wirkt aber das wird alles noch kommen...hoffentlich *g*&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Hans|Hans]] 07:40, 15. Jul 2005 (CEST)&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Hauptseite&amp;diff=8651</id>
		<title>Hauptseite</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Hauptseite&amp;diff=8651"/>
		<updated>2005-07-14T19:24:53Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 1em 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
Diese Artikelsammlung ist ein &amp;quot;Wiki&amp;quot;, das bedeutet jeder kann etwas an den bestehenden Artikeln verändern oder eigene Artikel erstellen.&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; margin-top:10px; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#FFfFeF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Artikelübersicht ==  		&lt;br /&gt;
&lt;br /&gt;
=== Grundlagen ===&lt;br /&gt;
* [[Löten (praktisch)]]&lt;br /&gt;
* [[SMD Löten]]&lt;br /&gt;
* [[Oszilloskop]]&lt;br /&gt;
&lt;br /&gt;
=== Elektronik-Grundlagen ===&lt;br /&gt;
* [[Operationsverstärker-Grundschaltungen]]&lt;br /&gt;
* [[Pulsweitenmodulation]]&lt;br /&gt;
&lt;br /&gt;
=== Projekte ===&lt;br /&gt;
* [[Digitaler Funktionsgenerator]]&lt;br /&gt;
* [[Midi Rekorder mit MMC/SD-Karte]]&lt;br /&gt;
* [[Schrittmotor-Controller (Stepper)|Schrittmotor-Controller]]&lt;br /&gt;
* [[Logic Analyzer Project]] ([[Logic Analyzer | Hardware]] , [[Logic Analyzer Software | Software]])&lt;br /&gt;
* [[:Kategorie:Projekte|weitere...]]&lt;br /&gt;
&lt;br /&gt;
=== AVR ===&lt;br /&gt;
* [[AVR Checkliste]]&lt;br /&gt;
* [[AVR-GCC-Tutorial]]&lt;br /&gt;
* [[AVR Assembler - Vergleichstabelle|Assembler-Befehlstabelle]]&lt;br /&gt;
* [[:Kategorie:AVR|weitere...]]&lt;br /&gt;
&lt;br /&gt;
=== Mikrocontroller und Prozessoren ===&lt;br /&gt;
* [[LPC2000 Philips ARM7TDMI-Familie]]&lt;br /&gt;
* [[MSP430]]&lt;br /&gt;
* [[AVR PIC 51-Vergleich]]&lt;br /&gt;
* [[:Kategorie:Mikrocontroller|weitere...]]&lt;br /&gt;
&lt;br /&gt;
===PC-Programmierung===&lt;br /&gt;
&lt;br /&gt;
* [[Ports benutzen (GCC)]]&lt;br /&gt;
* [[Ports benutzen (PHP)]]&lt;br /&gt;
&lt;br /&gt;
===Sonstiges===&lt;br /&gt;
* [[Hausbus]]&lt;br /&gt;
* [[Platinenhersteller]]&lt;br /&gt;
* [[Elektronik-Versender]]&lt;br /&gt;
* [[Datenblätter]]&lt;br /&gt;
&lt;br /&gt;
== Artikel ==&lt;br /&gt;
&lt;br /&gt;
* [[Spezial:Allpages|Alle Artikel]] - Eine Liste mit allen {{NUMBEROFARTICLES}} Artikeln im Wiki.&lt;br /&gt;
* [[Spezial:Popularpages|Beliebte Artikel]] - Eine Liste der Artikel, die am häufigsten aufgerufen wurden.&lt;br /&gt;
* [[Special:Wantedpages|Gewünschte Artikel]] - Eine Liste der Artikel, die noch nicht existieren, aber von vielen Seiten verlinkt werden. &#039;&#039;&#039;Hier ist eurer Wissen besonders gefragt!&#039;&#039;&#039;&lt;br /&gt;
* [[Spezial:Newpages|Neue Artikel]] - Eine Liste der zuletzt hinzugefügten Artikel.&lt;br /&gt;
* [[Spezial:Uncategorizedpages|Artikel ohne Kategorie]] - Eine Liste der Artikel, die noch keiner Kategorie hinzugefügt wurden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;40%&amp;quot; style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin:0;  border:1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#efefef; align:left;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Kann ich wirklich &amp;quot;einfach so&amp;quot; irgendetwas an den Seiten ändern? ===&lt;br /&gt;
&lt;br /&gt;
Ja. Um eine Seite zu ändern reicht ein Klick auf den &amp;quot;Seite bearbeiten&amp;quot; Link.&lt;br /&gt;
Aber: Bitte lies Dir vorher die [[Uc-wiki:Wie man eine Seite bearbeitet|Bearbeitungshinweise]] durch und schau Dir am besten mal ein paar der anderen Seiten an, um zu sehen wie das Ganze funktioniert.&lt;br /&gt;
&lt;br /&gt;
=== Gibt es einen Testbereich, wo man das Ganze mal ausprobieren kann? ===&lt;br /&gt;
&lt;br /&gt;
Ja - dafür gibt es die [[Testseite]].&lt;br /&gt;
&lt;br /&gt;
=== Wie kann ich neue Seiten erstellen? ===&lt;br /&gt;
&lt;br /&gt;
Gib einfach den gewünschten Titel in die Suche ein und klicke auf &amp;quot;Los&amp;quot;, falls die Seite noch nicht existiert findest du dann dort einen Link zum Anlegen der Seite. Bitte schau dir erst den Aufbau von ein paar exisiterenden Seiten an (auf &amp;quot;Seite bearbeiten&amp;quot; klicken, dann wird der Quelltext angezeigt), um herauszufinden wie das mit den Überschriften und Formatierungen funktioniert.&lt;br /&gt;
Mehr Informationen zu den Formatierungsmöglichkeiten gibt es [[Uc-wiki:Wie man eine Seite bearbeitet|hier]].&lt;br /&gt;
&lt;br /&gt;
=== Wozu ist der &amp;quot;Diskussion&amp;quot;-Link? ===&lt;br /&gt;
&lt;br /&gt;
Auf den Diskussionsseiten kann man Kommentare, Kritik oder Fragen zum jeweiligen Artikel unterbringen.&lt;br /&gt;
&lt;br /&gt;
=== Was ist dieses Wiki? ===&lt;br /&gt;
&lt;br /&gt;
Dieses Wiki ist eine Artikelsammlung. Unter Artikeln sind dabei Einträge zu verstehen, die über reine enzyklopädische Grundlagenartikel hinausgehen. Solche Einträge sind besser in der [http://www.wikipedia.de Wikipedia] aufgehoben. Zu den Beiträgen dieses Wikis gehören daher Tutorials, Projektbeschreibungen sowie Erfahrungsberichte und Problemlösungen in der Elektronik im Allgemeinen und hinsichtlich Mikrocontrollern im Speziellen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8297</id>
		<title>Logic Analyzer-Projekt: Ideen zur Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8297"/>
		<updated>2005-07-14T19:23:25Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hier mal das Lastenheft für den Logic Analyser. Bitte je nach Anforderung einen Strich mittels ALT GR + &amp;lt;&amp;gt; Taste links neben dem Ypsilon.&lt;br /&gt;
Die Aufteilung könnt ihr ja ändern/erweitern falls was fehlt. Ich gebe mal meine Maximalanforderungen ein.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kanalanzahl&#039;&#039;&#039;&lt;br /&gt;
* 8 Kanäle : ||&lt;br /&gt;
* 16 Kanäle: ||||| ||&lt;br /&gt;
* 20 Kanäle: |&lt;br /&gt;
* 24 Kanäle: |&lt;br /&gt;
* 32 Kanäle: ||&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Samplingfrequenz&#039;&#039;&#039;&lt;br /&gt;
* 8   MHz : &lt;br /&gt;
* 16  MHz : |&lt;br /&gt;
* 32  MHz : ||&lt;br /&gt;
* &amp;gt;32 MHz : ||||| ||||&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schnittstelle zum Computer&#039;&#039;&#039;&lt;br /&gt;
* Seriell syncron  : |&lt;br /&gt;
* Seriell asyncron (RS232): ||||&lt;br /&gt;
* USB              : ||||| |||&lt;br /&gt;
* Parallelport     : | &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Am PC läuft/wird laufen&#039;&#039;&#039;&lt;br /&gt;
* Windows : ||||||&lt;br /&gt;
* Linux   : ||||| |||&lt;br /&gt;
* MacOS X : |&lt;br /&gt;
* Anderes :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Falls USB als Schnittstelle verwendet wird, ist es hilfreich, einen schnellen Transfer zuzulassen. Ggf. keinen normalen FTDI-Chip einsetzen. Phillips ist auch günstiger bei Reichelt (PDI USB D12D).&lt;br /&gt;
&lt;br /&gt;
* Und wer schreibt den Treiber? Fuer 2 Euro Einsparung pro Stueck lohnt sich das garantiert nicht. --[[Benutzer:Andreas|Andreas]] 11:37, 13. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Alternativ CP2102 =&amp;gt; bei farnell für unter 5&amp;amp;#8364;... der braucht anscheinend keine externen komponenten und im gegensatz zum ft232 bekomm ich den problemlos bei farnell ;) infos gibt&#039;s [http://www.silabs.com/tgwWebApp/public/web_content/products/Microcontrollers/Interface/en/interface.htm   hier] --[[Benutzer:Hans|Hans]] 17:36, 13. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ein gewisser Schutz für die Schnittstelle wäre auch nicht schlecht (Worst Case), evtl. die Eingange gleich durch ein Dioden-Array schützen.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer Project|Hardware]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8398</id>
		<title>Logic Analyzer-Projekt: Ideen zur Software</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8398"/>
		<updated>2005-07-14T19:19:52Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nachdem jetzt offensichtlich doch einige Blut geleckt haben und der [[Logic Analyzer]] nun mit ziemlicher Sicherheit zustande kommt hier schonmal vorab die Software-Seite.&lt;br /&gt;
&lt;br /&gt;
Hier soll bis es die ersten Analyzer gibt eine &#039;&#039;Feature-List&#039;&#039; entstehen.&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
== Framework,Libs,Widgetset... ==&lt;br /&gt;
* wxWidgets&lt;br /&gt;
* C++ (VC++ 6.0,gcc)&lt;br /&gt;
* SQLite&lt;br /&gt;
* zlib&lt;br /&gt;
&lt;br /&gt;
== Daten &#039;&#039;Projektweise&#039;&#039; organisieren ==&lt;br /&gt;
Projekt Dateien sind eigentlich [http://www.sqlite.org SQLite] Datenbanken.&lt;br /&gt;
In 2 Tabellen werden Einstellungen und Daten gespeichert.&lt;br /&gt;
&lt;br /&gt;
Um die Dateien nicht unnötig aufzublähen wird der Daten-BLOB vor dem Speichern noch komprimiert (zlib ???).&lt;br /&gt;
&lt;br /&gt;
=== Daten ===&lt;br /&gt;
* Beschreibung&lt;br /&gt;
* Datenblob&lt;br /&gt;
 * 4 Byte Timestamp (DWORD ausreizen)&lt;br /&gt;
 * 2 Byte/8 Pins für HighZ-Detection (=&amp;gt; sicher nett für die Schnittstellenanalyze) und Daten&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration ===&lt;br /&gt;
* Datenstruktur Version&lt;br /&gt;
* Analyzer Typ&lt;br /&gt;
* Projekt Beschreibung&lt;br /&gt;
&lt;br /&gt;
=== Messungen ===&lt;br /&gt;
* Plugin Id&lt;br /&gt;
* Plugin Version&lt;br /&gt;
* Messungs-Typ&lt;br /&gt;
* Daten-Blob&lt;br /&gt;
&lt;br /&gt;
=== Projekt History ===&lt;br /&gt;
* Datum&lt;br /&gt;
* Kommentar&lt;br /&gt;
&lt;br /&gt;
== Plugins ==&lt;br /&gt;
Ich habe vor möglichst viel aum Basiscode auszulagern und nur das aller Nötigste zu integrieren.&lt;br /&gt;
So soll mehrere Plugin-Typen geben:&lt;br /&gt;
* Input : Stellen die Verbindung zwischen Software und Capture-Engine her (wie auch immer sie aussehen soll)&lt;br /&gt;
* Analyze : Analysieren die Daten. Dies kann jetzt von Jitter-Anaylse bis zum Protokoll-Analyzer alles sein&lt;br /&gt;
* Output : Unter Umständen der Datenbank Export nicht in dieser Art und Weise erwünscht bzw sinnvoll. Dann könnte man z.B über ein Output Plugin noch Daten-Dezimierung einführen oder was auch immer&lt;br /&gt;
* View : Ein richtiger Protokoll-Analyzer stellt die daten sicher anders da =&amp;gt; Plugin und Fertig&lt;br /&gt;
&lt;br /&gt;
Unter Windows ist eine Plugin-Architektur eigentlich ganz brauchbar machbar über DLLs.&lt;br /&gt;
Ähnliches gilt auch für Linux wie [http://www.linuxgazette.com/issue84/bradley.html hier] zu lesen ist.&lt;br /&gt;
&lt;br /&gt;
Einzig und allein hier soll der portierungsbedürftige Code der Basisapplikation sitzen.&lt;br /&gt;
&lt;br /&gt;
Durch die Plugin-Architektur brauen nur die Input-Plugins um die Eigenheiten des Datentransfers gedanken machen.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Betriebsysteme =&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* Linux&lt;br /&gt;
&lt;br /&gt;
Weitere sollten sich einfach durch Neukompilieren hinzugesellen können.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Hardware =&lt;br /&gt;
Hier kommen sie dann... die im Forum dikutierten CPLD/FPGA-Captureengines sowie noch Ultra-Lowcost AVR,dsPic,Parallel-Port oder wasauchimmer Gerätschaften.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer Project|Software]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8294</id>
		<title>Logic Analyzer-Projekt: Ideen zur Software</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Software&amp;diff=8294"/>
		<updated>2005-07-14T19:12:49Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nachdem jetzt offensichtlich doch einige Blut geleckt haben und der [[Logic Analyzer]] nun mit ziemlicher Sicherheit zustande kommt hier schonmal vorab die Software-Seite.&lt;br /&gt;
&lt;br /&gt;
Hier soll bis es die ersten Analyzer gibt eine &#039;&#039;Feature-List&#039;&#039; entstehen.&lt;br /&gt;
&lt;br /&gt;
= Features =&lt;br /&gt;
== Framework,Libs,Widgetset... ==&lt;br /&gt;
* wxWidgets&lt;br /&gt;
* C++ (VC++ 6.0,gcc)&lt;br /&gt;
* SQLite&lt;br /&gt;
* zlib&lt;br /&gt;
&lt;br /&gt;
== Daten &#039;&#039;Projektweise&#039;&#039; organisieren ==&lt;br /&gt;
Projekt Dateien sind eigentlich [http://www.sqlite.org SQLite] Datenbanken.&lt;br /&gt;
In 2 Tabellen werden Einstellungen und Daten gespeichert.&lt;br /&gt;
&lt;br /&gt;
Um die Dateien nicht unnötig aufzublähen wird der Daten-BLOB vor dem Speichern noch komprimiert (zlib ???).&lt;br /&gt;
&lt;br /&gt;
=== Daten ===&lt;br /&gt;
* Beschreibung&lt;br /&gt;
* Datenblob&lt;br /&gt;
 * 4 Byte Timestamp (DWORD ausreizen)&lt;br /&gt;
 * 2 Byte/8 Pins für HighZ-Detection (=&amp;gt; sicher nett für die Schnittstellenanalyze) und Daten&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration ===&lt;br /&gt;
* Datenstruktur Version&lt;br /&gt;
* Analyzer Typ&lt;br /&gt;
* Projekt Beschreibung&lt;br /&gt;
&lt;br /&gt;
=== Messungen ===&lt;br /&gt;
* Plugin Id&lt;br /&gt;
* Plugin Version&lt;br /&gt;
* Messungs-Typ&lt;br /&gt;
* Daten-Blob&lt;br /&gt;
&lt;br /&gt;
=== Projekt History ===&lt;br /&gt;
* Datum&lt;br /&gt;
* Kommentar&lt;br /&gt;
&lt;br /&gt;
== Plugins ==&lt;br /&gt;
Ich habe vor möglichst viel aum Basiscode auszulagern und nur das aller Nötigste zu integrieren.&lt;br /&gt;
So soll mehrere Plugin-Typen geben:&lt;br /&gt;
* Input : Stellen die Verbindung zwischen Software und Capture-Engine her (wie auch immer sie aussehen soll)&lt;br /&gt;
* Analyze : Analysieren die Daten. Dies kann jetzt von Jitter-Anaylse bis zum Protokoll-Analyzer alles sein&lt;br /&gt;
* Output : Unter Umständen der Datenbank Export nicht in dieser Art und Weise erwünscht bzw sinnvoll. Dann könnte man z.B über ein Output Plugin noch Daten-Dezimierung einführen oder was auch immer&lt;br /&gt;
* View : Ein richtiger Protokoll-Analyzer stellt die daten sicher anders da =&amp;gt; Plugin und Fertig&lt;br /&gt;
&lt;br /&gt;
Unter Windows ist eine Plugin-Architektur eigentlich ganz brauchbar machbar über DLLs.&lt;br /&gt;
Ähnliches gilt auch für Linux wie [http://www.linuxgazette.com/issue84/bradley.html hier] zu lesen ist.&lt;br /&gt;
&lt;br /&gt;
Einzig und allein hier soll der portierungsbedürftige Code der Basisapplikation sitzen.&lt;br /&gt;
&lt;br /&gt;
Durch die Plugin-Architektur brauen nur die Input-Plugins um die Eigenheiten des Datentransfers gedanken machen.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Betriebsysteme =&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* Linux&lt;br /&gt;
&lt;br /&gt;
Weitere sollten sich einfach durch Neukompilieren hinzugesellen können.&lt;br /&gt;
&lt;br /&gt;
= Unterstütze Hardware =&lt;br /&gt;
Hier kommen sie dann... die im Forum dikutierten CPLD/FPGA-Captureengines sowie noch Ultra-Lowcost AVR,dsPic,Parallel-Port oder wasauchimmer Gerätschaften.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logic Analyzer|Software]]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8274</id>
		<title>Logic Analyzer-Projekt: Ideen zur Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8274"/>
		<updated>2005-07-13T15:36:43Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hier mal das Lastenheft für den Logic Analyser. Bitte je nach Anforderung einen Strich mittels ALT GR + &amp;lt;&amp;gt; Taste links neben dem Ypsilon.&lt;br /&gt;
Die Aufteilung könnt ihr ja ändern/erweitern falls was fehlt. Ich gebe mal meine Maximalanforderungen ein.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kanalanzahl&#039;&#039;&#039;&lt;br /&gt;
* 8 Kanäle : ||&lt;br /&gt;
* 16 Kanäle: ||||&lt;br /&gt;
* 20 Kanäle: |&lt;br /&gt;
* 24 Kanäle: |&lt;br /&gt;
* 32 Kanäle: ||&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Samplingfrequenz&#039;&#039;&#039;&lt;br /&gt;
* 8   MHz : &lt;br /&gt;
* 16  MHz : |&lt;br /&gt;
* 32  MHz : ||&lt;br /&gt;
* &amp;gt;32 MHz : ||||||&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schnittstelle zum Computer&#039;&#039;&#039;&lt;br /&gt;
* Seriell syncron  : |&lt;br /&gt;
* Seriell asyncron (RS232): |||&lt;br /&gt;
* USB              : |||||&lt;br /&gt;
* Parallelport     : | &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Am PC läuft/wird laufen&#039;&#039;&#039;&lt;br /&gt;
* Windows : ||||&lt;br /&gt;
* Linux   : |||||&lt;br /&gt;
* MacOS X : |&lt;br /&gt;
* Anderes :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Falls USB als Schnittstelle verwendet wird, ist es hilfreich, einen schnellen Transfer zuzulassen. Ggf. keinen normalen FTDI-Chip einsetzen. Phillips ist auch günstiger bei Reichelt (PDI USB D12D).&lt;br /&gt;
&lt;br /&gt;
* Und wer schreibt den Treiber? Fuer 2 Euro Einsparung pro Stueck lohnt sich das garantiert nicht. --[[Benutzer:Andreas|Andreas]] 11:37, 13. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Alternativ CP2102 =&amp;gt; bei farnell für unter 5?... der braucht anscheinend keine externen komponenten und im gegensatz zum ft232 bekomm ich den problemlos bei farnell ;) infos gibt&#039;s [http://www.silabs.com/tgwWebApp/public/web_content/products/Microcontrollers/Interface/en/interface.htm   hier] --[[Benutzer:Hans|Hans]] 17:36, 13. Jul 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ein gewisser Schutz für die Schnittstelle wäre auch nicht schlecht (Worst Case), evtl. die Eingange gleich durch ein Dioden-Array schützen.&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8250</id>
		<title>Logic Analyzer-Projekt: Ideen zur Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8250"/>
		<updated>2005-07-12T20:10:55Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hier mal das Lastenheft für den Logic Analyser. Bitte je nach Anforderung einen Strich mittels ALT GR + &amp;lt;&amp;gt; Taste links neben dem Ypsilon.&lt;br /&gt;
Die Aufteilung könnt ihr ja ändern/erweitern falls was fehlt. Ich gebe mal meine Maximalanforderungen ein.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kanalanzahl&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
8 Kanäle :  &amp;lt;br /&amp;gt;&lt;br /&gt;
16 Kanäle:  &amp;lt;br /&amp;gt;&lt;br /&gt;
20 Kanäle: | &amp;lt;br /&amp;gt;&lt;br /&gt;
24 Kanäle: | &amp;lt;br /&amp;gt;&lt;br /&gt;
32 Kanäle: | &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Samplingfrequenz&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
8   MHz :  &amp;lt;br /&amp;gt;&lt;br /&gt;
16  MHz : | &amp;lt;br /&amp;gt;&lt;br /&gt;
32  MHz :  &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;gt;32 MHz : | &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schnittstelle zum Computer&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
Seriell syncron  :  &amp;lt;br /&amp;gt;&lt;br /&gt;
Seriell asyncron*: || &amp;lt;br /&amp;gt;&lt;br /&gt;
USB              :  &amp;lt;br /&amp;gt;&lt;br /&gt;
Parallelport     : | &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Am PC läuft/wird laufen&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
Windows : | &amp;lt;br /&amp;gt;&lt;br /&gt;
Linux   : | &amp;lt;br /&amp;gt;&lt;br /&gt;
MacOS X : &amp;lt;br /&amp;gt;&lt;br /&gt;
Anderes : &amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8249</id>
		<title>Logic Analyzer-Projekt: Ideen zur Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Logic_Analyzer-Projekt:_Ideen_zur_Hardware&amp;diff=8249"/>
		<updated>2005-07-12T20:09:51Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hier mal das Lastenheft für den Logic Analyser. Bitte je nach Anforderung einen Strich mittels ALT GR + &amp;lt;&amp;gt; Taste links neben dem Ypsilon.&lt;br /&gt;
Die Aufteilung könnt ihr ja ändern/erweitern falls was fehlt. Ich gebe mal meine Maximalanforderungen ein.&lt;br /&gt;
&lt;br /&gt;
Kanalanzahl &amp;lt;br /&amp;gt;&lt;br /&gt;
8 Kanäle :  &amp;lt;br /&amp;gt;&lt;br /&gt;
16 Kanäle:  &amp;lt;br /&amp;gt;&lt;br /&gt;
20 Kanäle: | &amp;lt;br /&amp;gt;&lt;br /&gt;
24 Kanäle: | &amp;lt;br /&amp;gt;&lt;br /&gt;
32 Kanäle: | &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Samplingfrequenz &amp;lt;br /&amp;gt;&lt;br /&gt;
8   MHz :  &amp;lt;br /&amp;gt;&lt;br /&gt;
16  MHz : | &amp;lt;br /&amp;gt;&lt;br /&gt;
32  MHz :  &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;gt;32 MHz : | &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Schnittstelle zum Computer&amp;lt;br /&amp;gt;&lt;br /&gt;
Seriell syncron  :  &amp;lt;br /&amp;gt;&lt;br /&gt;
Seriell asyncron*: || &amp;lt;br /&amp;gt;&lt;br /&gt;
USB              :  &amp;lt;br /&amp;gt;&lt;br /&gt;
Parallelport     : | &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Am PC läuft/wird laufen&amp;lt;br /&amp;gt;&lt;br /&gt;
Windows : | &amp;lt;br /&amp;gt;&lt;br /&gt;
Linux   : | &amp;lt;br /&amp;gt;&lt;br /&gt;
MacOS X : &amp;lt;br /&amp;gt;&lt;br /&gt;
Anderes : &amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Kategorie:Grundlagen&amp;diff=14836</id>
		<title>Kategorie:Grundlagen</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Kategorie:Grundlagen&amp;diff=14836"/>
		<updated>2005-06-30T21:36:26Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!-- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Kennzeichnung_von_Halbleitern&amp;diff=8044</id>
		<title>Kennzeichnung von Halbleitern</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Kennzeichnung_von_Halbleitern&amp;diff=8044"/>
		<updated>2005-06-30T21:34:23Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Grundlagen]]&lt;br /&gt;
&lt;br /&gt;
Es gibt im Großen und ganzen 3 verschiedene Normen zur Kennzeichnung von Halbleitern (Dioden,Transistoren).&lt;br /&gt;
&lt;br /&gt;
Eine englische Übersicht ist auf [http://repairfaq.cis.upenn.edu/sam/tshoot.htm#tshmtrd dieser] Homepage zu finden... Zumindest bei Pro-Electron würde ich aber den Standart vorziehen (sofern dieser zu finden ist).&lt;br /&gt;
&lt;br /&gt;
== Europa (Pro-Electron) ==&lt;br /&gt;
&lt;br /&gt;
Genaue Informationen sind auf der [http://www.eeca.org/pro_elec.htm Pro-Electron]-Homepage zu finden.&lt;br /&gt;
In der verlinkten PDF-Datei(Pro Electron Booklet - Twelfth Edition ? 2005-04) ab Kapitel 4 ist eine genaue Auflistung zu finden.&lt;br /&gt;
&lt;br /&gt;
Ein Kurzfassung möchte ich aber hier nochmal bieten:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*1. Buchstabe (Ausgangsmaterial)&lt;br /&gt;
&lt;br /&gt;
** A - Germanium&lt;br /&gt;
** B - Silizium&lt;br /&gt;
&lt;br /&gt;
*2. Buchstabe (Verwendung)&lt;br /&gt;
&lt;br /&gt;
** A - Kleinleistungs Diode&lt;br /&gt;
** B - Vari-Cap&lt;br /&gt;
** C - Kleinleistungs Transistor (AF, Audio-Frequency = ... max 30MHz)&lt;br /&gt;
** D - Leistungstrasistor (AF)&lt;br /&gt;
&lt;br /&gt;
** U - Leistungsschalttransistor&lt;br /&gt;
&lt;br /&gt;
** Y - Gleichrichter-Diode&lt;br /&gt;
** Z - Z-Diode&lt;br /&gt;
&lt;br /&gt;
*3. Weitere vom Hersteller vergebene Ziffern/Buchstaben&lt;br /&gt;
&lt;br /&gt;
== Amerika (Joint Electron Device Engineering Council = JEDEC) ==&lt;br /&gt;
&lt;br /&gt;
Genaue Informationen müssten auf der [http://www.JEDEC.org JEDEC]-Homepage zu finden sein.. Aber da ich etwas gegen Zwangsregistrieren habe gebe ich nur das wieder was ich meinem Hirn so finde ;)&lt;br /&gt;
&lt;br /&gt;
*Anzahl der Sperrschichten&lt;br /&gt;
&lt;br /&gt;
**1 Diode&lt;br /&gt;
**2 Transistor&lt;br /&gt;
**3 Transistor&lt;br /&gt;
**4 Thyristor&lt;br /&gt;
&lt;br /&gt;
*N&lt;br /&gt;
&lt;br /&gt;
*Laufziffer vom Hersteller&lt;br /&gt;
&lt;br /&gt;
z.b 2N2222 oder 1N4148&lt;br /&gt;
&lt;br /&gt;
== Japan (Japanese Industrial Standard = JIS)==&lt;br /&gt;
&lt;br /&gt;
Das sind die lustigen Bauteile mit dem 2SC usw.. weiteres siehe z.B Url in der Einleitung.&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Transistor&amp;diff=8047</id>
		<title>Transistor</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Transistor&amp;diff=8047"/>
		<updated>2005-06-30T21:33:31Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kunstwort aus &amp;quot;transfer resistor&amp;quot;, was etwa so viel bedeutet wie &amp;quot;veränderlicher [[Widerstand]]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In den 1950-ern als praktische Anwendung des [[Halbleiter]]-Effekts erfundenes &amp;quot;solid state&amp;quot; Schalt- und Verstärkerelement, welches sehr klein ist, ohne bewegte Teile auskommt (anders als ein klassisches Relais) und keine energiefressende Heizung benötigt (anders als eine Röhre).&lt;br /&gt;
&lt;br /&gt;
Vom &amp;quot;bipolaren Transistor&amp;quot; (PNP, NPN) weiterentwickelt zum &amp;quot;Feldeffekt-Transistor&amp;quot; ([[FET]]), der heute - gefertigt mit einem preiswerten Verfahren unter Verwendung von Metall-Oxid-Schichten (MOS) - ein wesentliches Element integrierter Schaltkreise ([[IC]]s, integrated circuits) darstellt, und damit natürlich auch von [[Mikrocontroller]]n, um die es in diesem Wiki hauptsächlich geht (bzw. gehen sollte).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Typbezeichnungen == &lt;br /&gt;
&lt;br /&gt;
Neben den Typbezeichnungen wie 2Nxxxx, TIPxxx, MJxxx, MJExx gibt es noch die in Europa geläufigere  Kennzeichnung bestehend aus zwei Buchstaben und drei Ziffern. &lt;br /&gt;
&lt;br /&gt;
Die diversen Kennzeichnungsmöglichkeiten habe ich in einem eigenen Artikel ([[Kennzeichnung von Halbleitern]]) zusammengefasst.&lt;br /&gt;
&lt;br /&gt;
== Transistor Grundschaltungen ==&lt;br /&gt;
=== Basis-Schaltung ===&lt;br /&gt;
Basisschaltungem finden sich vor Allem in Eingangsstufen in der HF-Technik.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Geringe Eingangsimpedanz&lt;br /&gt;
-&amp;gt; Keine Phasenverschiebung&lt;br /&gt;
&lt;br /&gt;
=== Emitter-Schaltung ===&lt;br /&gt;
Emitterschaltungen bieten hohe Spannungsverstärkung.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Keine Phasendrehung&lt;br /&gt;
-&amp;gt; Hohe Spannungsverstärkung&lt;br /&gt;
&lt;br /&gt;
=== Kollektor-Schaltung ===&lt;br /&gt;
Auch bekannt unter Emitterfolger.&lt;br /&gt;
Wird wor allem als Impedanzwandler benutzt.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; 180° Phasendrehung&lt;br /&gt;
-&amp;gt; Hohe Stromverstärkung&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://de.wikipedia.org/wiki/transistor &amp;quot;Transistor&amp;quot; bei Wikipedia]&lt;br /&gt;
* [http://www.elektronikinfo.de/strom/bipolartransistoren.htm www.elektronikinfo.de]&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Kennzeichnung_von_Halbleitern&amp;diff=8043</id>
		<title>Kennzeichnung von Halbleitern</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Kennzeichnung_von_Halbleitern&amp;diff=8043"/>
		<updated>2005-06-30T21:32:35Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es gibt im Großen und ganzen 3 verschiedene Normen zur Kennzeichnung von Halbleitern (Dioden,Transistoren).&lt;br /&gt;
&lt;br /&gt;
Eine englische Übersicht ist auf [http://repairfaq.cis.upenn.edu/sam/tshoot.htm#tshmtrd dieser] Homepage zu finden... Zumindest bei Pro-Electron würde ich aber den Standart vorziehen (sofern dieser zu finden ist).&lt;br /&gt;
&lt;br /&gt;
== Europa (Pro-Electron) ==&lt;br /&gt;
&lt;br /&gt;
Genaue Informationen sind auf der [http://www.eeca.org/pro_elec.htm Pro-Electron]-Homepage zu finden.&lt;br /&gt;
In der verlinkten PDF-Datei(Pro Electron Booklet - Twelfth Edition ? 2005-04) ab Kapitel 4 ist eine genaue Auflistung zu finden.&lt;br /&gt;
&lt;br /&gt;
Ein Kurzfassung möchte ich aber hier nochmal bieten:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*1. Buchstabe (Ausgangsmaterial)&lt;br /&gt;
&lt;br /&gt;
** A - Germanium&lt;br /&gt;
** B - Silizium&lt;br /&gt;
&lt;br /&gt;
*2. Buchstabe (Verwendung)&lt;br /&gt;
&lt;br /&gt;
** A - Kleinleistungs Diode&lt;br /&gt;
** B - Vari-Cap&lt;br /&gt;
** C - Kleinleistungs Transistor (AF, Audio-Frequency = ... max 30MHz)&lt;br /&gt;
** D - Leistungstrasistor (AF)&lt;br /&gt;
&lt;br /&gt;
** U - Leistungsschalttransistor&lt;br /&gt;
&lt;br /&gt;
** Y - Gleichrichter-Diode&lt;br /&gt;
** Z - Z-Diode&lt;br /&gt;
&lt;br /&gt;
*3. Weitere vom Hersteller vergebene Ziffern/Buchstaben&lt;br /&gt;
&lt;br /&gt;
== Amerika (Joint Electron Device Engineering Council = JEDEC) ==&lt;br /&gt;
&lt;br /&gt;
Genaue Informationen müssten auf der [http://www.JEDEC.org JEDEC]-Homepage zu finden sein.. Aber da ich etwas gegen Zwangsregistrieren habe gebe ich nur das wieder was ich meinem Hirn so finde ;)&lt;br /&gt;
&lt;br /&gt;
*Anzahl der Sperrschichten&lt;br /&gt;
&lt;br /&gt;
**1 Diode&lt;br /&gt;
**2 Transistor&lt;br /&gt;
**3 Transistor&lt;br /&gt;
**4 Thyristor&lt;br /&gt;
&lt;br /&gt;
*N&lt;br /&gt;
&lt;br /&gt;
*Laufziffer vom Hersteller&lt;br /&gt;
&lt;br /&gt;
z.b 2N2222 oder 1N4148&lt;br /&gt;
&lt;br /&gt;
== Japan (Japanese Industrial Standard = JIS)==&lt;br /&gt;
&lt;br /&gt;
Das sind die lustigen Bauteile mit dem 2SC usw.. weiteres siehe z.B Url in der Einleitung.&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Kennzeichnung_von_Halbleitern&amp;diff=8041</id>
		<title>Kennzeichnung von Halbleitern</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Kennzeichnung_von_Halbleitern&amp;diff=8041"/>
		<updated>2005-06-30T21:30:22Z</updated>

		<summary type="html">&lt;p&gt;Hans: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es gibt im Großen und ganzen 3 verschiedene Normen zur Kennzeichnung von Halbleitern (Dioden,Transistoren).&lt;br /&gt;
&lt;br /&gt;
Eine englische Übersicht ist auf [[http://repairfaq.cis.upenn.edu/sam/tshoot.htm#tshmtrd|dieser]] Homepage zu finden... Zumindest bei Pro-Electron würde ich aber den Standart vorziehen (sofern dieser zu finden ist).&lt;br /&gt;
&lt;br /&gt;
== Europa (Pro-Electron) ==&lt;br /&gt;
&lt;br /&gt;
Genaue Informationen sind auf der [[http://www.eeca.org/pro_elec.htm|Pro-Electron]]-Homepage zu finden.&lt;br /&gt;
In der verlinkten PDF-Datei(Pro Electron Booklet - Twelfth Edition ? 2005-04) ab Kapitel 4 ist eine genaue Auflistung zu finden.&lt;br /&gt;
&lt;br /&gt;
Ein Kurzfassung möchte ich aber hier nochmal bieten:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*1. Buchstabe (Ausgangsmaterial)&lt;br /&gt;
&lt;br /&gt;
** A - Germanium&lt;br /&gt;
** B - Silizium&lt;br /&gt;
&lt;br /&gt;
*2. Buchstabe (Verwendung)&lt;br /&gt;
&lt;br /&gt;
** A - Kleinleistungs Diode&lt;br /&gt;
** B - Vari-Cap&lt;br /&gt;
** C - Kleinleistungs Transistor (AF, Audio-Frequency = ... max 30MHz)&lt;br /&gt;
** D - Leistungstrasistor (AF)&lt;br /&gt;
&lt;br /&gt;
** U - Leistungsschalttransistor&lt;br /&gt;
&lt;br /&gt;
** Y - Gleichrichter-Diode&lt;br /&gt;
** Z - Z-Diode&lt;br /&gt;
&lt;br /&gt;
*3. Weitere vom Hersteller vergebene Ziffern/Buchstaben&lt;br /&gt;
&lt;br /&gt;
== Amerika (Joint Electron Device Engineering Council = JEDEC) ==&lt;br /&gt;
&lt;br /&gt;
Genaue Informationen müssten auf der [[http://www.JEDEC.org|JEDEC]]-Homepage zu finden sein.. Aber da ich etwas gegen Zwangsregistrieren habe gebe ich nur das wieder was ich meinem Hirn so finde ;)&lt;br /&gt;
&lt;br /&gt;
*Anzahl der Sperrschichten&lt;br /&gt;
&lt;br /&gt;
**1 Diode&lt;br /&gt;
**2 Transistor&lt;br /&gt;
**3 Transistor&lt;br /&gt;
**4 Thyristor&lt;br /&gt;
&lt;br /&gt;
*N&lt;br /&gt;
&lt;br /&gt;
*Laufziffer vom Hersteller&lt;br /&gt;
&lt;br /&gt;
z.b 2N2222 oder 1N4148&lt;br /&gt;
&lt;br /&gt;
== Japan (Japanese Industrial Standard = JIS)==&lt;br /&gt;
&lt;br /&gt;
Das sind die lustigen Bauteile mit dem 2SC usw.. weiteres siehe z.B Url in der Einleitung.&lt;/div&gt;</summary>
		<author><name>Hans</name></author>
	</entry>
</feed>