<?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=Torsten+c</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=Torsten+c"/>
	<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/articles/Spezial:Beitr%C3%A4ge/Torsten_c"/>
	<updated>2026-04-20T08:58:01Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Benutzer:Torsten_c&amp;diff=100168</id>
		<title>Benutzer:Torsten c</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Benutzer:Torsten_c&amp;diff=100168"/>
		<updated>2019-01-11T21:00:35Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Reduzierung auf das Wesentliche&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ich bin Jahrgang 1969 und habe bis 1995 Elektrotechnik an der TU Braunschweig studiert.&lt;br /&gt;
&lt;br /&gt;
Hobbys: Elektronik-Projekte mit µCs, Fotografie, Motorrad, Segeln, Programmierung mit C#.NET, [http://notizblog.wordpress.com/ mein Blog], Musik (MIDI-Keyboard + Expander) und seit 2016 auch Amateurfunk.&lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/torsten_c → Bei Fragen bitte melden.]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Benutzer:Torsten_c&amp;diff=99463</id>
		<title>Benutzer:Torsten c</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Benutzer:Torsten_c&amp;diff=99463"/>
		<updated>2018-07-01T01:53:55Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Github-Link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ich bin aus dem Jahrgang 1969 und habe bis 1995 Elektrotechnik an der TU Braunschweig studiert.&lt;br /&gt;
&lt;br /&gt;
Praktische Erfahrung im Bereich der Elektronik habe ich vornehmlich durch private Hobby-Projekte gesammelt; meine Studien- und Diplomarbeit war ein Gerät mit einem DSP und einem FPGA zur Messung und Analyse von E-Motoren und Generatoren in allen vier Quadranten: Drehmoment, Drehzahl, Spannung, Strom, cos(φ), Wirkungsgrad, …&lt;br /&gt;
&lt;br /&gt;
Elektronik ist seit der Schulzeit mein Hobby. Zur Konfirmation habe ich ein [http://www.mikrocontroller.net/topic/300124 HM204-2] bekommen. Ich entwickle ungern Dinge, die es schon fertig zu kaufen gibt. Eine Ausnahme bilden vielleicht extrem teure Kaufprodukte, die nur zum Teil meinen Wünschen entsprechen; auch dann kann mir eine Eigenentwicklung wieder Spaß machen.&lt;br /&gt;
&lt;br /&gt;
Wenn ich etwas entwickele, dann sehe ich ein optimales Kosten/Nutzenverhältnis als interessante Herausforderung, ansonsten fühle ich mich damit irgendwie nicht wohl. Es sollte sich also möglichst ein potenzieller Nachbau (Open Source) lohnen.&lt;br /&gt;
&lt;br /&gt;
Meine Programmiererfahrungen aus der Schul- und Studienzeit bis 1995:&lt;br /&gt;
* Z80 (in Assembler mit Amstrad CPC und mit einem Z80-Derivat im Sharp PC 1500)&lt;br /&gt;
* Motorola 6800 (Assembler, im Praktikum)&lt;br /&gt;
* Motorola 56001 (in GNU C und Assembler, bei der Studienarbeit)&lt;br /&gt;
* Xilinx FPGA (in VHDL, bei der Diplomarbeit)&lt;br /&gt;
* Siemens C166 mit CAN und Capture-Compare-Eingängen (in C, im Beruf)&lt;br /&gt;
&lt;br /&gt;
Im Jahr 2012 habe ich mein altes Hobby wieder aufgegriffen. Zunächst hatte ich mich intensiv in den &amp;quot;MSP 430&amp;quot; eingearbeitet.&lt;br /&gt;
&lt;br /&gt;
Zwischenzeitlich hatte ich einiges mit Arduino-Boards implementiert. Mit dem Arduino-Bootloader-Konzept und den Arduino-Bibliotheken stehe ich auf Kriegsfuß. Ich nutze einen AVR Dragon und Atmel Studio mit Source-Level-Debugging.&lt;br /&gt;
&lt;br /&gt;
Aktuell arbeite ich fast ausschließlich mit STM32-Prozessoren, da sowohl die Chips als auch &amp;quot;Minimum-System-Boards&amp;quot; unschlagbar billig und leistungsfähig sind.&lt;br /&gt;
&lt;br /&gt;
Bauteile bestelle ich oft über AliExpress aus China.&lt;br /&gt;
&lt;br /&gt;
[https://github.com/TorstenC/Notizblog/wiki → Mein öffentliches Notizbuch bei GitHub].&lt;br /&gt;
&lt;br /&gt;
Weitere Hobbys: Fotografie, Motorrad, Segeln, Windows-Programmierung mit C# und VB .NET, [http://notizblog.wordpress.com/ mein Blog], Musik (MIDI-Keyboard + Expander) und seit 2016 auch Amateurfunk.&lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/torsten_c → Bei Fragen bitte melden.]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Benutzer:Torsten_c&amp;diff=93364</id>
		<title>Benutzer:Torsten c</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Benutzer:Torsten_c&amp;diff=93364"/>
		<updated>2016-07-05T12:49:02Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Aktualisiert und auf das Wesentliche gekürzt.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ich bin aus dem Jahrgang 1969 und habe bis 1995 Elektrotechnik an der TU Braunschweig studiert.&lt;br /&gt;
&lt;br /&gt;
Praktische Erfahrung im Bereich der Elektronik habe ich vornehmlich durch private Hobby-Projekte gesammelt; meine Studien- und Diplomarbeit war ein Gerät mit einem DSP und einem FPGA zur Messung und Analyse von E-Motoren und Generatoren in allen vier Quadranten: Drehmoment, Drehzahl, Spannung, Strom, cos(φ), Wirkungsgrad, …&lt;br /&gt;
&lt;br /&gt;
Elektronik ist seit der Schulzeit mein Hobby. Zur Konfirmation habe ich ein [http://www.mikrocontroller.net/topic/300124 HM204-2] bekommen. Ich entwickle ungern Dinge, die es schon fertig zu kaufen gibt. Eine Ausnahme bilden vielleicht extrem teure Kaufprodukte, die nur zum Teil meinen Wünschen entsprechen; auch dann kann mir eine Eigenentwicklung wieder Spaß machen.&lt;br /&gt;
&lt;br /&gt;
Wenn ich etwas entwickele, dann sehe ich ein optimales Kosten/Nutzenverhältnis als interessante Herausforderung, ansonsten fühle ich mich damit irgendwie nicht wohl. Es sollte sich also möglichst ein potenzieller Nachbau (Open Source) lohnen.&lt;br /&gt;
&lt;br /&gt;
Meine Programmiererfahrungen aus der Schul- und Studienzeit bis 1995:&lt;br /&gt;
* Z80 (in Assembler mit Amstrad CPC und mit einem Z80-Derivat im Sharp PC 1500)&lt;br /&gt;
* Motorola 6800 (Assembler, im Praktikum)&lt;br /&gt;
* Motorola 56001 (in GNU C und Assembler, bei der Studienarbeit)&lt;br /&gt;
* Xilinx FPGA (in VHDL, bei der Diplomarbeit)&lt;br /&gt;
* Siemens C166 mit CAN und Capture-Compare-Eingängen (in C, im Beruf)&lt;br /&gt;
&lt;br /&gt;
Im Jahr 2012 habe ich mein altes Hobby wieder aufgegriffen. Zunächst hatte ich mich intensiv in den &amp;quot;MSP 430&amp;quot; eingearbeitet.&lt;br /&gt;
&lt;br /&gt;
Zwischenzeitlich hatte ich einiges mit Arduino-Boards implementiert. Mit dem Arduino-Bootloader-Konzept und den Arduino-Bibliotheken stehe ich auf Kriegsfuß. Ich nutze einen AVR Dragon und Atmel Studio mit Source-Level-Debugging.&lt;br /&gt;
&lt;br /&gt;
Aktuell arbeite ich fast ausschließlich mit STM32-Prozessoren, da sowohl die Chips als auch &amp;quot;Minimum-System-Boards&amp;quot; unschlagbar billig und leistungsfähig sind.&lt;br /&gt;
&lt;br /&gt;
Bauteile bestelle ich oft über AliExpress aus China.&lt;br /&gt;
&lt;br /&gt;
Weitere Hobbys: Fotografie, Motorrad, Segeln, Windows-Programmierung mit C# und VB .NET, [http://notizblog.wordpress.com/ mein Blog], Musik (MIDI-Keyboard + Expander) und seit 2016 auch Amateurfunk.&lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/torsten_c Bei Fragen bitte melden.]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=%C3%9Cbersicht_Funkmodule&amp;diff=89616</id>
		<title>Übersicht Funkmodule</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=%C3%9Cbersicht_Funkmodule&amp;diff=89616"/>
		<updated>2015-08-25T17:20:30Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* RFM12B */ Siehe https://www.mikrocontroller.net/topic/354149#3950049&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hier eine kleine Übersicht über die vorhanden Funkmodule. in Arbeit !!!&lt;br /&gt;
&lt;br /&gt;
== Übersicht ==&lt;br /&gt;
&lt;br /&gt;
=== Module ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! !! [[RFM12|RFM12B]] !! [[RFM69|RFM69(H)(C)W]] !! [[NRF24L01_Tutorial|nRF24L01+]] !! [[ESP8266]] !! EMW3162&lt;br /&gt;
|-&lt;br /&gt;
| für neue Designs empfohlen (Stand: Jan 2015)|| ja &amp;lt;strike&amp;gt;discontinued!&amp;lt;/strike&amp;gt; || ja || ja || ja || ja&lt;br /&gt;
|-&lt;br /&gt;
| Frequenz || 433, 868 Mhz || 315, 433, 868, 915 Mhz || 2,4 Ghz || colspan=&amp;quot;2&amp;quot;  style=&amp;quot;text-align:center&amp;quot; | 2,4 Ghz (WLAN 802.11b/g/n)&lt;br /&gt;
|-&lt;br /&gt;
| Versorgungsspannung || 2,2 - 3,8 V || 1,8 - 3,6 V || 1,9 - 3,6 V || 3,3 V || 3,3V&lt;br /&gt;
|-&lt;br /&gt;
| Max. Datenrate || 115,2 kbit/s || 300 kbit/s || 2 Mbit/s || 4,5-7 Mbit/s &amp;lt;ref&amp;gt;http://www.mikrocontroller.net/articles/ESP8266#Datendurchsatz.2FPerformanz&amp;lt;/ref&amp;gt; &amp;lt;ref&amp;gt;http://www.mikrocontroller.net/topic/342240?page=single#3857630&amp;lt;/ref&amp;gt; || bis 20 Mbit/s&amp;lt;ref&amp;gt;http://www.seeedstudio.com/depot/EMW3162-WiFi-Module-p-2122.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Min. Datenrate || 1,2 kbit/s || 1,2 kbit/s || 0,5 Mbit/s || colspan=&amp;quot;2&amp;quot; style=&amp;quot;text-align:center&amp;quot; | ? Mbit/s&lt;br /&gt;
|-&lt;br /&gt;
| Stromaufnahme (TX/RX/Sleep) || 22 mA/11 mA/0,3 µA || 45 mA/16 mA/0,1 µA&amp;lt;br&amp;gt;130 mA/16 mA/0,1 µA (HCW) || 11,3 mA/13,3 mA/0,9 µA&amp;lt;br&amp;gt;115 mA/13,3 mA/0,9 µA (PA) || 215 mA/60 mA/0,9 µA || 24mA (20kbit/s), 320mA (max) / 52-59mA / 7mA (connected), 200 µA (sleep), 2µA (off)&lt;br /&gt;
|-&lt;br /&gt;
| Sendeleistung || +5 dBm || +13 dBm (~20 mW !)&amp;lt;br /&amp;gt;+20 dBm (HCW) || 0 dBm&amp;lt;br /&amp;gt;+20 dBm (mit PA) || +15 dBm (802.11g/n)&amp;lt;br /&amp;gt;+18,5 dBm (802.11b) || +14,5 dBm (802.11n)&amp;lt;br /&amp;gt;+15,5 dBm (802.11g)&amp;lt;br /&amp;gt;+18,5 dBm (802.11b)&lt;br /&gt;
|- &lt;br /&gt;
| Empfindlichkeit || -105 dBm || -120 dBm || -94 dBm || -98 dBm (802.11b)&amp;lt;br /&amp;gt;-93 dBm (802.11g) || -96 dBm (802.11b)&amp;lt;br /&amp;gt;-90 dBm (802.11g)&amp;lt;br /&amp;gt;-89 dBm (802.11n)&lt;br /&gt;
|-&lt;br /&gt;
| Reichweite || + || ++ || - || - || -&lt;br /&gt;
|-&lt;br /&gt;
| Paketmanagement || keines || Prüfsumme, Adresse, Retransmit, Verschlüsslung || Prüfsumme, Adresse, Retransmit || IPv4&amp;lt;br&amp;gt;(TCP und UDP) || IPv4 und IPv6&amp;lt;br&amp;gt;(TCP und UDP)&lt;br /&gt;
|-&lt;br /&gt;
| Verschlüsselung || - || + (AES in Hardware) || - || colspan=&amp;quot;2&amp;quot; style=&amp;quot;text-align:center&amp;quot; | + (WLAN Verschlüsslung)&lt;br /&gt;
|-&lt;br /&gt;
| FIFO Size || 16 Bit || 66 Bytes || 3 separate 32 bytes TX and RX FIFOs || ? || ?&lt;br /&gt;
|-&lt;br /&gt;
| Support im Forum || ++ || ○ || ++ || + || ○&lt;br /&gt;
|-&lt;br /&gt;
| einfache Lib (Prüfsumme, Sender, Retransmit) || ? || ja, siehe Links || ja, siehe Links || Firmware buggy (01.2015) || WICED, UART Firmware&lt;br /&gt;
|-&lt;br /&gt;
|Preis (01.2015) || 3-5 € || 4-6 € || 1 € || 1 € || 8-10€&lt;br /&gt;
|-&lt;br /&gt;
|Verfügbarkeit (01.2015) || ++ || + || ++ || ++ || +&lt;br /&gt;
|-&lt;br /&gt;
|Bezugsquellen (01.2015) || ebay, Ali || [http://www.pollin.de/shop/suchergebnis.html?S_TEXT=RFM69 Pollin], Ali || ebay, Ali || ebay, Ali, [http://www.amazon.de/s/url=search-alias%3Daps&amp;amp;field-keywords=esp8266ex Amazon] || Ali, [http://www.seeedstudio.com/depot/EMW3162-WiFi-Module-p-2122.html Seedstudio]&lt;br /&gt;
|-&lt;br /&gt;
|Tauglichkeit Hausbus || + || ++ || ○ || ○ || ○&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Frequenzen ===&lt;br /&gt;
&lt;br /&gt;
siehe auch [[Allgemeinzuteilung]]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! !! 433 Mhz !! 868 Mhz !! 2400 Mhz (2,4 Ghz)&lt;br /&gt;
|-&lt;br /&gt;
| Sendeleistung || 10 mW ERP || 10-500 mW ERP|| 10 mW ERP&amp;lt;br /&amp;gt;100 mW EIRP&lt;br /&gt;
|-&lt;br /&gt;
| Duty Cycle || keinen || 0,1-10 % || keinen&lt;br /&gt;
|-&lt;br /&gt;
| Reichweite || ++ || + || - &lt;br /&gt;
|-&lt;br /&gt;
| Störung durch andere || + || ○ || ++ &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Details zu den Modulen ==&lt;br /&gt;
&lt;br /&gt;
=== RFM12B ===&lt;br /&gt;
&lt;br /&gt;
Die RFM12(B) sind wohl die Urgesteine der drahtlosen Kommunikation: Tausendfach erprobt!&lt;br /&gt;
&lt;br /&gt;
* [[AVR RFM12]]&lt;br /&gt;
* [[RFM12 Protokoll Stack]]&lt;br /&gt;
* [[RF_SOAP]]&lt;br /&gt;
* [[Pollin_Funk-AVR-Evaluationsboard]]&lt;br /&gt;
&lt;br /&gt;
=== RFM69 ===&lt;br /&gt;
&lt;br /&gt;
Der RFM69 ist der Nachfolger des RFM12B. Er untersützt mehr Frequenzen und hat eine leicht bessere Sendeleistung. Die größten Neuerungen sind die integrierte AES-Verschlüsselung sowie das eingebaute Paketmanagement, das sich um Prüfsummen, Adressen und Re-Transmits kümmert. Daher bringen sie alles in Hardware mit, was für eine sichere, drahtlose Kommunikation nötig ist.&lt;br /&gt;
&lt;br /&gt;
Es gibt folgende Module:&lt;br /&gt;
* RFM69HCW, mit zusätzlicher PA, (+20 dBm TX)&lt;br /&gt;
* RFM69HW, mit zusätzlicher PA, (+20 dBm TX)&lt;br /&gt;
* RFM69CW, Pinkompatibel zum RFM12B&lt;br /&gt;
* RFM69W&lt;br /&gt;
&lt;br /&gt;
Links:&lt;br /&gt;
* [https://github.com/LowPowerLab/RFM69 RFM69 Lib zur Ansteuerung mit Arduino]&lt;br /&gt;
* [http://www.airspayce.com/mikem/arduino/RadioHead/index.html RadioHead Lib zum Aufbau eines MESH-Netzwerkes]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/332579 Thread im Forum: Wer verwendet RFM69]&lt;br /&gt;
&lt;br /&gt;
=== nRF24L01+ ===&lt;br /&gt;
&lt;br /&gt;
Die wohl billigsten Funkmodule. Funken im 2,4 Ghz Band und haben alles in Hardware integriert für eine einfache Kommunikation. Gibt es schon länger am Markt, daher gibt es schon viele erprobte Bibliotheken für die Ansteuerung vom Arduino, RaspberryPi, ...&lt;br /&gt;
&lt;br /&gt;
Achtung! Nicht mit nRF24L01 (ohne Plus) verwechseln. Diese Module werden nicht mehr hergestellt und sind veraltet!&lt;br /&gt;
&lt;br /&gt;
* [http://tmrh20.github.io/RF24/ Bibliothek für die Ansteuerung über Arduino, RaspberryPi, Intel Galileo...]&lt;br /&gt;
* [http://tmrh20.github.io/RF24Network/ Bibliothek für eine ZigBee ähnliche Kommunikation (Mesh Nettwerk)]&lt;br /&gt;
&lt;br /&gt;
=== ESP8266 ===&lt;br /&gt;
&lt;br /&gt;
Das WLAN-Modul kann sowohl Client als auch AP sein. Hat einen starken Hype ausgelöst und dementsprechend ist die Community rasant gewachsen, wodurch sich sogar ein eigenes Forum entwickelt hat ([http://www.esp8266.com www.esp8266.com]). Das Modul kann man über AT-Kommandos steuern, es wird ein LUA-Skript Interpreter entwickelt und man kann den integrieten SoC auch direkt programmieren, sodass man für einfache Aufgaben (Temperatur auslesen etc.) keinen extra MC braucht. Für die Programmierung wird vom Hersteller eine fertig eingerichtete VM zur Verfügung gestellt. Es wird aber auch an einem Port des gcc gearbeitet. Leider ist aktuell (01.2015) noch alles recht buggy...&lt;br /&gt;
&lt;br /&gt;
=== EMW3162 ===&lt;br /&gt;
&lt;br /&gt;
[http://hackaday.com/2015/03/24/emw3162-wifi-120mhz-needs-attention/ HackADay Eintrag]&lt;br /&gt;
&lt;br /&gt;
[http://www.joinmx.com/uploadfiles/soft/EMW/DS0006E_EMW3162_V2.2.pdf Datasheet]&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/354149 Thread zum Artikel (Fragen, Anregungen etc. hier posten)]&lt;br /&gt;
* [http://www.hoperf.com/upload/rf/RF12.pdf Datenblatt des ICs RF12] (PDF)&lt;br /&gt;
* [http://www.hoperf.com/upload/rf/RFM12.pdf Datenblatt des Moduls RFM12] (PDF)&lt;br /&gt;
* [http://www.hoperf.com/upload/rf/RFM69CW-V1.1.pdf Datenblatt RFM69CW]&lt;br /&gt;
* [http://www.hoperf.com/upload/rf/RFM69W-V1.3.pdf Datenblatt RFM69W]&lt;br /&gt;
* [http://www.mikrocontroller.net/articles/NRF24L01_Tutorial kleines NRF24L01+ Tutorial in C]&lt;br /&gt;
&lt;br /&gt;
== Fußnoten ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Bauteile]]&lt;br /&gt;
[[Kategorie:RFM12| ]]&lt;br /&gt;
[[Kategorie:Funk]]&lt;br /&gt;
[[Kategorie:Datenübertragung]]&lt;br /&gt;
[[Category:Hausbus]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=MOSFET-%C3%9Cbersicht&amp;diff=89327</id>
		<title>MOSFET-Übersicht</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=MOSFET-%C3%9Cbersicht&amp;diff=89327"/>
		<updated>2015-07-17T00:25:28Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* N-Kanal MOSFET */ SI2302DS ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Im Forum wird immer wieder gefragt, welchen Mosfet-Transistor man für ein Projekt einsetzen sollte. Und wo man die herbekommt. Deshalb soll hier eine Übersicht mit gängigen Mosfet-Transistoren entstehen, wo auch die Bezugsquellen angegeben sind. Bezugsquellen sollten nach Möglichkeit solche sein, die auch für den privaten Bastler in Frage kommen.&lt;br /&gt;
&lt;br /&gt;
Der Thread zum Thema: http://www.mikrocontroller.net/topic/41588&lt;br /&gt;
&lt;br /&gt;
siehe auch : [[Transistor-Übersicht]] - [[Dioden-Übersicht]] - [[Standardbauelemente]]&lt;br /&gt;
&lt;br /&gt;
== P-Kanal MOSFET==&lt;br /&gt;
&lt;br /&gt;
{| {{Tabelle}} border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable sortable&amp;quot; id=&amp;quot;pkanalmosfets&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#eeeeee&amp;quot;&lt;br /&gt;
! Bezeichnung&lt;br /&gt;
! Package&lt;br /&gt;
! Hersteller&lt;br /&gt;
! U&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;/V&lt;br /&gt;
! U&amp;lt;sub&amp;gt;DS&amp;lt;/sub&amp;gt;/V&lt;br /&gt;
! I&amp;lt;sub&amp;gt;D&amp;lt;/sub&amp;gt;/A&lt;br /&gt;
! P/W&lt;br /&gt;
! R&amp;lt;sub&amp;gt;DS,on&amp;lt;/sub&amp;gt;/mOhm&lt;br /&gt;
! Bemerkung&lt;br /&gt;
! Lieferant&lt;br /&gt;
! Einzelpreis&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BS250 BS250]&lt;br /&gt;
| TO-92/SOT-23&lt;br /&gt;
| Siliconix&lt;br /&gt;
| 4,0&lt;br /&gt;
| 60&lt;br /&gt;
| 0,12&lt;br /&gt;
| 0,35&lt;br /&gt;
| 10000&lt;br /&gt;
| -&lt;br /&gt;
|[[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Buerklin|Bü]]&lt;br /&gt;
| 0,32 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSH205 BSH205]&lt;br /&gt;
| SOT23&lt;br /&gt;
| Phi&lt;br /&gt;
| 1,0&lt;br /&gt;
| 12&lt;br /&gt;
| 0,75&lt;br /&gt;
| 0,4&lt;br /&gt;
| 500&lt;br /&gt;
| kleine Gatekapazität (3.8nC)&lt;br /&gt;
| [[Elektronikversender#csd-electronics|csd]] (a.A.)&lt;br /&gt;
| 0,30 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/SI2301 SI2301]&lt;br /&gt;
| SOT23&lt;br /&gt;
| Vishay&lt;br /&gt;
| 1,5&lt;br /&gt;
| 20&lt;br /&gt;
| 2,0&lt;br /&gt;
| 0,7&lt;br /&gt;
| 150&lt;br /&gt;
| kleine Gatekapazität (typ 4.5nC)&lt;br /&gt;
| [[Elektronikversender#farnell|farnell]]&lt;br /&gt;
| 0,30 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLML6402  IRLML6402PBF]&lt;br /&gt;
| SOT23&lt;br /&gt;
| IRF&lt;br /&gt;
| 1,2&lt;br /&gt;
| 20&lt;br /&gt;
| 3,7&lt;br /&gt;
| 1,3&lt;br /&gt;
| 65&lt;br /&gt;
| Ultra-Low On-Resistance, Logic-level&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#csd-electronics|csd]],[[Elektronikversender#Buerklin|Bü]]&lt;br /&gt;
| 0,15 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLML6302  IRLML6302PBF]&lt;br /&gt;
| SOT23&lt;br /&gt;
| IRF&lt;br /&gt;
| 1,5&lt;br /&gt;
| 20&lt;br /&gt;
| 0,75&lt;br /&gt;
| 0,54&lt;br /&gt;
| 600&lt;br /&gt;
| ähnlich BSH205&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#csd-electronics|csd]],[[Elektronikversender#Buerklin|Bü]]&lt;br /&gt;
| 0,18 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSS83P BSS83P]&lt;br /&gt;
| SOT23&lt;br /&gt;
| Inf&lt;br /&gt;
| 2,0&lt;br /&gt;
| 60&lt;br /&gt;
| 0,33&lt;br /&gt;
| 0,36&lt;br /&gt;
| 2000&lt;br /&gt;
| nicht mit BSS83 (ohne P) verwechseln&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,11 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSS84 BSS84]&lt;br /&gt;
| SOT23&lt;br /&gt;
| Fairchild,NXP&lt;br /&gt;
| 2,0&lt;br /&gt;
| 50&lt;br /&gt;
| 0,13&lt;br /&gt;
| 0,35&lt;br /&gt;
| 10000&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#Farnell|Fa]]&lt;br /&gt;
| 0,28 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSS110 BSS110]&lt;br /&gt;
| TO-97, SOT23&lt;br /&gt;
| Phi&lt;br /&gt;
| 3,0&lt;br /&gt;
| 50&lt;br /&gt;
| 0,17&lt;br /&gt;
| 0,35&lt;br /&gt;
| 10000&lt;br /&gt;
| -&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/PMV65XP PMV65XP]&lt;br /&gt;
| SOT23&lt;br /&gt;
| Phi&lt;br /&gt;
| 1,4&lt;br /&gt;
| 20&lt;br /&gt;
| 3,9&lt;br /&gt;
| ?&lt;br /&gt;
| 76&lt;br /&gt;
| grosser ID für Bauform&lt;br /&gt;
| [[Elektronikversender#Spoerle|Spo]], [[Elektronikversender#RS_Components|RS]]&lt;br /&gt;
| 0,10 € (3000er-Rolle)&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF4905S IRF4905S]&lt;br /&gt;
| D2Pack&lt;br /&gt;
| irf&lt;br /&gt;
| 4,0&lt;br /&gt;
| 55&lt;br /&gt;
| 64&lt;br /&gt;
| 3,8&lt;br /&gt;
| 20&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]], [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 1,10 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF4905 IRF4905]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 4,0&lt;br /&gt;
| 55&lt;br /&gt;
| 74&lt;br /&gt;
| 200&lt;br /&gt;
| 20&lt;br /&gt;
| -&lt;br /&gt;
|[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,93 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF5210 IRF5210]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 10,0&lt;br /&gt;
| 100&lt;br /&gt;
| 40&lt;br /&gt;
| 200&lt;br /&gt;
| 60&lt;br /&gt;
| -&lt;br /&gt;
|[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,15 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF5210S IRF5210S]&lt;br /&gt;
| D2Pack&lt;br /&gt;
| irf&lt;br /&gt;
| 10,0&lt;br /&gt;
| 100&lt;br /&gt;
| 40&lt;br /&gt;
| ?&lt;br /&gt;
| 60&lt;br /&gt;
| -&lt;br /&gt;
|[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,25 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7205 IRF7205]&lt;br /&gt;
| SO-8&lt;br /&gt;
| irf&lt;br /&gt;
| 3,0&lt;br /&gt;
| 30&lt;br /&gt;
| 4,6&lt;br /&gt;
| 2,5&lt;br /&gt;
| 70&lt;br /&gt;
| ?&lt;br /&gt;
|[[Elektronikversender#Reichelt|Rei]] &lt;br /&gt;
| 0,34 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/FDC604P FDC604P]&lt;br /&gt;
| SuperSOT-6&lt;br /&gt;
| Fairchild&lt;br /&gt;
| 1,5&lt;br /&gt;
| 20&lt;br /&gt;
| 5,5&lt;br /&gt;
| 0,8-1,6&lt;br /&gt;
| 33&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#csd-electronics|csd]] (a.A.)&lt;br /&gt;
| 0,70 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/NDS0610 NDS0610]&lt;br /&gt;
| SOT-23&lt;br /&gt;
| Fairchild&lt;br /&gt;
| 1,8&lt;br /&gt;
| 60&lt;br /&gt;
| 0,12&lt;br /&gt;
| 0,36&lt;br /&gt;
| 10000&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#csd-electronics|csd]]&lt;br /&gt;
| 0,07 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF5305 IRF5305]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 3,0&lt;br /&gt;
| 55&lt;br /&gt;
| 31&lt;br /&gt;
| 110&lt;br /&gt;
| 60&lt;br /&gt;
| -&lt;br /&gt;
|[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,59 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/NDS352P NDS352P]&lt;br /&gt;
| SOT23&lt;br /&gt;
| Fairchild&lt;br /&gt;
| 4,5&lt;br /&gt;
| 20&lt;br /&gt;
| 0,85&lt;br /&gt;
| 0,5&lt;br /&gt;
| 500&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,76 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSP171 BSP171]&lt;br /&gt;
| SOT-223&lt;br /&gt;
| Siemens&lt;br /&gt;
| 1,4&lt;br /&gt;
| 60&lt;br /&gt;
| 1,7&lt;br /&gt;
| 1,8&lt;br /&gt;
| 350&lt;br /&gt;
| -&lt;br /&gt;
|[-]&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRFD9014 IRFD9014]&lt;br /&gt;
| HEXDIP/DIP4&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0&lt;br /&gt;
| 60&lt;br /&gt;
| 1,1&lt;br /&gt;
| 1,3&lt;br /&gt;
| 500&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,65 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRFD9024 IRFD9024]&lt;br /&gt;
| HEXDIP/DIP4&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0&lt;br /&gt;
| 60&lt;br /&gt;
| 1,6&lt;br /&gt;
| 1,3&lt;br /&gt;
| 280&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]],[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,50 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7416 IRF7416]&lt;br /&gt;
| SO-8&lt;br /&gt;
| irf&lt;br /&gt;
| 1,0&lt;br /&gt;
| 30&lt;br /&gt;
| 10&lt;br /&gt;
| 2,5&lt;br /&gt;
| 20&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,43 € / 0,60 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/SUP75P03 SUP75P03-007]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| VISHAY&lt;br /&gt;
| 3,0&lt;br /&gt;
| 30&lt;br /&gt;
| 75&lt;br /&gt;
| 187&lt;br /&gt;
| 7&lt;br /&gt;
| -&lt;br /&gt;
| nessel-elektronik.de&lt;br /&gt;
| 2,30 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7220 IRF7220]&lt;br /&gt;
| SO-8&lt;br /&gt;
| irf&lt;br /&gt;
| 0,6&lt;br /&gt;
| 14&lt;br /&gt;
| 11&lt;br /&gt;
| 2,5&lt;br /&gt;
| 8,2&lt;br /&gt;
| spezifiziert ab 2,5V Vgs, Qg=84nC&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]], [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,58 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7410 IRF7410]&lt;br /&gt;
| SO-8&lt;br /&gt;
| irf&lt;br /&gt;
| 0,4...0,9&lt;br /&gt;
| 12&lt;br /&gt;
| 16&lt;br /&gt;
| 2,5&lt;br /&gt;
| 7&lt;br /&gt;
| spezifiziert ab 1,8V Vgs, Qg=91nC &lt;br /&gt;
| distrelec.de&amp;lt;br/&amp;gt;[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,80 €&amp;lt;br/&amp;gt;0,85 €&lt;br /&gt;
|-&lt;br /&gt;
| AOC2413&lt;br /&gt;
| MCSP&lt;br /&gt;
| Alpha&amp;amp;Omega&lt;br /&gt;
| 0,42&lt;br /&gt;
| 8&lt;br /&gt;
| 3,5&lt;br /&gt;
| 0,55&lt;br /&gt;
| 28&lt;br /&gt;
| spezifiziert ab 1,2V Vgs, Qg=19nC &lt;br /&gt;
| Digikey&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
(Tabelle mit Click im Kopfbereich sortierbar; a.A. = Auf Anfrage)&lt;br /&gt;
&lt;br /&gt;
== N-Kanal MOSFET==&lt;br /&gt;
&lt;br /&gt;
{| {{Tabelle}} class=&amp;quot;wikitable sortable&amp;quot; id=&amp;quot;nkanalmosfets&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#eeeeee&amp;quot;&lt;br /&gt;
! Bezeichnung&lt;br /&gt;
! Package&lt;br /&gt;
! Hersteller&lt;br /&gt;
! U&amp;lt;sub&amp;gt;GS(th)&amp;lt;/sub&amp;gt;/V&lt;br /&gt;
! U&amp;lt;sub&amp;gt;DS&amp;lt;/sub&amp;gt;/V&lt;br /&gt;
! I&amp;lt;sub&amp;gt;D&amp;lt;/sub&amp;gt;/A&lt;br /&gt;
! P/W&lt;br /&gt;
! R&amp;lt;sub&amp;gt;DS,on&amp;lt;/sub&amp;gt;/mOhm&lt;br /&gt;
! Bemerkung&lt;br /&gt;
! Lieferant&lt;br /&gt;
! Preis/EUR&lt;br /&gt;
|-&lt;br /&gt;
| SI2302DS&lt;br /&gt;
| SOT-23&lt;br /&gt;
| Vishay&lt;br /&gt;
| 0,65-4,5&lt;br /&gt;
| 20&lt;br /&gt;
| 6&lt;br /&gt;
| 1,25&lt;br /&gt;
| 70&lt;br /&gt;
| sehr billig&lt;br /&gt;
| [[Elektronikversender#AliExpress|Ali]]&lt;br /&gt;
| 0,01&lt;br /&gt;
|-&lt;br /&gt;
| IRFP 4310Z &lt;br /&gt;
| TO-247AC&lt;br /&gt;
| irf&lt;br /&gt;
| 2-4&lt;br /&gt;
| 100&lt;br /&gt;
| 120&lt;br /&gt;
| 280&lt;br /&gt;
| 4,8&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,80&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRFP450 IRFP450]&lt;br /&gt;
| TO-247&lt;br /&gt;
| irf&lt;br /&gt;
| 3&lt;br /&gt;
| 500&lt;br /&gt;
| 14&lt;br /&gt;
| 190&lt;br /&gt;
| 400&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,20&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF530 IRF530]&lt;br /&gt;
| TO-220&lt;br /&gt;
| irf&lt;br /&gt;
| 2,9&lt;br /&gt;
| 100&lt;br /&gt;
| 16&lt;br /&gt;
| 94&lt;br /&gt;
| 160&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,44&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRL3103 IRL3103]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 1,0&lt;br /&gt;
| 30&lt;br /&gt;
| 64&lt;br /&gt;
| 94&lt;br /&gt;
| 12&lt;br /&gt;
| Qg=33nC (!)&lt;br /&gt;
| [[Elektronikversender#Segor-electronics|Seg]]&lt;br /&gt;
| 0,95&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF730A IRF730A]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0&lt;br /&gt;
| 400&lt;br /&gt;
| 5,5&lt;br /&gt;
| 74&lt;br /&gt;
| 1000&lt;br /&gt;
| Qg=22nC (!)&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,54&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRFP064 IRFP064]&lt;br /&gt;
| TO-247AC&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0&lt;br /&gt;
| 60&lt;br /&gt;
| 70&lt;br /&gt;
| 300&lt;br /&gt;
| 9&lt;br /&gt;
| Qg=190 nC&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,65&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF3205 IRF3205]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0&lt;br /&gt;
| 55&lt;br /&gt;
| 110&lt;br /&gt;
| 200&lt;br /&gt;
| 8&lt;br /&gt;
|&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,69&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRL3803 IRL3803]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 1,0&lt;br /&gt;
| 30&lt;br /&gt;
| 140&lt;br /&gt;
| 200&lt;br /&gt;
| 6&lt;br /&gt;
| Qg=140nC&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,96&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF540 IRF540]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 3&lt;br /&gt;
| 100&lt;br /&gt;
| 28&lt;br /&gt;
| 150&lt;br /&gt;
| 77&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Kessler|Kes]]&lt;br /&gt;
| 0,52&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7401 IRF7401]&lt;br /&gt;
| SO-8&lt;br /&gt;
| irf&lt;br /&gt;
| 2,7&lt;br /&gt;
| 20&lt;br /&gt;
| 8,7&lt;br /&gt;
| 2,0&lt;br /&gt;
| 22&lt;br /&gt;
| spezifiziert ab 2,7V Vgs&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,72&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7403 IRF7403]&lt;br /&gt;
| SO-8&lt;br /&gt;
| irf&lt;br /&gt;
| 4,85&lt;br /&gt;
| 30&lt;br /&gt;
| 8,5&lt;br /&gt;
| 2,5&lt;br /&gt;
| 22&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,42&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7413 IRF7413]&lt;br /&gt;
| SO-8&lt;br /&gt;
| irf&lt;br /&gt;
| 3,0&lt;br /&gt;
| 30&lt;br /&gt;
| 13,0&lt;br /&gt;
| 2,5&lt;br /&gt;
| 11&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Kessler|Kes]]&lt;br /&gt;
| 0,41&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BUZ11 BUZ11]&lt;br /&gt;
| TO-220&lt;br /&gt;
| ST&lt;br /&gt;
| 4,0&lt;br /&gt;
| 50&lt;br /&gt;
| 33,0&lt;br /&gt;
| 90,0&lt;br /&gt;
| 30&lt;br /&gt;
| Linearbetrieb möglich, Achtung! Der BUZ11 von STM hat deutlich niedrigere SOA-Grenzen als von anderen Herstellern!&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,50&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSS83 BSS83]&lt;br /&gt;
| SOT143&lt;br /&gt;
| NXP&lt;br /&gt;
| 2,0&lt;br /&gt;
| 10&lt;br /&gt;
| 0,05&lt;br /&gt;
| 0,23&lt;br /&gt;
| 45000&lt;br /&gt;
| nicht mit BSS83&#039;&#039;&#039;P&#039;&#039;&#039; verwechseln, Substratanschluss herausgeführt&lt;br /&gt;
| [[Elektronikversender#RS_Components|RS]],[[Elektronikversender#TME_.28Transfer_Multisort_Elektronik.29|TME]]&lt;br /&gt;
| 0,10&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/BS170 BS170]&lt;br /&gt;
| TO-92&lt;br /&gt;
&lt;br /&gt;
| gs&lt;br /&gt;
| 2,0&lt;br /&gt;
| 60&lt;br /&gt;
| 0,3&lt;br /&gt;
| 0,83&lt;br /&gt;
| 5000&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,13&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSN20 BSN20]&lt;br /&gt;
| SOT-23&lt;br /&gt;
| gs&lt;br /&gt;
| 1,8&lt;br /&gt;
| 50&lt;br /&gt;
| 0,18&lt;br /&gt;
| 0,35&lt;br /&gt;
| 6000&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,092&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSS138 BSS138]&lt;br /&gt;
| SOT-23&lt;br /&gt;
| div&lt;br /&gt;
| 0,8-1,6&lt;br /&gt;
| 50&lt;br /&gt;
| 0,22&lt;br /&gt;
| 0,36&lt;br /&gt;
| 2000&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,06&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSS123 BSS123]&lt;br /&gt;
| SOT-23&lt;br /&gt;
| div&lt;br /&gt;
| 0,8-1,6&lt;br /&gt;
| 100&lt;br /&gt;
| 0,17&lt;br /&gt;
| 0,36&lt;br /&gt;
| 10000 @ 4,5V, &lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,06&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRFP2907 IRFP2907]&lt;br /&gt;
| TO-247AC&lt;br /&gt;
| irf&lt;br /&gt;
| 4,0&lt;br /&gt;
| 75&lt;br /&gt;
| 209&lt;br /&gt;
| 470&lt;br /&gt;
| 4,5&lt;br /&gt;
|&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 2,70&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/2N7000 2N7000]&lt;br /&gt;
| TO-92&lt;br /&gt;
| ON&lt;br /&gt;
| 3,0&lt;br /&gt;
| 60&lt;br /&gt;
| 0,2&lt;br /&gt;
| 0,35&lt;br /&gt;
| 5000&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Kessler|Kes]]&lt;br /&gt;
| 0,13&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BS107 BS107]&lt;br /&gt;
| TO-92&lt;br /&gt;
| ON, Phi&lt;br /&gt;
| 3,0&lt;br /&gt;
| 200&lt;br /&gt;
| 0,25&lt;br /&gt;
| 0,35&lt;br /&gt;
| 6400/14000&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,18&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BS108 BS108]&lt;br /&gt;
| TO-92&lt;br /&gt;
| ON, Phi&lt;br /&gt;
| 2,0&lt;br /&gt;
| 200&lt;br /&gt;
| 0,25&lt;br /&gt;
| 0,35&lt;br /&gt;
| 8000&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,14&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BUK100 BUK100]&lt;br /&gt;
| TO-220&lt;br /&gt;
| Phi&lt;br /&gt;
| 3,0&lt;br /&gt;
| 50&lt;br /&gt;
| 13,5&lt;br /&gt;
| 40&lt;br /&gt;
| 125&lt;br /&gt;
| Overload-Protection, ESD-Protection&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,40&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRL3705N IRL3705N]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0&lt;br /&gt;
| 55&lt;br /&gt;
| 89&lt;br /&gt;
| 170&lt;br /&gt;
| 10&lt;br /&gt;
| Qg=98nC&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,20&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BUZ72 BUZ72A]&lt;br /&gt;
| TO-220&lt;br /&gt;
| Infineon&lt;br /&gt;
| 4,0&lt;br /&gt;
| 100&lt;br /&gt;
| 9,0&lt;br /&gt;
| 40&lt;br /&gt;
| 250&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,45&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLZ34N IRLZ34N]&lt;br /&gt;
| TO-220&lt;br /&gt;
| irf&lt;br /&gt;
| 2,5&lt;br /&gt;
| 55&lt;br /&gt;
| 30&lt;br /&gt;
| 68&lt;br /&gt;
| 35&lt;br /&gt;
| 5V Logic-Level, Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Farnell|Far]],[[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 0,45&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLML2502 IRLML2502]&lt;br /&gt;
| SOT23&lt;br /&gt;
| irf&lt;br /&gt;
| 1,2&lt;br /&gt;
| 20&lt;br /&gt;
| 4,2&lt;br /&gt;
| 1&lt;br /&gt;
| 45&lt;br /&gt;
| Logic-Level&lt;br /&gt;
| [[Elektronikversender#csd-electronics|csd]] [[Elektronikversender#Reichelt|Rei (neu)]]&lt;br /&gt;
| 0,17&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF1404 IRF1404]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 4,0&lt;br /&gt;
| 40&lt;br /&gt;
| 202&lt;br /&gt;
| 333&lt;br /&gt;
| 4&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,10&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRL1004 IRL1004]&lt;br /&gt;
| TO-220&lt;br /&gt;
| irf&lt;br /&gt;
| 2,7&lt;br /&gt;
| 40&lt;br /&gt;
| 130&lt;br /&gt;
| 200&lt;br /&gt;
| 6,5&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,25&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRL530 IRL530]&lt;br /&gt;
| TO220, D2Pack&lt;br /&gt;
| irf&lt;br /&gt;
| 2&lt;br /&gt;
| 100&lt;br /&gt;
| 15,0&lt;br /&gt;
| 88&lt;br /&gt;
| 160&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,57/0,78&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF830 IRF830]&lt;br /&gt;
| TO220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0-4,5   &lt;br /&gt;
| 500&lt;br /&gt;
| 5,0&lt;br /&gt;
| 74&lt;br /&gt;
| 1400&lt;br /&gt;
| Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Kessler|Kes]]&lt;br /&gt;
| 0,57&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF840 IRF840]&lt;br /&gt;
| TO220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0-4,0   &lt;br /&gt;
| 500&lt;br /&gt;
| 8,0&lt;br /&gt;
| 125&lt;br /&gt;
| 850&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,57&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/FDC645N FDC645N]&lt;br /&gt;
| SuperSOT-6&lt;br /&gt;
| Fairchild&lt;br /&gt;
| 1,5&lt;br /&gt;
| 30&lt;br /&gt;
| 5,5&lt;br /&gt;
| 0,8/1,6&lt;br /&gt;
| 30&lt;br /&gt;
| -&lt;br /&gt;
| [[Elektronikversender#csd-electronics|csd]] (a.A.), Far&lt;br /&gt;
| 0,7&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BSP297 BSP297]&lt;br /&gt;
| SOT-223&lt;br /&gt;
| Siemens/Infineon&lt;br /&gt;
| 0,8-2,4&lt;br /&gt;
| 200&lt;br /&gt;
| 0,65&lt;br /&gt;
| 1,8&lt;br /&gt;
| 6000&lt;br /&gt;
| 200V &amp;lt;math&amp;gt;U_{DS}&amp;lt;/math&amp;gt;, SMD und Logic Level (seltene Kombinaton), Linearbetrieb möglich&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]], [[Elektronikversender#Schuricht|Schu]], [[Elektronikversender#RS_Components|RS]]&lt;br /&gt;
| 0,56&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7455 IRF7455]&lt;br /&gt;
| SO-8&lt;br /&gt;
| irf&lt;br /&gt;
| 4,5&lt;br /&gt;
| 30&lt;br /&gt;
| 15&lt;br /&gt;
| 2,5&lt;br /&gt;
| 7,5&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Kessler|Kes]]&lt;br /&gt;
| 1,04&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/SI4442DY SI4442DY]&lt;br /&gt;
| SO-8&lt;br /&gt;
| vis&lt;br /&gt;
| 2,5&lt;br /&gt;
| 30&lt;br /&gt;
| 22&lt;br /&gt;
| 2,5&lt;br /&gt;
| 5/4,5V&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Kessler|Kes]]&lt;br /&gt;
| 1,64&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLU2905 IRLU2905]&lt;br /&gt;
| TO251, DPack&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0&lt;br /&gt;
| 55&lt;br /&gt;
| 42&lt;br /&gt;
| 110&lt;br /&gt;
| 27&lt;br /&gt;
| Logic-Level&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 1,89&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRFD014 IRFD014]&lt;br /&gt;
| HEXDIP/DIP4&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0-4,0&lt;br /&gt;
| 60&lt;br /&gt;
| 1,7&lt;br /&gt;
| 1,3&lt;br /&gt;
| 200&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Conrad|Con]],[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,52&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRFD024 IRFD024]&lt;br /&gt;
| HEXDIP/DIP4&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0-4,0&lt;br /&gt;
| 60&lt;br /&gt;
| 2,5&lt;br /&gt;
| 1,3&lt;br /&gt;
| 100&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Conrad|Con]],[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,54&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLD024 IRLD024]&lt;br /&gt;
| HEXDIP/DIP4&lt;br /&gt;
| irf&lt;br /&gt;
| 1,0-2,0&lt;br /&gt;
| 60&lt;br /&gt;
| 2,5&lt;br /&gt;
| 1,3&lt;br /&gt;
| 100&lt;br /&gt;
| Logic-Level&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]],[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,47&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLU3717 IRLU3717]&lt;br /&gt;
| I-Pak&lt;br /&gt;
| irf&lt;br /&gt;
| 2,0&lt;br /&gt;
| 20&lt;br /&gt;
| 120&lt;br /&gt;
| 1,5/89&lt;br /&gt;
| 4&lt;br /&gt;
| Qg=21nC&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]],[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 1,15&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRFP3703 IRFP3703]&lt;br /&gt;
| TO-247AC&lt;br /&gt;
| irf&lt;br /&gt;
| 4,0&lt;br /&gt;
| 30&lt;br /&gt;
| 210&lt;br /&gt;
| 230&lt;br /&gt;
| 2,8&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 5,08&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF3710 IRF3710]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 4&lt;br /&gt;
| 100&lt;br /&gt;
| 57&lt;br /&gt;
| 200&lt;br /&gt;
| 23&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,83&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLR7843 IRLR7843]&lt;br /&gt;
| D-Pack&lt;br /&gt;
| irf&lt;br /&gt;
| 2,3&lt;br /&gt;
| 30&lt;br /&gt;
| 164&lt;br /&gt;
| 140&lt;br /&gt;
| 3,3&lt;br /&gt;
| Qg: 34nC, Rds_on bei GS=4.5V: max. 4.0mOhm&lt;br /&gt;
| [http://www.flymotec.de/]&lt;br /&gt;
| 0,70&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF1010N IRF1010N]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 4&lt;br /&gt;
| 55&lt;br /&gt;
| 85&lt;br /&gt;
| 180&lt;br /&gt;
| 11&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 1,99&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF1010Z IRF1010Z]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 4&lt;br /&gt;
| 55&lt;br /&gt;
| 75&lt;br /&gt;
| 140&lt;br /&gt;
| 7,5&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Conrad|Con]], [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 1,99&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLIZ44N IRLIZ44N]&lt;br /&gt;
| TO-220-Fullpak &lt;br /&gt;
| irf&lt;br /&gt;
| 1,0 - 2,0&lt;br /&gt;
| 55&lt;br /&gt;
| 30&lt;br /&gt;
| 45&lt;br /&gt;
| 25&lt;br /&gt;
| Logic Level&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,80&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLU024N IRLU024N]&lt;br /&gt;
| TO-251AA&lt;br /&gt;
| irf&lt;br /&gt;
| 1,0 - 2,0&lt;br /&gt;
| 55&lt;br /&gt;
| 17&lt;br /&gt;
| 45&lt;br /&gt;
| 80&lt;br /&gt;
| Logic Level, Q&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;=15 nC (!)&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,40&lt;br /&gt;
|-&lt;br /&gt;
| IRFZ48N&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 3&lt;br /&gt;
| 55&lt;br /&gt;
| 64&lt;br /&gt;
| 130&lt;br /&gt;
| 14&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]],[[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,60&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.irf.com/product-info/datasheets/data/irl2505.pdf IRL2505]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 2,5&lt;br /&gt;
| 55&lt;br /&gt;
| 104&lt;br /&gt;
| &lt;br /&gt;
| 8&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 3,99&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.irf.com/product-info/datasheets/data/irf7607.pdf IRF7607]&lt;br /&gt;
| Micro8&lt;br /&gt;
| irf&lt;br /&gt;
| 1,2&lt;br /&gt;
| 20&lt;br /&gt;
| 6,5&lt;br /&gt;
| 1,8&lt;br /&gt;
| 30&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 1,89&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.irf.com/product-info/datasheets/data/irf3708.pdf IRF3708]&lt;br /&gt;
| TO-220AB&lt;br /&gt;
| irf&lt;br /&gt;
| 0,6 - 2&lt;br /&gt;
| 30&lt;br /&gt;
| 62&lt;br /&gt;
| 87&lt;br /&gt;
| 8&lt;br /&gt;
| &lt;br /&gt;
| [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 1,49&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/GF2304 GF2304]&lt;br /&gt;
| SOT-23&lt;br /&gt;
| gs&lt;br /&gt;
| 1,0&lt;br /&gt;
| 30&lt;br /&gt;
| 2,5&lt;br /&gt;
| 1,25&lt;br /&gt;
| 135&lt;br /&gt;
| Qg=3,7nC&lt;br /&gt;
| [[Elektronikversender#Pollin_Electronic|Pol]]&lt;br /&gt;
| 0,05&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRLR8743 IRLR8743]&lt;br /&gt;
| I-Pak, D2Pack&lt;br /&gt;
| IRF&lt;br /&gt;
| 1,9&lt;br /&gt;
| 30&lt;br /&gt;
| 50&lt;br /&gt;
| 68&lt;br /&gt;
| 3,1&lt;br /&gt;
| Logic-Level, D2Pack, Qg=39nC&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 1,15&lt;br /&gt;
|-&lt;br /&gt;
| AOC2414&lt;br /&gt;
| MCSP&lt;br /&gt;
| Alpha&amp;amp;Omega&lt;br /&gt;
| 0,52&lt;br /&gt;
| 8&lt;br /&gt;
| 4,5&lt;br /&gt;
| 0,55&lt;br /&gt;
| 19&lt;br /&gt;
| spezifiziert ab 1,2V Vgs, Qg=21,5nC&lt;br /&gt;
| Digikey &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
(Tabelle mit Click im Kopfbereich sortierbar, a.A.=Auf Anfrage)&lt;br /&gt;
&lt;br /&gt;
== N-Kanal J-FET==&lt;br /&gt;
&lt;br /&gt;
{| {{Tabelle}} border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable sortable&amp;quot; id=&amp;quot;fetpaare&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#eeeeee&amp;quot;&lt;br /&gt;
! Bezeichnung&lt;br /&gt;
! Package&lt;br /&gt;
! Hersteller&lt;br /&gt;
! U&amp;lt;sub&amp;gt;GS(co)&amp;lt;/sub&amp;gt;/V&lt;br /&gt;
! U&amp;lt;sub&amp;gt;DS&amp;lt;/sub&amp;gt;/V&lt;br /&gt;
! I&amp;lt;sub&amp;gt;D(max)&amp;lt;/sub&amp;gt;/mA&lt;br /&gt;
! Lieferant&lt;br /&gt;
! Einzelpreis&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BF245 BF245A]&lt;br /&gt;
| TO-92&lt;br /&gt;
| diverse&lt;br /&gt;
| -2,2&lt;br /&gt;
| 30&lt;br /&gt;
| 6,5&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,15 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BF245 BF245B]&lt;br /&gt;
| TO-92&lt;br /&gt;
| diverse&lt;br /&gt;
| -3,8&lt;br /&gt;
| 30&lt;br /&gt;
| 15&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,15 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BF245 BF245C]&lt;br /&gt;
| TO-92&lt;br /&gt;
| diverse&lt;br /&gt;
| -7,5&lt;br /&gt;
| 30&lt;br /&gt;
| 25&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,15 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BF246 BF246A]&lt;br /&gt;
| TO-92&lt;br /&gt;
| diverse&lt;br /&gt;
| -4&lt;br /&gt;
| 25&lt;br /&gt;
| 80&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,15 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BF246 BF246B]&lt;br /&gt;
| TO-92&lt;br /&gt;
| diverse&lt;br /&gt;
| -7&lt;br /&gt;
| 25&lt;br /&gt;
| 140&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,17 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BF246 BF246C]&lt;br /&gt;
| TO-92&lt;br /&gt;
| diverse&lt;br /&gt;
| -12&lt;br /&gt;
| 25&lt;br /&gt;
| 250&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BF511 BF511]&lt;br /&gt;
| SOT-23&lt;br /&gt;
| diverse&lt;br /&gt;
| -1,5&lt;br /&gt;
| 20&lt;br /&gt;
| 7&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,36 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BFR30 BFR30]&lt;br /&gt;
| SOT-23&lt;br /&gt;
| diverse&lt;br /&gt;
| -4&lt;br /&gt;
| 25&lt;br /&gt;
| 10&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/BFR31 BFR31]&lt;br /&gt;
| SOT-23&lt;br /&gt;
| diverse&lt;br /&gt;
| -2&lt;br /&gt;
| 25&lt;br /&gt;
| 5&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/MMBF4416 MMBF4416]&lt;br /&gt;
| SOT-23&lt;br /&gt;
| Fairchild&lt;br /&gt;
| -5,5&lt;br /&gt;
| 15&lt;br /&gt;
| 5&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,52 €&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
(Tabelle mit Click im Kopfbereich sortierbar)&lt;br /&gt;
&lt;br /&gt;
== FET-Paare ==&lt;br /&gt;
&lt;br /&gt;
{| {{Tabelle}} border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable sortable&amp;quot; id=&amp;quot;fetpaare&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#eeeeee&amp;quot;&lt;br /&gt;
! Bezeichnung&lt;br /&gt;
! Package&lt;br /&gt;
! Hersteller&lt;br /&gt;
! UGS/V&lt;br /&gt;
! UDS/V&lt;br /&gt;
! ID/A&lt;br /&gt;
! P/W&lt;br /&gt;
! RDSon/mOhm&lt;br /&gt;
! Bemerkung&lt;br /&gt;
! Lieferant&lt;br /&gt;
! Einzelpreis&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7389 IRF7389]&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 3,0&lt;br /&gt;
| 30&lt;br /&gt;
| 7,3/-5,3&lt;br /&gt;
| 2,0&lt;br /&gt;
| 29/58&lt;br /&gt;
| P+N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,56 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7501 IRF7501]&lt;br /&gt;
| micro8&lt;br /&gt;
| IRF&lt;br /&gt;
| 2,7&lt;br /&gt;
| 20&lt;br /&gt;
| 2,4&lt;br /&gt;
| ?&lt;br /&gt;
| 135 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*N&lt;br /&gt;
| [[Elektronikversender#Kessler|Kessler]], [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 1,64 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7506 IRF7506]&lt;br /&gt;
| micro8&lt;br /&gt;
| IRF&lt;br /&gt;
| 4,5&lt;br /&gt;
| 30&lt;br /&gt;
| 1,7&lt;br /&gt;
| ?&lt;br /&gt;
| 270 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
| [[Elektronikversender#Kessler|Kessler]], [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,56 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7103 IRF7103]&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 4,5&lt;br /&gt;
| 50&lt;br /&gt;
| 2,3&lt;br /&gt;
| 2&lt;br /&gt;
| 130 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*N&lt;br /&gt;
|[[Elektronikversender#Reichelt|Rei]], [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,32 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7104 IRF7104]&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 4,5&lt;br /&gt;
| 20&lt;br /&gt;
| 2,3&lt;br /&gt;
| 2&lt;br /&gt;
| 250 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
|[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,32 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7316 IRF7316]&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 4,5&lt;br /&gt;
| 30&lt;br /&gt;
| 4,9&lt;br /&gt;
| ?&lt;br /&gt;
| 58 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
|[[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,49 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRF7313 IRF7313]&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 4,5&lt;br /&gt;
| 30&lt;br /&gt;
| 6,5&lt;br /&gt;
| ?&lt;br /&gt;
| 46 @4.5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*N&lt;br /&gt;
| [[Elektronikversender#Kessler|Kessler]], [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 0,66 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/FDD8424H FDD8424H]&lt;br /&gt;
| Dual DPAK4L&lt;br /&gt;
| Fairchild&lt;br /&gt;
| &lt;br /&gt;
| 40&lt;br /&gt;
| 9/-6,5&lt;br /&gt;
| 3&lt;br /&gt;
| 24/54 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 30/70 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| P+N&lt;br /&gt;
| [[Elektronikversender#Digi-Key|Digi-Key]] &lt;br /&gt;
| 0,73 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/SUD50NP04-94 SUD50NP04-94]&lt;br /&gt;
| TO252-4L DPAK4L&lt;br /&gt;
| Vishay&lt;br /&gt;
| 2&lt;br /&gt;
| 40 &lt;br /&gt;
| 8&lt;br /&gt;
| 8?&lt;br /&gt;
| 41/53 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 45/72 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| P+N&lt;br /&gt;
| [[Elektronikversender#Farnell|Farnell]]&lt;br /&gt;
| 0,56 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7309&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| &amp;amp;nbsp;4,5 &amp;lt;br&amp;gt; -4,5&lt;br /&gt;
| &amp;amp;nbsp;30 &amp;lt;br&amp;gt; -30 &lt;br /&gt;
| &amp;amp;nbsp;4 &amp;lt;br&amp;gt; -3&lt;br /&gt;
| 1,4&lt;br /&gt;
| 50/100 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 80/160 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| P+N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,38 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7307&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| &amp;amp;nbsp;2 &amp;lt;br&amp;gt; -2,5&lt;br /&gt;
| &amp;amp;nbsp;20 &amp;lt;br&amp;gt; -20 &lt;br /&gt;
| &amp;amp;nbsp;5,2 &amp;lt;br&amp;gt; -4,3&lt;br /&gt;
| 2&lt;br /&gt;
| 50/90 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 70/140 @2,7V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| P+N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,47 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7343&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| &amp;amp;nbsp;3 &amp;lt;br&amp;gt; -3,5&lt;br /&gt;
| &amp;amp;nbsp;55 &amp;lt;br&amp;gt; -55 &lt;br /&gt;
| &amp;amp;nbsp;4,7 &amp;lt;br&amp;gt; -3,4&lt;br /&gt;
| 2&lt;br /&gt;
| 43/95 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 56/150 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| P+N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,47 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7319&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| &amp;amp;nbsp;3 &amp;lt;br&amp;gt; -3,5&lt;br /&gt;
| &amp;amp;nbsp;30 &amp;lt;br&amp;gt; -30 &lt;br /&gt;
| &amp;amp;nbsp;6,5 &amp;lt;br&amp;gt; -4,9&lt;br /&gt;
| 2&lt;br /&gt;
| 23/42 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 32/76 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| P+N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,50 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7314&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| -2,0&lt;br /&gt;
| -20 &lt;br /&gt;
| -5,3&lt;br /&gt;
| 2,0&lt;br /&gt;
| 49 @-4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 82 @-2,7V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,45 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7314&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| -2,0&lt;br /&gt;
| -20 &lt;br /&gt;
| -5,3&lt;br /&gt;
| 2,0&lt;br /&gt;
| 49 @-4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 82 @-2,7V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,45 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7304&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| -2,5&lt;br /&gt;
| -20&lt;br /&gt;
| -4,3&lt;br /&gt;
| 2,0&lt;br /&gt;
| 90 @-4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 140 @-2,7V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,46 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7306&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| -4,5&lt;br /&gt;
| -30&lt;br /&gt;
| -3,6&lt;br /&gt;
| 2,0&lt;br /&gt;
| 100 @-10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 160 @-4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,47 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7342&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| -3,5&lt;br /&gt;
| -55&lt;br /&gt;
| -3,4&lt;br /&gt;
| 2,0&lt;br /&gt;
| 95 @-10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 150 @-4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,50 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7328&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| -3,5&lt;br /&gt;
| -30&lt;br /&gt;
| -8,0&lt;br /&gt;
| 2,0&lt;br /&gt;
| 17 @-10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 26,8 @-4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,80 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7324&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| -1,5&lt;br /&gt;
| -20&lt;br /&gt;
| -9,0&lt;br /&gt;
| 2,0&lt;br /&gt;
| 18 @-4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 26 @-2,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*P&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,87 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7303&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 4,5&lt;br /&gt;
| 30 &lt;br /&gt;
| 4,9&lt;br /&gt;
| 2,0&lt;br /&gt;
| 50 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 80 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,43 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7301&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 2&lt;br /&gt;
| 20 &lt;br /&gt;
| 5,2&lt;br /&gt;
| 2,0&lt;br /&gt;
| 50 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 70 @2,7V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,46 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7341&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 3&lt;br /&gt;
| 55 &lt;br /&gt;
| 4,7&lt;br /&gt;
| 2,0&lt;br /&gt;
| 43 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 56 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,46 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7311&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 2&lt;br /&gt;
| 20 &lt;br /&gt;
| 6,6&lt;br /&gt;
| 2,0&lt;br /&gt;
| 23 @4,5V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; &amp;lt;br&amp;gt; 30 @2,7V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,60 €&lt;br /&gt;
|-&lt;br /&gt;
| IRF7380&lt;br /&gt;
| SO-8&lt;br /&gt;
| IRF&lt;br /&gt;
| 4,5&lt;br /&gt;
| 80 &lt;br /&gt;
| 3,6&lt;br /&gt;
| 2,0&lt;br /&gt;
| 61 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,57 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IRFI4024H-117P IRFI4024H-117P]&lt;br /&gt;
| TO-220-5&lt;br /&gt;
| IRF&lt;br /&gt;
| 2&lt;br /&gt;
| 55&lt;br /&gt;
| 11&lt;br /&gt;
| 14&lt;br /&gt;
| 50 @10V&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt;&lt;br /&gt;
| 2*N&lt;br /&gt;
| [[Elektronikversender#Reichelt|Reichelt]]&lt;br /&gt;
| 2,10 €&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
(Tabelle mit Click im Kopfbereich sortierbar)&lt;br /&gt;
&lt;br /&gt;
== MOSFET-Treiber ==&lt;br /&gt;
* Detaillierte [[Treiber]]-Dimensionierung&lt;br /&gt;
{| {{Tabelle}} border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable sortable&amp;quot; id=&amp;quot;fettreiber&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#eeeeee&amp;quot;&lt;br /&gt;
! Bezeichnung&lt;br /&gt;
! Low / High-Side&lt;br /&gt;
! Strom&lt;br /&gt;
! Spannung&lt;br /&gt;
! Logikeingang&lt;br /&gt;
! Sockel&lt;br /&gt;
! Lieferant / Datenblatt&lt;br /&gt;
! Einzelpreis&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2101 IR2101]&lt;br /&gt;
| High &amp;amp; Low-Side Driver&lt;br /&gt;
| 130/270mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 3,3V&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 2,30 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2104 IR2104]&lt;br /&gt;
| Half Bridge Driver&lt;br /&gt;
| 130/270mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 3,3V/5V/15V&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 2,00 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2110 IR2110]&lt;br /&gt;
| High &amp;amp; Low-Side Driver&lt;br /&gt;
| 2A&lt;br /&gt;
| 500V&lt;br /&gt;
| 3,3V&lt;br /&gt;
| DIL14/SO16&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 1,55 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2111 IR2111]&lt;br /&gt;
| Half Bridge Driver&lt;br /&gt;
| 200/430mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 10-20V CMOS Eingang&lt;br /&gt;
| DIL8/SO8, maximale Kriechwege&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 1,10 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2112 IR2112]&lt;br /&gt;
| High &amp;amp; Low-Side Driver&lt;br /&gt;
| 200/420mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 3,3V&lt;br /&gt;
| DIL14/SO16&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 1,45 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2113 IR2113]&lt;br /&gt;
| High &amp;amp; Low-Side Driver&lt;br /&gt;
| 2A&lt;br /&gt;
| 600V&lt;br /&gt;
| 3,3V&lt;br /&gt;
| DIL14/SO16&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 1,85 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2117 IR2117]&lt;br /&gt;
| Single High Side Driver&lt;br /&gt;
| 200/420mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 10-20V CMOS Eingang&lt;br /&gt;
| DIL8/SO8, maximale Kriechwege&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 1,20 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2121 IR2121]&lt;br /&gt;
| Low Side Driver&lt;br /&gt;
| 1A/2A&lt;br /&gt;
| ?&lt;br /&gt;
| 2,5V&lt;br /&gt;
| DIL8/SO8, Strombegrenzung&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 2,15 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2125 IR2125]&lt;br /&gt;
| Single Channel High Side Driver&lt;br /&gt;
| 1A/2A&lt;br /&gt;
| 500V&lt;br /&gt;
| 2,5V&lt;br /&gt;
| DIL8/SO8, Strombegrenzung, maximale Kriechwege&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 4,20 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2127 IR2127]&lt;br /&gt;
| Single Channel High Side Driver&lt;br /&gt;
| 200/420mA&lt;br /&gt;
| ?&lt;br /&gt;
| 3,3V&lt;br /&gt;
| DIL8/SO8, maximale Kriechwege, Fehlerausgang&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 2,40 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2130 IR2130]&lt;br /&gt;
| 3-Phase Bridge Driver&lt;br /&gt;
| 200/420mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 2,5V&lt;br /&gt;
| DIL28/SO28&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 2,50 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2151 IR2151]&lt;br /&gt;
| Self Oscillating Half Bridge Driver&lt;br /&gt;
| 100/210mA&lt;br /&gt;
| 600V&lt;br /&gt;
| ?&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 2,50 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2153 IR2153]&lt;br /&gt;
| Self Oscillating Half Bridge Driver&lt;br /&gt;
| 100/210mA&lt;br /&gt;
| 600V&lt;br /&gt;
| n/a&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 1,20 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2155 IR2155]&lt;br /&gt;
| Self Oscillating Half Bridge Driver&lt;br /&gt;
| 210/420mA&lt;br /&gt;
| 600V&lt;br /&gt;
| n/a&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 3,50 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2181 IR2181]&lt;br /&gt;
| High &amp;amp; Low-Side Driver&lt;br /&gt;
| 1.4A/1.8A&lt;br /&gt;
| 600V&lt;br /&gt;
| 3,3V/5V&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 2,10 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2183 IR2183]&lt;br /&gt;
| Half Bridge Driver&lt;br /&gt;
| 1.4A/1.8A&lt;br /&gt;
| 600V&lt;br /&gt;
| 3,3V&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 4,00 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2184 IR2184]&lt;br /&gt;
| Half Bridge Driver&lt;br /&gt;
| 1.4A/1.8A&lt;br /&gt;
| 600V&lt;br /&gt;
| 3,3V/5V&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]] [[Elektronikversender#Conrad|Con]] &lt;br /&gt;
| 3,20 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/IR2136 IR2136]&lt;br /&gt;
| 3 Phase Driver&lt;br /&gt;
| 120/250mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 3,3V&lt;br /&gt;
| DIP28/SOIC28,&lt;br /&gt;
| [[Elektronikversender#Conrad|Con]]&lt;br /&gt;
| 1,80 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/ICL7667 ICL7667]&lt;br /&gt;
| Dual Power MOSFET Driver&lt;br /&gt;
| ?&lt;br /&gt;
| 4.5-15V, 7Ω&lt;br /&gt;
| 3,3V&lt;br /&gt;
| DIL8/SO8 &lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 2,00 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/HIP4081A HIP4081A]&lt;br /&gt;
| Full Bridge Driver&lt;br /&gt;
| 2,5A&lt;br /&gt;
| 80V&lt;br /&gt;
| ?&lt;br /&gt;
| DIP20/SOIC20&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 8,00 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/HIP4082 HIP4082]&lt;br /&gt;
| Full Bridge Driver&lt;br /&gt;
| 1,2A&lt;br /&gt;
| 80V&lt;br /&gt;
| ?&lt;br /&gt;
| DIP16/SOIC16&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]] [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 6,20 €&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/HIP4083 HIP4083]&lt;br /&gt;
| 3 Phase High side N-channel MOSFET driver&lt;br /&gt;
| 0,3A&lt;br /&gt;
| 80V&lt;br /&gt;
| ?&lt;br /&gt;
| DIP16/SOIC16&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 4,80 €&lt;br /&gt;
&amp;lt;!-- ohne Preis und Lieferant&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/HIP4084 HIP4084]&lt;br /&gt;
| 4 Phase Driver&lt;br /&gt;
| 0,5A&lt;br /&gt;
| 80V&lt;br /&gt;
| ?&lt;br /&gt;
| DIP28/SOIC28&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
--&amp;gt;&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.mikrocontroller.net/part/HIP4086 HIP4086]&lt;br /&gt;
| 3 Phase Driver&lt;br /&gt;
| 0.5A&lt;br /&gt;
| 80V&lt;br /&gt;
| ?&lt;br /&gt;
| DIP24/SOIC24&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 8,00 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/TC4451 TC4451/TC4452]&lt;br /&gt;
| High Speed MOSFET Driver&lt;br /&gt;
| 12A peak, 2,5A DC&lt;br /&gt;
| ?&lt;br /&gt;
| 4,5-18V&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 3,00 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/LM5104 LM5104]&lt;br /&gt;
| Half Bridge Driver&lt;br /&gt;
| 1,6/1,8A&lt;br /&gt;
| 100V&lt;br /&gt;
| 2,5V&lt;br /&gt;
| SO8/LLP10 &lt;br /&gt;
| [[Elektronikversender#RS_Components|RS]]&lt;br /&gt;
| 3,20 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/MCP1407 MCP1407-E/P]&lt;br /&gt;
| High Speed MOSFET Driver&lt;br /&gt;
| 6A peak, 1,3A DC&lt;br /&gt;
| 4,5-18V&lt;br /&gt;
| 4,5-18V (VDD+0,3V)&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 0,93 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/MAX626 MAX626]&lt;br /&gt;
| Dual Power MOSFET drivers, inverting&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| 4,5-18 V&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Reichelt|Rei]]&lt;br /&gt;
| 3,40 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/NCP5106 NCP5106]&lt;br /&gt;
| High Voltage, High and Low Side Driver&lt;br /&gt;
| 250/500mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 2,3-20V&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 2,37 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/NCP5304 NCP5304]&lt;br /&gt;
| High Voltage, High and Low Side Driver&lt;br /&gt;
| 250/500mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 2,3-20V&lt;br /&gt;
| DIL8/SO8&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 2,02 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/FAN7380 FAN7380]&lt;br /&gt;
| Half-Bridge Gate Driver&lt;br /&gt;
| 90/180mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 2,5-25V&lt;br /&gt;
| SO8&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 0,99 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/FAN7382 FAN7382]&lt;br /&gt;
| High- and Low-Side Gate Driver&lt;br /&gt;
| 350/650mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 2,9-20V&lt;br /&gt;
| DIL8/SO8/S014&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 1,25 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/FAN7361 FAN7361]&lt;br /&gt;
| Half-Bridge Gate Driver&lt;br /&gt;
| 250/500mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 3,6-25V&lt;br /&gt;
| SO8&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 1,18 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/FAN7362 FAN7362]&lt;br /&gt;
| Half-Bridge Gate Driver&lt;br /&gt;
| 250/500mA&lt;br /&gt;
| 600V&lt;br /&gt;
| 2,9-25V&lt;br /&gt;
| SO8&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 1,71 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.mikrocontroller.net/part/FAN7842 FAN7842]&lt;br /&gt;
| High and Low Side Gate Driver&lt;br /&gt;
| 350/650mA&lt;br /&gt;
| 200V&lt;br /&gt;
| 2,9-25V&lt;br /&gt;
| SO8&lt;br /&gt;
| [[Elektronikversender#Farnell|Far]]&lt;br /&gt;
| 1,05 €&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Anmerkungen ==&lt;br /&gt;
* U&amp;lt;sub&amp;gt;GS&amp;lt;/sub&amp;gt; - minimale Gatespannung, bei welcher der MOSFET zu leiten anfängt (100µA..1mA, nicht genormt). Zur vollständigen Durchschaltung bei maximalem Strom braucht es höhere Spannungen.&lt;br /&gt;
* Logic Level - FET schaltet bei niedrigen Gatespannungen von typisch 4,5V (z.&amp;amp;nbsp;B. CMOS Logikpegel) hinreichend durch. Normale MOSFETs brauchen hierfür typisch 10V.&lt;br /&gt;
* U&amp;lt;sub&amp;gt;GS(co)&amp;lt;/sub&amp;gt; - Gate Source Cut Off Spannung, bei welcher der Drainstrom I&amp;lt;sub&amp;gt;D&amp;lt;/sub&amp;gt; eines JFETs praktisch Null ist. Die Messbedingung ist jedoch nicht genormt (0,5nA..200µA).&lt;br /&gt;
* N-Kanal MOSFETs mit niedrigem R&amp;lt;sub&amp;gt;DS,On&amp;lt;/sub&amp;gt; sind technologisch einfacher herzustellen als P-Kanal MOSFETs. Deshalb gibt es bei P-Kanal keine so große Auswahl und oft werden Schaltungen angestrebt, in denen ausschließlich N-Kanal MOSFETs verwendet werden. Es gibt spezielle Treiberbausteine, die über eine Ladungspumpe für entsprechend hohe Gatespannung auch für die High-Side N-Fets sorgen (&amp;quot;Bootstrap Circuits&amp;quot;, siehe Artikel [[Treiber]]).&lt;br /&gt;
* Bei der Dimensionierung ist zu beachten, dass die Stromangabe im allgemeinen für 25°C gilt. Geht man davon aus, dass der MOSFET mit maximal zulässigem Strom betrieben wird und mit passend dimensioniertem [[Kühlkörper]] ausgestattet ist, so beträgt die Sperrschichttemperatur bis zu 150°C, folglich gilt z.&amp;amp;nbsp;B. für den IRF540 nicht mehr 28A, sondern nur noch ca. 12-15A.&lt;br /&gt;
* Restströme sind auch stark von der Temperatur abhängig. Bei höherer Temperatur nehmen die Restströme exponentiell zu. So können bei 100°C durchaus 100 µA zwischen Source und Drain auch im gesperrten Zustand fließen. Bei 25°C ist dieser Reststrom meist bei 1µA spezifiziert. Real sind es meist weniger.&lt;br /&gt;
* Der Gate-Charge-Wert Qg (s. Datenblatt) bestimmt, wie schnell das Gate beim Schalten umgeladen werden kann. Auch wenn MOSFETs stromlos den durchgeschalteten Zustand halten können, braucht man während des Umschaltvorganges einen Strom, der das Gate umlädt (ähnlich wie ein Kondensator). Je höher dieser Strom, um so schneller ist der Umschaltvorgang und um so geringer die Verlustleistung während dieser Phase. Leistungs-MOSFETs können bei höheren Frequenzen (&amp;gt;1KHz) oft nur mit höheren Gateströmen von 0,1A-2A sinnvoll geschaltet werden. Man kann das Gate also nicht direkt an einen Digitalpin anschließen. Man braucht einen [[MOSFET-Übersicht#MOSFET-Treiber | MOSFET-Treiber]]. Manche MOSFETs haben eine sehr geringe Total Gate Charge (z.&amp;amp;nbsp;B. 4-10nC). Diese können in gewissen Grenzen recht gut direkt an digitalen [[Ausgangsstufen Logik-ICs | Logikausgängen]] betrieben werden. Zur Abschätzung kann man sich merken: Wenn man das Gate eines MOSFETs mit einer Eingangskapazität von 1nF (~10nC) in 100ns auf 10V aufladen will, braucht man dazu 100mA.&lt;br /&gt;
&lt;br /&gt;
== Lieferantenübersicht ==&lt;br /&gt;
* [[Elektronikversender#Reichelt|Rei]]&amp;lt;nowiki&amp;gt;chelt&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* [[Elektronikversender#elpro-Darmstadt|el]]&amp;lt;nowiki&amp;gt;pro&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* [[Elektronikversender#Conrad|Con]]&amp;lt;nowiki&amp;gt;rad&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* [[Elektronikversender#Kessler|Kes]]&amp;lt;nowiki&amp;gt;sler&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* [[Elektronikversender#csd-electronics|csd]]&amp;lt;nowiki&amp;gt;-electronics&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* [[Elektronikversender#Farnell|Far]]&amp;lt;nowiki&amp;gt;nell&amp;lt;/nowiki&amp;gt; (nur gewerbliche Kunden oder Studenten)&lt;br /&gt;
* HBE-Shop (FARNELL-Fachhändler, auch als nichtgewerblicher Kunde)&lt;br /&gt;
* [[Elektronikversender#Schuricht|Schu]]&amp;lt;nowiki&amp;gt;richt&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* [[Elektronikversender#RS_Components|RS]]&lt;br /&gt;
* [[Elektronikversender#Spoerle|Spo]]&amp;lt;nowiki&amp;gt;erle&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Herstellerübersicht ==&lt;br /&gt;
* [irf] [http://www.irf.com International Rectifier]&lt;br /&gt;
* [Siliconix] [http://www.vishay.com/company/brands/siliconix/ Vishay Siliconix]&lt;br /&gt;
* [st] [http://www.st.com/web/en/home.html STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
== IRF MOSFET-Codierung ==&lt;br /&gt;
* IRF: Alle &amp;quot;Standardtransistoren&amp;quot;, also TO-220-Gehäuse&lt;br /&gt;
* IRFB: Hochspannungs-MosFETs&lt;br /&gt;
* IRFD: MosFETs im Dip-4-Gehäuse&lt;br /&gt;
* IRFI: MosFETs im isolierten TO-220-Gehäuse&lt;br /&gt;
* IRFP: MosFETs im TO-247AC-Gehäuse&lt;br /&gt;
* IRFR: MosFETs im D-Pak&lt;br /&gt;
* IRFU: MosFETs im I-Pak&lt;br /&gt;
* IRFZ: Also die die ich kenne liegen alle so bei 50-60V mit relativ niedrigem Rds(on), also so für mittlere Leistungen&lt;br /&gt;
* IRG:  Afaik sind das IGBTs&lt;br /&gt;
* IRL:  Logic-Level MosFETs&lt;br /&gt;
* IRLD: Logic-Level MosFETs im Dip-4 Gehäuse&lt;br /&gt;
* IRLI: Logic-Level MosFETs im isolierten TO-220-Gehäuse&lt;br /&gt;
* IRLR: Logic-Level MosFETs im D-Pak&lt;br /&gt;
* IRLU: Logic-Level MosFETs im I-Pak&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[FET]]&lt;br /&gt;
* [[IGBT]]&lt;br /&gt;
* [[Treiber]]&lt;br /&gt;
* [[H-Brücken Übersicht]]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/280480#2960070 Forumsbeitrag]: Clevere MOSFET-Treiber mit kleinsten Trafos&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/283585#3004839 Forumsbeitrag]: Galvanisch getrennte Ansteuerung eines MOSFETs mittels Übertrager und 100% Tastverhältnis&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.sprut.de/electronic/switch/nkanal/nkanal.html N-Kanal MOSFET leicht erklärt bei sprut.de]&lt;br /&gt;
* [http://www.sprut.de/electronic/switch/pkanal/pkanal.html P-Kanal MOSFET leicht erklärt bei sprut.de]&lt;br /&gt;
* [http://elektronik-kompendium.de/sites/bau/0510161.htm MOSFET im ElKo]&lt;br /&gt;
* [http://elektronik-kompendium.de/public/schaerer/battoff.htm Abschaltverzögerung beim ElKo]&lt;br /&gt;
* [http://elektronik-kompendium.de/sites/bau/0207011.htm FET beim ElKo]&lt;br /&gt;
* [http://de.wikipedia.org/wiki/Mosfet MOSFET bei Wikipedia]&lt;br /&gt;
&amp;lt;!-- * [http://www.irf.com/product-info/auto/autogdic.html IR21xx Familienvergleich] --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Parametrische Suche beim Hersteller ==&lt;br /&gt;
* [http://www.infineon.com/cms/de/product/channel.html?channel=db3a304319c6f18c011a14e5341b25f1 Infineon]&lt;br /&gt;
* [http://www.nxp.com/#/ps/ps=%5Bi%3D48014%5D%7Cpp%3D%5Bt%3Dpfp%2Ci%3D48014%5D NXP standard Mosfets]&lt;br /&gt;
* [http://www.onsemi.com/PowerSolutions/parametrics.do?id=809&amp;amp;lctn=home ONsemi]&lt;br /&gt;
* [http://www.diodes.com/zetex/?ztx=3.0/3-3-1@tcatid~7 Diodes (vormals Zetex)]&lt;br /&gt;
* [http://www.irf.com/product-info/hexfet/ IRF]&lt;br /&gt;
* [http://www.vishay.com/mosfets/ Vishay]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Liste mit Bauteilen]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Elektronikversender&amp;diff=89326</id>
		<title>Elektronikversender</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Elektronikversender&amp;diff=89326"/>
		<updated>2015-07-17T00:14:59Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* AliExpress */ typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Vor- und Nachteile von verschiedenen Elektronik-Versand-Händlern werden relativ häufig im Forum diskutiert. Diese Diskussionen führen nicht selten zu weitestgehend gleichen Ergebnissen. In diesem Artikel sollen daher die Argumente, die für oder gegen einen bestimmten Elektronik-Versender sprechen, zusammengetragen werden. Sobald diese Liste einigermaßen vollständig ist, würde dies sicher einige Diskussions-Threads und/oder Flame-Wars überflüssig machen.&amp;lt;br/&amp;gt;&lt;br /&gt;
Bei ausländischen Versendern sind generelle Infomationen zur Handhabung von Versand, sowie Zoll und Abgaben nützlich. Bitte aber hier nicht jedesmal wieder die kompletten Zoll-Details eintragen, dafür gibt es den Artikel [[Zoll und Abgaben]]&lt;br /&gt;
&lt;br /&gt;
Diese Liste erhebt keinerlei Anspruch auf Vollständigkeit, d.h. wenn ihr einen Versender kennt, der hier noch nicht aufgeführt ist, dann nennt wenigstens die URL und den Namen. Den Rest können auch andere besorgen, die den Versender ebenfalls kennen!&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Diese Seite kann nur von angemeldeten Benutzern bearbeitet werden!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Bitte nur Firmen eintragen die versenden. Für reine Ladengeschäfte gibt es [[Lokale Elektroniklieferanten]]. Versender die auch ein Ladengeschäft betreiben können in beide Listen eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
* Bitte nur Firmen eintragen, die unter anderem Elektronikbauteile, -bausätze und z.B. Messgeräte versenden. Für andere Materialien gibt es [[Eisenwarenversender]] (die Liste dort enthält nicht nur Eisenwarenversender).&lt;br /&gt;
 &lt;br /&gt;
* Nur Versender eintragen die ohne Bettelei, ohne Rumgezicke oder ähnliches an Privatpersonen verkaufen (eventuell über Umwege). Also &#039;&#039;&#039;B2C, kein B2B&#039;&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
* Bitte ergänzt nur allgemeine Sachen (z.&amp;amp;nbsp;B. &amp;quot;liefert immer vollständig&amp;quot;, &amp;quot;günstig&amp;quot; oder &amp;quot;große Auswahl&amp;quot;), aber nicht Sachen wie &amp;quot;mein ATMega 128 hatte verbogene Beine&amp;quot;!&lt;br /&gt;
&lt;br /&gt;
* Bitte auch die alphabetische Sortierung beibehalten!&lt;br /&gt;
&lt;br /&gt;
* Keinen Spam von Firmen, besonders nicht, wenn sie nicht an Privatpersonen verkaufen. Wer uns nichts verkaufen will soll bitte draußen bleiben. &lt;br /&gt;
&lt;br /&gt;
* Nur in Ausnahmefällen Firmen die keinen oder keinen funktionsfähigen Onlineshop betreiben eintragen.&lt;br /&gt;
&lt;br /&gt;
* Bitte veraltete Einträge updaten oder, wenn die Firma nicht mehr auffindbar ist, löschen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Liste der Versender ==&lt;br /&gt;
&lt;br /&gt;
=== AATiS ===&lt;br /&gt;
Homepage: http://www.aatis.de&lt;br /&gt;
&lt;br /&gt;
* Arbeitskreis Amateurfunk und Technik in der Schule e.V.&lt;br /&gt;
* Bausätze speziell auch für Elektronik-Anfänger, Schüler&lt;br /&gt;
* Literatur, Seminare für Lehrer &lt;br /&gt;
&lt;br /&gt;
=== AK Modul Bus Computer GmbH ===&lt;br /&gt;
Homepage: http://www.ak-modul-bus.com/stat/produkte.html&lt;br /&gt;
&lt;br /&gt;
* Interfaces, Messmodule, Funktionsmodelle, Experimentiersysteme&lt;br /&gt;
* Entwicklungssysteme, Baugruppen, Elektor, Zubehör, Bauelemente&lt;br /&gt;
* Software, Lernpakete, Bücher, Sonderposten&lt;br /&gt;
&lt;br /&gt;
=== AliExpress ===&lt;br /&gt;
&lt;br /&gt;
Homepage: http://www.aliexpress.com/&lt;br /&gt;
&lt;br /&gt;
Stellvertretend für &amp;quot;aus China&amp;quot;: In der Regel versandkostenfrei und bis 26€ ohne Einfuhrumsatzsteuer. Alternativ auch [http://www.banggood.com Banggood] oder [http://ebay.com ebay.com] (erste Browser-Sprache: Englisch), siehe auch [[China SUPER Bauteile-Schnäppchen Thread-Wiki]].&lt;br /&gt;
&lt;br /&gt;
=== Allpax ===&lt;br /&gt;
Homepage: http://www.allpax.de&lt;br /&gt;
&lt;br /&gt;
* Liefert auch an Privathaushalte&lt;br /&gt;
* Keine Elektronik an sich, aber ggf. nützliches Zubehör: Größeres, übersichtliches Sortiment an ESD-Beuteln und -Folien, offen und mit Zippverschluss, Pink Poly und Metallisiert (High Shield). Preislich über Farnell, dafür findet man sofort, was man sucht...&lt;br /&gt;
* außerdem Ultraschallreiniger, Waagen und Folienschweißgeräte, sowie viel Fachfremdes&lt;br /&gt;
* Versandkosten: 8,33€ nach Deutschland, diverse EU-Länder 17,85€, Schweiz 34,51€; Versandkostenfrei in D ab 178,50€&lt;br /&gt;
* Gewährt scheinbar auch Privatkunden die Zahlung per Rechnung; bei Bankeinzug 2% Rabatt, bei Vorkasse und Abholung 3%&lt;br /&gt;
&lt;br /&gt;
=== AME-Engineering ===&lt;br /&gt;
Homepage: http://www.ame-engineering.de&lt;br /&gt;
&lt;br /&gt;
* Hochfrequenz-Spezialitäten, Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== Amidon ===&lt;br /&gt;
Homepage: http://www.amidon.de&lt;br /&gt;
&lt;br /&gt;
* Sehr großes Sortiment, vorallem für seltene Bauteile, z.&amp;amp;nbsp;B. Dioden&lt;br /&gt;
&lt;br /&gt;
=== Andy&#039;s Funkladen ===&lt;br /&gt;
Homepage: http://www.andyfunk.de&lt;br /&gt;
&lt;br /&gt;
* Alles für Amateur- und CB-Funk&lt;br /&gt;
* Bauteile und Gehäuse&lt;br /&gt;
&lt;br /&gt;
=== Anvilex ===&lt;br /&gt;
Homepage: http://shop.anvilex.com/index.html&lt;br /&gt;
&lt;br /&gt;
* Liefert sehr günstige Break-Out Boards für diverse Packages&lt;br /&gt;
* Hat einige einfache und günstige Programmer auch für FPGAs etc&lt;br /&gt;
&lt;br /&gt;
=== Atzert Technik-Discounter ===&lt;br /&gt;
Homepage: http://www.atzert-technik.de&lt;br /&gt;
&lt;br /&gt;
Früher &#039;&#039;MEGAKICK Electronic Stores&#039;&#039;, dann &#039;&#039;EFB-Electronic Versand&#039;&#039;, danach &#039;&#039;Atzert-Elektronik Versand&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* Mindestens schon der vierte Name und die vierte Webseite für den Endkunden-Versand von [[Elektronikversender#ETT|ETT]]. ETT liefert sonst nur an gewerbliche Kunden.&lt;br /&gt;
* Ladengeschäfte in Bielefeld, Braunschweig, Bremen, Hamburg und Berlin. &lt;br /&gt;
* Die Preise schwanken im Vergleich zu anderen Anbietern, welche ebenfalls ETT-importierte Produkte führen, mal nach oben, mal nach unten.&lt;br /&gt;
&lt;br /&gt;
=== AVOLTA ===&lt;br /&gt;
Homepage: http://www.avolta.de&lt;br /&gt;
&lt;br /&gt;
* Umfangreiches Sortiment im Bereich Schalter + Steckdosen, Haustechnik, KNX, Beleuchtung&lt;br /&gt;
* Verkauft an Endverbraucher und Firmenkunden&lt;br /&gt;
* sehr schnelle Lieferung mit guter Logistik&lt;br /&gt;
* Fachberatung&lt;br /&gt;
* Fachausstellung mit 120 Schalterdesigns.&lt;br /&gt;
&lt;br /&gt;
=== Bassenberg Elektronik ===&lt;br /&gt;
Homepage: http://www.bassenberg.de&lt;br /&gt;
&lt;br /&gt;
* Ladengeschäfte in Braunschweig und Neumünster&lt;br /&gt;
* Beschafft auch nicht mehr gelistete und abgekündigte Bauteile&lt;br /&gt;
* Liefert auch an Privat&lt;br /&gt;
&lt;br /&gt;
=== Batterie24 ===&lt;br /&gt;
Homepage: http://www.batterie24.de&lt;br /&gt;
&lt;br /&gt;
* Günstige Ultralife &amp;amp; Saft Lithium Batterien sowie FGS Bleiakkus&lt;br /&gt;
* z.B. 10 Ultralife Lithium Batterien 9V Block 52,00 Euro (Stand: Okt. 2014)&lt;br /&gt;
* Anwendungen: z.B. Rauchmelder, Babyphone, Garagentoröffner, Sicherheitssysteme und Alarmanlagen&lt;br /&gt;
&lt;br /&gt;
=== Batronix ===&lt;br /&gt;
Homepage: http://www.batronix.com&lt;br /&gt;
* Gute Auswahl an Messgeräten (Oszis, Multis, Logik-/Spektrumanalyzer, Thermometer), aber auch Lötequipment und Labornetzteile&lt;br /&gt;
* Premium-Distributor für Rigol und Owon, d.h. bevorzugte Belieferung bei Engpässen gegenüber anderen Händlern&lt;br /&gt;
* Bausätze, Programmieradapter für Microcontroller-Applikationen&lt;br /&gt;
* Liefert auch an Privat&lt;br /&gt;
* Versand per DHL&lt;br /&gt;
* Bezahlung via Rechnung (unter Vorbehalt und nicht bei abweichender Lieferadresse), Paypal, Nachnahme, Kreditkarte oder Vorkasse&lt;br /&gt;
&lt;br /&gt;
=== BAZ Spezialantennen ===&lt;br /&gt;
Homepage: http://www.spezialantennen.de&lt;br /&gt;
&lt;br /&gt;
* Antennen für Amateurfunk, ISM, WLAN usw.&lt;br /&gt;
&lt;br /&gt;
=== bed - elektronik ===&lt;br /&gt;
Homepage: http://www.bed-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Restposten aktive und passive Bauelemente&lt;br /&gt;
* sehr günstige Preise&lt;br /&gt;
* alles ab Lager lieferbar&lt;br /&gt;
* Versand an Privat&lt;br /&gt;
* ab 60 EUR versandkostenfrei&lt;br /&gt;
&lt;br /&gt;
=== Bfi-Optilas ===&lt;br /&gt;
Homepage: http://www.bfioptilas.de&lt;br /&gt;
&lt;br /&gt;
* Kein Onlineshop&lt;br /&gt;
* spezialisierter Distributor für Hochfrequenzhalbleiter und Optik&lt;br /&gt;
&lt;br /&gt;
=== BG-Electronics.de ===&lt;br /&gt;
Homepage: http://www.bg-electronics.de&lt;br /&gt;
&lt;br /&gt;
* Online Shop für aktive und passive elektronische Bauelememte&lt;br /&gt;
* günstige Preise&lt;br /&gt;
* alle Artikel ab Lager lieferbar, daher kurze Wartezeiten&lt;br /&gt;
* weltweiter Versand&lt;br /&gt;
* zahlreiche Mengenrabatte&lt;br /&gt;
* viele Ersatzteile aus dem Audio-, CarHiFi und TV-Bereich&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== B &amp;amp; M electronics ===&lt;br /&gt;
Homepage: http://www.bmelectronics.de&lt;br /&gt;
&lt;br /&gt;
* Bauteile, Platinen und Baugruppen für Amateurfunk&lt;br /&gt;
Seite nicht erreichbar am 22.7.2012 --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Box73 ===&lt;br /&gt;
Homepage: http://www.box73.de&lt;br /&gt;
&lt;br /&gt;
Onlineshop des Funkamateur.&lt;br /&gt;
&lt;br /&gt;
* Bauteile, Bausätze, Literatur aus dem Amateurfunkbereich&lt;br /&gt;
* Preise sind O.K.&lt;br /&gt;
* Bestellungen werden nur Di und Do bearbeitet&lt;br /&gt;
* Ab 50 EUR bei Bankeinzug portofrei.&lt;br /&gt;
&lt;br /&gt;
=== Bürklin OHG ===&lt;br /&gt;
Homepage: http://www.buerklin.com&lt;br /&gt;
&lt;br /&gt;
* große Auswahl, hohe Verfügbarkeit&lt;br /&gt;
* sehr schneller Versand&lt;br /&gt;
* Ladengeschäft in Oberhaching (südlicher Landkreis München)&lt;br /&gt;
&lt;br /&gt;
=== CBsoft, s.r.o. (ltd.) ===&lt;br /&gt;
*Homepage: http://www.jjtubes.eu/&lt;br /&gt;
* Firma in der Slowakei&lt;br /&gt;
* Verkauft Röhren der Firma JJ&lt;br /&gt;
* englischsprachig&lt;br /&gt;
* Zahlungsmöglichkeiten in € mit Paypal und Kreditkarte&lt;br /&gt;
&lt;br /&gt;
=== chiptrade.com ===&lt;br /&gt;
siehe [[#SE Spezial-Electronic AG|SE Spezial-Electronic AG]]&lt;br /&gt;
&lt;br /&gt;
=== ConeleK Electronic ===&lt;br /&gt;
Homepage: http://www.conelek.com&lt;br /&gt;
&lt;br /&gt;
* Sehr kleines Bauteileangebot (Röhren, Röhrensockel)&lt;br /&gt;
* Elektronik-Laborbedarf, insbesondere Nachfüllpackungen mit Steckbrett-Drahtbrücken&lt;br /&gt;
* Werkzeug für Elektronik&lt;br /&gt;
* Stromversorgungen&lt;br /&gt;
* Versand an Privat&lt;br /&gt;
* Versandkosten bis 25kg, Vorkasse 5,90€ (Stand 04/2008)&lt;br /&gt;
&lt;br /&gt;
=== Conrad ===&lt;br /&gt;
Homepage: http://www.conrad.de und http://www.business.conrad.de&lt;br /&gt;
&lt;br /&gt;
* großes Angebot (für Bauteile den &amp;quot;Business&amp;quot;-Katalog beachten, der Hauptkatalog ist dahingehend etwas &amp;quot;dünn&amp;quot;) (Anm.: Bauteile, die nur im Business-Katalog aufgeführt sind, sind in Ladengeschäften nur über Sonderbestellung zu bekommen, d.h. dort in aller Regel nicht vorrätig.)&lt;br /&gt;
* Positiv: Wirklich jedes Bauteil kann einzeln gekauft werden und wird nicht in dämlichen Verpackungseinheiten verkauft, so wie es bei den meisten anderen Elektronik-Lieferanten der Fall ist. Dies ist vor Allem für den Prototypenbau sehr hilfreich.&lt;br /&gt;
* relativ teuer jedoch bis zu 10% Rabatt für Schulen (bei genügend Umsatz)&lt;br /&gt;
* 21 Ladengeschäfte in Deutschland, sechs in Österreich (Megastores)&lt;br /&gt;
* positiv: Bei Business-Kunden wird der Rechnungsbetrag erst nach 14 Tagen abgebucht.&lt;br /&gt;
* haben einen (teuren) 24 Std. Lieferservice für Notfälle - Conrad garantiert aber nicht 100%ig für die Einhaltung der 24 Stunden. Bei Nichteinhaltung gibt es kein Geld zurück.&lt;br /&gt;
* Verfügbarkeit in Filialen kann Online überprüft werden.&lt;br /&gt;
* Verfügbarkeit in Filialen kann über zentale Rufnummer erfragt werden. Abholung bestellter Ware in Filialen möglich, aber trotzdem gleiche Versandkosten.&lt;br /&gt;
* Eigenmarken: u.a. Voltcraft, Renkforce&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
Vorerst Auskommentiert - Subjektiv/Einzelerfahrung, veraltete Informationen (Filialen)&lt;br /&gt;
* Mit jeder Bestellung erhält man zusätzlich Werbung von unseriösen Firmen, wo Gewinne versprochen werden und man sich in Wirklichkeit für irgendwelche Abos verpflichtet. Wenn man bei Conrad anruft und sie zur Rede stellt, erhält man die Antwort, dass diese Werbung anscheinend aus Versehen hineingerutscht ist. So ein Zufall.&lt;br /&gt;
* sehr kulant bei Umtäuschen&lt;br /&gt;
* versuchen bei Rückgaben einen Teil oder den gesamten Betrag einzubehalten (schon mehrfach vorgekommen)&lt;br /&gt;
* Schlampig verpackte Artikel. ICs sind nicht Antistatik-Konform verpackt.&lt;br /&gt;
* Die Filiale München / Tal hat keine Telefonnummer mehr in den Verzeichnissen, anscheinend sind Kundenanfragen dort zu &amp;quot;lästig&amp;quot;. (Kommentar: andere Filialen auch nicht, wird nur noch über eine Sammelnummer über ein Callcenter abgewickelt. Die Ladenbestellung wird dann vom Callcenter per eMail an die Filiale weitergeleitet.)&lt;br /&gt;
* die Ladengeschäfte haben nicht das gesamte Programm vor Ort, man kann jedoch in den Geschäften anrufen und die Verfügbarkeit anfragen, evtl. sogar Teile für ein paar Stunden &amp;quot;zurücklegen lassen&amp;quot; (von Geschäft zu Geschäft verschieden).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== csd-electronics ===&lt;br /&gt;
Homepage: [http://www.csd-electronics.de csd-electronics.de]&lt;br /&gt;
&lt;br /&gt;
* schnelle Lieferung, bei Lagerware am selben Tag ohne Aufpreis. Auf Wunsch Teillieferung.&lt;br /&gt;
* ATMEL, ICs, Passive und Mechanische Bauteile, Platinen- und Lötzubehör, u.a.&lt;br /&gt;
* ca. 5000 Bauteile lagernd&lt;br /&gt;
* günstig&lt;br /&gt;
* Mengenrabatte für fast jedes Produkt&lt;br /&gt;
* Versand innerhalb Deutschlands: &lt;br /&gt;
* DHL: 3,85€ (ab 60 EUR versandkostenfrei)&lt;br /&gt;
* Versand EU-weit ab 5,95 EUR&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Bauelemente, die nicht im Shop angeboten werden, können auf Anfrage beschafft werden.&lt;br /&gt;
* Zahlung per Vorkasse (3% Skonto), PayPal, Nachnahme. 1 EUR Aufschlag bei PayPal-Zahlung&lt;br /&gt;
* Zahlung per Rechnung nur für Stammkunden (ab 4 bis 5 Bestellung), Für Institute/Firmen direkt auf Rechnung möglich&lt;br /&gt;
* Abholung von Ware in Bonn-Dransdorf nach Vereinbarung&lt;br /&gt;
&lt;br /&gt;
=== dad24 ===&lt;br /&gt;
Homepage, Shop: http://dad24.eu&lt;br /&gt;
E-Bay Shop:     http://stores.ebay.de/Shop-dad24&lt;br /&gt;
&lt;br /&gt;
* Unterschiedliche Preise in den beiden Shops&lt;br /&gt;
* Kleiner, nicht sonderlich schöner Onlineshop (dad24.eu)&lt;br /&gt;
* Kleines Angebot. Lupenleuchten, Lötstationen, Labornetzgeräte, Messgeräte, etc. aus dem unteren Preissegment&lt;br /&gt;
* Jede Woche eine neue &amp;quot;Kategorie der Woche&amp;quot; auf dad24.eu. Produkte aus der Kategorie werden erst im Warenkorb mit einem Rabatt angezeigt, der auch gewährt wird.&lt;br /&gt;
&lt;br /&gt;
=== Darisus ===&lt;br /&gt;
Homepage: http://www.darisus.de&lt;br /&gt;
&lt;br /&gt;
* kompetente Beratung&lt;br /&gt;
* liefert sehr zuverlässig, in Notfällen auch Express&lt;br /&gt;
* Versand innerhalb Deutschlands ab 4,50 EUR&lt;br /&gt;
* Hat auch eine gute Auswahl an CPLDs und einige FPGAs diverser Hersteller&lt;br /&gt;
&lt;br /&gt;
=== Digi-Key ===&lt;br /&gt;
(tlw.) deutsche Homepage: http://de.digikey.com&lt;br /&gt;
&lt;br /&gt;
* optisch nicht besonders ansprechende, aber durchaus sehr funktionelle Website&lt;br /&gt;
* beheimatet in den USA, ein Logistikbüro gibt es in den Niederlanden&lt;br /&gt;
* kostenloser Versand ab 65&amp;amp;#8364;, darunter 18&amp;amp;#8364; Versandkosten&lt;br /&gt;
* macht merkwürdige Plausibilitäts-Checks: wenn man privat über ihrem Dollar Limit (z.B. 400 Dollar bestellt) kommt sofort die Rückfrage nach Firmenname und Firmenadresse&lt;br /&gt;
* Rückfragen nach dem Verwendungszweck kommen ebenfalls schon bei der Bestellung bei bestimmten Bauteilen die der Exportkontrolle unterliegen&lt;br /&gt;
* Versand direkt aus den USA, dafür sehr flott mit UPS Express (in rund zwei bis drei Tagen da)&lt;br /&gt;
* riesiges Angebot, gewissermaßen ein Distributor der auch Kleinmengen an Privatpersonen liefert, entscheidend ist, dass der Hersteller des Produkts geführt wird&lt;br /&gt;
* kein anderer Anbieter, bietet so viele verschiedene passive Bauteile in kleinen Stückzahlen, z.&amp;amp;nbsp;B. SMD Widerstände in Bauform 01005 bis 2512 meist in verschiedenen Toleranzklassen und von verschiedenen Herstellern&lt;br /&gt;
* alle Bauteile mit Herstellerangabe, Digikey kauft ausschließlich direkt vom Hersteller&lt;br /&gt;
* Preise sind auf der deutschen Website in Euro inklusive etwaigem Zoll angegeben, allerdings ohne Mehrwertsteuer, die korrekt abgerechnet wird (d.h. man zahlt bei Versand nach Österreich 20% Mwst., nach Deutschland m.W.n. 19%)&lt;br /&gt;
* Meistens deutlich teurer als Reichelt, doch häufig die beste Anlaufstelle für Privatkunden wenn es um Spezialbauteile geht, und der Hersteller sich im Programm von Digikey befindet&lt;br /&gt;
&lt;br /&gt;
=== Display Electronics ===&lt;br /&gt;
&lt;br /&gt;
Homepage: http://www.distel.co.uk&lt;br /&gt;
&lt;br /&gt;
* In England&lt;br /&gt;
* Webseite = Augenkrebs &lt;br /&gt;
* Online-Shop versteckt hinter dem Search-Button auf der Homepage&lt;br /&gt;
* Restposten aller Art&lt;br /&gt;
* Mindestbestellwert 10 GBP&lt;br /&gt;
&lt;br /&gt;
=== endasmedia Shop ===&lt;br /&gt;
Homepage: http://shop.endasmedia.ch&lt;br /&gt;
&lt;br /&gt;
* Schweizer Standort! Versendet für 1-3 Euro Europaweit!&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Bauelemente (&#039;&#039;&#039;STM32&#039;&#039;&#039;, AVR, LCD, Kleinteile) und Bausätze sehr günstig&lt;br /&gt;
* Eigenentwickelte Bausätze &lt;br /&gt;
* AVR-ISP-Stick (USBASP)&lt;br /&gt;
* Restposten aller Art&lt;br /&gt;
* Vorauskasse, Paypal&lt;br /&gt;
* Dieser Shop wird von einem Forenmitglied (hedie) betrieben!&lt;br /&gt;
* Verkauf auch an Privat/Bastler&lt;br /&gt;
&lt;br /&gt;
=== eHaJo ===&lt;br /&gt;
Homepage: http://www.eHaJo.de&lt;br /&gt;
&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Bauelemente (AVR, LCD, Kleinteile) und Bausätze sehr günstig&lt;br /&gt;
* eigenentwickelte Bausätze &lt;br /&gt;
* Lötübungen für SMD&lt;br /&gt;
* AVR-ISP-Stick&lt;br /&gt;
* Vorauskasse, Paypal, Sofortüberweisung, Rechnung ab 2. Bestellung&lt;br /&gt;
&lt;br /&gt;
=== EIBTron.com ===&lt;br /&gt;
Homepage: http://www.eibtron.com&lt;br /&gt;
&lt;br /&gt;
* Riesige Auswahl an Produkten (~300000)&lt;br /&gt;
* SMD-Bauteile bis 0402!&lt;br /&gt;
* auch spezielle Sachen wie Xilinx-Configuration PROMs, AD9740-DACs oder SMD-Quarze (z.B. Abracon ABM7) im Angebot&lt;br /&gt;
* Alternative zum HBE-Shop für Privatanwender&lt;br /&gt;
* Versand direkt durch RS&lt;br /&gt;
* zuverlässiger und freundlicher Support&lt;br /&gt;
&lt;br /&gt;
=== Eisch-Kafka-Electronic ===&lt;br /&gt;
Homepage: http://www.eisch-electronic.de&lt;br /&gt;
 &lt;br /&gt;
* Hochfrequenz Bausätze und Bauteile für Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== EleConT ===&lt;br /&gt;
Homepage: http://www.elecont.de/shop/&lt;br /&gt;
&lt;br /&gt;
* Carrierboards für gebräuchliche AVR&lt;br /&gt;
&lt;br /&gt;
=== Electropuces ===&lt;br /&gt;
Homepage: http://perso.wanadoo.fr/electropuces/&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte aus Nantes, Frankreich  (teilweise engl. Menü)&lt;br /&gt;
&lt;br /&gt;
=== Electronic Search ===&lt;br /&gt;
&lt;br /&gt;
Homepage: http://www.electronic-search.de&lt;br /&gt;
&lt;br /&gt;
* Keine Mindestbestellmenge&lt;br /&gt;
* Verkauf auch an Privat/Bastler&lt;br /&gt;
* Fast alle Preise im Online-Shop nur &amp;quot;auf Anfrage&amp;quot;, und nicht im Shop angegeben.&lt;br /&gt;
&lt;br /&gt;
=== electronicpool Rheinstetten ===&lt;br /&gt;
Homepage: http://www.electronicpool.de&lt;br /&gt;
&lt;br /&gt;
* abgekündigte oder schwer beschaffbare elektronische Bauteile&lt;br /&gt;
&lt;br /&gt;
=== Elektroland24===&lt;br /&gt;
Homepage: http://www.elektroland24.de/&lt;br /&gt;
&lt;br /&gt;
* Großes Sortiment im Bereich Schalter &amp;amp; Steckdosen/Haustechnik/Elektoinstallation&lt;br /&gt;
* Verkauf an Endverbraucher&lt;br /&gt;
* kurze Lieferzeiten&lt;br /&gt;
&lt;br /&gt;
=== Elektronik-Kompendium ===&lt;br /&gt;
Homepage: http://www.elektronik-kompendium.de&lt;br /&gt;
&lt;br /&gt;
* Bausätze diverser Schaltungen (mit Anleitung und Funktionsbeschreibung)&lt;br /&gt;
* erspart lästiges Suchen in anderen Shops&lt;br /&gt;
* kurze Lieferzeiten&lt;br /&gt;
* günstiger Versand&lt;br /&gt;
&lt;br /&gt;
=== ElrePo ===&lt;br /&gt;
Homepage: http://www.elrepo.de&lt;br /&gt;
&lt;br /&gt;
*Relativ großes Sortiment an Bauteilen&lt;br /&gt;
*Günstige Sortimente und Recycling Bauteile&lt;br /&gt;
*Versandkosten ab 90ct !&lt;br /&gt;
&lt;br /&gt;
=== Elk Tronic ===&lt;br /&gt;
Homepage: http://www.elk-tronic.de&lt;br /&gt;
&lt;br /&gt;
* kleines Lieferprogramm Adapterplatinen (SMD -&amp;gt; 2,54mm-Raster) und Programmieradapter&lt;br /&gt;
* günstige Preise und Versandspesen&lt;br /&gt;
&lt;br /&gt;
=== Elko-Verkauf ===&lt;br /&gt;
Homepage: http://www.elko-verkauf.de&lt;br /&gt;
&lt;br /&gt;
* Nur Low-ESR-Elkos&lt;br /&gt;
* Elko-Sets für ein Gerät&lt;br /&gt;
&lt;br /&gt;
=== Ellmitron ===&lt;br /&gt;
Homepage: http://www.ellmitron.de/&lt;br /&gt;
Katalog: http://www.ellmitron.de/katalog.pdf&lt;br /&gt;
&lt;br /&gt;
* Lehrmittel, Kleinbausätze vor allem für Schüler, Experimentierkästen&lt;br /&gt;
&lt;br /&gt;
=== Elpro ===&lt;br /&gt;
Homepage: http://www.elpro.org/shop/shop.php&lt;br /&gt;
&lt;br /&gt;
* Sehr gute Preise, nachsehen lohnt sich!&lt;br /&gt;
* Kein Mindestbestellwert, aber höhere Versandkosten für kleine Bestellungen. (Stand April 2013):&lt;br /&gt;
* Ab €200: Versandkostenfrei&lt;br /&gt;
* Große Auswahl an Mikrocontrollern, z.B. [[STM32]] und [[LPC1xxx]]&lt;br /&gt;
* Sehr große Auswahl an Schaltnetzteilen von Meanwell (geschlossen, offen, auf PCB lötbar, DIN-Schiene)&lt;br /&gt;
* Shopsoftware gewöhnungsbedürftig, jedoch sinnvolle Untergliederung. Braucht JavaScript&lt;br /&gt;
* Keine AGBs online. Da Preisangaben ohne MwSt. richtet sich das Angebot vermutlich nicht an Endverbraucher (werden aber beliefert)&lt;br /&gt;
* Sehr schnelle Lieferung, Bearbeitungszeit (bis Warenausgang) oft nur 2-3 Tage.&lt;br /&gt;
* Versand bisher mit DHL&lt;br /&gt;
* gute bis sehr gute Verpackung&lt;br /&gt;
&lt;br /&gt;
=== Eltrix ===&lt;br /&gt;
Homepage: http://eltrix.de/Starteltrix.htm&lt;br /&gt;
&lt;br /&gt;
*  Verbrauchsmaterial, Tipps und Tricks fürs Leiterplattenherstellen und Löten&lt;br /&gt;
&lt;br /&gt;
=== ELV ===&lt;br /&gt;
Homepage: http://www.elv.de&lt;br /&gt;
&lt;br /&gt;
* nicht sehr große Auswahl an Einzelteilen&lt;br /&gt;
* riesiges Angebot an Zubehör für Hobbyisten&lt;br /&gt;
* viele z.T. pfiffige Eigenentwicklungen, Bausätze (auch zum Download auf der Website verfügbar)&lt;br /&gt;
* sonst Sortiment ähnlich Conrad, nicht billig&lt;br /&gt;
* im Allgemeinen nicht billig, merkwürdigerweise sind manche Artikel aber die günstigsten auf dem Markt&lt;br /&gt;
* mühsamer Onlinekatalog&lt;br /&gt;
* Immer mal wieder Fehllieferungen und Wartezeiten (zumindest in die Schweiz). Service erreichte in 3 Fällen nicht das inserierte Niveau.&lt;br /&gt;
* Versandkosten innerhalb Deutschland 4,5&amp;amp;#8364;, ab 150&amp;amp;#8364; Bestellwert versandkostenfrei&lt;br /&gt;
* nicht abwählbare Versandversicherung, die 0,85% des Bestellwertes kostet&lt;br /&gt;
&lt;br /&gt;
=== ETT - Electronic Toys Trading  ===&lt;br /&gt;
Homepage: http://www.ett-online.de&lt;br /&gt;
&lt;br /&gt;
* Großhandel nur für Gewerbekunden, aber hat einen Zweitshop [[Elektronikversender#Atzert Technik-Discounter|Atzert Technik-Discounter]] (früher EFB-Electronic Versand, davor Megakick Electronic-Stores) für Endkunden.&lt;br /&gt;
* Ladengeschäft in Braunschweig für jedermann. Weitere Atzert Ladengeschäfte in Bielefeld, Bremen, Hamburg und Berlin.&lt;br /&gt;
* Eigentümer der Marken McCHECK®, McPower®, McVoice® und anderer, unter denen ETT importierte Messgeräte, Labornetzteile, usw. an Großkunden und Händler vertreibt. Diese sind unter oben genannten Marken dann in vielen Shops anderer Firmen für Endkunden zu finden, nicht nur bei Atzert. Preisvergleiche lohnen.&lt;br /&gt;
&lt;br /&gt;
=== Ettinger GmbH ===&lt;br /&gt;
Homepage: http://www.ettinger.de&lt;br /&gt;
&lt;br /&gt;
* Liefert per Nachnahme oder gegen Vorauskasse auch an Privatkunden.&lt;br /&gt;
* Mechanische Komponenten (Gehäuse, Abstandshalter, Drehknöpfe, usw.)&lt;br /&gt;
* LEDs&lt;br /&gt;
* Gewöhnungsbedürftiger Online-Shop&lt;br /&gt;
&lt;br /&gt;
=== EXP-TECH ===&lt;br /&gt;
Homepage: http://www.exp-tech.de/&lt;br /&gt;
&lt;br /&gt;
* liefert an privat&lt;br /&gt;
* vielfältiges Sortiment von vielen verschiedenen Händlern (Adafruit, Sparkfun, Arduino, Olimex, Embest, SeedStudio, CooCox,  Digi, BeagleBone, IteadStudio, RaspberryPI, SecretLabs, CookingHacks,  Axiris.pe, OpenPicus, RobotElectronics, RobotBase, AttenInstruments,  Dagu, RF-Explorer, TexasInstruments, DangerousPrototypes...)&lt;br /&gt;
* Lieferung per DHL&lt;br /&gt;
* Zahlungsmöglichkeiten: Überweisung (Vorkasse), PayPal, Visa, MasterCard&lt;br /&gt;
&lt;br /&gt;
=== Farnell ===&lt;br /&gt;
Homepage: http://de.farnell.com&lt;br /&gt;
&lt;br /&gt;
* liefert nur an gewerbliche Abnehmer, Ausnahme sind Studenten und HTL-Schüler (Österreich, Farnell.at). Nachweis wird verlangt (Gewerbeschein oder Immatrikulation).&lt;br /&gt;
* Lieferungen an Privat:&lt;br /&gt;
:* Schweiz: Farnell Schweiz beliefert auch Privatkunden.&lt;br /&gt;
:* Deutschland: Über den Reseller [[#HBE_-_Heinz_B.C3.BCchner_Elektronik.2C_Messtechnik.2C_med._Elektronik_e.K.|HBE]] kann man Produkte aus dem Farnell-Sortiment zu bestellen.&lt;br /&gt;
:* Österreich: [[#Technik-Welt / Industrieshop.at|Technik-Welt / Industrieshop.at]]&lt;br /&gt;
* große Auswahl&lt;br /&gt;
* &amp;lt;s&amp;gt;12% Rabatt für Studenten und Lehreinrichtungen&amp;lt;/s&amp;gt; Laut Kundenservice seit Dezember 2013 keine Rabatte mehr für bestimmte Kundengruppen!&lt;br /&gt;
* sehr schneller Versand, Ware ist in 99% aller Fälle am nächsten Tag da (UPS), fehlende Positionen werden relativ rasch versandkostenfrei nachgeliefert&lt;br /&gt;
* Versandkosten: Bestellung bis 54,99&amp;amp;#8364;: 5,95&amp;amp;#8364;; ab 55,00&amp;amp;#8364; versandkostenfrei&lt;br /&gt;
* hat nach eigenen Aussagen umfangreichstes Sortiment an RoHS-konformen Bauteilen mit Suchfunktion im WWW&lt;br /&gt;
* leistungsfähige parametrische Suchfunktion / teils aber völlig nutzlos, da den Artikeln massenweise Tags fehlen, weswegen die Suchergebnisse unnötig eingeschränkt werden&lt;br /&gt;
* Datenblätter für die meisten Bauteile online&lt;br /&gt;
* Internetpräsenz fällt nachts oft aus (Hinweis auf angebliche geplante Wartungsarbeiten)&lt;br /&gt;
* Sortierfunktion wird bei der Suche ständig zurückgesetzt, im Warenkorb ist überhaupt keine sinnvolle Sortierung möglich&lt;br /&gt;
* Eigenwillige Preispolitik: Einiges sehr günstig, Anderes total überteuert&lt;br /&gt;
&lt;br /&gt;
=== Fibra-Brandt Zweibrücken ===&lt;br /&gt;
Homepage: http://www.fibra-brandt.com&lt;br /&gt;
&lt;br /&gt;
* lagert tausende veraltete und schwer zu findende elektronische Bauteile&lt;br /&gt;
* Halbleiter, IC&#039;s, Transistoren, Spulen und Kondensatoren.&lt;br /&gt;
* Sonderbeschaffung von abgekündigten Halbleitern.&lt;br /&gt;
&lt;br /&gt;
=== Fischer DK2FD ===&lt;br /&gt;
Homepage: http://www.dk2fd.de für Amateurfunkprodukte&lt;br /&gt;
&lt;br /&gt;
* Baugruppen für Hochfrequenzmesstechnik und Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== Fuchs Shop ===&lt;br /&gt;
Homepage: http://www.fuchs-shop.com/&lt;br /&gt;
&lt;br /&gt;
* 1-Wire- und iButton-Komponenten&lt;br /&gt;
&lt;br /&gt;
=== Funkamateur Online-Shop ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Elektronikversender#Box73]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Futurelec ===&lt;br /&gt;
Homepage: http://www.futurlec.com&lt;br /&gt;
&lt;br /&gt;
* günstiger Versender aus Übersee&lt;br /&gt;
* viele Stamp-Boards&lt;br /&gt;
* LED Matrix-Module&lt;br /&gt;
&lt;br /&gt;
=== Future Electronics ===&lt;br /&gt;
Homepage: http://de.futureelectronics.com&lt;br /&gt;
&lt;br /&gt;
* große Auswahl an Teilen&lt;br /&gt;
* Versand auch an Privatpersonen&lt;br /&gt;
* Preisangaben ohne MwSt.&lt;br /&gt;
* Zahlung nur mit Kreditkarte&lt;br /&gt;
* Versandkosten 7,14€ (Brutto)&lt;br /&gt;
* Versand aus den USA mit FedEx, Lieferzeit meist unter 5AT&lt;br /&gt;
* Verzollung usw. wird von FutureElectronics gemacht, keine Nachzahlungen etc.&lt;br /&gt;
&lt;br /&gt;
=== Geist Electronic-Versand GmbH ===&lt;br /&gt;
Homepage: http://www.geist-electronic.de&lt;br /&gt;
&lt;br /&gt;
* Liefern Bauteile für Elektor-Projekte&lt;br /&gt;
* D-78054 Villingen-Schwenningen&lt;br /&gt;
* Versandkosten: 5.40€&lt;br /&gt;
&lt;br /&gt;
=== Gie-Tec ===&lt;br /&gt;
Homepage: http://www.gie-tec.de/index.php&lt;br /&gt;
&lt;br /&gt;
Teile des früheren proMa systro Angebots.&lt;br /&gt;
&lt;br /&gt;
=== guloshop.de ===&lt;br /&gt;
Homepage: http://guloshop.de&lt;br /&gt;
&lt;br /&gt;
* kleiner Shop, konzentriert sich auf Standard-AVRs im DIP-Gehäuse, ist dabei aber meist der billigste Versender in Deutschland&lt;br /&gt;
* ATtiny, ATmega, Breakout-Boards, Programmer, Adapterkabel, IC-Fassungen&lt;br /&gt;
* AVR mit geflashtem Arduino-Bootloader&lt;br /&gt;
* äußerst niedrige Preise&lt;br /&gt;
* liefert schnell und zuverlässig, jedoch nur gegen Vorkasse&lt;br /&gt;
* kein Mindestbestellwert, Versandkosten für kleine Bestellungen: 2,40 EUR, darüber 4,40 EUR&lt;br /&gt;
* ansässig in 90489 Nürnberg&lt;br /&gt;
&lt;br /&gt;
=== H-Tronic ===&lt;br /&gt;
Homepage: http://www.h-tronic.eu/index.php&lt;br /&gt;
&lt;br /&gt;
* Online-Shop einer Entwicklungsfirma, in dem neben Baugruppen und Geräten auch einige Bauelemente und Elektronikzubehör angeboten werden&lt;br /&gt;
* kleines Angebot&lt;br /&gt;
&lt;br /&gt;
=== Hallmanns Elektronik ===&lt;br /&gt;
Homepage: http://www.hallmanns.com &amp;lt;br&amp;gt;&lt;br /&gt;
Adresse: Bruno Hallmanns, Weierstraße 41, 52349 Düren&lt;br /&gt;
&lt;br /&gt;
* Elektronikhändler mit Ladenlokal und Versand&lt;br /&gt;
* Ladentypisches Sortiment (Bauteile, Geräte, PC, Funk, Hifi...)&lt;br /&gt;
&lt;br /&gt;
=== Hari Seligenstadt ===&lt;br /&gt;
Homepage: http://www.hari-ham.com&lt;br /&gt;
&lt;br /&gt;
* Bausätze, Ringkerne, Geräte für Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== HBE - Heinz Büchner Elektronik, Messtechnik, med. Elektronik e.K. ===&lt;br /&gt;
Homepage: http://www.hbe-shop.de/katalog/&lt;br /&gt;
&lt;br /&gt;
* Bezeichnet sich als &#039;&#039;[[#Farnell|Farnell]] Fachhändler&#039;&#039;, bei dem nichtgewerbliche Kunden aus dem Farnell-Sortiment bestellen können.&lt;br /&gt;
* Preise für Farnell-Produkte normalerweise Farnell Netto-Preis + MwSt.&lt;br /&gt;
* Mindestbestellwert 30,- €, Mindermengenzuschlag 5,- € (Stand 03/2014)&lt;br /&gt;
* Versandkosten 5,65 €, ab 90,- € versandkostenfrei (Stand 03/2014)&lt;br /&gt;
&lt;br /&gt;
=== HeComps ===&lt;br /&gt;
Homepage: http://www.hecomps.de&lt;br /&gt;
* Module und Shields zum Anschluss an Arduino, AVR etc.&lt;br /&gt;
* Viele Sachen aus dem &amp;quot;China SUPER Bauteile-Schnäppchen&amp;quot; Thread&lt;br /&gt;
* 2-5 Arbeitstage für Waren ab Lager&lt;br /&gt;
* Porto + Verpackung ab Euro 2,95&lt;br /&gt;
* Kein Mindestbestellwert&lt;br /&gt;
&lt;br /&gt;
=== Heho-Elektronik ===&lt;br /&gt;
Homepage: http://www.heho-elektronik.de&lt;br /&gt;
* Halbleiter / Bauteile, Sortimente, Handy - Akkus, VELLEMAN - Bausätze&lt;br /&gt;
* Aktuelles Angebot, Ladegeräte / Akkuladegeräte, Blei - Akkus&lt;br /&gt;
* Spannungswandler, Audio / Video / USB - Kabel, Netzwerk - Kabel&lt;br /&gt;
* 1-2 Arbeitstage für Waren ab Lager&lt;br /&gt;
* Porto + Verpackung pauschal Euro 4,50&lt;br /&gt;
* Mindestbestellwert von &amp;amp;#8364; 10,00&lt;br /&gt;
&lt;br /&gt;
=== Home-Electronic24 ===&lt;br /&gt;
Homepage: http://www.home-electronic24.de/&lt;br /&gt;
&lt;br /&gt;
=== HW-Electronics ===&lt;br /&gt;
Homepage: http://www.hw-electronics.de &amp;lt;br&amp;gt;&lt;br /&gt;
Homepage EU: http://hw-electronics.eu/&lt;br /&gt;
&lt;br /&gt;
* Tauch- und Sprühätzanlagen&lt;br /&gt;
* Entwicklungsgeräte&lt;br /&gt;
* Belichtungsgeräte, Materialsätze zum Selbstbau von Belichtungsgeräten&lt;br /&gt;
&lt;br /&gt;
=== ID-Elektronik ===&lt;br /&gt;
Homepage: http://www.id-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Amateurfunk-Baugruppen&lt;br /&gt;
&lt;br /&gt;
=== IT-WNS ===&lt;br /&gt;
Homepage: https://www.it-wns.de&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Bauteile, Platinen, Bausätze&amp;quot; insbesondere mit ATMEGA Mikrocontrollern&lt;br /&gt;
* Viele aktive, passive und mechanische Bauelemente&lt;br /&gt;
* Bausätze zu Projekten aus dem Forum&lt;br /&gt;
* ESP8266 Module, SD-Slots, RFID, Bluetooth-Module, AVR Mikrocontroller, USB uvam.&lt;br /&gt;
* Bauelemente, die nicht im Shop angeboten werden, können auf Anfrage (Kontaktformular) oft beschafft werden &lt;br /&gt;
* Günstige Preise und Versandkosten ab 2,95EUR, kein Mindestbestellwert&lt;br /&gt;
* Schneller Versand, sofern die Artikel auf Lager sind, versandkostenfreie Nachlieferung&lt;br /&gt;
&lt;br /&gt;
=== Kabelscheune ===&lt;br /&gt;
Homepage: http://www.kabelscheune.de&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Direktversand von Elektromaterial und Multimediaprodukten&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Kessler ===&lt;br /&gt;
Homepage: http://www.kessler-electronic.de&lt;br /&gt;
&lt;br /&gt;
* im Preis-Leistungsverhältnis mit Reichelt zu vergleichen (sprich: günstig)&lt;br /&gt;
* Sortiment kleiner als Reichelt und mit gewissen Abweichungen (z. B. andere FPGA und RAMs)&lt;br /&gt;
* oft lange Lieferzeiten&lt;br /&gt;
* Versandkosten innerhalb Deutschlands 4€ (Brief), 5€ (DHL-Paket), 10€ (DHL-Express-Paket)&lt;br /&gt;
&lt;br /&gt;
=== Klein-Electronic ===&lt;br /&gt;
Homepage: http://www.klein-electronic.de&lt;br /&gt;
&lt;br /&gt;
* Baugruppen zur Video- und 2,4GHz-Sendetechnik&lt;br /&gt;
&lt;br /&gt;
=== Konni-Antennen ===&lt;br /&gt;
Homepage: http://www.konni-antennen.de&lt;br /&gt;
&lt;br /&gt;
* Antennen für TV, Amateurfunk&lt;br /&gt;
* Zubehör, Einzelteile&lt;br /&gt;
* sehr netter kompetenter Service&lt;br /&gt;
&lt;br /&gt;
=== LEDSEE Electronics ===&lt;br /&gt;
Homepage: http://www.ledsee.com&lt;br /&gt;
&lt;br /&gt;
* LEDs, LCDs, diverses&lt;br /&gt;
* Lieferung direkt aus China, daher sehr günstig und lange Lieferzeiten&lt;br /&gt;
&lt;br /&gt;
=== LED Microtechnics LTD ===&lt;br /&gt;
Homepage: http://www.ledmeile.de&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;LED Shop und Lampentechnik&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== LED-Tech LED-Shop ===&lt;br /&gt;
Homepage: http://www.led-tech.de&lt;br /&gt;
&lt;br /&gt;
* viele verschiedene LEDs zu sehr guten (meist den günstigsten) Preisen&lt;br /&gt;
* vor allem auf High-Power-LEDs spezialisiert&lt;br /&gt;
* viele verschiedene Treiber für High-Power-LEDs&lt;br /&gt;
* kostenloser Versand&lt;br /&gt;
* haben ein eigenes, sehr umfangreiches Forum&lt;br /&gt;
&lt;br /&gt;
=== Lüdeke Elektronic ===&lt;br /&gt;
Homepage: http://www.luedeke-elektronic.de/&lt;br /&gt;
&lt;br /&gt;
* großes Sortiment, bietet unter anderem auch viele selbst entwickelte Bausätze an&lt;br /&gt;
&lt;br /&gt;
=== LUMITRONIX LEDs-Shop ===&lt;br /&gt;
Homepage: http://www.leds.de&lt;br /&gt;
&lt;br /&gt;
* alles rund um LEDs (auch Zubehör und Lektüre)&lt;br /&gt;
* neben Standard-LEDs auch SMD- und SuperFlux-LEDs&lt;br /&gt;
&lt;br /&gt;
=== Marsch Elektronik, M. Schlimper ===&lt;br /&gt;
Homepage: http://www.marsch-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Online Shop für aktive und passive Bauelemente&lt;br /&gt;
* Versandkosten ab Euro 1,60&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* bietet auch Einsteigersortimente und Widerstandsortimente (auch SMD)&lt;br /&gt;
* liefert nur innerhalb Deutschlands&lt;br /&gt;
* nicht gelistete Artikel können angefragt werden und werden meist auch beschafft&lt;br /&gt;
&lt;br /&gt;
=== Mauritz Communication &amp;amp; Electronics ===&lt;br /&gt;
Homepage: http://www.mauritz.de/&lt;br /&gt;
&lt;br /&gt;
* Online Shop für HF-Stecker und Kabel&lt;br /&gt;
* bietet HF-Stecker/Buchsen und Koaxkabel an&lt;br /&gt;
* große Auswahl, auch exotische Teile&lt;br /&gt;
* Kabelkonfektionierung nach Wunsch&lt;br /&gt;
* vernünftige Preise&lt;br /&gt;
* liefert nach Rücksprache auch weltweit&lt;br /&gt;
* Keine Mindestbestellwert, aber 5 € Aufschlag unter 15 €&lt;br /&gt;
* Versand bis 40 kg pauschal 5,95 € per GLS innerhalb DE&lt;br /&gt;
* schneller Versand&lt;br /&gt;
* Paypal oder Vorkasse&lt;br /&gt;
&lt;br /&gt;
=== mechapro ===&lt;br /&gt;
Homepage: http://www.mechapro.de&lt;br /&gt;
* Online Shop für Schrittmotoren und Steuerungen&lt;br /&gt;
* Schrittmotorendstufen als Fertiggeräte oder Bausätze&lt;br /&gt;
* Eigene Entwicklung und Fertigung in Deutschland (außer Motoren)&lt;br /&gt;
* Versandkosten in DE ab 4 EUR&lt;br /&gt;
* liefert EU-weit&lt;br /&gt;
&lt;br /&gt;
=== Mikrocontroller.net ===&lt;br /&gt;
Homepage: http://shop.mikrocontroller.net&lt;br /&gt;
&lt;br /&gt;
* Starterkits, Development Boards und Zubehör für AVR, AVR32, ARM und MSP430&lt;br /&gt;
&lt;br /&gt;
=== Mouser ===&lt;br /&gt;
Homepage: http://de.mouser.com&lt;br /&gt;
&lt;br /&gt;
* Liefert an Privat&lt;br /&gt;
* Zügige Lieferung mit FedEx aus den USA&lt;br /&gt;
* Keine Halbleiter von Linear&lt;br /&gt;
* &amp;quot;Versand ist kostenfrei bei den meisten Bestellungen über 65 €&amp;quot;&lt;br /&gt;
* Preise inkl. Zoll aber ohne Einfuhrumsatzsteuer&lt;br /&gt;
* Zahlungsmöglichkeiten: Kreditkarte, PayPal&lt;br /&gt;
&lt;br /&gt;
=== MS-Elektronik ===&lt;br /&gt;
Homepage: http://www.ms-elektronik.info&lt;br /&gt;
&lt;br /&gt;
* Liefert an Privat&lt;br /&gt;
* Zügige Lieferung&lt;br /&gt;
* Gute Qualität&lt;br /&gt;
* Viel in Richtung Audio&lt;br /&gt;
* Große Auswahl an Elkos -&amp;gt; kleine Preise&lt;br /&gt;
* kein allzu großes Sortiment&lt;br /&gt;
&lt;br /&gt;
=== myAVR Shop ===&lt;br /&gt;
Hompage http://shop.myavr.de&lt;br /&gt;
&lt;br /&gt;
* Kleine Auswahl, aber die angebotene Ware ist sehr preiswert (meist preiswerter als bei Reichelt)&lt;br /&gt;
* Zügige Lieferung (1-2 Werktage)&lt;br /&gt;
* Diverse Zahlungsmöglichkeiten: Rechnung, Vorkasse, Lastschrift, Kreditkarte, PayPal&lt;br /&gt;
* Kein Mindestbestellwert&lt;br /&gt;
* Sehr günstige Versandkosten ab 1,95 Eur&lt;br /&gt;
* Mengenrabatt ab 10 gleichen Artikeln&lt;br /&gt;
&lt;br /&gt;
=== Neuhold-Elektronik ===&lt;br /&gt;
Homepage: http://www.neuhold-elektronik.at &amp;lt;br&amp;gt;&lt;br /&gt;
Shop: http://www.neuhold-elektronik.at/catshop/default.php?language=de&lt;br /&gt;
&lt;br /&gt;
* preiswerte Schnäppchen&lt;br /&gt;
* regelmäßig aktualisierte Angebotsliste herunterladbar&lt;br /&gt;
* Ab 60,- EUR versandkostenfrei in Österreich&lt;br /&gt;
&lt;br /&gt;
=== Octamex ===&lt;br /&gt;
Homepage: http://www.octamex.de&lt;br /&gt;
&lt;br /&gt;
* Leiterplattenchemie (Entwickler, Ätzmittel, CRC-Sprays)&lt;br /&gt;
* Chemisch Zinn&lt;br /&gt;
* Lötstopp-Laminat, Tentingresist, Bestückungsdruck&lt;br /&gt;
* Bungard Basismaterial in 0,5mm 1,0mm 1,5mm Dicke und 18µm, 35µm, 70µm Kupfer&lt;br /&gt;
* Bungard Alucorex für 19&amp;quot; Frontplatten&lt;br /&gt;
* Bungard Cotherm, Alukernbasismaterial&lt;br /&gt;
* Funkmodule 434MHz, 868MHz, 2.4GHz&lt;br /&gt;
* Löttechnik und Zubehör&lt;br /&gt;
* Gehäuse aller Art&lt;br /&gt;
* Messgeräte und Labornetzteile&lt;br /&gt;
* aktive, passive u. mechanische Bauelemente (Widerstände, Kondensatoren, Transistoren, Logik-ICs etc.)&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Lieferung auch ins Ausland&lt;br /&gt;
* Versandkosten ab 4,50EUR&lt;br /&gt;
* Liefert nur gegen Vorkasse, ausser für Bestandskunden, die schon häufig bestellt haben&lt;br /&gt;
* Zahlung mit EC-Pay oder Kreditkarte nur gegen Aufschlag (bis zu 5%)&lt;br /&gt;
&lt;br /&gt;
=== Online Batterien ===&lt;br /&gt;
Homepage: http://www.online-batterien.de&lt;br /&gt;
&lt;br /&gt;
* Allerlei günstige Batterien &amp;amp; Akkus vieler Marken&lt;br /&gt;
* z.&amp;amp;nbsp;B. &#039;&#039;&#039;40 Stk.&#039;&#039;&#039; DURACELL PLUS LR6 AA 11,59€ (Jan 2010)&lt;br /&gt;
* Beleuchtungsartikel&lt;br /&gt;
* USV&lt;br /&gt;
* Versand ab 3,90€&lt;br /&gt;
&lt;br /&gt;
=== Oppermann ===&lt;br /&gt;
Homepage: http://www.oppermann-electronic.de&lt;br /&gt;
&lt;br /&gt;
* Restposten, auch HF Bauteile&lt;br /&gt;
* auch Privatkunden&lt;br /&gt;
* Lieferung nach üblicher Zeit&lt;br /&gt;
&lt;br /&gt;
=== PCB-Soldering ===&lt;br /&gt;
&lt;br /&gt;
Homepage, Online-Shop: http://www.pcb-soldering.co.uk&lt;br /&gt;
eBay: http://www.allendale-stores.co.uk&lt;br /&gt;
Firmen-Homepage: http://www.allendale-elec.co.uk&lt;br /&gt;
&lt;br /&gt;
* [http://www.aoyue.com/en/products.asp Aoyue] Lötstationen und preiswertes Zubehör (Lötspitzen) für diese. Bei Aoyue-Zubehör bessere Preise (Stand 10/2008) als [[#WilTec_Wildanger_Technik_GmbH|WilTec]]&lt;br /&gt;
* Schnelle Lieferung&lt;br /&gt;
* Dank EU Binnenmarkt nur britische Mehrwertsteuer (VAT), kein Zoll/Einfuhrumsatzsteuer&lt;br /&gt;
* Zwei von drei E-Mails wurden nicht beantwortet&lt;br /&gt;
* Versandart wurde eigenmächtig von &amp;quot;Standard&amp;quot; auf teureres &amp;quot;Signed for&amp;quot; (Einschreiben) geändert&lt;br /&gt;
* Sendet nach Einkauf regelmäßig Spam-Mails.&lt;br /&gt;
&lt;br /&gt;
=== Pollin Electronic ===&lt;br /&gt;
Homepage: http://www.pollin.de&lt;br /&gt;
&lt;br /&gt;
* Restposten aller Art (z.&amp;amp;nbsp;B. &amp;quot;250 g verschiedene ICs&amp;quot; u.dgl.)&lt;br /&gt;
* Produkte teils schnell ausverkauft &lt;br /&gt;
* Qualität schwankend. Man kann gute Schnäppchen machen aber auch reinfallen. Umtausch ist dann aber problemlos.&lt;br /&gt;
* Es wird öfters von sorgloser Verpackung berichtet (empfindliche und schwere Produkte besser nicht zusammen bestellen). Reklamationen bei Beschädigungen werden freundlich behandelt, aber E-Mails werden nicht beantwortet.&lt;br /&gt;
* Warenwirtschaftssystem mängelbehaftet: Bei Telefonbestellung angeblich vorhandene Ware stellt sich bei erfolgter Bestellung als nicht mehr lieferbar heraus, Versandkosten dann also ggf. überproportional hoch.&lt;br /&gt;
* Lieferzeit in der Regel 2-3 Werktage / knappe Woche bei neuer Sonderliste&lt;br /&gt;
* Ladengeschäft in 85104 Pförring (Oberbayern) + jährlicher großer Schnäppchenmarkt vor Ort (mehrtägig, mit Festzelt etc.)&lt;br /&gt;
* Versandkosten innerhalb Deutschlands 4,95€&lt;br /&gt;
* Zahlung per Nachnahme (+2,50 €), Bankeinzug, Vorkasse, &#039;&#039;SOFORT&#039;&#039;-Überweisung oder PayPal&lt;br /&gt;
* Mehrfach jährliche Gutscheine für effektiv VK-freie Lieferung (z.B. an Ostern und Weihnachten), teilweise öffentlich einsehbar (Facebook, Webseite), teils nur für Kunden. Nichtöffentliche Gutscheine per Post/Mail sind nicht übertragbar und werden bei Fremdnutzung nachträglich gestrichen.&lt;br /&gt;
&lt;br /&gt;
=== QRP-project ===&lt;br /&gt;
Homepage: http://www.qrpshop.de/&lt;br /&gt;
&lt;br /&gt;
* Bausätze vor allem einfache Kurzwellen-Funkgeräte&lt;br /&gt;
&lt;br /&gt;
=== Reichelt ===&lt;br /&gt;
Homepage: http://www.reichelt.de&lt;br /&gt;
&lt;br /&gt;
* relativ große Auswahl, aber nicht viele &amp;quot;brandaktuelle&amp;quot; Bauteile&lt;br /&gt;
* wenn man höflich fragt, liefern sie ganz selten auch Bauteile, die nicht im Katalog stehen zu &amp;quot;normalen&amp;quot; Preisen (vorausgesetzt der Hersteller ist im Sortiment), z.&amp;amp;nbsp;B. Xilinx XC2S50, aber meist erhält man die Antwort, dass der Artikel nicht im Sortiment ist, obwohl auf der Homepage unter Service extra ein Punkt angeführt ist: &amp;quot;Ich benötige einen Artikel, der nicht im Programm ist&amp;quot;&lt;br /&gt;
* reagiert aber teilweise auch auf Anregungen, neue Produkte in das Angebot aufzunehmen; siehe dazu auch den Artikel [[Reichelt-Wishlist]]&lt;br /&gt;
* liefert schnell und vollständig; wenn etwas ausnahmsweise nicht verfügbar ist, dann liefern sie es auf eigene Kosten nach, wenn der Artikel in absehbarer Zeit wieder vorrätig ist (selbst wenn er nur 0,20€ wert ist).&lt;br /&gt;
* lässt einen dennoch manchmal warten, wenn ein Artikel nicht lieferbar ist! Daher bei der Bestellung immer darauf hinweisen, dass man auch eine Teillieferung akzeptiert. (Laut Auskunft dauert das länger, besser nach der Inet-Bestellung anrufen und nicht lieferbare Teile aus der Bestellung streichen lassen)&lt;br /&gt;
* Lieferzeiten normalerweise 2 - 4 Arbeitstage&lt;br /&gt;
* niedrige Preise (aber unbedingt Qualität des Artikel checken)&lt;br /&gt;
* Versandkosten 5,60€ (Deutschland); 6,95€ Österreich; Schweiz 16€; Italien 13,95€ EU 15 - 19€;&lt;br /&gt;
* 10€ Mindestbestellwert für alle Länder&lt;br /&gt;
* auch in die Schweiz sehr guter Service&lt;br /&gt;
* holt sich auch ohne Erlaubnis Bankauskünfte bei großen Bestellungen ein&lt;br /&gt;
&lt;br /&gt;
=== RF Microwave ===&lt;br /&gt;
Homepage: http://http://www.rfmicrowave.it/&lt;br /&gt;
&lt;br /&gt;
* Ausschliesslich HF Bauelemente&lt;br /&gt;
* riesige Auswahl an Bauteilen für den Mikrowellenbereich&lt;br /&gt;
* Bestellung nur nach Registrierung im Shop&lt;br /&gt;
* Schnelle Lieferung&lt;br /&gt;
* Firmensitz in Italien&lt;br /&gt;
* Teilweise englischer Shop&lt;br /&gt;
&lt;br /&gt;
=== RFW Elektronik ===&lt;br /&gt;
Homepage: http://www.rfw-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* HF Bauelemente&lt;br /&gt;
&lt;br /&gt;
=== Ribu ===&lt;br /&gt;
Homepage: http://www.ribu.at&lt;br /&gt;
&lt;br /&gt;
* Sehr guter Elektronikversand in Österreich mit zahlreichen Entwicklungsboards und zahlreichen Elektroniklösungen.&lt;br /&gt;
* Liefert sehr schnell und hat eine ausgezeichnete Beratung. &lt;br /&gt;
* Online-Shop ist sehr übersichtlich und einfach zu bedienen.&lt;br /&gt;
* Lieferstatusanzeige für alle Artikel. Bei Auslaufartikeln ist sogar die noch verfügbare Stückzahl sichbar.&lt;br /&gt;
* Günstige Sonderangebote&lt;br /&gt;
* innerhalb Österreichs 4,90&amp;amp;#8364; Versandkosten, ab 80,- keine Versandkosten&lt;br /&gt;
* ausserhalb Österreichs 13&amp;amp;#8364; Versandkosten, ab 225&amp;amp;#8364; versandkostenfrei&lt;br /&gt;
* liefert auch an Privatkunden&lt;br /&gt;
* Mindestbestellwert innerhalb Österreichs 10&amp;amp;#8364;, ausserhalb 30&amp;amp;#8364;&lt;br /&gt;
&lt;br /&gt;
=== Richardson Electronic ===&lt;br /&gt;
Homepage: http://www.richardsonrfpd.com/&lt;br /&gt;
&lt;br /&gt;
* Hochfrequenz-Halbleiter, HF-Röhren,&lt;br /&gt;
&lt;br /&gt;
=== Riedl Elektronik ===&lt;br /&gt;
Homepage: http://www.riedl-electronic.at&lt;br /&gt;
&lt;br /&gt;
* großes Angebot v.a. ICs und Trafos&lt;br /&gt;
* recht günstig&lt;br /&gt;
* Rabatt für Schüler/Student&lt;br /&gt;
* Versand nach AT: 3,95€ bis 1kg, ab 100€ frei Haus&lt;br /&gt;
* Versand AT über 1kg sowie Ausland: Nach Aufwand (wird nicht direkt angezeigt)&lt;br /&gt;
&lt;br /&gt;
=== RLX COMPONENTS s.r.o. ===&lt;br /&gt;
Homepage: http://www.rlx.sk&lt;br /&gt;
&lt;br /&gt;
* Man spricht Deutsch&lt;br /&gt;
* Messgeräte, Mikrocontroller-Boards, Bauelemente&lt;br /&gt;
&lt;br /&gt;
=== RM Computertechnik GmbH ===&lt;br /&gt;
Homepage: http://www.rm-computertechnik.de&lt;br /&gt;
&lt;br /&gt;
* Kerngeschäft ist PC-Technik, aber auch großes Sortiment an Kabeln, Litzen und Steckverbindern&lt;br /&gt;
* handelt auch mit einigen Bauelementen, wie LED&#039;s&lt;br /&gt;
&lt;br /&gt;
=== Robotikhardware===&lt;br /&gt;
Homepage: http://www.robotikhardware.de&lt;br /&gt;
&lt;br /&gt;
* Microcontroller&lt;br /&gt;
* Entwicklungsboards&lt;br /&gt;
* Sensoren&lt;br /&gt;
* Robotik-Zubehör&lt;br /&gt;
* günstige Angebote für Hobbyelektroniker&lt;br /&gt;
* auch einzelne Platinen&lt;br /&gt;
&lt;br /&gt;
=== Robotik-Teile.de===&lt;br /&gt;
Homepage: http://www.robotik-teile.de&lt;br /&gt;
&lt;br /&gt;
* Große Auswahl an Elektronik Produkten &lt;br /&gt;
* Microcontroller, Sensoren, Zubehör, u.v.m.&lt;br /&gt;
* Versandkosten betragen immer 4,90 €&lt;br /&gt;
* Zahlbar ber PayPal, Sofortüberweisung, Vorkasse und Nachnahme&lt;br /&gt;
&lt;br /&gt;
=== Benno Rößle Elektronik ===&lt;br /&gt;
Homepage: http://www.roessle-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Masten, Antennen, Befestigungsmat.,Zubehör, Geräte, Anpassteile, HF-Stecker&lt;br /&gt;
&lt;br /&gt;
=== Sander Elektronik ===&lt;br /&gt;
Homepage: http://www.sander-electronic.de&lt;br /&gt;
&lt;br /&gt;
* beliefert auch Privatkunden, Bankeinzug möglich&lt;br /&gt;
* ähnlich Segor ein Berliner Versender&lt;br /&gt;
* Hier findet man manche [[MSP430]], die es sonst nicht in kleinen Stückzahlen gibt&lt;br /&gt;
* Herr Sander ist sehr kompetent und selbst Autor von Fachartikeln&lt;br /&gt;
* selbst abgekündigte Halbleiter können noch beschafft werden&lt;br /&gt;
* Bezahlung auch mit Kreditkarte möglich&lt;br /&gt;
* Versandkosten innerhalb Deutschlands ab 3,35&amp;amp;#8364;, innerhalb Europas ab 6&amp;amp;#8364;&lt;br /&gt;
&lt;br /&gt;
=== Sat-Schneider ===&lt;br /&gt;
Homepage: http://www.sat-schneider.de&lt;br /&gt;
* Bauteile, Ersatzteile  Online-Shop&lt;br /&gt;
* Baugruppen zum Empfang des Digitalen Kurzwellenrundfunks DRM&lt;br /&gt;
&lt;br /&gt;
=== Sourcetronic GmbH ===&lt;br /&gt;
Hompage: http://www.sourcetronic.com&lt;br /&gt;
&lt;br /&gt;
* Verkäufer von Messtechnik, Antriebstechnik und Solartechnik&lt;br /&gt;
* Produziert auch selbst, z.B. Pumpensteuerungen oder Kalibrierwiderstände&lt;br /&gt;
* Hauptsächlich gewerbliche Kunden, liefert aber auch an Privatkunden&lt;br /&gt;
* Online-Shop mit großem Angebot an Messgeräten, Hochspannungsprüfgeräten, Frequenzumrichtern und Pumpensteuerungen&lt;br /&gt;
* Preise sind ohne Mehrwertsteuer angegeben&lt;br /&gt;
&lt;br /&gt;
=== Otto Schubert GmbH ===&lt;br /&gt;
Homepage: http://www.schubert-gehaeuse.de&lt;br /&gt;
&lt;br /&gt;
* Kein Online-Shop. Bestellungen nur per Telefon, Fax oder E-Mail &lt;br /&gt;
* Weissblechgehäuse, Gerätegehäuse, wetterfeste Gehäuse&lt;br /&gt;
* Drehkondensatoren&lt;br /&gt;
* Sonderanfertigungen&lt;br /&gt;
* ansässig in 90574 Roßtal&lt;br /&gt;
&lt;br /&gt;
=== Schramm-Software ===&lt;br /&gt;
Homepage: http://www.schramm-software.de/bausatz/&lt;br /&gt;
&lt;br /&gt;
* Online-Shop, bietet Elektronik-Bausätze mit Mikrocontrollern&lt;br /&gt;
* Bausätze als Lehrmaterial geeignet, da ausführliches Begleitheft mitgeliefert wird (Aufbauanleitung, Schaltung, Controllerprogramm, Experimente...)&lt;br /&gt;
* bisher nur ein relativ kleines Sortiment, soll ergänzt werden&lt;br /&gt;
* Versandkosten innerhalb Deutschlands 2,50 &amp;amp;#8364;, innerhalb der EU 3,50 &amp;amp;#8364;&lt;br /&gt;
&lt;br /&gt;
=== Schuricht ===&lt;br /&gt;
Homepage: http://www.schuricht.de&lt;br /&gt;
&lt;br /&gt;
* deutscher Ableger der Distrelec- (Elektronik) und Disdata-Gruppe (Computertechnik)&lt;br /&gt;
* Liefert auch an Privatkunden (getrennte AGBs für gewerbliche und Privatkunden, Lieferung an Privat per Nachnahme: Versandkosten ab 6,54€ plus 4,76€ Nachnahmegebühr).&lt;br /&gt;
**Online Bestellung mit &amp;quot;Privat&amp;quot; als Firmenangabe &lt;br /&gt;
* Papierkatalog über 2000 Seiten, durchgehend farbig, nur für Geschäftskunden erhältlich.&lt;br /&gt;
* Ziemlich teuer&lt;br /&gt;
&lt;br /&gt;
=== Schuro Elektronik GmbH ===&lt;br /&gt;
Homepage: http://www.schuro.de&lt;br /&gt;
&lt;br /&gt;
* Elektronische Bauelemente und Bauteile für den Audio- und Lautsprecherbau (Kondensatoren, Spulen u.dgl.)&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Versandkosten innerhalb Deutschlands gewichtsabhängig ab 5,75&amp;amp;#8364;&lt;br /&gt;
&lt;br /&gt;
=== Segor-electronics ===&lt;br /&gt;
Homepage: http://www.segor.de&lt;br /&gt;
&lt;br /&gt;
* Spezialist für Halbleiter, die ansonsten für nicht-gewerbliche Abnehmer nur schwer erhältlich sind (Preise dahingehend &amp;quot;angemessen&amp;quot;)&lt;br /&gt;
* auch Privatkunden gerne gesehen&lt;br /&gt;
* Ladengeschäft in Berlin&lt;br /&gt;
* kein Mindestbestellwert bei Versand innerhalb der EU&lt;br /&gt;
&lt;br /&gt;
=== semaf-electronics ===&lt;br /&gt;
Homepage: http://electronics.semaf.at&lt;br /&gt;
&lt;br /&gt;
* Spezialist für Breakout Boards wie z.B. Adafruit, Arduino, Atmel, Cubieboard,Raspberry Pi, Sparkfun&lt;br /&gt;
* aktive und passive Bauteile und Zubehör&lt;br /&gt;
* Ladengeschäft in 1090 Wien&lt;br /&gt;
&lt;br /&gt;
=== SE Spezial-Electronic AG ===&lt;br /&gt;
Homepage: http://www.spezial.de&lt;br /&gt;
&lt;br /&gt;
* Distributor&lt;br /&gt;
* Laut AGB auch Verkauf an Privat.&lt;br /&gt;
* Große Verpackungseinheiten/Mindestbestellmengen pro Bauteil&lt;br /&gt;
* Versandkosten pauschal 9,- €  (Deutschland) (Stand 08/2008)&lt;br /&gt;
&lt;br /&gt;
=== Small Control Shop ===&lt;br /&gt;
Homepage: http://www.small-control.de&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Bernd Walter Computer Technology&amp;quot;&lt;br /&gt;
* kleines Lieferprogramm aber ein paar interessante Produkte&lt;br /&gt;
&lt;br /&gt;
=== Simple Development Shop ===&lt;br /&gt;
Homepage: http://simpledevelopment.de/shop/&lt;br /&gt;
&lt;br /&gt;
* Entwicklungsboards&lt;br /&gt;
* Ausgesuchte Bauteile&lt;br /&gt;
* Teilweise spezielle Boards &lt;br /&gt;
* Ab 50€ Versandkostenfrei in Deutschland&lt;br /&gt;
&lt;br /&gt;
=== SMG Diffusion - F1GE ===&lt;br /&gt;
Homepage: http://www.smgdiffusion.com&lt;br /&gt;
( Seite nur französisch )&lt;br /&gt;
&lt;br /&gt;
* Videotechnik, &lt;br /&gt;
* 1,2 GHz / 2,4GHz Module&lt;br /&gt;
* Gebraucht-Messgeräte HP, Tek, Philips  u.a.&lt;br /&gt;
* GHz-Halbleiter&lt;br /&gt;
* Koax-Adapter&lt;br /&gt;
* Antennen&lt;br /&gt;
&lt;br /&gt;
=== SR-Systems ===&lt;br /&gt;
Homepage: http://www.sr-systems.de&lt;br /&gt;
&lt;br /&gt;
* Baugruppen für Digital-TV, Sende- und Empfangstechnik&lt;br /&gt;
* DVB-S, DVB-T&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Strixner&amp;amp;Holzinger ===&lt;br /&gt;
Homepage: http://www.sh-halbleiter.de&lt;br /&gt;
&lt;br /&gt;
* Ladengeschäft in München&lt;br /&gt;
* Versand &lt;br /&gt;
* riesiges Angebot an Halbleiter, auch schwer beschaffbare&lt;br /&gt;
* Online-Shop&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TAUTEC-ELECTRONICS ===&lt;br /&gt;
Homepage: http://www.tautec-electronics.de&lt;br /&gt;
&lt;br /&gt;
* Online Shop für aktive elektronische Bauelemente&lt;br /&gt;
* günstige Preise (Vorsicht, Preisangaben enthalten keine Mehrwertsteuer) aber Mindestbestellwert 100 Euro&lt;br /&gt;
* alle Artikel ab Lager lieferbar, daher kurze Wartezeiten&lt;br /&gt;
* weltweiter Versand&lt;br /&gt;
* zahlreiche Mengenrabatte&lt;br /&gt;
* viele Ersatzteile aus dem Audio-, Car-HiFi und TV-Bereich&lt;br /&gt;
&lt;br /&gt;
=== TecHome.de Online-Shop ===&lt;br /&gt;
Hompage: http://www.techome.de/index.html&lt;br /&gt;
&lt;br /&gt;
=== Tec-Shop (Wolfgang Rompel Elektronik) ===&lt;br /&gt;
Homepage: http://www.tec-shop.de&lt;br /&gt;
&lt;br /&gt;
* Kleines, aber ausgesuchtes Sortiment&lt;br /&gt;
* Interessantes Angebot an Sensoren&lt;br /&gt;
&lt;br /&gt;
=== Teske electronics ===&lt;br /&gt;
Homepage: http://www.teske-electronics.de&lt;br /&gt;
&lt;br /&gt;
* Noch relativ übersichtliches Produktsortiment (Dez. 2012) aber schon einige interessante Teile&lt;br /&gt;
* Bisher überwiegend SMD Bauteile&lt;br /&gt;
* Kein Mindestbestellwert&lt;br /&gt;
* Versandkosten ab 2,85€&lt;br /&gt;
* Lieferung nur innerhalb Deutschlands&lt;br /&gt;
* Wunschliste für neue Produkte&lt;br /&gt;
* Beschaffung von Bauteilen möglich, die nicht im Shop angeboten werden&lt;br /&gt;
* Zahlung per Vorkasse, PayPal, Nachnahme oder Rechnung (für Stammkunden) möglich.&lt;br /&gt;
&lt;br /&gt;
=== Thinkembedded.ch ===&lt;br /&gt;
Homepage: http://www.thinkembedded.ch&lt;br /&gt;
&lt;br /&gt;
* in der Schweiz (auch Abholung möglich), Versand CH ab SFr 12.- (bis 5kg)&lt;br /&gt;
* keine Mindestbestellmenge, Bezahlung: Barbezahlung, Rechnung, PayPal &lt;br /&gt;
* Demoboarde von div. Herstellern (Olimex, ST, ARM-Keil, ETT, Conitex)&lt;br /&gt;
* Demoboarde mit ARM (Cortex M)uC von ST, NXP, Energy Micro&lt;br /&gt;
* Demoboarde mit ARM Cortex A uC von Olimex&lt;br /&gt;
* Keil Debugger/Programmer Ulink ME/2/Pro&lt;br /&gt;
* MSP4300 Demoboard&lt;br /&gt;
* PIC Demoboarde und Programmer&lt;br /&gt;
* AVR Demoboarde und Programmer&lt;br /&gt;
* Messgeräte (BMC Messsysteme, Intronix LogicPort)&lt;br /&gt;
* Learning Kits&lt;br /&gt;
* Mehrsprachig (E, D, F), Preise in SFR / Euro&lt;br /&gt;
&lt;br /&gt;
=== TME (Transfer Multisort Elektronik) ===&lt;br /&gt;
Homepage: http://www.tme.eu/de&lt;br /&gt;
&lt;br /&gt;
*breites Sortiment&lt;br /&gt;
*parametrische Suche&lt;br /&gt;
*Verkauf über die deutsche Tochter (19 % statt 21 % polnische Umsatzsteuer)&lt;br /&gt;
&lt;br /&gt;
=== Trenkenchu &amp;amp; Stadler GbR ===&lt;br /&gt;
Homepage: http://www.ts-audio.de&lt;br /&gt;
&lt;br /&gt;
* die meisten Artikel sind deutlich teurer als der Marktpreis, es sind jedoch auch Schnäppchen dabei, z.B. HDMI-Kabel&lt;br /&gt;
&lt;br /&gt;
=== Trenz-electronic ===&lt;br /&gt;
Homepage: http://www.trenz-electronic.de&lt;br /&gt;
&lt;br /&gt;
* FPGA-Boards mit Xilinx-FPGAs (Xilinx, Digilent, ...) und Zubehör&lt;br /&gt;
* Weitere teils sehr spezielle Produkte, auch Eigen-Entwicklungen&lt;br /&gt;
* Liefert auch an Privatkunden&lt;br /&gt;
&lt;br /&gt;
=== TV-Ersatzteile ===&lt;br /&gt;
Homepage: http://www.tversatzteile.de&lt;br /&gt;
&lt;br /&gt;
* TV-, Audio-, Video-Ersatzteile, Aktive / Passive Bauteile&lt;br /&gt;
* Fernbedienungen Haushaltstechnik&lt;br /&gt;
&lt;br /&gt;
=== UKW-Berichte ===&lt;br /&gt;
Homepage: http://www.ukw-berichte.de&lt;br /&gt;
&lt;br /&gt;
* Antennen, Bauteile, Bausätze, Literatur für Amateurfunk&lt;br /&gt;
* ansässig in 91081 Baiersdorf&lt;br /&gt;
&lt;br /&gt;
=== Voelkner ===&lt;br /&gt;
Homepage: http://voelkner.de&lt;br /&gt;
* Großer Teil des Conrad-Programms, identische Nummern, identische Aufkleber auf der Ware, Preise weitgehend identisch oder nur ein paar Cent abweichend, bei bestimmten Artikelgruppen (z.B. Werkzeug) aber auch bis zu 25% billiger&lt;br /&gt;
* Versandkosten Deutschland: 4,95€; ab 25€ Warenwert und Sofortüberweisung.de versandkostenfrei / Versandkosten-Flatrate für 15€ pro Jahr&lt;br /&gt;
* Versandkosten EU: 9,95€&lt;br /&gt;
* Möglichkeit der Versandkostenflatrate (D): Einmalig 14,95€ / gültig für ein Jahr&lt;br /&gt;
* Legt jeder Bestellung gleich wieder einen Gutschein über 5€ bei MBW 25€ bei (Flat nur bei häufigen, kleinen Bestellungen sinnvoll); außerdem kommt etwa alle 2-3 Monate selbiger Gutschein + versandkostenfreie Lieferung per Mail, ebenfalls MBW 25€&lt;br /&gt;
* Verpackungsqualität wechselnd, mal brauchbar, mal eher Pollin-Niveau. Selbst kleine Bestellungen, die gefahrlos per Brief/Großbrief verschickt werden könnten werden in einem großen Paket versendet.&lt;br /&gt;
&lt;br /&gt;
=== VOTI Webshop ===&lt;br /&gt;
Homepage: http://www.voti.nl/shop/catalog.html&lt;br /&gt;
&lt;br /&gt;
* relativ kleines Lieferprogramm&lt;br /&gt;
* einige interessante Restposten (Surplus)&lt;br /&gt;
* Sitz in Amersfoort, Niederlande&lt;br /&gt;
&lt;br /&gt;
=== Walter elektronik ===&lt;br /&gt;
Homepage: http://www.walter-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Bauteile, Röhren&lt;br /&gt;
&lt;br /&gt;
=== Watterott electronic GmbH===&lt;br /&gt;
Homepage: http://www.watterott.com&lt;br /&gt;
&lt;br /&gt;
* Distributor für Adafruit, Arduino, BeagleBoard/PandaBoard, Embedded Artists, GHI, Olimex, Parallax, Pololu, Seeed Studio, Solarbotics, SparkFun... &lt;br /&gt;
* Entwicklungskits von Atmel, Cypress, Freescale, Microchip, NXP, STM, TI...&lt;br /&gt;
* Spezialbauteile von Davicom, FTDI, VLSI, WIZnet...&lt;br /&gt;
* Bungard Basismaterial + Chemie&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Zahlung: Vorkasse, Sofortüberweisung, PayPal, Nachnahme, Kreditkarte (Visa/Mastercard), Rechnung (nur gewerbliche Kunden)&lt;br /&gt;
* Versandkosten Dtl. (DHL): &lt;br /&gt;
** bis  75 EUR Warenwert: 3,50 Euro&lt;br /&gt;
** ab   75 EUR Warenwert: versandkostenfrei&lt;br /&gt;
* Versandkosten EU (DHL): &lt;br /&gt;
** bis 150 EUR Warenwert: 10,00 Euro&lt;br /&gt;
** bis 250 EUR Warenwert:  8,90 Euro&lt;br /&gt;
** bis 500 EUR Warenwert:  5,95 Euro&lt;br /&gt;
** ab  500 EUR Warenwert:  versandkostenfrei&lt;br /&gt;
* Schneller, entgegenkommender Service&lt;br /&gt;
* in der &amp;quot;c&#039;t Hardware Hacks&amp;quot; 01/2013 ist ein Artikel über Stephan Watterott und seinen Online-Shop&lt;br /&gt;
&lt;br /&gt;
=== WilTec Wildanger Technik GmbH ===&lt;br /&gt;
Homepage: http://shop.wiltec.info&lt;br /&gt;
&lt;br /&gt;
* Aoyue Lötgeräte (Heißluft, Löten, Entlöten), Netzteile, Werkzeuge&lt;br /&gt;
* Aoyue Zubehör (Lötspitzen, Heißluftdüsen), Ersatzteile&lt;br /&gt;
* Andere, nicht Elektronik-Angebote, wie KFZ-Tuningteile&lt;br /&gt;
* Versand. Bei Voranmeldung auch Lagerverkauf.&lt;br /&gt;
&lt;br /&gt;
=== Wüstens frag-jan-zuerst ===&lt;br /&gt;
Homepage: http://www.die-wuestens.de/dindex.htm&lt;br /&gt;
&lt;br /&gt;
* Röhrentechnik&lt;br /&gt;
* Hochspannungs-Spezialteile&lt;br /&gt;
&lt;br /&gt;
=== WIMO ===&lt;br /&gt;
Homepage: http://www.wimo.de&lt;br /&gt;
&lt;br /&gt;
* Große Auswahl an Amateurfunktechnik&lt;br /&gt;
&lt;br /&gt;
=== Zech DG0VE ===&lt;br /&gt;
Homepage: http://www.dg0ve.de&lt;br /&gt;
&lt;br /&gt;
* Baugruppen für Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== Diverse ===&lt;br /&gt;
* http://www.chip-flip.com - Europäisches Bauelementesuchsystem, franchised Lieferantensuche, Datenblätter und viele nützliche Informationen&lt;br /&gt;
* http://www.ecomponents-store.com/ Elektronische Bauelemente kaufen - Hier finden Sie eine große Auswahl an elektronischen und elektromechanischen Bauelementen von über 40 Herstellern.&lt;br /&gt;
* http://www.findchips.com/ Suchmaschine für Lieferanten elektronischer Bauelemente&lt;br /&gt;
* http://www.franchised-distributors.eu/ - Finden Sie Vertragsdistributoren von über 800 Halbleiterherstellern für elektronische und elektromechanische Bauelemente.&lt;br /&gt;
* https://octopart.com/ Suchmaschine für elektronische Bauelemente&lt;br /&gt;
&lt;br /&gt;
==Handelsplätze==&lt;br /&gt;
&lt;br /&gt;
Shops auf den Handelsplätzen kommen und gehen. Man sollte daher nicht vergessen direkt auf den Handelsplätzen zu suchen. Ebenso kann man handeslsplatz-übergreifend auf&lt;br /&gt;
&lt;br /&gt;
http://de.pandacheck.com/&lt;br /&gt;
&lt;br /&gt;
suchen.&lt;br /&gt;
===Ebay-Shops===&lt;br /&gt;
&lt;br /&gt;
====Ego-China====&lt;br /&gt;
http://stores.ebay.de/Ego-China-Electronics   TFTs und LCDs &amp;lt;br /&amp;gt; Versand aus China (2-3 Wochen)&lt;br /&gt;
&lt;br /&gt;
====Sure-Electronics====&lt;br /&gt;
http://stores.ebay.de/Sure-Electronics   Highpower LEDs und Verstärker &amp;lt;br /&amp;gt;&lt;br /&gt;
Hat auch einen eigenen Shop: http://www.sureelectronics.net/ &amp;lt;br /&amp;gt;&lt;br /&gt;
Versand aus China&lt;br /&gt;
&lt;br /&gt;
====Ether-Deal====&lt;br /&gt;
http://stores.ebay.de/ether-deal   Unter sonstiges viele versch. Elektronik-teile &amp;lt;br /&amp;gt; Versand aus China&lt;br /&gt;
&lt;br /&gt;
====NooElec====&lt;br /&gt;
http://stores.ebay.de/NooElec USB-AVR Boards (mega32u2) und rgbled-matrizen &amp;lt;br /&amp;gt; Versand aus Kanada&lt;br /&gt;
&lt;br /&gt;
====Sine qua non surplus====&lt;br /&gt;
http://stores.ebay.de/Sinequanon-Surplus-Electronics Großbritannien&lt;br /&gt;
&lt;br /&gt;
=== Aliexpress ===&lt;br /&gt;
Homepage: http://www.aliexpress.com&lt;br /&gt;
&lt;br /&gt;
* Chinesischer Handelsplatz&lt;br /&gt;
* Günstige Arduinos, Adapterplatinen, Miniboards, etc.&lt;br /&gt;
* Vorsicht vor Fake-Transistoren und sehr günstigen Einzelbauteilen, die müssen nicht immer Original sein&lt;br /&gt;
* Zahlung: Per Kreditkarte, Absicherung über Aliexpress. Der Kaufpreis wird erst nach Bestätigung des Erhalts der Ware an den Lieferanten freigegeben&lt;br /&gt;
* Lieferzeit: Ca. 2-4 Wochen (kommt aus China oder Hongkong)&lt;br /&gt;
* Versandkosten: je nach Anbieter&lt;br /&gt;
* [[Zoll und Abgaben]] beachten (bis 150€ zollfrei, ab 22€ aber 19% Umsatzsteuer)&lt;br /&gt;
&lt;br /&gt;
== China-Versender ==&lt;br /&gt;
&lt;br /&gt;
China-Shops gibt es wie Sand am Meer. Zum Teil haben sie deutschen oder europäischen Lagern, d.h. man hat weniger Probleme mit dem [[Zoll]]. Shop-übergreifend kann man auf&lt;br /&gt;
&lt;br /&gt;
http://de.pandacheck.com/&lt;br /&gt;
&lt;br /&gt;
suchen.&lt;br /&gt;
&lt;br /&gt;
=== Bang Good ===&lt;br /&gt;
Homepage: http://www.banggood.com/&lt;br /&gt;
&lt;br /&gt;
* China Bling-Bling aller Art. Auch Lötzubehör, Modellbau, gelegentlich Bauteile, Messgeräte, Bausätze, etc.&lt;br /&gt;
&lt;br /&gt;
=== DealExtreme ===&lt;br /&gt;
Homepage: http://www.dx.com/&lt;br /&gt;
&lt;br /&gt;
* China Bling-Bling aller Art. Auch Lötzubehör, gelegentlich Bauteile, Messgeräte, Bausätze, etc.&lt;br /&gt;
* Nicht immer der preiswerteste.&lt;br /&gt;
&lt;br /&gt;
=== Hobbyking ===&lt;br /&gt;
Homepage: http://www.hobbyking.com/hobbyking/store/index.asp&lt;br /&gt;
&lt;br /&gt;
* Viel Modellbau&lt;br /&gt;
* Auch Robotik und Quadcopter&lt;br /&gt;
&lt;br /&gt;
=== Satistronics ===&lt;br /&gt;
Homepage: http://www.satistronics.com&lt;br /&gt;
&lt;br /&gt;
* typischer &amp;quot;China-Versender&amp;quot;, mit allen Vor- und Nachteilen&lt;br /&gt;
* Lieferzeit bei Standardversand sehr lange (etwa 1 Monat nach D), aber schnellere Lieferung gegen Aufpreis möglich&lt;br /&gt;
* tritt auch bei eBay in Erscheinung ([http://stores.ebay.de/satistronicsstore eBay-Shop]), die Preise dort sind in der Regel aber etwas höher als im Online-Shop&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Messgeräte ==&lt;br /&gt;
=== Neue Messgeräte ===&lt;br /&gt;
&lt;br /&gt;
Viele der oben genannten Elektronikversender verkaufen auch Messgeräte. Darüber hinaus gibt es diverse Versender, die sich hauptsächlich oder ausschließlich auf Messgeräte spezialisiert haben. Allerdings verkaufen viele davon nicht an Privat.&lt;br /&gt;
&lt;br /&gt;
==== CalPlus GmbH ====&lt;br /&gt;
Homepage: http://www.calplus.de &amp;lt;br /&amp;gt;&lt;br /&gt;
Shop: http://www.scopeshop.de&lt;br /&gt;
&lt;br /&gt;
==== Cosinus ComputerMesstechnik ====&lt;br /&gt;
Homepage: http://www.cosinus.de&lt;br /&gt;
&lt;br /&gt;
* Nicht an Privat&lt;br /&gt;
&lt;br /&gt;
==== dataTec ====&lt;br /&gt;
Homepage: http://www.datatec.de&lt;br /&gt;
&lt;br /&gt;
* Große Auswahl&lt;br /&gt;
* Bestellung von Privat auf Anfrage, Privatpersonen werden laut ABG per Vorkasse beliefert&lt;br /&gt;
* Studenten bekommen Rabatt, je nach dem, was bestellt wird&lt;br /&gt;
* Umständlicher Bestellvorgang, seitens DataTec teilweise auf dem Postweg -&amp;gt; Es dauert teil sehr lange bis die Ware ankommt&lt;br /&gt;
* Sehr freundlicher und kompetenter Service, per eMail als auch telefonisch&lt;br /&gt;
&lt;br /&gt;
==== Elektronik-Kontor Messtechnik GmbH ====&lt;br /&gt;
Homepage: http://www.ekomess.de&lt;br /&gt;
&lt;br /&gt;
==== Meilhaus Electronic GmbH ====&lt;br /&gt;
Homepage: http://www.meilhaus.de&lt;br /&gt;
&lt;br /&gt;
* Diverse Markenhersteller&lt;br /&gt;
* Eigenmarken&lt;br /&gt;
&lt;br /&gt;
==== PinSonne-Elektronik ====&lt;br /&gt;
Homepage: http://www.pinsonne-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Onlineshop&lt;br /&gt;
* Sehr kleines Sortiment&lt;br /&gt;
* UNI-T, RIGOL und andere asiatische Firmen&lt;br /&gt;
&lt;br /&gt;
==== PK elektronik Poppe GmbH ====&lt;br /&gt;
Homepage: http://www.pk-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* U.a. Fluke Distributor.&lt;br /&gt;
&lt;br /&gt;
====Präzitronic Hennig / Messgeräte Chemnitz====&lt;br /&gt;
Homepage: http://www.messgeraete-chemnitz.de&lt;br /&gt;
&lt;br /&gt;
* Verkauft explizit auch an Privat.&lt;br /&gt;
* Owon&lt;br /&gt;
* Selbst übersetzte deutsche Owon-Handbücher&lt;br /&gt;
* Fluke&lt;br /&gt;
* Extech&lt;br /&gt;
* Zusätzlich kleines Angebot an Gebrauchtgeräten&lt;br /&gt;
&lt;br /&gt;
==== SI Scientific Instruments GmbH ====&lt;br /&gt;
Homepage: http://www.si-scientific.de (Onlineshop) &amp;lt;br /&amp;gt;&lt;br /&gt;
Homepage: http://www.si-gmbh.de (komplettes Programm)&lt;br /&gt;
&lt;br /&gt;
* Onlineshop auf si-scientific.de&lt;br /&gt;
* Akzeptiert PayPal&lt;br /&gt;
 &lt;br /&gt;
==== TESTEC ====&lt;br /&gt;
Homepage: http://www.testec.info&lt;br /&gt;
&lt;br /&gt;
* Tastköpfe-Hersteller&lt;br /&gt;
* Hameg Vertriebspartner&lt;br /&gt;
* B+K Precision Generalimporteur&lt;br /&gt;
&lt;br /&gt;
==== Zeitech ====&lt;br /&gt;
Homepage: http://www.zeitech.de/shop/&lt;br /&gt;
&lt;br /&gt;
* Diverses (Rigol, Owon, etc.)&lt;br /&gt;
&lt;br /&gt;
=== Gebrauchte Messgeräte ===&lt;br /&gt;
&lt;br /&gt;
Dieser Abschnitt enthält Anbieter bei denen gebrauchte Messgeräte erhältlich sind.&lt;br /&gt;
&lt;br /&gt;
==== Astro Electronic ====&lt;br /&gt;
Homepage: http://www.astro-electronic.de&lt;br /&gt;
&lt;br /&gt;
==== HTB-Elektronik ====&lt;br /&gt;
Homepage: http://www.htb-elektronik.com&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
&lt;br /&gt;
==== IX Instrumex ====&lt;br /&gt;
Homepage: http://www.instrumex.de/index.cgi?User:LANGUAGE=de&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
&lt;br /&gt;
==== Christoph Lüders MessTechnik ====&lt;br /&gt;
Homepage: http://www.CLMT.de &amp;lt;br&amp;gt;&lt;br /&gt;
Online-Shop: http://www.shop-016.de/shop-CLMT.html &amp;lt;br&amp;gt;&lt;br /&gt;
eBay: http://myworld.ebay.de/c_h_r/&lt;br /&gt;
&lt;br /&gt;
* Hat 2010 die Restbestände von Förtig übernommen&lt;br /&gt;
&lt;br /&gt;
==== Rosenkranz Elektronik ====&lt;br /&gt;
Homepage: http://www.rosenkranz-elektronik.de&amp;lt;br&amp;gt;&lt;br /&gt;
eBay Shop: http://stores.ebay.de/Rosenkranz-Elektronik-GmbH-Shop&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
* Auch auf eBay zu finden&lt;br /&gt;
&lt;br /&gt;
==== Helmut-Singer-Elektronik ====&lt;br /&gt;
Homepage: http://www.helmut-singer.de&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
* Verkauf auch an Privat&lt;br /&gt;
* An den meisten Samstagen im Jahr auch Lagerverkauf, sonst Versand&lt;br /&gt;
&lt;br /&gt;
==== Sphere ====&lt;br /&gt;
Homepage: http://www.sphere.bc.ca&amp;lt;br&amp;gt;&lt;br /&gt;
Messgeräte und Ersatzteile: http://www.sphere.bc.ca/test/index.html&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
* Ersatzteile&lt;br /&gt;
** Besonders bekannt für Tektronix-Ersatzteile&lt;br /&gt;
&lt;br /&gt;
==== Tektronix TekSelect ====&lt;br /&gt;
Homepage: http://www.tek.com/Measurement/tekselect/&lt;br /&gt;
&lt;br /&gt;
* Tektronix verkauft selber gebrauchte und überarbeitete Tektronix-Messgeräte unter dem Label &#039;&#039;TekSelect&#039;&#039;.&lt;br /&gt;
* Original Tektronix-Garantie&lt;br /&gt;
* Der Bestellvorgang nervt, man muss Kontaktaufnahme durch einen &amp;quot;Representative&amp;quot; erbeten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Platinenhersteller]]&lt;br /&gt;
* [[Lokale Elektroniklieferanten]]&lt;br /&gt;
* [[Eisenwarenversender]]&lt;br /&gt;
* [[Zoll und Abgaben]]&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
&lt;br /&gt;
* http://www.xs4all.nl/~ganswijk/chipdir/ Suche nach integrierten Schaltkreisen&lt;br /&gt;
* http://www.alldatasheet.com                Datenblätter&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Lieferanten]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Elektronikversender&amp;diff=89325</id>
		<title>Elektronikversender</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Elektronikversender&amp;diff=89325"/>
		<updated>2015-07-17T00:14:04Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Liste der Versender */ AliExpress / China ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Vor- und Nachteile von verschiedenen Elektronik-Versand-Händlern werden relativ häufig im Forum diskutiert. Diese Diskussionen führen nicht selten zu weitestgehend gleichen Ergebnissen. In diesem Artikel sollen daher die Argumente, die für oder gegen einen bestimmten Elektronik-Versender sprechen, zusammengetragen werden. Sobald diese Liste einigermaßen vollständig ist, würde dies sicher einige Diskussions-Threads und/oder Flame-Wars überflüssig machen.&amp;lt;br/&amp;gt;&lt;br /&gt;
Bei ausländischen Versendern sind generelle Infomationen zur Handhabung von Versand, sowie Zoll und Abgaben nützlich. Bitte aber hier nicht jedesmal wieder die kompletten Zoll-Details eintragen, dafür gibt es den Artikel [[Zoll und Abgaben]]&lt;br /&gt;
&lt;br /&gt;
Diese Liste erhebt keinerlei Anspruch auf Vollständigkeit, d.h. wenn ihr einen Versender kennt, der hier noch nicht aufgeführt ist, dann nennt wenigstens die URL und den Namen. Den Rest können auch andere besorgen, die den Versender ebenfalls kennen!&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Diese Seite kann nur von angemeldeten Benutzern bearbeitet werden!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Bitte nur Firmen eintragen die versenden. Für reine Ladengeschäfte gibt es [[Lokale Elektroniklieferanten]]. Versender die auch ein Ladengeschäft betreiben können in beide Listen eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
* Bitte nur Firmen eintragen, die unter anderem Elektronikbauteile, -bausätze und z.B. Messgeräte versenden. Für andere Materialien gibt es [[Eisenwarenversender]] (die Liste dort enthält nicht nur Eisenwarenversender).&lt;br /&gt;
 &lt;br /&gt;
* Nur Versender eintragen die ohne Bettelei, ohne Rumgezicke oder ähnliches an Privatpersonen verkaufen (eventuell über Umwege). Also &#039;&#039;&#039;B2C, kein B2B&#039;&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
* Bitte ergänzt nur allgemeine Sachen (z.&amp;amp;nbsp;B. &amp;quot;liefert immer vollständig&amp;quot;, &amp;quot;günstig&amp;quot; oder &amp;quot;große Auswahl&amp;quot;), aber nicht Sachen wie &amp;quot;mein ATMega 128 hatte verbogene Beine&amp;quot;!&lt;br /&gt;
&lt;br /&gt;
* Bitte auch die alphabetische Sortierung beibehalten!&lt;br /&gt;
&lt;br /&gt;
* Keinen Spam von Firmen, besonders nicht, wenn sie nicht an Privatpersonen verkaufen. Wer uns nichts verkaufen will soll bitte draußen bleiben. &lt;br /&gt;
&lt;br /&gt;
* Nur in Ausnahmefällen Firmen die keinen oder keinen funktionsfähigen Onlineshop betreiben eintragen.&lt;br /&gt;
&lt;br /&gt;
* Bitte veraltete Einträge updaten oder, wenn die Firma nicht mehr auffindbar ist, löschen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Liste der Versender ==&lt;br /&gt;
&lt;br /&gt;
=== AATiS ===&lt;br /&gt;
Homepage: http://www.aatis.de&lt;br /&gt;
&lt;br /&gt;
* Arbeitskreis Amateurfunk und Technik in der Schule e.V.&lt;br /&gt;
* Bausätze speziell auch für Elektronik-Anfänger, Schüler&lt;br /&gt;
* Literatur, Seminare für Lehrer &lt;br /&gt;
&lt;br /&gt;
=== AK Modul Bus Computer GmbH ===&lt;br /&gt;
Homepage: http://www.ak-modul-bus.com/stat/produkte.html&lt;br /&gt;
&lt;br /&gt;
* Interfaces, Messmodule, Funktionsmodelle, Experimentiersysteme&lt;br /&gt;
* Entwicklungssysteme, Baugruppen, Elektor, Zubehör, Bauelemente&lt;br /&gt;
* Software, Lernpakete, Bücher, Sonderposten&lt;br /&gt;
&lt;br /&gt;
=== AliExpress ===&lt;br /&gt;
&lt;br /&gt;
Homepage: http://http://www.aliexpress.com/&lt;br /&gt;
&lt;br /&gt;
Stellvertretend für &amp;quot;aus China&amp;quot;: In der Regel versandkostenfrei und bis 26€ ohne Einfuhrumsatzsteuer. Alternativ auch [http://www.banggood.com Banggood] oder [http://ebay.com ebay.com] (erste Browser-Sprache: Englisch), siehe auch [[China SUPER Bauteile-Schnäppchen Thread-Wiki]].&lt;br /&gt;
&lt;br /&gt;
=== Allpax ===&lt;br /&gt;
Homepage: http://www.allpax.de&lt;br /&gt;
&lt;br /&gt;
* Liefert auch an Privathaushalte&lt;br /&gt;
* Keine Elektronik an sich, aber ggf. nützliches Zubehör: Größeres, übersichtliches Sortiment an ESD-Beuteln und -Folien, offen und mit Zippverschluss, Pink Poly und Metallisiert (High Shield). Preislich über Farnell, dafür findet man sofort, was man sucht...&lt;br /&gt;
* außerdem Ultraschallreiniger, Waagen und Folienschweißgeräte, sowie viel Fachfremdes&lt;br /&gt;
* Versandkosten: 8,33€ nach Deutschland, diverse EU-Länder 17,85€, Schweiz 34,51€; Versandkostenfrei in D ab 178,50€&lt;br /&gt;
* Gewährt scheinbar auch Privatkunden die Zahlung per Rechnung; bei Bankeinzug 2% Rabatt, bei Vorkasse und Abholung 3%&lt;br /&gt;
&lt;br /&gt;
=== AME-Engineering ===&lt;br /&gt;
Homepage: http://www.ame-engineering.de&lt;br /&gt;
&lt;br /&gt;
* Hochfrequenz-Spezialitäten, Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== Amidon ===&lt;br /&gt;
Homepage: http://www.amidon.de&lt;br /&gt;
&lt;br /&gt;
* Sehr großes Sortiment, vorallem für seltene Bauteile, z.&amp;amp;nbsp;B. Dioden&lt;br /&gt;
&lt;br /&gt;
=== Andy&#039;s Funkladen ===&lt;br /&gt;
Homepage: http://www.andyfunk.de&lt;br /&gt;
&lt;br /&gt;
* Alles für Amateur- und CB-Funk&lt;br /&gt;
* Bauteile und Gehäuse&lt;br /&gt;
&lt;br /&gt;
=== Anvilex ===&lt;br /&gt;
Homepage: http://shop.anvilex.com/index.html&lt;br /&gt;
&lt;br /&gt;
* Liefert sehr günstige Break-Out Boards für diverse Packages&lt;br /&gt;
* Hat einige einfache und günstige Programmer auch für FPGAs etc&lt;br /&gt;
&lt;br /&gt;
=== Atzert Technik-Discounter ===&lt;br /&gt;
Homepage: http://www.atzert-technik.de&lt;br /&gt;
&lt;br /&gt;
Früher &#039;&#039;MEGAKICK Electronic Stores&#039;&#039;, dann &#039;&#039;EFB-Electronic Versand&#039;&#039;, danach &#039;&#039;Atzert-Elektronik Versand&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* Mindestens schon der vierte Name und die vierte Webseite für den Endkunden-Versand von [[Elektronikversender#ETT|ETT]]. ETT liefert sonst nur an gewerbliche Kunden.&lt;br /&gt;
* Ladengeschäfte in Bielefeld, Braunschweig, Bremen, Hamburg und Berlin. &lt;br /&gt;
* Die Preise schwanken im Vergleich zu anderen Anbietern, welche ebenfalls ETT-importierte Produkte führen, mal nach oben, mal nach unten.&lt;br /&gt;
&lt;br /&gt;
=== AVOLTA ===&lt;br /&gt;
Homepage: http://www.avolta.de&lt;br /&gt;
&lt;br /&gt;
* Umfangreiches Sortiment im Bereich Schalter + Steckdosen, Haustechnik, KNX, Beleuchtung&lt;br /&gt;
* Verkauft an Endverbraucher und Firmenkunden&lt;br /&gt;
* sehr schnelle Lieferung mit guter Logistik&lt;br /&gt;
* Fachberatung&lt;br /&gt;
* Fachausstellung mit 120 Schalterdesigns.&lt;br /&gt;
&lt;br /&gt;
=== Bassenberg Elektronik ===&lt;br /&gt;
Homepage: http://www.bassenberg.de&lt;br /&gt;
&lt;br /&gt;
* Ladengeschäfte in Braunschweig und Neumünster&lt;br /&gt;
* Beschafft auch nicht mehr gelistete und abgekündigte Bauteile&lt;br /&gt;
* Liefert auch an Privat&lt;br /&gt;
&lt;br /&gt;
=== Batterie24 ===&lt;br /&gt;
Homepage: http://www.batterie24.de&lt;br /&gt;
&lt;br /&gt;
* Günstige Ultralife &amp;amp; Saft Lithium Batterien sowie FGS Bleiakkus&lt;br /&gt;
* z.B. 10 Ultralife Lithium Batterien 9V Block 52,00 Euro (Stand: Okt. 2014)&lt;br /&gt;
* Anwendungen: z.B. Rauchmelder, Babyphone, Garagentoröffner, Sicherheitssysteme und Alarmanlagen&lt;br /&gt;
&lt;br /&gt;
=== Batronix ===&lt;br /&gt;
Homepage: http://www.batronix.com&lt;br /&gt;
* Gute Auswahl an Messgeräten (Oszis, Multis, Logik-/Spektrumanalyzer, Thermometer), aber auch Lötequipment und Labornetzteile&lt;br /&gt;
* Premium-Distributor für Rigol und Owon, d.h. bevorzugte Belieferung bei Engpässen gegenüber anderen Händlern&lt;br /&gt;
* Bausätze, Programmieradapter für Microcontroller-Applikationen&lt;br /&gt;
* Liefert auch an Privat&lt;br /&gt;
* Versand per DHL&lt;br /&gt;
* Bezahlung via Rechnung (unter Vorbehalt und nicht bei abweichender Lieferadresse), Paypal, Nachnahme, Kreditkarte oder Vorkasse&lt;br /&gt;
&lt;br /&gt;
=== BAZ Spezialantennen ===&lt;br /&gt;
Homepage: http://www.spezialantennen.de&lt;br /&gt;
&lt;br /&gt;
* Antennen für Amateurfunk, ISM, WLAN usw.&lt;br /&gt;
&lt;br /&gt;
=== bed - elektronik ===&lt;br /&gt;
Homepage: http://www.bed-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Restposten aktive und passive Bauelemente&lt;br /&gt;
* sehr günstige Preise&lt;br /&gt;
* alles ab Lager lieferbar&lt;br /&gt;
* Versand an Privat&lt;br /&gt;
* ab 60 EUR versandkostenfrei&lt;br /&gt;
&lt;br /&gt;
=== Bfi-Optilas ===&lt;br /&gt;
Homepage: http://www.bfioptilas.de&lt;br /&gt;
&lt;br /&gt;
* Kein Onlineshop&lt;br /&gt;
* spezialisierter Distributor für Hochfrequenzhalbleiter und Optik&lt;br /&gt;
&lt;br /&gt;
=== BG-Electronics.de ===&lt;br /&gt;
Homepage: http://www.bg-electronics.de&lt;br /&gt;
&lt;br /&gt;
* Online Shop für aktive und passive elektronische Bauelememte&lt;br /&gt;
* günstige Preise&lt;br /&gt;
* alle Artikel ab Lager lieferbar, daher kurze Wartezeiten&lt;br /&gt;
* weltweiter Versand&lt;br /&gt;
* zahlreiche Mengenrabatte&lt;br /&gt;
* viele Ersatzteile aus dem Audio-, CarHiFi und TV-Bereich&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== B &amp;amp; M electronics ===&lt;br /&gt;
Homepage: http://www.bmelectronics.de&lt;br /&gt;
&lt;br /&gt;
* Bauteile, Platinen und Baugruppen für Amateurfunk&lt;br /&gt;
Seite nicht erreichbar am 22.7.2012 --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Box73 ===&lt;br /&gt;
Homepage: http://www.box73.de&lt;br /&gt;
&lt;br /&gt;
Onlineshop des Funkamateur.&lt;br /&gt;
&lt;br /&gt;
* Bauteile, Bausätze, Literatur aus dem Amateurfunkbereich&lt;br /&gt;
* Preise sind O.K.&lt;br /&gt;
* Bestellungen werden nur Di und Do bearbeitet&lt;br /&gt;
* Ab 50 EUR bei Bankeinzug portofrei.&lt;br /&gt;
&lt;br /&gt;
=== Bürklin OHG ===&lt;br /&gt;
Homepage: http://www.buerklin.com&lt;br /&gt;
&lt;br /&gt;
* große Auswahl, hohe Verfügbarkeit&lt;br /&gt;
* sehr schneller Versand&lt;br /&gt;
* Ladengeschäft in Oberhaching (südlicher Landkreis München)&lt;br /&gt;
&lt;br /&gt;
=== CBsoft, s.r.o. (ltd.) ===&lt;br /&gt;
*Homepage: http://www.jjtubes.eu/&lt;br /&gt;
* Firma in der Slowakei&lt;br /&gt;
* Verkauft Röhren der Firma JJ&lt;br /&gt;
* englischsprachig&lt;br /&gt;
* Zahlungsmöglichkeiten in € mit Paypal und Kreditkarte&lt;br /&gt;
&lt;br /&gt;
=== chiptrade.com ===&lt;br /&gt;
siehe [[#SE Spezial-Electronic AG|SE Spezial-Electronic AG]]&lt;br /&gt;
&lt;br /&gt;
=== ConeleK Electronic ===&lt;br /&gt;
Homepage: http://www.conelek.com&lt;br /&gt;
&lt;br /&gt;
* Sehr kleines Bauteileangebot (Röhren, Röhrensockel)&lt;br /&gt;
* Elektronik-Laborbedarf, insbesondere Nachfüllpackungen mit Steckbrett-Drahtbrücken&lt;br /&gt;
* Werkzeug für Elektronik&lt;br /&gt;
* Stromversorgungen&lt;br /&gt;
* Versand an Privat&lt;br /&gt;
* Versandkosten bis 25kg, Vorkasse 5,90€ (Stand 04/2008)&lt;br /&gt;
&lt;br /&gt;
=== Conrad ===&lt;br /&gt;
Homepage: http://www.conrad.de und http://www.business.conrad.de&lt;br /&gt;
&lt;br /&gt;
* großes Angebot (für Bauteile den &amp;quot;Business&amp;quot;-Katalog beachten, der Hauptkatalog ist dahingehend etwas &amp;quot;dünn&amp;quot;) (Anm.: Bauteile, die nur im Business-Katalog aufgeführt sind, sind in Ladengeschäften nur über Sonderbestellung zu bekommen, d.h. dort in aller Regel nicht vorrätig.)&lt;br /&gt;
* Positiv: Wirklich jedes Bauteil kann einzeln gekauft werden und wird nicht in dämlichen Verpackungseinheiten verkauft, so wie es bei den meisten anderen Elektronik-Lieferanten der Fall ist. Dies ist vor Allem für den Prototypenbau sehr hilfreich.&lt;br /&gt;
* relativ teuer jedoch bis zu 10% Rabatt für Schulen (bei genügend Umsatz)&lt;br /&gt;
* 21 Ladengeschäfte in Deutschland, sechs in Österreich (Megastores)&lt;br /&gt;
* positiv: Bei Business-Kunden wird der Rechnungsbetrag erst nach 14 Tagen abgebucht.&lt;br /&gt;
* haben einen (teuren) 24 Std. Lieferservice für Notfälle - Conrad garantiert aber nicht 100%ig für die Einhaltung der 24 Stunden. Bei Nichteinhaltung gibt es kein Geld zurück.&lt;br /&gt;
* Verfügbarkeit in Filialen kann Online überprüft werden.&lt;br /&gt;
* Verfügbarkeit in Filialen kann über zentale Rufnummer erfragt werden. Abholung bestellter Ware in Filialen möglich, aber trotzdem gleiche Versandkosten.&lt;br /&gt;
* Eigenmarken: u.a. Voltcraft, Renkforce&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
Vorerst Auskommentiert - Subjektiv/Einzelerfahrung, veraltete Informationen (Filialen)&lt;br /&gt;
* Mit jeder Bestellung erhält man zusätzlich Werbung von unseriösen Firmen, wo Gewinne versprochen werden und man sich in Wirklichkeit für irgendwelche Abos verpflichtet. Wenn man bei Conrad anruft und sie zur Rede stellt, erhält man die Antwort, dass diese Werbung anscheinend aus Versehen hineingerutscht ist. So ein Zufall.&lt;br /&gt;
* sehr kulant bei Umtäuschen&lt;br /&gt;
* versuchen bei Rückgaben einen Teil oder den gesamten Betrag einzubehalten (schon mehrfach vorgekommen)&lt;br /&gt;
* Schlampig verpackte Artikel. ICs sind nicht Antistatik-Konform verpackt.&lt;br /&gt;
* Die Filiale München / Tal hat keine Telefonnummer mehr in den Verzeichnissen, anscheinend sind Kundenanfragen dort zu &amp;quot;lästig&amp;quot;. (Kommentar: andere Filialen auch nicht, wird nur noch über eine Sammelnummer über ein Callcenter abgewickelt. Die Ladenbestellung wird dann vom Callcenter per eMail an die Filiale weitergeleitet.)&lt;br /&gt;
* die Ladengeschäfte haben nicht das gesamte Programm vor Ort, man kann jedoch in den Geschäften anrufen und die Verfügbarkeit anfragen, evtl. sogar Teile für ein paar Stunden &amp;quot;zurücklegen lassen&amp;quot; (von Geschäft zu Geschäft verschieden).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== csd-electronics ===&lt;br /&gt;
Homepage: [http://www.csd-electronics.de csd-electronics.de]&lt;br /&gt;
&lt;br /&gt;
* schnelle Lieferung, bei Lagerware am selben Tag ohne Aufpreis. Auf Wunsch Teillieferung.&lt;br /&gt;
* ATMEL, ICs, Passive und Mechanische Bauteile, Platinen- und Lötzubehör, u.a.&lt;br /&gt;
* ca. 5000 Bauteile lagernd&lt;br /&gt;
* günstig&lt;br /&gt;
* Mengenrabatte für fast jedes Produkt&lt;br /&gt;
* Versand innerhalb Deutschlands: &lt;br /&gt;
* DHL: 3,85€ (ab 60 EUR versandkostenfrei)&lt;br /&gt;
* Versand EU-weit ab 5,95 EUR&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Bauelemente, die nicht im Shop angeboten werden, können auf Anfrage beschafft werden.&lt;br /&gt;
* Zahlung per Vorkasse (3% Skonto), PayPal, Nachnahme. 1 EUR Aufschlag bei PayPal-Zahlung&lt;br /&gt;
* Zahlung per Rechnung nur für Stammkunden (ab 4 bis 5 Bestellung), Für Institute/Firmen direkt auf Rechnung möglich&lt;br /&gt;
* Abholung von Ware in Bonn-Dransdorf nach Vereinbarung&lt;br /&gt;
&lt;br /&gt;
=== dad24 ===&lt;br /&gt;
Homepage, Shop: http://dad24.eu&lt;br /&gt;
E-Bay Shop:     http://stores.ebay.de/Shop-dad24&lt;br /&gt;
&lt;br /&gt;
* Unterschiedliche Preise in den beiden Shops&lt;br /&gt;
* Kleiner, nicht sonderlich schöner Onlineshop (dad24.eu)&lt;br /&gt;
* Kleines Angebot. Lupenleuchten, Lötstationen, Labornetzgeräte, Messgeräte, etc. aus dem unteren Preissegment&lt;br /&gt;
* Jede Woche eine neue &amp;quot;Kategorie der Woche&amp;quot; auf dad24.eu. Produkte aus der Kategorie werden erst im Warenkorb mit einem Rabatt angezeigt, der auch gewährt wird.&lt;br /&gt;
&lt;br /&gt;
=== Darisus ===&lt;br /&gt;
Homepage: http://www.darisus.de&lt;br /&gt;
&lt;br /&gt;
* kompetente Beratung&lt;br /&gt;
* liefert sehr zuverlässig, in Notfällen auch Express&lt;br /&gt;
* Versand innerhalb Deutschlands ab 4,50 EUR&lt;br /&gt;
* Hat auch eine gute Auswahl an CPLDs und einige FPGAs diverser Hersteller&lt;br /&gt;
&lt;br /&gt;
=== Digi-Key ===&lt;br /&gt;
(tlw.) deutsche Homepage: http://de.digikey.com&lt;br /&gt;
&lt;br /&gt;
* optisch nicht besonders ansprechende, aber durchaus sehr funktionelle Website&lt;br /&gt;
* beheimatet in den USA, ein Logistikbüro gibt es in den Niederlanden&lt;br /&gt;
* kostenloser Versand ab 65&amp;amp;#8364;, darunter 18&amp;amp;#8364; Versandkosten&lt;br /&gt;
* macht merkwürdige Plausibilitäts-Checks: wenn man privat über ihrem Dollar Limit (z.B. 400 Dollar bestellt) kommt sofort die Rückfrage nach Firmenname und Firmenadresse&lt;br /&gt;
* Rückfragen nach dem Verwendungszweck kommen ebenfalls schon bei der Bestellung bei bestimmten Bauteilen die der Exportkontrolle unterliegen&lt;br /&gt;
* Versand direkt aus den USA, dafür sehr flott mit UPS Express (in rund zwei bis drei Tagen da)&lt;br /&gt;
* riesiges Angebot, gewissermaßen ein Distributor der auch Kleinmengen an Privatpersonen liefert, entscheidend ist, dass der Hersteller des Produkts geführt wird&lt;br /&gt;
* kein anderer Anbieter, bietet so viele verschiedene passive Bauteile in kleinen Stückzahlen, z.&amp;amp;nbsp;B. SMD Widerstände in Bauform 01005 bis 2512 meist in verschiedenen Toleranzklassen und von verschiedenen Herstellern&lt;br /&gt;
* alle Bauteile mit Herstellerangabe, Digikey kauft ausschließlich direkt vom Hersteller&lt;br /&gt;
* Preise sind auf der deutschen Website in Euro inklusive etwaigem Zoll angegeben, allerdings ohne Mehrwertsteuer, die korrekt abgerechnet wird (d.h. man zahlt bei Versand nach Österreich 20% Mwst., nach Deutschland m.W.n. 19%)&lt;br /&gt;
* Meistens deutlich teurer als Reichelt, doch häufig die beste Anlaufstelle für Privatkunden wenn es um Spezialbauteile geht, und der Hersteller sich im Programm von Digikey befindet&lt;br /&gt;
&lt;br /&gt;
=== Display Electronics ===&lt;br /&gt;
&lt;br /&gt;
Homepage: http://www.distel.co.uk&lt;br /&gt;
&lt;br /&gt;
* In England&lt;br /&gt;
* Webseite = Augenkrebs &lt;br /&gt;
* Online-Shop versteckt hinter dem Search-Button auf der Homepage&lt;br /&gt;
* Restposten aller Art&lt;br /&gt;
* Mindestbestellwert 10 GBP&lt;br /&gt;
&lt;br /&gt;
=== endasmedia Shop ===&lt;br /&gt;
Homepage: http://shop.endasmedia.ch&lt;br /&gt;
&lt;br /&gt;
* Schweizer Standort! Versendet für 1-3 Euro Europaweit!&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Bauelemente (&#039;&#039;&#039;STM32&#039;&#039;&#039;, AVR, LCD, Kleinteile) und Bausätze sehr günstig&lt;br /&gt;
* Eigenentwickelte Bausätze &lt;br /&gt;
* AVR-ISP-Stick (USBASP)&lt;br /&gt;
* Restposten aller Art&lt;br /&gt;
* Vorauskasse, Paypal&lt;br /&gt;
* Dieser Shop wird von einem Forenmitglied (hedie) betrieben!&lt;br /&gt;
* Verkauf auch an Privat/Bastler&lt;br /&gt;
&lt;br /&gt;
=== eHaJo ===&lt;br /&gt;
Homepage: http://www.eHaJo.de&lt;br /&gt;
&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Bauelemente (AVR, LCD, Kleinteile) und Bausätze sehr günstig&lt;br /&gt;
* eigenentwickelte Bausätze &lt;br /&gt;
* Lötübungen für SMD&lt;br /&gt;
* AVR-ISP-Stick&lt;br /&gt;
* Vorauskasse, Paypal, Sofortüberweisung, Rechnung ab 2. Bestellung&lt;br /&gt;
&lt;br /&gt;
=== EIBTron.com ===&lt;br /&gt;
Homepage: http://www.eibtron.com&lt;br /&gt;
&lt;br /&gt;
* Riesige Auswahl an Produkten (~300000)&lt;br /&gt;
* SMD-Bauteile bis 0402!&lt;br /&gt;
* auch spezielle Sachen wie Xilinx-Configuration PROMs, AD9740-DACs oder SMD-Quarze (z.B. Abracon ABM7) im Angebot&lt;br /&gt;
* Alternative zum HBE-Shop für Privatanwender&lt;br /&gt;
* Versand direkt durch RS&lt;br /&gt;
* zuverlässiger und freundlicher Support&lt;br /&gt;
&lt;br /&gt;
=== Eisch-Kafka-Electronic ===&lt;br /&gt;
Homepage: http://www.eisch-electronic.de&lt;br /&gt;
 &lt;br /&gt;
* Hochfrequenz Bausätze und Bauteile für Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== EleConT ===&lt;br /&gt;
Homepage: http://www.elecont.de/shop/&lt;br /&gt;
&lt;br /&gt;
* Carrierboards für gebräuchliche AVR&lt;br /&gt;
&lt;br /&gt;
=== Electropuces ===&lt;br /&gt;
Homepage: http://perso.wanadoo.fr/electropuces/&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte aus Nantes, Frankreich  (teilweise engl. Menü)&lt;br /&gt;
&lt;br /&gt;
=== Electronic Search ===&lt;br /&gt;
&lt;br /&gt;
Homepage: http://www.electronic-search.de&lt;br /&gt;
&lt;br /&gt;
* Keine Mindestbestellmenge&lt;br /&gt;
* Verkauf auch an Privat/Bastler&lt;br /&gt;
* Fast alle Preise im Online-Shop nur &amp;quot;auf Anfrage&amp;quot;, und nicht im Shop angegeben.&lt;br /&gt;
&lt;br /&gt;
=== electronicpool Rheinstetten ===&lt;br /&gt;
Homepage: http://www.electronicpool.de&lt;br /&gt;
&lt;br /&gt;
* abgekündigte oder schwer beschaffbare elektronische Bauteile&lt;br /&gt;
&lt;br /&gt;
=== Elektroland24===&lt;br /&gt;
Homepage: http://www.elektroland24.de/&lt;br /&gt;
&lt;br /&gt;
* Großes Sortiment im Bereich Schalter &amp;amp; Steckdosen/Haustechnik/Elektoinstallation&lt;br /&gt;
* Verkauf an Endverbraucher&lt;br /&gt;
* kurze Lieferzeiten&lt;br /&gt;
&lt;br /&gt;
=== Elektronik-Kompendium ===&lt;br /&gt;
Homepage: http://www.elektronik-kompendium.de&lt;br /&gt;
&lt;br /&gt;
* Bausätze diverser Schaltungen (mit Anleitung und Funktionsbeschreibung)&lt;br /&gt;
* erspart lästiges Suchen in anderen Shops&lt;br /&gt;
* kurze Lieferzeiten&lt;br /&gt;
* günstiger Versand&lt;br /&gt;
&lt;br /&gt;
=== ElrePo ===&lt;br /&gt;
Homepage: http://www.elrepo.de&lt;br /&gt;
&lt;br /&gt;
*Relativ großes Sortiment an Bauteilen&lt;br /&gt;
*Günstige Sortimente und Recycling Bauteile&lt;br /&gt;
*Versandkosten ab 90ct !&lt;br /&gt;
&lt;br /&gt;
=== Elk Tronic ===&lt;br /&gt;
Homepage: http://www.elk-tronic.de&lt;br /&gt;
&lt;br /&gt;
* kleines Lieferprogramm Adapterplatinen (SMD -&amp;gt; 2,54mm-Raster) und Programmieradapter&lt;br /&gt;
* günstige Preise und Versandspesen&lt;br /&gt;
&lt;br /&gt;
=== Elko-Verkauf ===&lt;br /&gt;
Homepage: http://www.elko-verkauf.de&lt;br /&gt;
&lt;br /&gt;
* Nur Low-ESR-Elkos&lt;br /&gt;
* Elko-Sets für ein Gerät&lt;br /&gt;
&lt;br /&gt;
=== Ellmitron ===&lt;br /&gt;
Homepage: http://www.ellmitron.de/&lt;br /&gt;
Katalog: http://www.ellmitron.de/katalog.pdf&lt;br /&gt;
&lt;br /&gt;
* Lehrmittel, Kleinbausätze vor allem für Schüler, Experimentierkästen&lt;br /&gt;
&lt;br /&gt;
=== Elpro ===&lt;br /&gt;
Homepage: http://www.elpro.org/shop/shop.php&lt;br /&gt;
&lt;br /&gt;
* Sehr gute Preise, nachsehen lohnt sich!&lt;br /&gt;
* Kein Mindestbestellwert, aber höhere Versandkosten für kleine Bestellungen. (Stand April 2013):&lt;br /&gt;
* Ab €200: Versandkostenfrei&lt;br /&gt;
* Große Auswahl an Mikrocontrollern, z.B. [[STM32]] und [[LPC1xxx]]&lt;br /&gt;
* Sehr große Auswahl an Schaltnetzteilen von Meanwell (geschlossen, offen, auf PCB lötbar, DIN-Schiene)&lt;br /&gt;
* Shopsoftware gewöhnungsbedürftig, jedoch sinnvolle Untergliederung. Braucht JavaScript&lt;br /&gt;
* Keine AGBs online. Da Preisangaben ohne MwSt. richtet sich das Angebot vermutlich nicht an Endverbraucher (werden aber beliefert)&lt;br /&gt;
* Sehr schnelle Lieferung, Bearbeitungszeit (bis Warenausgang) oft nur 2-3 Tage.&lt;br /&gt;
* Versand bisher mit DHL&lt;br /&gt;
* gute bis sehr gute Verpackung&lt;br /&gt;
&lt;br /&gt;
=== Eltrix ===&lt;br /&gt;
Homepage: http://eltrix.de/Starteltrix.htm&lt;br /&gt;
&lt;br /&gt;
*  Verbrauchsmaterial, Tipps und Tricks fürs Leiterplattenherstellen und Löten&lt;br /&gt;
&lt;br /&gt;
=== ELV ===&lt;br /&gt;
Homepage: http://www.elv.de&lt;br /&gt;
&lt;br /&gt;
* nicht sehr große Auswahl an Einzelteilen&lt;br /&gt;
* riesiges Angebot an Zubehör für Hobbyisten&lt;br /&gt;
* viele z.T. pfiffige Eigenentwicklungen, Bausätze (auch zum Download auf der Website verfügbar)&lt;br /&gt;
* sonst Sortiment ähnlich Conrad, nicht billig&lt;br /&gt;
* im Allgemeinen nicht billig, merkwürdigerweise sind manche Artikel aber die günstigsten auf dem Markt&lt;br /&gt;
* mühsamer Onlinekatalog&lt;br /&gt;
* Immer mal wieder Fehllieferungen und Wartezeiten (zumindest in die Schweiz). Service erreichte in 3 Fällen nicht das inserierte Niveau.&lt;br /&gt;
* Versandkosten innerhalb Deutschland 4,5&amp;amp;#8364;, ab 150&amp;amp;#8364; Bestellwert versandkostenfrei&lt;br /&gt;
* nicht abwählbare Versandversicherung, die 0,85% des Bestellwertes kostet&lt;br /&gt;
&lt;br /&gt;
=== ETT - Electronic Toys Trading  ===&lt;br /&gt;
Homepage: http://www.ett-online.de&lt;br /&gt;
&lt;br /&gt;
* Großhandel nur für Gewerbekunden, aber hat einen Zweitshop [[Elektronikversender#Atzert Technik-Discounter|Atzert Technik-Discounter]] (früher EFB-Electronic Versand, davor Megakick Electronic-Stores) für Endkunden.&lt;br /&gt;
* Ladengeschäft in Braunschweig für jedermann. Weitere Atzert Ladengeschäfte in Bielefeld, Bremen, Hamburg und Berlin.&lt;br /&gt;
* Eigentümer der Marken McCHECK®, McPower®, McVoice® und anderer, unter denen ETT importierte Messgeräte, Labornetzteile, usw. an Großkunden und Händler vertreibt. Diese sind unter oben genannten Marken dann in vielen Shops anderer Firmen für Endkunden zu finden, nicht nur bei Atzert. Preisvergleiche lohnen.&lt;br /&gt;
&lt;br /&gt;
=== Ettinger GmbH ===&lt;br /&gt;
Homepage: http://www.ettinger.de&lt;br /&gt;
&lt;br /&gt;
* Liefert per Nachnahme oder gegen Vorauskasse auch an Privatkunden.&lt;br /&gt;
* Mechanische Komponenten (Gehäuse, Abstandshalter, Drehknöpfe, usw.)&lt;br /&gt;
* LEDs&lt;br /&gt;
* Gewöhnungsbedürftiger Online-Shop&lt;br /&gt;
&lt;br /&gt;
=== EXP-TECH ===&lt;br /&gt;
Homepage: http://www.exp-tech.de/&lt;br /&gt;
&lt;br /&gt;
* liefert an privat&lt;br /&gt;
* vielfältiges Sortiment von vielen verschiedenen Händlern (Adafruit, Sparkfun, Arduino, Olimex, Embest, SeedStudio, CooCox,  Digi, BeagleBone, IteadStudio, RaspberryPI, SecretLabs, CookingHacks,  Axiris.pe, OpenPicus, RobotElectronics, RobotBase, AttenInstruments,  Dagu, RF-Explorer, TexasInstruments, DangerousPrototypes...)&lt;br /&gt;
* Lieferung per DHL&lt;br /&gt;
* Zahlungsmöglichkeiten: Überweisung (Vorkasse), PayPal, Visa, MasterCard&lt;br /&gt;
&lt;br /&gt;
=== Farnell ===&lt;br /&gt;
Homepage: http://de.farnell.com&lt;br /&gt;
&lt;br /&gt;
* liefert nur an gewerbliche Abnehmer, Ausnahme sind Studenten und HTL-Schüler (Österreich, Farnell.at). Nachweis wird verlangt (Gewerbeschein oder Immatrikulation).&lt;br /&gt;
* Lieferungen an Privat:&lt;br /&gt;
:* Schweiz: Farnell Schweiz beliefert auch Privatkunden.&lt;br /&gt;
:* Deutschland: Über den Reseller [[#HBE_-_Heinz_B.C3.BCchner_Elektronik.2C_Messtechnik.2C_med._Elektronik_e.K.|HBE]] kann man Produkte aus dem Farnell-Sortiment zu bestellen.&lt;br /&gt;
:* Österreich: [[#Technik-Welt / Industrieshop.at|Technik-Welt / Industrieshop.at]]&lt;br /&gt;
* große Auswahl&lt;br /&gt;
* &amp;lt;s&amp;gt;12% Rabatt für Studenten und Lehreinrichtungen&amp;lt;/s&amp;gt; Laut Kundenservice seit Dezember 2013 keine Rabatte mehr für bestimmte Kundengruppen!&lt;br /&gt;
* sehr schneller Versand, Ware ist in 99% aller Fälle am nächsten Tag da (UPS), fehlende Positionen werden relativ rasch versandkostenfrei nachgeliefert&lt;br /&gt;
* Versandkosten: Bestellung bis 54,99&amp;amp;#8364;: 5,95&amp;amp;#8364;; ab 55,00&amp;amp;#8364; versandkostenfrei&lt;br /&gt;
* hat nach eigenen Aussagen umfangreichstes Sortiment an RoHS-konformen Bauteilen mit Suchfunktion im WWW&lt;br /&gt;
* leistungsfähige parametrische Suchfunktion / teils aber völlig nutzlos, da den Artikeln massenweise Tags fehlen, weswegen die Suchergebnisse unnötig eingeschränkt werden&lt;br /&gt;
* Datenblätter für die meisten Bauteile online&lt;br /&gt;
* Internetpräsenz fällt nachts oft aus (Hinweis auf angebliche geplante Wartungsarbeiten)&lt;br /&gt;
* Sortierfunktion wird bei der Suche ständig zurückgesetzt, im Warenkorb ist überhaupt keine sinnvolle Sortierung möglich&lt;br /&gt;
* Eigenwillige Preispolitik: Einiges sehr günstig, Anderes total überteuert&lt;br /&gt;
&lt;br /&gt;
=== Fibra-Brandt Zweibrücken ===&lt;br /&gt;
Homepage: http://www.fibra-brandt.com&lt;br /&gt;
&lt;br /&gt;
* lagert tausende veraltete und schwer zu findende elektronische Bauteile&lt;br /&gt;
* Halbleiter, IC&#039;s, Transistoren, Spulen und Kondensatoren.&lt;br /&gt;
* Sonderbeschaffung von abgekündigten Halbleitern.&lt;br /&gt;
&lt;br /&gt;
=== Fischer DK2FD ===&lt;br /&gt;
Homepage: http://www.dk2fd.de für Amateurfunkprodukte&lt;br /&gt;
&lt;br /&gt;
* Baugruppen für Hochfrequenzmesstechnik und Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== Fuchs Shop ===&lt;br /&gt;
Homepage: http://www.fuchs-shop.com/&lt;br /&gt;
&lt;br /&gt;
* 1-Wire- und iButton-Komponenten&lt;br /&gt;
&lt;br /&gt;
=== Funkamateur Online-Shop ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Elektronikversender#Box73]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Futurelec ===&lt;br /&gt;
Homepage: http://www.futurlec.com&lt;br /&gt;
&lt;br /&gt;
* günstiger Versender aus Übersee&lt;br /&gt;
* viele Stamp-Boards&lt;br /&gt;
* LED Matrix-Module&lt;br /&gt;
&lt;br /&gt;
=== Future Electronics ===&lt;br /&gt;
Homepage: http://de.futureelectronics.com&lt;br /&gt;
&lt;br /&gt;
* große Auswahl an Teilen&lt;br /&gt;
* Versand auch an Privatpersonen&lt;br /&gt;
* Preisangaben ohne MwSt.&lt;br /&gt;
* Zahlung nur mit Kreditkarte&lt;br /&gt;
* Versandkosten 7,14€ (Brutto)&lt;br /&gt;
* Versand aus den USA mit FedEx, Lieferzeit meist unter 5AT&lt;br /&gt;
* Verzollung usw. wird von FutureElectronics gemacht, keine Nachzahlungen etc.&lt;br /&gt;
&lt;br /&gt;
=== Geist Electronic-Versand GmbH ===&lt;br /&gt;
Homepage: http://www.geist-electronic.de&lt;br /&gt;
&lt;br /&gt;
* Liefern Bauteile für Elektor-Projekte&lt;br /&gt;
* D-78054 Villingen-Schwenningen&lt;br /&gt;
* Versandkosten: 5.40€&lt;br /&gt;
&lt;br /&gt;
=== Gie-Tec ===&lt;br /&gt;
Homepage: http://www.gie-tec.de/index.php&lt;br /&gt;
&lt;br /&gt;
Teile des früheren proMa systro Angebots.&lt;br /&gt;
&lt;br /&gt;
=== guloshop.de ===&lt;br /&gt;
Homepage: http://guloshop.de&lt;br /&gt;
&lt;br /&gt;
* kleiner Shop, konzentriert sich auf Standard-AVRs im DIP-Gehäuse, ist dabei aber meist der billigste Versender in Deutschland&lt;br /&gt;
* ATtiny, ATmega, Breakout-Boards, Programmer, Adapterkabel, IC-Fassungen&lt;br /&gt;
* AVR mit geflashtem Arduino-Bootloader&lt;br /&gt;
* äußerst niedrige Preise&lt;br /&gt;
* liefert schnell und zuverlässig, jedoch nur gegen Vorkasse&lt;br /&gt;
* kein Mindestbestellwert, Versandkosten für kleine Bestellungen: 2,40 EUR, darüber 4,40 EUR&lt;br /&gt;
* ansässig in 90489 Nürnberg&lt;br /&gt;
&lt;br /&gt;
=== H-Tronic ===&lt;br /&gt;
Homepage: http://www.h-tronic.eu/index.php&lt;br /&gt;
&lt;br /&gt;
* Online-Shop einer Entwicklungsfirma, in dem neben Baugruppen und Geräten auch einige Bauelemente und Elektronikzubehör angeboten werden&lt;br /&gt;
* kleines Angebot&lt;br /&gt;
&lt;br /&gt;
=== Hallmanns Elektronik ===&lt;br /&gt;
Homepage: http://www.hallmanns.com &amp;lt;br&amp;gt;&lt;br /&gt;
Adresse: Bruno Hallmanns, Weierstraße 41, 52349 Düren&lt;br /&gt;
&lt;br /&gt;
* Elektronikhändler mit Ladenlokal und Versand&lt;br /&gt;
* Ladentypisches Sortiment (Bauteile, Geräte, PC, Funk, Hifi...)&lt;br /&gt;
&lt;br /&gt;
=== Hari Seligenstadt ===&lt;br /&gt;
Homepage: http://www.hari-ham.com&lt;br /&gt;
&lt;br /&gt;
* Bausätze, Ringkerne, Geräte für Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== HBE - Heinz Büchner Elektronik, Messtechnik, med. Elektronik e.K. ===&lt;br /&gt;
Homepage: http://www.hbe-shop.de/katalog/&lt;br /&gt;
&lt;br /&gt;
* Bezeichnet sich als &#039;&#039;[[#Farnell|Farnell]] Fachhändler&#039;&#039;, bei dem nichtgewerbliche Kunden aus dem Farnell-Sortiment bestellen können.&lt;br /&gt;
* Preise für Farnell-Produkte normalerweise Farnell Netto-Preis + MwSt.&lt;br /&gt;
* Mindestbestellwert 30,- €, Mindermengenzuschlag 5,- € (Stand 03/2014)&lt;br /&gt;
* Versandkosten 5,65 €, ab 90,- € versandkostenfrei (Stand 03/2014)&lt;br /&gt;
&lt;br /&gt;
=== HeComps ===&lt;br /&gt;
Homepage: http://www.hecomps.de&lt;br /&gt;
* Module und Shields zum Anschluss an Arduino, AVR etc.&lt;br /&gt;
* Viele Sachen aus dem &amp;quot;China SUPER Bauteile-Schnäppchen&amp;quot; Thread&lt;br /&gt;
* 2-5 Arbeitstage für Waren ab Lager&lt;br /&gt;
* Porto + Verpackung ab Euro 2,95&lt;br /&gt;
* Kein Mindestbestellwert&lt;br /&gt;
&lt;br /&gt;
=== Heho-Elektronik ===&lt;br /&gt;
Homepage: http://www.heho-elektronik.de&lt;br /&gt;
* Halbleiter / Bauteile, Sortimente, Handy - Akkus, VELLEMAN - Bausätze&lt;br /&gt;
* Aktuelles Angebot, Ladegeräte / Akkuladegeräte, Blei - Akkus&lt;br /&gt;
* Spannungswandler, Audio / Video / USB - Kabel, Netzwerk - Kabel&lt;br /&gt;
* 1-2 Arbeitstage für Waren ab Lager&lt;br /&gt;
* Porto + Verpackung pauschal Euro 4,50&lt;br /&gt;
* Mindestbestellwert von &amp;amp;#8364; 10,00&lt;br /&gt;
&lt;br /&gt;
=== Home-Electronic24 ===&lt;br /&gt;
Homepage: http://www.home-electronic24.de/&lt;br /&gt;
&lt;br /&gt;
=== HW-Electronics ===&lt;br /&gt;
Homepage: http://www.hw-electronics.de &amp;lt;br&amp;gt;&lt;br /&gt;
Homepage EU: http://hw-electronics.eu/&lt;br /&gt;
&lt;br /&gt;
* Tauch- und Sprühätzanlagen&lt;br /&gt;
* Entwicklungsgeräte&lt;br /&gt;
* Belichtungsgeräte, Materialsätze zum Selbstbau von Belichtungsgeräten&lt;br /&gt;
&lt;br /&gt;
=== ID-Elektronik ===&lt;br /&gt;
Homepage: http://www.id-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Amateurfunk-Baugruppen&lt;br /&gt;
&lt;br /&gt;
=== IT-WNS ===&lt;br /&gt;
Homepage: https://www.it-wns.de&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Bauteile, Platinen, Bausätze&amp;quot; insbesondere mit ATMEGA Mikrocontrollern&lt;br /&gt;
* Viele aktive, passive und mechanische Bauelemente&lt;br /&gt;
* Bausätze zu Projekten aus dem Forum&lt;br /&gt;
* ESP8266 Module, SD-Slots, RFID, Bluetooth-Module, AVR Mikrocontroller, USB uvam.&lt;br /&gt;
* Bauelemente, die nicht im Shop angeboten werden, können auf Anfrage (Kontaktformular) oft beschafft werden &lt;br /&gt;
* Günstige Preise und Versandkosten ab 2,95EUR, kein Mindestbestellwert&lt;br /&gt;
* Schneller Versand, sofern die Artikel auf Lager sind, versandkostenfreie Nachlieferung&lt;br /&gt;
&lt;br /&gt;
=== Kabelscheune ===&lt;br /&gt;
Homepage: http://www.kabelscheune.de&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Direktversand von Elektromaterial und Multimediaprodukten&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Kessler ===&lt;br /&gt;
Homepage: http://www.kessler-electronic.de&lt;br /&gt;
&lt;br /&gt;
* im Preis-Leistungsverhältnis mit Reichelt zu vergleichen (sprich: günstig)&lt;br /&gt;
* Sortiment kleiner als Reichelt und mit gewissen Abweichungen (z. B. andere FPGA und RAMs)&lt;br /&gt;
* oft lange Lieferzeiten&lt;br /&gt;
* Versandkosten innerhalb Deutschlands 4€ (Brief), 5€ (DHL-Paket), 10€ (DHL-Express-Paket)&lt;br /&gt;
&lt;br /&gt;
=== Klein-Electronic ===&lt;br /&gt;
Homepage: http://www.klein-electronic.de&lt;br /&gt;
&lt;br /&gt;
* Baugruppen zur Video- und 2,4GHz-Sendetechnik&lt;br /&gt;
&lt;br /&gt;
=== Konni-Antennen ===&lt;br /&gt;
Homepage: http://www.konni-antennen.de&lt;br /&gt;
&lt;br /&gt;
* Antennen für TV, Amateurfunk&lt;br /&gt;
* Zubehör, Einzelteile&lt;br /&gt;
* sehr netter kompetenter Service&lt;br /&gt;
&lt;br /&gt;
=== LEDSEE Electronics ===&lt;br /&gt;
Homepage: http://www.ledsee.com&lt;br /&gt;
&lt;br /&gt;
* LEDs, LCDs, diverses&lt;br /&gt;
* Lieferung direkt aus China, daher sehr günstig und lange Lieferzeiten&lt;br /&gt;
&lt;br /&gt;
=== LED Microtechnics LTD ===&lt;br /&gt;
Homepage: http://www.ledmeile.de&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;LED Shop und Lampentechnik&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== LED-Tech LED-Shop ===&lt;br /&gt;
Homepage: http://www.led-tech.de&lt;br /&gt;
&lt;br /&gt;
* viele verschiedene LEDs zu sehr guten (meist den günstigsten) Preisen&lt;br /&gt;
* vor allem auf High-Power-LEDs spezialisiert&lt;br /&gt;
* viele verschiedene Treiber für High-Power-LEDs&lt;br /&gt;
* kostenloser Versand&lt;br /&gt;
* haben ein eigenes, sehr umfangreiches Forum&lt;br /&gt;
&lt;br /&gt;
=== Lüdeke Elektronic ===&lt;br /&gt;
Homepage: http://www.luedeke-elektronic.de/&lt;br /&gt;
&lt;br /&gt;
* großes Sortiment, bietet unter anderem auch viele selbst entwickelte Bausätze an&lt;br /&gt;
&lt;br /&gt;
=== LUMITRONIX LEDs-Shop ===&lt;br /&gt;
Homepage: http://www.leds.de&lt;br /&gt;
&lt;br /&gt;
* alles rund um LEDs (auch Zubehör und Lektüre)&lt;br /&gt;
* neben Standard-LEDs auch SMD- und SuperFlux-LEDs&lt;br /&gt;
&lt;br /&gt;
=== Marsch Elektronik, M. Schlimper ===&lt;br /&gt;
Homepage: http://www.marsch-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Online Shop für aktive und passive Bauelemente&lt;br /&gt;
* Versandkosten ab Euro 1,60&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* bietet auch Einsteigersortimente und Widerstandsortimente (auch SMD)&lt;br /&gt;
* liefert nur innerhalb Deutschlands&lt;br /&gt;
* nicht gelistete Artikel können angefragt werden und werden meist auch beschafft&lt;br /&gt;
&lt;br /&gt;
=== Mauritz Communication &amp;amp; Electronics ===&lt;br /&gt;
Homepage: http://www.mauritz.de/&lt;br /&gt;
&lt;br /&gt;
* Online Shop für HF-Stecker und Kabel&lt;br /&gt;
* bietet HF-Stecker/Buchsen und Koaxkabel an&lt;br /&gt;
* große Auswahl, auch exotische Teile&lt;br /&gt;
* Kabelkonfektionierung nach Wunsch&lt;br /&gt;
* vernünftige Preise&lt;br /&gt;
* liefert nach Rücksprache auch weltweit&lt;br /&gt;
* Keine Mindestbestellwert, aber 5 € Aufschlag unter 15 €&lt;br /&gt;
* Versand bis 40 kg pauschal 5,95 € per GLS innerhalb DE&lt;br /&gt;
* schneller Versand&lt;br /&gt;
* Paypal oder Vorkasse&lt;br /&gt;
&lt;br /&gt;
=== mechapro ===&lt;br /&gt;
Homepage: http://www.mechapro.de&lt;br /&gt;
* Online Shop für Schrittmotoren und Steuerungen&lt;br /&gt;
* Schrittmotorendstufen als Fertiggeräte oder Bausätze&lt;br /&gt;
* Eigene Entwicklung und Fertigung in Deutschland (außer Motoren)&lt;br /&gt;
* Versandkosten in DE ab 4 EUR&lt;br /&gt;
* liefert EU-weit&lt;br /&gt;
&lt;br /&gt;
=== Mikrocontroller.net ===&lt;br /&gt;
Homepage: http://shop.mikrocontroller.net&lt;br /&gt;
&lt;br /&gt;
* Starterkits, Development Boards und Zubehör für AVR, AVR32, ARM und MSP430&lt;br /&gt;
&lt;br /&gt;
=== Mouser ===&lt;br /&gt;
Homepage: http://de.mouser.com&lt;br /&gt;
&lt;br /&gt;
* Liefert an Privat&lt;br /&gt;
* Zügige Lieferung mit FedEx aus den USA&lt;br /&gt;
* Keine Halbleiter von Linear&lt;br /&gt;
* &amp;quot;Versand ist kostenfrei bei den meisten Bestellungen über 65 €&amp;quot;&lt;br /&gt;
* Preise inkl. Zoll aber ohne Einfuhrumsatzsteuer&lt;br /&gt;
* Zahlungsmöglichkeiten: Kreditkarte, PayPal&lt;br /&gt;
&lt;br /&gt;
=== MS-Elektronik ===&lt;br /&gt;
Homepage: http://www.ms-elektronik.info&lt;br /&gt;
&lt;br /&gt;
* Liefert an Privat&lt;br /&gt;
* Zügige Lieferung&lt;br /&gt;
* Gute Qualität&lt;br /&gt;
* Viel in Richtung Audio&lt;br /&gt;
* Große Auswahl an Elkos -&amp;gt; kleine Preise&lt;br /&gt;
* kein allzu großes Sortiment&lt;br /&gt;
&lt;br /&gt;
=== myAVR Shop ===&lt;br /&gt;
Hompage http://shop.myavr.de&lt;br /&gt;
&lt;br /&gt;
* Kleine Auswahl, aber die angebotene Ware ist sehr preiswert (meist preiswerter als bei Reichelt)&lt;br /&gt;
* Zügige Lieferung (1-2 Werktage)&lt;br /&gt;
* Diverse Zahlungsmöglichkeiten: Rechnung, Vorkasse, Lastschrift, Kreditkarte, PayPal&lt;br /&gt;
* Kein Mindestbestellwert&lt;br /&gt;
* Sehr günstige Versandkosten ab 1,95 Eur&lt;br /&gt;
* Mengenrabatt ab 10 gleichen Artikeln&lt;br /&gt;
&lt;br /&gt;
=== Neuhold-Elektronik ===&lt;br /&gt;
Homepage: http://www.neuhold-elektronik.at &amp;lt;br&amp;gt;&lt;br /&gt;
Shop: http://www.neuhold-elektronik.at/catshop/default.php?language=de&lt;br /&gt;
&lt;br /&gt;
* preiswerte Schnäppchen&lt;br /&gt;
* regelmäßig aktualisierte Angebotsliste herunterladbar&lt;br /&gt;
* Ab 60,- EUR versandkostenfrei in Österreich&lt;br /&gt;
&lt;br /&gt;
=== Octamex ===&lt;br /&gt;
Homepage: http://www.octamex.de&lt;br /&gt;
&lt;br /&gt;
* Leiterplattenchemie (Entwickler, Ätzmittel, CRC-Sprays)&lt;br /&gt;
* Chemisch Zinn&lt;br /&gt;
* Lötstopp-Laminat, Tentingresist, Bestückungsdruck&lt;br /&gt;
* Bungard Basismaterial in 0,5mm 1,0mm 1,5mm Dicke und 18µm, 35µm, 70µm Kupfer&lt;br /&gt;
* Bungard Alucorex für 19&amp;quot; Frontplatten&lt;br /&gt;
* Bungard Cotherm, Alukernbasismaterial&lt;br /&gt;
* Funkmodule 434MHz, 868MHz, 2.4GHz&lt;br /&gt;
* Löttechnik und Zubehör&lt;br /&gt;
* Gehäuse aller Art&lt;br /&gt;
* Messgeräte und Labornetzteile&lt;br /&gt;
* aktive, passive u. mechanische Bauelemente (Widerstände, Kondensatoren, Transistoren, Logik-ICs etc.)&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Lieferung auch ins Ausland&lt;br /&gt;
* Versandkosten ab 4,50EUR&lt;br /&gt;
* Liefert nur gegen Vorkasse, ausser für Bestandskunden, die schon häufig bestellt haben&lt;br /&gt;
* Zahlung mit EC-Pay oder Kreditkarte nur gegen Aufschlag (bis zu 5%)&lt;br /&gt;
&lt;br /&gt;
=== Online Batterien ===&lt;br /&gt;
Homepage: http://www.online-batterien.de&lt;br /&gt;
&lt;br /&gt;
* Allerlei günstige Batterien &amp;amp; Akkus vieler Marken&lt;br /&gt;
* z.&amp;amp;nbsp;B. &#039;&#039;&#039;40 Stk.&#039;&#039;&#039; DURACELL PLUS LR6 AA 11,59€ (Jan 2010)&lt;br /&gt;
* Beleuchtungsartikel&lt;br /&gt;
* USV&lt;br /&gt;
* Versand ab 3,90€&lt;br /&gt;
&lt;br /&gt;
=== Oppermann ===&lt;br /&gt;
Homepage: http://www.oppermann-electronic.de&lt;br /&gt;
&lt;br /&gt;
* Restposten, auch HF Bauteile&lt;br /&gt;
* auch Privatkunden&lt;br /&gt;
* Lieferung nach üblicher Zeit&lt;br /&gt;
&lt;br /&gt;
=== PCB-Soldering ===&lt;br /&gt;
&lt;br /&gt;
Homepage, Online-Shop: http://www.pcb-soldering.co.uk&lt;br /&gt;
eBay: http://www.allendale-stores.co.uk&lt;br /&gt;
Firmen-Homepage: http://www.allendale-elec.co.uk&lt;br /&gt;
&lt;br /&gt;
* [http://www.aoyue.com/en/products.asp Aoyue] Lötstationen und preiswertes Zubehör (Lötspitzen) für diese. Bei Aoyue-Zubehör bessere Preise (Stand 10/2008) als [[#WilTec_Wildanger_Technik_GmbH|WilTec]]&lt;br /&gt;
* Schnelle Lieferung&lt;br /&gt;
* Dank EU Binnenmarkt nur britische Mehrwertsteuer (VAT), kein Zoll/Einfuhrumsatzsteuer&lt;br /&gt;
* Zwei von drei E-Mails wurden nicht beantwortet&lt;br /&gt;
* Versandart wurde eigenmächtig von &amp;quot;Standard&amp;quot; auf teureres &amp;quot;Signed for&amp;quot; (Einschreiben) geändert&lt;br /&gt;
* Sendet nach Einkauf regelmäßig Spam-Mails.&lt;br /&gt;
&lt;br /&gt;
=== Pollin Electronic ===&lt;br /&gt;
Homepage: http://www.pollin.de&lt;br /&gt;
&lt;br /&gt;
* Restposten aller Art (z.&amp;amp;nbsp;B. &amp;quot;250 g verschiedene ICs&amp;quot; u.dgl.)&lt;br /&gt;
* Produkte teils schnell ausverkauft &lt;br /&gt;
* Qualität schwankend. Man kann gute Schnäppchen machen aber auch reinfallen. Umtausch ist dann aber problemlos.&lt;br /&gt;
* Es wird öfters von sorgloser Verpackung berichtet (empfindliche und schwere Produkte besser nicht zusammen bestellen). Reklamationen bei Beschädigungen werden freundlich behandelt, aber E-Mails werden nicht beantwortet.&lt;br /&gt;
* Warenwirtschaftssystem mängelbehaftet: Bei Telefonbestellung angeblich vorhandene Ware stellt sich bei erfolgter Bestellung als nicht mehr lieferbar heraus, Versandkosten dann also ggf. überproportional hoch.&lt;br /&gt;
* Lieferzeit in der Regel 2-3 Werktage / knappe Woche bei neuer Sonderliste&lt;br /&gt;
* Ladengeschäft in 85104 Pförring (Oberbayern) + jährlicher großer Schnäppchenmarkt vor Ort (mehrtägig, mit Festzelt etc.)&lt;br /&gt;
* Versandkosten innerhalb Deutschlands 4,95€&lt;br /&gt;
* Zahlung per Nachnahme (+2,50 €), Bankeinzug, Vorkasse, &#039;&#039;SOFORT&#039;&#039;-Überweisung oder PayPal&lt;br /&gt;
* Mehrfach jährliche Gutscheine für effektiv VK-freie Lieferung (z.B. an Ostern und Weihnachten), teilweise öffentlich einsehbar (Facebook, Webseite), teils nur für Kunden. Nichtöffentliche Gutscheine per Post/Mail sind nicht übertragbar und werden bei Fremdnutzung nachträglich gestrichen.&lt;br /&gt;
&lt;br /&gt;
=== QRP-project ===&lt;br /&gt;
Homepage: http://www.qrpshop.de/&lt;br /&gt;
&lt;br /&gt;
* Bausätze vor allem einfache Kurzwellen-Funkgeräte&lt;br /&gt;
&lt;br /&gt;
=== Reichelt ===&lt;br /&gt;
Homepage: http://www.reichelt.de&lt;br /&gt;
&lt;br /&gt;
* relativ große Auswahl, aber nicht viele &amp;quot;brandaktuelle&amp;quot; Bauteile&lt;br /&gt;
* wenn man höflich fragt, liefern sie ganz selten auch Bauteile, die nicht im Katalog stehen zu &amp;quot;normalen&amp;quot; Preisen (vorausgesetzt der Hersteller ist im Sortiment), z.&amp;amp;nbsp;B. Xilinx XC2S50, aber meist erhält man die Antwort, dass der Artikel nicht im Sortiment ist, obwohl auf der Homepage unter Service extra ein Punkt angeführt ist: &amp;quot;Ich benötige einen Artikel, der nicht im Programm ist&amp;quot;&lt;br /&gt;
* reagiert aber teilweise auch auf Anregungen, neue Produkte in das Angebot aufzunehmen; siehe dazu auch den Artikel [[Reichelt-Wishlist]]&lt;br /&gt;
* liefert schnell und vollständig; wenn etwas ausnahmsweise nicht verfügbar ist, dann liefern sie es auf eigene Kosten nach, wenn der Artikel in absehbarer Zeit wieder vorrätig ist (selbst wenn er nur 0,20€ wert ist).&lt;br /&gt;
* lässt einen dennoch manchmal warten, wenn ein Artikel nicht lieferbar ist! Daher bei der Bestellung immer darauf hinweisen, dass man auch eine Teillieferung akzeptiert. (Laut Auskunft dauert das länger, besser nach der Inet-Bestellung anrufen und nicht lieferbare Teile aus der Bestellung streichen lassen)&lt;br /&gt;
* Lieferzeiten normalerweise 2 - 4 Arbeitstage&lt;br /&gt;
* niedrige Preise (aber unbedingt Qualität des Artikel checken)&lt;br /&gt;
* Versandkosten 5,60€ (Deutschland); 6,95€ Österreich; Schweiz 16€; Italien 13,95€ EU 15 - 19€;&lt;br /&gt;
* 10€ Mindestbestellwert für alle Länder&lt;br /&gt;
* auch in die Schweiz sehr guter Service&lt;br /&gt;
* holt sich auch ohne Erlaubnis Bankauskünfte bei großen Bestellungen ein&lt;br /&gt;
&lt;br /&gt;
=== RF Microwave ===&lt;br /&gt;
Homepage: http://http://www.rfmicrowave.it/&lt;br /&gt;
&lt;br /&gt;
* Ausschliesslich HF Bauelemente&lt;br /&gt;
* riesige Auswahl an Bauteilen für den Mikrowellenbereich&lt;br /&gt;
* Bestellung nur nach Registrierung im Shop&lt;br /&gt;
* Schnelle Lieferung&lt;br /&gt;
* Firmensitz in Italien&lt;br /&gt;
* Teilweise englischer Shop&lt;br /&gt;
&lt;br /&gt;
=== RFW Elektronik ===&lt;br /&gt;
Homepage: http://www.rfw-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* HF Bauelemente&lt;br /&gt;
&lt;br /&gt;
=== Ribu ===&lt;br /&gt;
Homepage: http://www.ribu.at&lt;br /&gt;
&lt;br /&gt;
* Sehr guter Elektronikversand in Österreich mit zahlreichen Entwicklungsboards und zahlreichen Elektroniklösungen.&lt;br /&gt;
* Liefert sehr schnell und hat eine ausgezeichnete Beratung. &lt;br /&gt;
* Online-Shop ist sehr übersichtlich und einfach zu bedienen.&lt;br /&gt;
* Lieferstatusanzeige für alle Artikel. Bei Auslaufartikeln ist sogar die noch verfügbare Stückzahl sichbar.&lt;br /&gt;
* Günstige Sonderangebote&lt;br /&gt;
* innerhalb Österreichs 4,90&amp;amp;#8364; Versandkosten, ab 80,- keine Versandkosten&lt;br /&gt;
* ausserhalb Österreichs 13&amp;amp;#8364; Versandkosten, ab 225&amp;amp;#8364; versandkostenfrei&lt;br /&gt;
* liefert auch an Privatkunden&lt;br /&gt;
* Mindestbestellwert innerhalb Österreichs 10&amp;amp;#8364;, ausserhalb 30&amp;amp;#8364;&lt;br /&gt;
&lt;br /&gt;
=== Richardson Electronic ===&lt;br /&gt;
Homepage: http://www.richardsonrfpd.com/&lt;br /&gt;
&lt;br /&gt;
* Hochfrequenz-Halbleiter, HF-Röhren,&lt;br /&gt;
&lt;br /&gt;
=== Riedl Elektronik ===&lt;br /&gt;
Homepage: http://www.riedl-electronic.at&lt;br /&gt;
&lt;br /&gt;
* großes Angebot v.a. ICs und Trafos&lt;br /&gt;
* recht günstig&lt;br /&gt;
* Rabatt für Schüler/Student&lt;br /&gt;
* Versand nach AT: 3,95€ bis 1kg, ab 100€ frei Haus&lt;br /&gt;
* Versand AT über 1kg sowie Ausland: Nach Aufwand (wird nicht direkt angezeigt)&lt;br /&gt;
&lt;br /&gt;
=== RLX COMPONENTS s.r.o. ===&lt;br /&gt;
Homepage: http://www.rlx.sk&lt;br /&gt;
&lt;br /&gt;
* Man spricht Deutsch&lt;br /&gt;
* Messgeräte, Mikrocontroller-Boards, Bauelemente&lt;br /&gt;
&lt;br /&gt;
=== RM Computertechnik GmbH ===&lt;br /&gt;
Homepage: http://www.rm-computertechnik.de&lt;br /&gt;
&lt;br /&gt;
* Kerngeschäft ist PC-Technik, aber auch großes Sortiment an Kabeln, Litzen und Steckverbindern&lt;br /&gt;
* handelt auch mit einigen Bauelementen, wie LED&#039;s&lt;br /&gt;
&lt;br /&gt;
=== Robotikhardware===&lt;br /&gt;
Homepage: http://www.robotikhardware.de&lt;br /&gt;
&lt;br /&gt;
* Microcontroller&lt;br /&gt;
* Entwicklungsboards&lt;br /&gt;
* Sensoren&lt;br /&gt;
* Robotik-Zubehör&lt;br /&gt;
* günstige Angebote für Hobbyelektroniker&lt;br /&gt;
* auch einzelne Platinen&lt;br /&gt;
&lt;br /&gt;
=== Robotik-Teile.de===&lt;br /&gt;
Homepage: http://www.robotik-teile.de&lt;br /&gt;
&lt;br /&gt;
* Große Auswahl an Elektronik Produkten &lt;br /&gt;
* Microcontroller, Sensoren, Zubehör, u.v.m.&lt;br /&gt;
* Versandkosten betragen immer 4,90 €&lt;br /&gt;
* Zahlbar ber PayPal, Sofortüberweisung, Vorkasse und Nachnahme&lt;br /&gt;
&lt;br /&gt;
=== Benno Rößle Elektronik ===&lt;br /&gt;
Homepage: http://www.roessle-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Masten, Antennen, Befestigungsmat.,Zubehör, Geräte, Anpassteile, HF-Stecker&lt;br /&gt;
&lt;br /&gt;
=== Sander Elektronik ===&lt;br /&gt;
Homepage: http://www.sander-electronic.de&lt;br /&gt;
&lt;br /&gt;
* beliefert auch Privatkunden, Bankeinzug möglich&lt;br /&gt;
* ähnlich Segor ein Berliner Versender&lt;br /&gt;
* Hier findet man manche [[MSP430]], die es sonst nicht in kleinen Stückzahlen gibt&lt;br /&gt;
* Herr Sander ist sehr kompetent und selbst Autor von Fachartikeln&lt;br /&gt;
* selbst abgekündigte Halbleiter können noch beschafft werden&lt;br /&gt;
* Bezahlung auch mit Kreditkarte möglich&lt;br /&gt;
* Versandkosten innerhalb Deutschlands ab 3,35&amp;amp;#8364;, innerhalb Europas ab 6&amp;amp;#8364;&lt;br /&gt;
&lt;br /&gt;
=== Sat-Schneider ===&lt;br /&gt;
Homepage: http://www.sat-schneider.de&lt;br /&gt;
* Bauteile, Ersatzteile  Online-Shop&lt;br /&gt;
* Baugruppen zum Empfang des Digitalen Kurzwellenrundfunks DRM&lt;br /&gt;
&lt;br /&gt;
=== Sourcetronic GmbH ===&lt;br /&gt;
Hompage: http://www.sourcetronic.com&lt;br /&gt;
&lt;br /&gt;
* Verkäufer von Messtechnik, Antriebstechnik und Solartechnik&lt;br /&gt;
* Produziert auch selbst, z.B. Pumpensteuerungen oder Kalibrierwiderstände&lt;br /&gt;
* Hauptsächlich gewerbliche Kunden, liefert aber auch an Privatkunden&lt;br /&gt;
* Online-Shop mit großem Angebot an Messgeräten, Hochspannungsprüfgeräten, Frequenzumrichtern und Pumpensteuerungen&lt;br /&gt;
* Preise sind ohne Mehrwertsteuer angegeben&lt;br /&gt;
&lt;br /&gt;
=== Otto Schubert GmbH ===&lt;br /&gt;
Homepage: http://www.schubert-gehaeuse.de&lt;br /&gt;
&lt;br /&gt;
* Kein Online-Shop. Bestellungen nur per Telefon, Fax oder E-Mail &lt;br /&gt;
* Weissblechgehäuse, Gerätegehäuse, wetterfeste Gehäuse&lt;br /&gt;
* Drehkondensatoren&lt;br /&gt;
* Sonderanfertigungen&lt;br /&gt;
* ansässig in 90574 Roßtal&lt;br /&gt;
&lt;br /&gt;
=== Schramm-Software ===&lt;br /&gt;
Homepage: http://www.schramm-software.de/bausatz/&lt;br /&gt;
&lt;br /&gt;
* Online-Shop, bietet Elektronik-Bausätze mit Mikrocontrollern&lt;br /&gt;
* Bausätze als Lehrmaterial geeignet, da ausführliches Begleitheft mitgeliefert wird (Aufbauanleitung, Schaltung, Controllerprogramm, Experimente...)&lt;br /&gt;
* bisher nur ein relativ kleines Sortiment, soll ergänzt werden&lt;br /&gt;
* Versandkosten innerhalb Deutschlands 2,50 &amp;amp;#8364;, innerhalb der EU 3,50 &amp;amp;#8364;&lt;br /&gt;
&lt;br /&gt;
=== Schuricht ===&lt;br /&gt;
Homepage: http://www.schuricht.de&lt;br /&gt;
&lt;br /&gt;
* deutscher Ableger der Distrelec- (Elektronik) und Disdata-Gruppe (Computertechnik)&lt;br /&gt;
* Liefert auch an Privatkunden (getrennte AGBs für gewerbliche und Privatkunden, Lieferung an Privat per Nachnahme: Versandkosten ab 6,54€ plus 4,76€ Nachnahmegebühr).&lt;br /&gt;
**Online Bestellung mit &amp;quot;Privat&amp;quot; als Firmenangabe &lt;br /&gt;
* Papierkatalog über 2000 Seiten, durchgehend farbig, nur für Geschäftskunden erhältlich.&lt;br /&gt;
* Ziemlich teuer&lt;br /&gt;
&lt;br /&gt;
=== Schuro Elektronik GmbH ===&lt;br /&gt;
Homepage: http://www.schuro.de&lt;br /&gt;
&lt;br /&gt;
* Elektronische Bauelemente und Bauteile für den Audio- und Lautsprecherbau (Kondensatoren, Spulen u.dgl.)&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Versandkosten innerhalb Deutschlands gewichtsabhängig ab 5,75&amp;amp;#8364;&lt;br /&gt;
&lt;br /&gt;
=== Segor-electronics ===&lt;br /&gt;
Homepage: http://www.segor.de&lt;br /&gt;
&lt;br /&gt;
* Spezialist für Halbleiter, die ansonsten für nicht-gewerbliche Abnehmer nur schwer erhältlich sind (Preise dahingehend &amp;quot;angemessen&amp;quot;)&lt;br /&gt;
* auch Privatkunden gerne gesehen&lt;br /&gt;
* Ladengeschäft in Berlin&lt;br /&gt;
* kein Mindestbestellwert bei Versand innerhalb der EU&lt;br /&gt;
&lt;br /&gt;
=== semaf-electronics ===&lt;br /&gt;
Homepage: http://electronics.semaf.at&lt;br /&gt;
&lt;br /&gt;
* Spezialist für Breakout Boards wie z.B. Adafruit, Arduino, Atmel, Cubieboard,Raspberry Pi, Sparkfun&lt;br /&gt;
* aktive und passive Bauteile und Zubehör&lt;br /&gt;
* Ladengeschäft in 1090 Wien&lt;br /&gt;
&lt;br /&gt;
=== SE Spezial-Electronic AG ===&lt;br /&gt;
Homepage: http://www.spezial.de&lt;br /&gt;
&lt;br /&gt;
* Distributor&lt;br /&gt;
* Laut AGB auch Verkauf an Privat.&lt;br /&gt;
* Große Verpackungseinheiten/Mindestbestellmengen pro Bauteil&lt;br /&gt;
* Versandkosten pauschal 9,- €  (Deutschland) (Stand 08/2008)&lt;br /&gt;
&lt;br /&gt;
=== Small Control Shop ===&lt;br /&gt;
Homepage: http://www.small-control.de&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Bernd Walter Computer Technology&amp;quot;&lt;br /&gt;
* kleines Lieferprogramm aber ein paar interessante Produkte&lt;br /&gt;
&lt;br /&gt;
=== Simple Development Shop ===&lt;br /&gt;
Homepage: http://simpledevelopment.de/shop/&lt;br /&gt;
&lt;br /&gt;
* Entwicklungsboards&lt;br /&gt;
* Ausgesuchte Bauteile&lt;br /&gt;
* Teilweise spezielle Boards &lt;br /&gt;
* Ab 50€ Versandkostenfrei in Deutschland&lt;br /&gt;
&lt;br /&gt;
=== SMG Diffusion - F1GE ===&lt;br /&gt;
Homepage: http://www.smgdiffusion.com&lt;br /&gt;
( Seite nur französisch )&lt;br /&gt;
&lt;br /&gt;
* Videotechnik, &lt;br /&gt;
* 1,2 GHz / 2,4GHz Module&lt;br /&gt;
* Gebraucht-Messgeräte HP, Tek, Philips  u.a.&lt;br /&gt;
* GHz-Halbleiter&lt;br /&gt;
* Koax-Adapter&lt;br /&gt;
* Antennen&lt;br /&gt;
&lt;br /&gt;
=== SR-Systems ===&lt;br /&gt;
Homepage: http://www.sr-systems.de&lt;br /&gt;
&lt;br /&gt;
* Baugruppen für Digital-TV, Sende- und Empfangstechnik&lt;br /&gt;
* DVB-S, DVB-T&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Strixner&amp;amp;Holzinger ===&lt;br /&gt;
Homepage: http://www.sh-halbleiter.de&lt;br /&gt;
&lt;br /&gt;
* Ladengeschäft in München&lt;br /&gt;
* Versand &lt;br /&gt;
* riesiges Angebot an Halbleiter, auch schwer beschaffbare&lt;br /&gt;
* Online-Shop&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TAUTEC-ELECTRONICS ===&lt;br /&gt;
Homepage: http://www.tautec-electronics.de&lt;br /&gt;
&lt;br /&gt;
* Online Shop für aktive elektronische Bauelemente&lt;br /&gt;
* günstige Preise (Vorsicht, Preisangaben enthalten keine Mehrwertsteuer) aber Mindestbestellwert 100 Euro&lt;br /&gt;
* alle Artikel ab Lager lieferbar, daher kurze Wartezeiten&lt;br /&gt;
* weltweiter Versand&lt;br /&gt;
* zahlreiche Mengenrabatte&lt;br /&gt;
* viele Ersatzteile aus dem Audio-, Car-HiFi und TV-Bereich&lt;br /&gt;
&lt;br /&gt;
=== TecHome.de Online-Shop ===&lt;br /&gt;
Hompage: http://www.techome.de/index.html&lt;br /&gt;
&lt;br /&gt;
=== Tec-Shop (Wolfgang Rompel Elektronik) ===&lt;br /&gt;
Homepage: http://www.tec-shop.de&lt;br /&gt;
&lt;br /&gt;
* Kleines, aber ausgesuchtes Sortiment&lt;br /&gt;
* Interessantes Angebot an Sensoren&lt;br /&gt;
&lt;br /&gt;
=== Teske electronics ===&lt;br /&gt;
Homepage: http://www.teske-electronics.de&lt;br /&gt;
&lt;br /&gt;
* Noch relativ übersichtliches Produktsortiment (Dez. 2012) aber schon einige interessante Teile&lt;br /&gt;
* Bisher überwiegend SMD Bauteile&lt;br /&gt;
* Kein Mindestbestellwert&lt;br /&gt;
* Versandkosten ab 2,85€&lt;br /&gt;
* Lieferung nur innerhalb Deutschlands&lt;br /&gt;
* Wunschliste für neue Produkte&lt;br /&gt;
* Beschaffung von Bauteilen möglich, die nicht im Shop angeboten werden&lt;br /&gt;
* Zahlung per Vorkasse, PayPal, Nachnahme oder Rechnung (für Stammkunden) möglich.&lt;br /&gt;
&lt;br /&gt;
=== Thinkembedded.ch ===&lt;br /&gt;
Homepage: http://www.thinkembedded.ch&lt;br /&gt;
&lt;br /&gt;
* in der Schweiz (auch Abholung möglich), Versand CH ab SFr 12.- (bis 5kg)&lt;br /&gt;
* keine Mindestbestellmenge, Bezahlung: Barbezahlung, Rechnung, PayPal &lt;br /&gt;
* Demoboarde von div. Herstellern (Olimex, ST, ARM-Keil, ETT, Conitex)&lt;br /&gt;
* Demoboarde mit ARM (Cortex M)uC von ST, NXP, Energy Micro&lt;br /&gt;
* Demoboarde mit ARM Cortex A uC von Olimex&lt;br /&gt;
* Keil Debugger/Programmer Ulink ME/2/Pro&lt;br /&gt;
* MSP4300 Demoboard&lt;br /&gt;
* PIC Demoboarde und Programmer&lt;br /&gt;
* AVR Demoboarde und Programmer&lt;br /&gt;
* Messgeräte (BMC Messsysteme, Intronix LogicPort)&lt;br /&gt;
* Learning Kits&lt;br /&gt;
* Mehrsprachig (E, D, F), Preise in SFR / Euro&lt;br /&gt;
&lt;br /&gt;
=== TME (Transfer Multisort Elektronik) ===&lt;br /&gt;
Homepage: http://www.tme.eu/de&lt;br /&gt;
&lt;br /&gt;
*breites Sortiment&lt;br /&gt;
*parametrische Suche&lt;br /&gt;
*Verkauf über die deutsche Tochter (19 % statt 21 % polnische Umsatzsteuer)&lt;br /&gt;
&lt;br /&gt;
=== Trenkenchu &amp;amp; Stadler GbR ===&lt;br /&gt;
Homepage: http://www.ts-audio.de&lt;br /&gt;
&lt;br /&gt;
* die meisten Artikel sind deutlich teurer als der Marktpreis, es sind jedoch auch Schnäppchen dabei, z.B. HDMI-Kabel&lt;br /&gt;
&lt;br /&gt;
=== Trenz-electronic ===&lt;br /&gt;
Homepage: http://www.trenz-electronic.de&lt;br /&gt;
&lt;br /&gt;
* FPGA-Boards mit Xilinx-FPGAs (Xilinx, Digilent, ...) und Zubehör&lt;br /&gt;
* Weitere teils sehr spezielle Produkte, auch Eigen-Entwicklungen&lt;br /&gt;
* Liefert auch an Privatkunden&lt;br /&gt;
&lt;br /&gt;
=== TV-Ersatzteile ===&lt;br /&gt;
Homepage: http://www.tversatzteile.de&lt;br /&gt;
&lt;br /&gt;
* TV-, Audio-, Video-Ersatzteile, Aktive / Passive Bauteile&lt;br /&gt;
* Fernbedienungen Haushaltstechnik&lt;br /&gt;
&lt;br /&gt;
=== UKW-Berichte ===&lt;br /&gt;
Homepage: http://www.ukw-berichte.de&lt;br /&gt;
&lt;br /&gt;
* Antennen, Bauteile, Bausätze, Literatur für Amateurfunk&lt;br /&gt;
* ansässig in 91081 Baiersdorf&lt;br /&gt;
&lt;br /&gt;
=== Voelkner ===&lt;br /&gt;
Homepage: http://voelkner.de&lt;br /&gt;
* Großer Teil des Conrad-Programms, identische Nummern, identische Aufkleber auf der Ware, Preise weitgehend identisch oder nur ein paar Cent abweichend, bei bestimmten Artikelgruppen (z.B. Werkzeug) aber auch bis zu 25% billiger&lt;br /&gt;
* Versandkosten Deutschland: 4,95€; ab 25€ Warenwert und Sofortüberweisung.de versandkostenfrei / Versandkosten-Flatrate für 15€ pro Jahr&lt;br /&gt;
* Versandkosten EU: 9,95€&lt;br /&gt;
* Möglichkeit der Versandkostenflatrate (D): Einmalig 14,95€ / gültig für ein Jahr&lt;br /&gt;
* Legt jeder Bestellung gleich wieder einen Gutschein über 5€ bei MBW 25€ bei (Flat nur bei häufigen, kleinen Bestellungen sinnvoll); außerdem kommt etwa alle 2-3 Monate selbiger Gutschein + versandkostenfreie Lieferung per Mail, ebenfalls MBW 25€&lt;br /&gt;
* Verpackungsqualität wechselnd, mal brauchbar, mal eher Pollin-Niveau. Selbst kleine Bestellungen, die gefahrlos per Brief/Großbrief verschickt werden könnten werden in einem großen Paket versendet.&lt;br /&gt;
&lt;br /&gt;
=== VOTI Webshop ===&lt;br /&gt;
Homepage: http://www.voti.nl/shop/catalog.html&lt;br /&gt;
&lt;br /&gt;
* relativ kleines Lieferprogramm&lt;br /&gt;
* einige interessante Restposten (Surplus)&lt;br /&gt;
* Sitz in Amersfoort, Niederlande&lt;br /&gt;
&lt;br /&gt;
=== Walter elektronik ===&lt;br /&gt;
Homepage: http://www.walter-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Bauteile, Röhren&lt;br /&gt;
&lt;br /&gt;
=== Watterott electronic GmbH===&lt;br /&gt;
Homepage: http://www.watterott.com&lt;br /&gt;
&lt;br /&gt;
* Distributor für Adafruit, Arduino, BeagleBoard/PandaBoard, Embedded Artists, GHI, Olimex, Parallax, Pololu, Seeed Studio, Solarbotics, SparkFun... &lt;br /&gt;
* Entwicklungskits von Atmel, Cypress, Freescale, Microchip, NXP, STM, TI...&lt;br /&gt;
* Spezialbauteile von Davicom, FTDI, VLSI, WIZnet...&lt;br /&gt;
* Bungard Basismaterial + Chemie&lt;br /&gt;
* kein Mindestbestellwert&lt;br /&gt;
* Zahlung: Vorkasse, Sofortüberweisung, PayPal, Nachnahme, Kreditkarte (Visa/Mastercard), Rechnung (nur gewerbliche Kunden)&lt;br /&gt;
* Versandkosten Dtl. (DHL): &lt;br /&gt;
** bis  75 EUR Warenwert: 3,50 Euro&lt;br /&gt;
** ab   75 EUR Warenwert: versandkostenfrei&lt;br /&gt;
* Versandkosten EU (DHL): &lt;br /&gt;
** bis 150 EUR Warenwert: 10,00 Euro&lt;br /&gt;
** bis 250 EUR Warenwert:  8,90 Euro&lt;br /&gt;
** bis 500 EUR Warenwert:  5,95 Euro&lt;br /&gt;
** ab  500 EUR Warenwert:  versandkostenfrei&lt;br /&gt;
* Schneller, entgegenkommender Service&lt;br /&gt;
* in der &amp;quot;c&#039;t Hardware Hacks&amp;quot; 01/2013 ist ein Artikel über Stephan Watterott und seinen Online-Shop&lt;br /&gt;
&lt;br /&gt;
=== WilTec Wildanger Technik GmbH ===&lt;br /&gt;
Homepage: http://shop.wiltec.info&lt;br /&gt;
&lt;br /&gt;
* Aoyue Lötgeräte (Heißluft, Löten, Entlöten), Netzteile, Werkzeuge&lt;br /&gt;
* Aoyue Zubehör (Lötspitzen, Heißluftdüsen), Ersatzteile&lt;br /&gt;
* Andere, nicht Elektronik-Angebote, wie KFZ-Tuningteile&lt;br /&gt;
* Versand. Bei Voranmeldung auch Lagerverkauf.&lt;br /&gt;
&lt;br /&gt;
=== Wüstens frag-jan-zuerst ===&lt;br /&gt;
Homepage: http://www.die-wuestens.de/dindex.htm&lt;br /&gt;
&lt;br /&gt;
* Röhrentechnik&lt;br /&gt;
* Hochspannungs-Spezialteile&lt;br /&gt;
&lt;br /&gt;
=== WIMO ===&lt;br /&gt;
Homepage: http://www.wimo.de&lt;br /&gt;
&lt;br /&gt;
* Große Auswahl an Amateurfunktechnik&lt;br /&gt;
&lt;br /&gt;
=== Zech DG0VE ===&lt;br /&gt;
Homepage: http://www.dg0ve.de&lt;br /&gt;
&lt;br /&gt;
* Baugruppen für Amateurfunk&lt;br /&gt;
&lt;br /&gt;
=== Diverse ===&lt;br /&gt;
* http://www.chip-flip.com - Europäisches Bauelementesuchsystem, franchised Lieferantensuche, Datenblätter und viele nützliche Informationen&lt;br /&gt;
* http://www.ecomponents-store.com/ Elektronische Bauelemente kaufen - Hier finden Sie eine große Auswahl an elektronischen und elektromechanischen Bauelementen von über 40 Herstellern.&lt;br /&gt;
* http://www.findchips.com/ Suchmaschine für Lieferanten elektronischer Bauelemente&lt;br /&gt;
* http://www.franchised-distributors.eu/ - Finden Sie Vertragsdistributoren von über 800 Halbleiterherstellern für elektronische und elektromechanische Bauelemente.&lt;br /&gt;
* https://octopart.com/ Suchmaschine für elektronische Bauelemente&lt;br /&gt;
&lt;br /&gt;
==Handelsplätze==&lt;br /&gt;
&lt;br /&gt;
Shops auf den Handelsplätzen kommen und gehen. Man sollte daher nicht vergessen direkt auf den Handelsplätzen zu suchen. Ebenso kann man handeslsplatz-übergreifend auf&lt;br /&gt;
&lt;br /&gt;
http://de.pandacheck.com/&lt;br /&gt;
&lt;br /&gt;
suchen.&lt;br /&gt;
===Ebay-Shops===&lt;br /&gt;
&lt;br /&gt;
====Ego-China====&lt;br /&gt;
http://stores.ebay.de/Ego-China-Electronics   TFTs und LCDs &amp;lt;br /&amp;gt; Versand aus China (2-3 Wochen)&lt;br /&gt;
&lt;br /&gt;
====Sure-Electronics====&lt;br /&gt;
http://stores.ebay.de/Sure-Electronics   Highpower LEDs und Verstärker &amp;lt;br /&amp;gt;&lt;br /&gt;
Hat auch einen eigenen Shop: http://www.sureelectronics.net/ &amp;lt;br /&amp;gt;&lt;br /&gt;
Versand aus China&lt;br /&gt;
&lt;br /&gt;
====Ether-Deal====&lt;br /&gt;
http://stores.ebay.de/ether-deal   Unter sonstiges viele versch. Elektronik-teile &amp;lt;br /&amp;gt; Versand aus China&lt;br /&gt;
&lt;br /&gt;
====NooElec====&lt;br /&gt;
http://stores.ebay.de/NooElec USB-AVR Boards (mega32u2) und rgbled-matrizen &amp;lt;br /&amp;gt; Versand aus Kanada&lt;br /&gt;
&lt;br /&gt;
====Sine qua non surplus====&lt;br /&gt;
http://stores.ebay.de/Sinequanon-Surplus-Electronics Großbritannien&lt;br /&gt;
&lt;br /&gt;
=== Aliexpress ===&lt;br /&gt;
Homepage: http://www.aliexpress.com&lt;br /&gt;
&lt;br /&gt;
* Chinesischer Handelsplatz&lt;br /&gt;
* Günstige Arduinos, Adapterplatinen, Miniboards, etc.&lt;br /&gt;
* Vorsicht vor Fake-Transistoren und sehr günstigen Einzelbauteilen, die müssen nicht immer Original sein&lt;br /&gt;
* Zahlung: Per Kreditkarte, Absicherung über Aliexpress. Der Kaufpreis wird erst nach Bestätigung des Erhalts der Ware an den Lieferanten freigegeben&lt;br /&gt;
* Lieferzeit: Ca. 2-4 Wochen (kommt aus China oder Hongkong)&lt;br /&gt;
* Versandkosten: je nach Anbieter&lt;br /&gt;
* [[Zoll und Abgaben]] beachten (bis 150€ zollfrei, ab 22€ aber 19% Umsatzsteuer)&lt;br /&gt;
&lt;br /&gt;
== China-Versender ==&lt;br /&gt;
&lt;br /&gt;
China-Shops gibt es wie Sand am Meer. Zum Teil haben sie deutschen oder europäischen Lagern, d.h. man hat weniger Probleme mit dem [[Zoll]]. Shop-übergreifend kann man auf&lt;br /&gt;
&lt;br /&gt;
http://de.pandacheck.com/&lt;br /&gt;
&lt;br /&gt;
suchen.&lt;br /&gt;
&lt;br /&gt;
=== Bang Good ===&lt;br /&gt;
Homepage: http://www.banggood.com/&lt;br /&gt;
&lt;br /&gt;
* China Bling-Bling aller Art. Auch Lötzubehör, Modellbau, gelegentlich Bauteile, Messgeräte, Bausätze, etc.&lt;br /&gt;
&lt;br /&gt;
=== DealExtreme ===&lt;br /&gt;
Homepage: http://www.dx.com/&lt;br /&gt;
&lt;br /&gt;
* China Bling-Bling aller Art. Auch Lötzubehör, gelegentlich Bauteile, Messgeräte, Bausätze, etc.&lt;br /&gt;
* Nicht immer der preiswerteste.&lt;br /&gt;
&lt;br /&gt;
=== Hobbyking ===&lt;br /&gt;
Homepage: http://www.hobbyking.com/hobbyking/store/index.asp&lt;br /&gt;
&lt;br /&gt;
* Viel Modellbau&lt;br /&gt;
* Auch Robotik und Quadcopter&lt;br /&gt;
&lt;br /&gt;
=== Satistronics ===&lt;br /&gt;
Homepage: http://www.satistronics.com&lt;br /&gt;
&lt;br /&gt;
* typischer &amp;quot;China-Versender&amp;quot;, mit allen Vor- und Nachteilen&lt;br /&gt;
* Lieferzeit bei Standardversand sehr lange (etwa 1 Monat nach D), aber schnellere Lieferung gegen Aufpreis möglich&lt;br /&gt;
* tritt auch bei eBay in Erscheinung ([http://stores.ebay.de/satistronicsstore eBay-Shop]), die Preise dort sind in der Regel aber etwas höher als im Online-Shop&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Messgeräte ==&lt;br /&gt;
=== Neue Messgeräte ===&lt;br /&gt;
&lt;br /&gt;
Viele der oben genannten Elektronikversender verkaufen auch Messgeräte. Darüber hinaus gibt es diverse Versender, die sich hauptsächlich oder ausschließlich auf Messgeräte spezialisiert haben. Allerdings verkaufen viele davon nicht an Privat.&lt;br /&gt;
&lt;br /&gt;
==== CalPlus GmbH ====&lt;br /&gt;
Homepage: http://www.calplus.de &amp;lt;br /&amp;gt;&lt;br /&gt;
Shop: http://www.scopeshop.de&lt;br /&gt;
&lt;br /&gt;
==== Cosinus ComputerMesstechnik ====&lt;br /&gt;
Homepage: http://www.cosinus.de&lt;br /&gt;
&lt;br /&gt;
* Nicht an Privat&lt;br /&gt;
&lt;br /&gt;
==== dataTec ====&lt;br /&gt;
Homepage: http://www.datatec.de&lt;br /&gt;
&lt;br /&gt;
* Große Auswahl&lt;br /&gt;
* Bestellung von Privat auf Anfrage, Privatpersonen werden laut ABG per Vorkasse beliefert&lt;br /&gt;
* Studenten bekommen Rabatt, je nach dem, was bestellt wird&lt;br /&gt;
* Umständlicher Bestellvorgang, seitens DataTec teilweise auf dem Postweg -&amp;gt; Es dauert teil sehr lange bis die Ware ankommt&lt;br /&gt;
* Sehr freundlicher und kompetenter Service, per eMail als auch telefonisch&lt;br /&gt;
&lt;br /&gt;
==== Elektronik-Kontor Messtechnik GmbH ====&lt;br /&gt;
Homepage: http://www.ekomess.de&lt;br /&gt;
&lt;br /&gt;
==== Meilhaus Electronic GmbH ====&lt;br /&gt;
Homepage: http://www.meilhaus.de&lt;br /&gt;
&lt;br /&gt;
* Diverse Markenhersteller&lt;br /&gt;
* Eigenmarken&lt;br /&gt;
&lt;br /&gt;
==== PinSonne-Elektronik ====&lt;br /&gt;
Homepage: http://www.pinsonne-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* Onlineshop&lt;br /&gt;
* Sehr kleines Sortiment&lt;br /&gt;
* UNI-T, RIGOL und andere asiatische Firmen&lt;br /&gt;
&lt;br /&gt;
==== PK elektronik Poppe GmbH ====&lt;br /&gt;
Homepage: http://www.pk-elektronik.de&lt;br /&gt;
&lt;br /&gt;
* U.a. Fluke Distributor.&lt;br /&gt;
&lt;br /&gt;
====Präzitronic Hennig / Messgeräte Chemnitz====&lt;br /&gt;
Homepage: http://www.messgeraete-chemnitz.de&lt;br /&gt;
&lt;br /&gt;
* Verkauft explizit auch an Privat.&lt;br /&gt;
* Owon&lt;br /&gt;
* Selbst übersetzte deutsche Owon-Handbücher&lt;br /&gt;
* Fluke&lt;br /&gt;
* Extech&lt;br /&gt;
* Zusätzlich kleines Angebot an Gebrauchtgeräten&lt;br /&gt;
&lt;br /&gt;
==== SI Scientific Instruments GmbH ====&lt;br /&gt;
Homepage: http://www.si-scientific.de (Onlineshop) &amp;lt;br /&amp;gt;&lt;br /&gt;
Homepage: http://www.si-gmbh.de (komplettes Programm)&lt;br /&gt;
&lt;br /&gt;
* Onlineshop auf si-scientific.de&lt;br /&gt;
* Akzeptiert PayPal&lt;br /&gt;
 &lt;br /&gt;
==== TESTEC ====&lt;br /&gt;
Homepage: http://www.testec.info&lt;br /&gt;
&lt;br /&gt;
* Tastköpfe-Hersteller&lt;br /&gt;
* Hameg Vertriebspartner&lt;br /&gt;
* B+K Precision Generalimporteur&lt;br /&gt;
&lt;br /&gt;
==== Zeitech ====&lt;br /&gt;
Homepage: http://www.zeitech.de/shop/&lt;br /&gt;
&lt;br /&gt;
* Diverses (Rigol, Owon, etc.)&lt;br /&gt;
&lt;br /&gt;
=== Gebrauchte Messgeräte ===&lt;br /&gt;
&lt;br /&gt;
Dieser Abschnitt enthält Anbieter bei denen gebrauchte Messgeräte erhältlich sind.&lt;br /&gt;
&lt;br /&gt;
==== Astro Electronic ====&lt;br /&gt;
Homepage: http://www.astro-electronic.de&lt;br /&gt;
&lt;br /&gt;
==== HTB-Elektronik ====&lt;br /&gt;
Homepage: http://www.htb-elektronik.com&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
&lt;br /&gt;
==== IX Instrumex ====&lt;br /&gt;
Homepage: http://www.instrumex.de/index.cgi?User:LANGUAGE=de&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
&lt;br /&gt;
==== Christoph Lüders MessTechnik ====&lt;br /&gt;
Homepage: http://www.CLMT.de &amp;lt;br&amp;gt;&lt;br /&gt;
Online-Shop: http://www.shop-016.de/shop-CLMT.html &amp;lt;br&amp;gt;&lt;br /&gt;
eBay: http://myworld.ebay.de/c_h_r/&lt;br /&gt;
&lt;br /&gt;
* Hat 2010 die Restbestände von Förtig übernommen&lt;br /&gt;
&lt;br /&gt;
==== Rosenkranz Elektronik ====&lt;br /&gt;
Homepage: http://www.rosenkranz-elektronik.de&amp;lt;br&amp;gt;&lt;br /&gt;
eBay Shop: http://stores.ebay.de/Rosenkranz-Elektronik-GmbH-Shop&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
* Auch auf eBay zu finden&lt;br /&gt;
&lt;br /&gt;
==== Helmut-Singer-Elektronik ====&lt;br /&gt;
Homepage: http://www.helmut-singer.de&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
* Verkauf auch an Privat&lt;br /&gt;
* An den meisten Samstagen im Jahr auch Lagerverkauf, sonst Versand&lt;br /&gt;
&lt;br /&gt;
==== Sphere ====&lt;br /&gt;
Homepage: http://www.sphere.bc.ca&amp;lt;br&amp;gt;&lt;br /&gt;
Messgeräte und Ersatzteile: http://www.sphere.bc.ca/test/index.html&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Messgeräte&lt;br /&gt;
* Ersatzteile&lt;br /&gt;
** Besonders bekannt für Tektronix-Ersatzteile&lt;br /&gt;
&lt;br /&gt;
==== Tektronix TekSelect ====&lt;br /&gt;
Homepage: http://www.tek.com/Measurement/tekselect/&lt;br /&gt;
&lt;br /&gt;
* Tektronix verkauft selber gebrauchte und überarbeitete Tektronix-Messgeräte unter dem Label &#039;&#039;TekSelect&#039;&#039;.&lt;br /&gt;
* Original Tektronix-Garantie&lt;br /&gt;
* Der Bestellvorgang nervt, man muss Kontaktaufnahme durch einen &amp;quot;Representative&amp;quot; erbeten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Platinenhersteller]]&lt;br /&gt;
* [[Lokale Elektroniklieferanten]]&lt;br /&gt;
* [[Eisenwarenversender]]&lt;br /&gt;
* [[Zoll und Abgaben]]&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
&lt;br /&gt;
* http://www.xs4all.nl/~ganswijk/chipdir/ Suche nach integrierten Schaltkreisen&lt;br /&gt;
* http://www.alldatasheet.com                Datenblätter&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Lieferanten]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=88554</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=88554"/>
		<updated>2015-05-07T20:22:41Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Verifikation, Validierung, Code-Generator */ Links auf neuen C-Code tables.c / tables.h geändert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
Es geht hier um den Bau einer Wand- bzw. Tischuhr, bei welcher auf einer quadratischen Frontplatte die jeweils aktuelle Uhrzeit als Text durch Hinterleuchtung der entsprechenden Wörter angezeigt wird. Die Hinterleuchtung der Wörter erfolgt durch farbige RGB-LEDs (Farbeinstellung mittels Fernbedienung wählbar), welche durch einen mit der Uhrzeit synchronisierten Mikrocontroller angesteuert werden.&lt;br /&gt;
&lt;br /&gt;
Im Unterschied zu der bekannten QlockTwo Wortuhr, welche die Uhrzeit im 12 Stunden-Wiederholungsrhythmus in Fünf-Minuten-Schritten anzeigt, liegt dieser Wortuhr ein Konzept zu Grunde, welches eine minutengenaue Zeitanzeige für 24 Stunden ermöglicht. Um den unterschiedlichsten regionalen und persönlichen Gewohnheiten gerecht zu werden, verfügt diese minutengenaue 24 Stunden-Wortuhr über mehrere Betriebsarten, mit welchen sich über die allgemein üblichen Standard-Zeitanzeigen hinaus per Voreinstellung auch verschiedene, regional übliche Wortfolgen konfigurieren lassen (viertel nach ..., dreiviertel ..., viertel vor ... ,...). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_schwarz_Arial_orange.png|Schwarzes Acrylglas mit oranger Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_rot_Arial_weiss.png|Rotes Acrylglas mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Burlwood_Stencil_Allround_weiss.png|Burlwood (Wurzelholz) mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Edelstahl_Stencil_Allround_weiss.png|Edelstahl gebürstet mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Rost_Stencil_Allround_weiss.png|Rostiger Stahl mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
               +----------------------------------------------------------+&lt;br /&gt;
               |                                                          |&lt;br /&gt;
               1  2  3  4  ...                              18            |&lt;br /&gt;
               O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--+          |&lt;br /&gt;
                                                               |          |&lt;br /&gt;
               36                                       20  19 |          |&lt;br /&gt;
               O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--+          |&lt;br /&gt;
               |                                                          |&lt;br /&gt;
               |                                                          |&lt;br /&gt;
               O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--           |&lt;br /&gt;
              37 38 ....                                                  |&lt;br /&gt;
                                                                          |&lt;br /&gt;
                                  Status-LED                              |&lt;br /&gt;
  µC ----------------------------------O----------------------------------+&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32F401 oder STM32F411 Nucleo Board vorgesehen. Dieses kostet ca. 12 EUR und mit 512KB Flash und mindestens 96KB RAM genügend Reserven.&lt;br /&gt;
&lt;br /&gt;
== STM32F4xx Projekt ==&lt;br /&gt;
&lt;br /&gt;
Die Software ist sowohl auf dem STM32F401RE Nucleo Board als auch auf dem STM32F411RE Nucleo Board lauffähig.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
&lt;br /&gt;
Die Software wird ständig weiterentwickelt. Folgende Punkte sind bereits erledigt:&lt;br /&gt;
&lt;br /&gt;
* Lauffähig auf STM32F401 Nucleo und STM32F411 Nucleo&lt;br /&gt;
* Anbindung IR-Fernbedienung mittels [[IRMP]]&lt;br /&gt;
* Monitoring/Benutzeroberfläche mittels [[MCURSES]]&lt;br /&gt;
* Einstellen des Anzeigemodus (&amp;quot;Sprache&amp;quot;) und der Farbe per IR-Fernbedienung&lt;br /&gt;
* Anbindung von LED-Stripes des Typs WS2812&lt;br /&gt;
* Sanftes Überblenden der Uhrzeiten auf den LEDs&lt;br /&gt;
* Wählbare Animationen bei Uhzeitwechsel&lt;br /&gt;
* Automatische Helligkeitsregelung mittels LDR (optional)&lt;br /&gt;
* Anbindung einer externen DS3231-RTC&lt;br /&gt;
* Anbindung eines externen I2C-EEPROM&lt;br /&gt;
* Optionale Anbindung eines DCF77-Moduls&lt;br /&gt;
* Optionale Anbindung eines ESP8266-WLAN-Moduls&lt;br /&gt;
* Optionale Temperaturmessung und -Anzeige mit DS18xx-Sensor&lt;br /&gt;
* Nachtzeit, zu welcher sich die Uhr automatisch abschaltet&lt;br /&gt;
* Fernsteuerung per Android App&lt;br /&gt;
&lt;br /&gt;
=== Download ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;EM::Blocks-Projekt, Version 1.5.5 vom 23.03.2015:&#039;&#039;&#039; [http://www.mikrocontroller.net/svnbrowser/wordclock24h/?view=tar Tarball]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;SVN hier auf mikrocontroller.net:&#039;&#039;&#039; svn://mikrocontroller.net/wordclock24h/&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Repo-Browser&#039;&#039;&#039;: [http://www.mikrocontroller.net/svnbrowser/wordclock24h/ WordClock24h im SVN]&lt;br /&gt;
&lt;br /&gt;
Hex-Dateien, wenn man - ohne zu compilieren - direkt flashen will:&lt;br /&gt;
&lt;br /&gt;
Version 1.5.4 Nucleo401-Board: [[Datei:Wclock24-nucleo401.hex]]&lt;br /&gt;
&lt;br /&gt;
Version 1.5.4 Nucleo411-Board: [[Datei:Wclock24-nucleo411.hex]]&lt;br /&gt;
&lt;br /&gt;
Android App 1.5: [[Datei:WC24h.apk]] (&#039;&#039;&#039;NEU!&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Eine ältere Android-App kann nur noch die unteren 32 Helligkeitsstufen ansteuern. Setzt man die STM32-Software-Version 1.4. oder höher ein, ist ein Update der App auf 1.4 oder höher sinnvoll.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Wie man diese APK unter Android installiert, kann man hier nachlesen:&lt;br /&gt;
&lt;br /&gt;
http://www.pcwelt.de/ratgeber/Android-Smartphones-Apps-ausserhalb-des-Android-Market-installieren-1929591.html&lt;br /&gt;
&lt;br /&gt;
Am einfachsten erlaubt man die Installation von Apps &amp;quot;aus unbekannten Quellen&amp;quot; und klickt anschließend direkt auf dem Android-Gerät auf den Download-Link. Dann kann man das Programm direkt nach dem Download installieren.&lt;br /&gt;
&lt;br /&gt;
=== Letzte Änderungen ===&lt;br /&gt;
&lt;br /&gt;
Version 1.5.5:&lt;br /&gt;
&lt;br /&gt;
* Optimierungen im LED-Display-Code&lt;br /&gt;
* Diverse Anpassungen an STM32F103&lt;br /&gt;
&lt;br /&gt;
Version 1.5.4:&lt;br /&gt;
&lt;br /&gt;
* Automatische IR-Anlernroutine in den ersten 3 Sekunden ab Programmstart&lt;br /&gt;
* Kleiner Bugfix bei den möglichen Helligkeitsstufen (Dimmer)&lt;br /&gt;
&lt;br /&gt;
Version 1.5.2:&lt;br /&gt;
&lt;br /&gt;
* Anzeige der Firmware-Version des ESP8266-Moduls im MCURSES-Monitor&lt;br /&gt;
* Korrektur in den Worttabellen für die Wörter ACHT und VIER in der zehnten Reihe&lt;br /&gt;
&lt;br /&gt;
Version 1.5.1:&lt;br /&gt;
&lt;br /&gt;
* Manuelle Helligkeitsregelung per MCURSES-Monitor / IR-Fernbedienung / Android-App eingebaut&lt;br /&gt;
* Automatische Helligkeitsregelung per LDR nun über MCURSES-Monitor / IR-Fernbedienung / Android-App ein-/ausschaltbar&lt;br /&gt;
&lt;br /&gt;
Version 1.4.2:&lt;br /&gt;
&lt;br /&gt;
* Die geladenen aus dem EEPROM RGB-Werte wurden nach dem Boot nicht mehr sofort übernommen. Ist korrigiert.&lt;br /&gt;
&lt;br /&gt;
Version 1.4.1:&lt;br /&gt;
&lt;br /&gt;
* Initialisierung des ADC korrigiert&lt;br /&gt;
* Automatische Helligkeitsregelung dunkelt nicht mehr so stark ab.&lt;br /&gt;
&lt;br /&gt;
Version 1.4.0:&lt;br /&gt;
&lt;br /&gt;
* Automatische Helligkeitsregelung mittels LDR&lt;br /&gt;
* Helligkeitsstufen von 32 auf 64 erhöht&lt;br /&gt;
* LED-Testprogramm eingebaut (Taste &#039;T&#039; im MCURSES-Monitor)&lt;br /&gt;
* Anzeige des DS18xx-Typs im MCURSES-Monitor)&lt;br /&gt;
* Unterstützung für Status-LED &#039;&#039;&#039;(beachte geändertes LED-Anschluss-Schema!)&#039;&#039;&#039;&lt;br /&gt;
* Android App an 64 Helligkeitsstufen angepasst&lt;br /&gt;
&lt;br /&gt;
Version 1.3.1:&lt;br /&gt;
&lt;br /&gt;
* Sporaisches Hangup-Problem nach Auslesen der Temperatur behoben&lt;br /&gt;
* Fehler bei der Erkennung des Family-Codes für DS18xx beseitigt&lt;br /&gt;
* Optimierung des Zeitverhaltens beim Zugriff auf OneWire-Bus&lt;br /&gt;
* Optimierung des WS2812-Codes&lt;br /&gt;
&lt;br /&gt;
Version 1.3.0:&lt;br /&gt;
&lt;br /&gt;
* Unterstützung von DS18xx-Temperatursensoren&lt;br /&gt;
* Temperatur-Anzeige innerhalb +10°C und 39,5°C&lt;br /&gt;
* Korrektur Sommerzeitumstellung&lt;br /&gt;
* Keine Unterstützung mehr von STM32F4-Discovery&lt;br /&gt;
&lt;br /&gt;
Version 1.2.0:&lt;br /&gt;
&lt;br /&gt;
* IRMP-Konfigurationsfehler behoben&lt;br /&gt;
&lt;br /&gt;
Version 1.1.0:&lt;br /&gt;
&lt;br /&gt;
* Animationen hinzugefügt&lt;br /&gt;
* Neue Tabellen für Uhrzeit und Temperatur&lt;br /&gt;
&lt;br /&gt;
Version 1.0.0:&lt;br /&gt;
&lt;br /&gt;
* Test auf verschiedene Adressen des I2C-EEPROMs&lt;br /&gt;
* EEPROM-Speicherplatzverbrauch minimiert&lt;br /&gt;
* RTC DS3231-Routinen auf DS1307 verallgemeinert&lt;br /&gt;
* Network Listener (UDP) zum Fernsteuern der Uhr über WLAN&lt;br /&gt;
* Android App zum Fernsteuern der Uhr (Ein/Aus, Farben, Anzeigemodus)&lt;br /&gt;
&lt;br /&gt;
Version 0.9.1:&lt;br /&gt;
&lt;br /&gt;
* EEPROM-Hexdump im [[MCURSES]]-Monitor eingebaut&lt;br /&gt;
* Zusätzliche Waitstates beim Beschreiben des EEPROMs&lt;br /&gt;
&lt;br /&gt;
Version 0.9:&lt;br /&gt;
&lt;br /&gt;
* Zusätzlicher Anschluss von RST und CH_PD des ESP8266-Moduls&lt;br /&gt;
* Verbesserung der ESP8266-Konfiguration dank Hardware-Reset&lt;br /&gt;
* Nutzung des Stromsparmodus im ESP8266, wenn die Anzeige abgeschaltet wird&lt;br /&gt;
* Konfiguration der Zeitzone über MCURSES-Monitor&lt;br /&gt;
* Test und Überarbeitung der EEPROM und RTC-Funktionen&lt;br /&gt;
* Synchronisation der RTC-Zeit mit dem µC-Timer&lt;br /&gt;
* Speichern folgender Daten im EEPROM:&lt;br /&gt;
&lt;br /&gt;
     EEPROM-Version&lt;br /&gt;
     IRMP-Daten einer angelernten IR-Fernbedienung&lt;br /&gt;
     Aktuell eingestellte Farben und Anzeigemodus&lt;br /&gt;
     IP-Adresse des Time-Servers&lt;br /&gt;
     Zeitzone&lt;br /&gt;
&lt;br /&gt;
Version 0.8:&lt;br /&gt;
&lt;br /&gt;
* Neue IR-Fernbedienungs-Tasten POWER und OK&lt;br /&gt;
* Einbau einer konfigurierbaren &amp;quot;Nachtzeit&amp;quot;, in der sich die Uhr selbstständig abschaltet&lt;br /&gt;
* Konfiguration des Time-Servers über MCURSES-Monitor&lt;br /&gt;
* Speichern/Laden sämtlicher Konfigurations-Daten in externem EEPROM&lt;br /&gt;
* Initialisierung des ESP8266 verbessert (warten, bis nach PowerOn eine WLAN-Verbindung besteht)&lt;br /&gt;
* Aufteilung der Anzeige-Logik und des MCURSES-Monitors auf dsp.c und monitor.c&lt;br /&gt;
* Aufteilung der ESP8266-Routinen auf esp8266.c (low-level) und timeserver.c (high-level)&lt;br /&gt;
* Diverse Optimierungen - u.a. durch Einsatz von uint_fast8_t&lt;br /&gt;
* Diverse Bugfixes&lt;br /&gt;
&lt;br /&gt;
Version 0.7.1:&lt;br /&gt;
&lt;br /&gt;
* Portierung der Software auf STM32F411RE Nucleo Board&lt;br /&gt;
&lt;br /&gt;
Version 0.7:&lt;br /&gt;
&lt;br /&gt;
* Portierung der Software auf STM32F401RE Nucleo Board&lt;br /&gt;
* uart2.c generalisiert auf uart.c (verschiedene UARTs möglich)&lt;br /&gt;
* Bugfix im UART-Ringbuffer-Code (Interrupt-Sperre)&lt;br /&gt;
* Anzeige der Online-Devices (ESP8266, DCF77, EEPROM, RTC) im Terminal&lt;br /&gt;
* Verschiedene Optimierungen&lt;br /&gt;
&lt;br /&gt;
Version 0.6:&lt;br /&gt;
&lt;br /&gt;
* Konfiguration des WLAN-Moduls (SSID &amp;amp; Key) nun über Terminal statt fest im Code verdrahtet.&lt;br /&gt;
* Einstellung der Zeitzone möglich. Standard ist GMT+1, also mitteleuropäische Zeit.&lt;br /&gt;
* DCF77- und ESP8266-Modul-Aktivierung automatisch - keine Einstellung mehr im Code notwendig.&lt;br /&gt;
* I2C-Lib hinzugefügt (noch ungetestet und daher noch nicht verwendet).&lt;br /&gt;
* I2C-EEPROM-Modul hinzugefügt (noch ungetestet und daher noch nicht verwendet).&lt;br /&gt;
* I2C-RTC-Modul (DS3231) hinzugefügt (noch ungetestet und daher noch nicht verwendet).&lt;br /&gt;
&lt;br /&gt;
=== Software für Windows ===&lt;br /&gt;
&lt;br /&gt;
* EM::Blocks IDE, siehe http://www.emblocks.org/, &#039;&#039;&#039;nur notwendig, wenn man selber die Sources übersetzen möchte!&#039;&#039;&#039;&lt;br /&gt;
* ST-Link/V2 Software zum Flashen, siehe: http://www.st.com/web/catalog/tools/FM146/CL1984/SC724/SS1677/PF251168&lt;br /&gt;
* STM32 Virtual COM Port Driver: http://www.st.com/web/en/catalog/tools/PF257938&lt;br /&gt;
* PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) oder andere Terminal-Emulation&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
* STM32F401RE Nucleo und STM32F411RE Nucleo&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h-Nucleo-Oberseite.jpg|miniatur|Nucleo: Zusätzliche Drahtbrücken R35 + R37 + 8MHz Quarz]]&lt;br /&gt;
[[Datei:WC24h-Nucleo-Unterseite.jpg|miniatur|Nucleo: Zu entfernende Lötbrücken + anzulötende 22pf Kondensatoren]]&lt;br /&gt;
[[Datei:WC24h-Nucleo-Shield.jpg|miniatur|Prototyp-Shield für das Nucleo-Board mit TSOP, ESP8266 und 3,3V Spannungsregler, später noch Anschluss für DCF77EEPROM/RTC]]&lt;br /&gt;
&lt;br /&gt;
      Es kann sowohl das 401er als auch das 411er Nucleo-Board verwendet werden. Beide werden&lt;br /&gt;
      identisch genutzt.&lt;br /&gt;
&lt;br /&gt;
      Damit das Board später für den Einbau nur noch (incl. Shield) 2cm hoch ist, sollte&lt;br /&gt;
      man die überstehenden Enden der Steckerleisten auf der &#039;&#039;&#039;Unterseite&#039;&#039;&#039; mit einer&lt;br /&gt;
      Kneifzange kürzen. Die beiden Jumper auf der Unterseite (beim ST-Link-Device-Teil)&lt;br /&gt;
      können dabei auf die Oberseite gesteckt werden.&lt;br /&gt;
&lt;br /&gt;
      Es gibt zwei verschiedene Revisionen von den Nucleo-Boards:&lt;br /&gt;
&lt;br /&gt;
      - &amp;quot;MB1136 C01&amp;quot;: Der STM32F4x1 läuft nur mit dem ungenauen internen Oszillator&lt;br /&gt;
      - &amp;quot;MB1136 C02&amp;quot;: Der STM32F4x1 erhält seinen 8MHz Takt vom ST-Link-Devices&lt;br /&gt;
&lt;br /&gt;
      Damit auch das Board mit der Revision &amp;quot;MB1136 C01&amp;quot; zuverlässig im HSE-Modus mit&lt;br /&gt;
      84MHz läuft, sind folgende Hardware-Änderungen notwendig:&lt;br /&gt;
&lt;br /&gt;
      - Lötbrücken SB54 und SB55 entfernen (mit Lötkolben erhitzen und wegschnippen)&lt;br /&gt;
      - Lötbrücken SB16 und SB50 entfernen (dito)&lt;br /&gt;
      - R35 und R37 jeweils mit einem Stück Draht oder 0R-Widerstand bestücken&lt;br /&gt;
      - Quarz X3 (8 MHz) einlöten&lt;br /&gt;
      - C33 und C34 mit jeweils 22pF bestücken. Diese können auch normale THT-Bauteile sein,&lt;br /&gt;
        wenn man die Drähte vorher kürzt. Ich habe sie auf der Unterseite direkt an den Quarz-&lt;br /&gt;
        Anschlüssen angebracht, siehe Foto rechts. Es geht aber auch auf der Oberseite direkt&lt;br /&gt;
        an den dafür vorgesehenen Lötstellen - dann aber vorzugsweise mit 0603 SMD-Kondensatoren.&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;&#039;Man sollte auf jeden Fall erst die beiden Drahtbrücken R35 &amp;amp; R37 einlöten, bevor&#039;&#039;&#039;&lt;br /&gt;
      &#039;&#039;&#039;man den Quarz bestückt. Dann hat man wesentlich mehr Platz für den Lötkolben ;-)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
      Es emfiehlt sich jedoch, diese Änderungen auch mit dem Board der Revision &amp;quot;MB1136 C02&amp;quot;&lt;br /&gt;
      durchzuführen, da wir später für die endgültige Uhr den ST-Link-Teil der Platine absägen&lt;br /&gt;
      werden. Dafür ist extra eine Bruchstelle vorgesehen. Nur so ist das Board dann schmal&lt;br /&gt;
      genug, damit es hinter den 7,5cm schmalen Rand der Frontplatte passt.&lt;br /&gt;
&lt;br /&gt;
      Nicht wundern: Je nach Revision des Boards sind einige der oben genannten Lötbrücken erst&lt;br /&gt;
      gar nicht bestückt. Dann braucht da auch nichts entfernt zu werden. Das hier beschriebene&lt;br /&gt;
      stellt also den gewünschten Endzustand dar.&lt;br /&gt;
&lt;br /&gt;
      Diese Arbeit ist in ca. 10 Minuten erledigt. Besondere SMD-Lötkenntnisse benötigt man dafür nicht.&lt;br /&gt;
&lt;br /&gt;
* TSOP31238&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: TSOP-Pin1 an Nucleo-Board GND, TSOP-Pin2 an Nucleo-Board 5V, TSOP-Pin3 an Nucleo PC10&lt;br /&gt;
&lt;br /&gt;
* WS2812 LED-Streifen mit 288 LEDs, pro Zeile 18 LEDs. Zum Test reicht erstmal ein Streifen mit 18 LEDs&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: Stripe +5V an externe Stromversorgung +5V&lt;br /&gt;
                  Stripe DI an Nucleo PC6&lt;br /&gt;
                  Stripe GND an externe Stromversorgung GND und(!) an Nucleo GND&lt;br /&gt;
&lt;br /&gt;
* Optional: DS18xx als Temperatur-Sensor&lt;br /&gt;
&lt;br /&gt;
      Es werden unterstützt:&lt;br /&gt;
&lt;br /&gt;
                  - DS1820&lt;br /&gt;
                  - DS18S20&lt;br /&gt;
                  - DS1822&lt;br /&gt;
                  - DS18B20&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: DS18xx-GND (Pin 1) an Nucleo GND&lt;br /&gt;
                  DS18xx-DQ  (Pin 2) an Nucleo PD2 und über Pullup 4,7k an DS18xx-VDD&lt;br /&gt;
                  DS18xx-VDD (Pin 3) an Board-interne oder externe 3,3V&lt;br /&gt;
&lt;br /&gt;
* Optional: LDR zur Messung der Umgebungshelligkeit&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: &lt;br /&gt;
            AGND -----+&lt;br /&gt;
                      |&lt;br /&gt;
                      R = 1K&lt;br /&gt;
                      |&lt;br /&gt;
            PC4 ------+&lt;br /&gt;
                      |&lt;br /&gt;
                     LDR (Reichelt: &amp;quot;LDR 07&amp;quot;)&lt;br /&gt;
                      |&lt;br /&gt;
            3,3V -----+&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;&#039;Wird kein LDR benutzt, sollte PC4 per 10k-Pullup auf 3,3V gelegt werden&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Optional: DCF77 Modul&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: DCF77 GND an Nucleo GND&lt;br /&gt;
                  DCF77 V+  an Nucleo 3,3V&lt;br /&gt;
                  DCF77 Out an Nucleo PC11&lt;br /&gt;
&lt;br /&gt;
      Getestet wurde die Software mit dem Reichelt-DCF77-Modul, das aber lediglich ein&lt;br /&gt;
      befriedigendes Empfangsverhalten hat.&lt;br /&gt;
&lt;br /&gt;
      Wird ein DCF77-Modul benutzt, welches einen Open-Collector-Ausgang&lt;br /&gt;
      verwendet, muss an PC11 noch ein 100k Pullup (zu 3,3V) angeschlossen werden.&lt;br /&gt;
      &#039;&#039;&#039;Wird KEIN DCF-Modul verwendet, sollte PC11 per 100k Pullup auf 3,3V gelegt werden!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Optional: ESP8266 ESP-01: WLAN Modul&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h-ESP8266-ESP-01.png|miniatur|Anschlussbelegung ESP8266 ESP-01 - Bauteilseite!]]&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: ESP8266 GND an Nucleo GND&lt;br /&gt;
                  ESP8266 VCC   an &#039;&#039;&#039;externe&#039;&#039;&#039; 3,3V (Vorsicht: Modul zieht bis zu 200mA!)&lt;br /&gt;
                  ESP8266 CH_PD an Nucleo PA6 (&#039;&#039;&#039;NEU AB VERSION 0.9!&#039;&#039;&#039;)&lt;br /&gt;
                  ESP8266 RST   an Nucleo PA7 (&#039;&#039;&#039;NEU AB VERSION 0.9!&#039;&#039;&#039;)&lt;br /&gt;
                  ESP8266 TXD   an Nucleo USART6 RX (PA12)&lt;br /&gt;
                  ESP8266 RXD   an Nucleo USART6 TX (PA11)&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;&#039;Wird KEIN ESP8266-Modul verwendet, ist nichts weiter zu beachten, da die Erkennung automatisch erfolgt.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* I2C-Modul mit DS3231 als RTC und EEPROM&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h-DS3231-EEPROM.png|miniatur|DS3231 RTC + EEPROM]]&lt;br /&gt;
      Dieses Modul (siehe auch Foto rechts) findet man bei eBay oder Amazon ab ca. 2 EUR, wenn man als&lt;br /&gt;
      Suchbegriff &amp;quot;DS3231 EEPROM&amp;quot; eingibt.&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: I2C GND   an Nucleo GND&lt;br /&gt;
                  I2C VCC   an Board-interne oder externe 3,3V&lt;br /&gt;
                  I2C SCL   an Nucleo PA8&lt;br /&gt;
                  I2C SDA   an Nucleo PC9&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;&#039;NEU: AB Version 1.0 werden auch RTC/EEPROM-Module mit DS1307 korrekt erkannt.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
      Da die Module aus China teilweise auch ohne bestückte Batterien gesendet werden, sollte man sich&lt;br /&gt;
      genau überlegen, ob man die Batterie CR2032 oder den Akku LiR2032 einbaut.&lt;br /&gt;
      &lt;br /&gt;
      -----------------------------------&lt;br /&gt;
      (Edit jar) LiR hier nachkaufen ist aber viel teurer als gleich welche mit LiR zu bestellen&lt;br /&gt;
      LiR Einzelpreis ab 3€ + Versand, da war es billiger neue Module zu kaufen bei einem Händler &lt;br /&gt;
      der LiR bestückt mitliefert 1,74€. Ob nun die CR oder LiR langlebiger ist kann ich nicht abschätzen.&lt;br /&gt;
      -----------------------------------&lt;br /&gt;
&lt;br /&gt;
      Sind sowohl die Diode 1N4148 als auch der Widerstand neben dem RTC-IC bestückt, dann kann man&lt;br /&gt;
      auch den Akku (relativ teuren) LiR2032 einsetzen. In diesem Fall muss man das Modul aber mit&lt;br /&gt;
      +5V statt 3,3V betreiben, damit überhaupt geladen wird.&lt;br /&gt;
&lt;br /&gt;
      Möchte man das Modul mit einer CR2032 betreiben, sollte man sicherheitshalber die Diode&lt;br /&gt;
      oder den Widerstand (neben der Diode) auf dem Modul entfernen (falls vorhanden, siehe Bild),&lt;br /&gt;
      damit keine Ladung der Batterie passiert. Das ist zwar eigentlich erst ab einer Betriebsspannung&lt;br /&gt;
      von ca. 3,7V möglich, aber sicher ist sicher. Im Normalfall reicht auch eine CR2032 für 5-10 Jahre.&lt;br /&gt;
&lt;br /&gt;
Es ist wenig ratsam, ein DCF77- und das ESP8266-Modul gleichzeitig einzusetzen, da das ESP8266-WLAN-Modul den DCF77-Empfänger stören kann. Im Zweifel sollte man sich für eine der beiden Möglichkeiten entscheiden.&lt;br /&gt;
&lt;br /&gt;
=== Anschlusstabelle ===&lt;br /&gt;
&lt;br /&gt;
{| {{Tabelle}}&lt;br /&gt;
|+ &#039;&#039;&#039;Anschlüsse&#039;&#039;&#039;&lt;br /&gt;
|-  style=&amp;quot;background-color:#eeeeee&amp;quot;&lt;br /&gt;
! Device || STM32F4x1 Nucleo&lt;br /&gt;
|-&lt;br /&gt;
| TSOP38238 (IRMP)        || GPIO:   PC10 &lt;br /&gt;
|- &lt;br /&gt;
| DS18xx                  || GPIO:   PD2&lt;br /&gt;
|- &lt;br /&gt;
| DCF77                   || GPIO:   PC11&lt;br /&gt;
|- &lt;br /&gt;
| LDR                     || GPIO:   PC4&lt;br /&gt;
|- &lt;br /&gt;
| MCURSES terminal (USB)  || USART2: TX=PA2  RX=PA3&lt;br /&gt;
|- &lt;br /&gt;
| ESP8266                 || USART6: TX=PA11 RX=PA12&lt;br /&gt;
|- &lt;br /&gt;
| ESP8266                 || GPIO:   RST=PA7 CH_PD=PA6&lt;br /&gt;
|- &lt;br /&gt;
| I2C DS3231 &amp;amp; EEPROM     || I2C3:   SCL=PA8 SDA=PC9&lt;br /&gt;
|- &lt;br /&gt;
| WS2812                  || DMA1:   PC6             &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
&lt;br /&gt;
Dieses Kapitel beschreibt den Download der Software auf das verwendete Board und die erstmalige Prüfung und Konfiguration.&lt;br /&gt;
&lt;br /&gt;
Geflasht wird mit dem ST-Link-Programm, siehe oben.&lt;br /&gt;
&lt;br /&gt;
Zur Überprüfung sämtlicher Funktionen und zur Konfiguration dienst der [[MCURSES]]-Monitor. Dazu benötigt man ein Terminal-Emulationsprogramm (wie zum Beispiel PuTTY) und ein Mini-USB-Kabel für das Nucleo-Board.&lt;br /&gt;
&lt;br /&gt;
Laut http://www.mikrocontroller.net/topic/356203#3979181 sollte man dabei die &amp;quot;blauen&amp;quot; USB3.0-Buchsen möglichst meiden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ablauf für STM32F401RE und STM32F411RE Nucleo:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nucleo-Board und PC mit Mini-USB-Kabel verbinden (zum Flashen, Debuggen und als COM-Schnittstelle)&lt;br /&gt;
* Wenn man die EM::Blocks-IDE einsetzt: Projekt auf &amp;quot;Nucleo401-Release&amp;quot; bzw. &amp;quot;Nucleo411-Release&amp;quot; einstellen, dann compilieren&lt;br /&gt;
* wclock24-nucleo401.hex bzw. wclock24-nucleo411.hex (aus dem Ordner wclock24h\bin\Release oder direkt hier herunterladen) flashen&lt;br /&gt;
* PuTTY starten&lt;br /&gt;
* PuTTY einstellen: Auswahl &amp;quot;Serial&amp;quot;, Serial Line: COM11 (kann abweichen, s.u.), Speed: 115200&lt;br /&gt;
* Einen Session-Namen eingeben, z.B. &amp;quot;Nucleo&amp;quot;&lt;br /&gt;
* Auf SAVE klicken, dann kann man die Session später wieder auswählen&lt;br /&gt;
* Open anklicken&lt;br /&gt;
* RESET-Button am Nucleo-Board drücken&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Wichtig für Nucleo Board:&#039;&#039;&#039;: Die COM-Schnittstelle ist immer aktiv, egal, ob das Programm gerade läuft oder nicht. Wird PuTTY erst nach dem Programmstart gestartet, sieht man im Terminal nur die Änderungen, also im allgemeinen nur die Uhrzeit. Mit der ENTER-Taste sollte man dann einen kompletten Bildschirm-Refresh erzwingen.&lt;br /&gt;
&lt;br /&gt;
Sollte man Probleme mit dem Finden der richtigen COM-Schnittstelle haben, hilft der Geräte-Manager aus der Systemsteuerung weiter.&lt;br /&gt;
&lt;br /&gt;
=== [[MCURSES]]-Monitor ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wclock24-in-putty.png|miniatur|WordClock24h in PuTTY]]&lt;br /&gt;
&lt;br /&gt;
Der Monitor dient zur Überprüfung sämtlicher Funktionen und der Konfiguration des WLAN-Moduls.&lt;br /&gt;
&lt;br /&gt;
Dafür ist es sinnvoll, noch den Zeichensatz auf ISO8858-1 umzustellen. das geht folgendermaßen:&lt;br /&gt;
&lt;br /&gt;
  Change Settings -&amp;gt; Window -&amp;gt; Translation -&amp;gt; ISO-8859-1:1998 (Latin-1, West Europe)&lt;br /&gt;
  Anschließend zurück über &amp;quot;Session&amp;quot; oben links und: &amp;quot;Save&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dann klappts auch mit den Sonderzeichen.&lt;br /&gt;
&lt;br /&gt;
Möchte man lieber schwarz auf weiß statt weiß auf schwarz, kann man das folgendermaßen umstellen:&lt;br /&gt;
&lt;br /&gt;
   Change Settings -&amp;gt; Window -&amp;gt; Colours:&lt;br /&gt;
&lt;br /&gt;
      Default Foreground: 2 2 2&lt;br /&gt;
      Default Bold Foreground: 0 0 0&lt;br /&gt;
      Default Background: 245 245 245&lt;br /&gt;
      Default Bold Background: 255 255 255&lt;br /&gt;
      Cursor Text: 0 0 0&lt;br /&gt;
      Cursor Color: 255 0 0&lt;br /&gt;
      (Rest kann man so lassen)&lt;br /&gt;
&lt;br /&gt;
Anschließend zurück über &amp;quot;Session&amp;quot; oben links und: &amp;quot;Save&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dann sollte das Ergebnis so aussehen wie rechts im Bild.&lt;br /&gt;
&lt;br /&gt;
{| {{Tabelle}}&lt;br /&gt;
|+ &#039;&#039;&#039;Tasten im MCURSES-Monitor&#039;&#039;&#039;&lt;br /&gt;
|-  style=&amp;quot;background-color:#eeeeee&amp;quot;&lt;br /&gt;
! Taste || Funktion&lt;br /&gt;
|-&lt;br /&gt;
| d/D   ||  Anzeigemodus +/-&lt;br /&gt;
|- &lt;br /&gt;
| a/A   ||  Animation +/-&lt;br /&gt;
|- &lt;br /&gt;
| h/H   ||  Stunden +/-&lt;br /&gt;
|- &lt;br /&gt;
| m/M   ||  Minuten +/-&lt;br /&gt;
|- &lt;br /&gt;
| r/R   ||  Helligkeit Rot +/-&lt;br /&gt;
|- &lt;br /&gt;
| g/G   ||  Helligkeit Grün +/-&lt;br /&gt;
|- &lt;br /&gt;
| b/B   ||  Helligkeit Blau +/-&lt;br /&gt;
|- &lt;br /&gt;
| w/W   ||  Grundhelligkeit +/- (&#039;&#039;&#039;NEU!&#039;&#039;&#039;)&lt;br /&gt;
|- &lt;br /&gt;
| q     ||  Automatische Helligkeitsregelung ein/aus (&#039;&#039;&#039;NEU!&#039;&#039;&#039;)&lt;br /&gt;
|- &lt;br /&gt;
| n     ||  Zeit von einem Time-Server holen&lt;br /&gt;
|- &lt;br /&gt;
| t     ||  Temperatur-Anzeige für 5 Sekunden (&#039;&#039;&#039;NEU!&#039;&#039;&#039;)&lt;br /&gt;
|- &lt;br /&gt;
| T     ||  LED-Testprogramm (&#039;&#039;&#039;NEU!&#039;&#039;&#039;)&lt;br /&gt;
|- &lt;br /&gt;
| i     ||  IR-Anlernroutine&lt;br /&gt;
|- &lt;br /&gt;
| c     ||  Konfiguration (WLAN, Timeserver und LDR)&lt;br /&gt;
|- &lt;br /&gt;
| o     ||  Okay, Save. Damit werden die Einstellungen im EEPROM gespeichert.&lt;br /&gt;
|- &lt;br /&gt;
| e     ||  EEPROM-Hexdump zur Kontrolle des Inhalts&lt;br /&gt;
|- &lt;br /&gt;
| p     ||  Power On/Off. Hiermit kann man die Anzeige ein- und ausschalten.&lt;br /&gt;
|- &lt;br /&gt;
| l     ||  Logout. Die Ausgabe über das Terminal wird eingestellt, bis zur nächsten ENTER-Taste&lt;br /&gt;
|- &lt;br /&gt;
| ENTER || Login. Der komplette Bildschirm-Inhalt wird dabei neu geschrieben&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Uhrzeit wird jede Sekunde in Real Time hochgezählt. Desweiteren erscheinen Infos über empfangene Uhrzeiten per RTC, DCF77 und ESP8266. Ebenso lassen sich die Farben der LEDs und der Anzeigemodus einstellen. Außerdem unterstützt der [[MCURSES]]-Monitor beim Anlernen einer IR-Fernbedienung.&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration des WLAN-Moduls ===&lt;br /&gt;
&lt;br /&gt;
==== Access-Point ====&lt;br /&gt;
&lt;br /&gt;
2 Sekunden nach dem Start wird von der STM32-Software getestet, ob ein ESP8266-WLAN-Modul angeschlossen ist. Wird das Modul gefunden, erscheint im [[MCURSES]]-Monitor die Meldung &#039;&#039;&#039;&amp;quot;ESP8266 up&amp;quot;&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
25 Sekunden nach dem Start wird davon ausgegangen, dass das ESP8266-WLAN-Modul mittlerweile eine Verbindung zu einem Access-Point (&amp;quot;AP&amp;quot;) hat. Wenn dies der Fall ist, wird im [[MCURSES]]-Monitor die Meldung &#039;&#039;&#039;&amp;quot;ESP8266 online&amp;quot;&#039;&#039;&#039; ausgegeben.&lt;br /&gt;
&lt;br /&gt;
Sobald die Up-Meldung ausgegeben wurde, kann man die Access-Point-Einstellungen für das (optionale) WLAN-Modul folgendermaßen konfigurieren:&lt;br /&gt;
&lt;br /&gt;
* Taste &#039;c&#039; (klein!) drücken&lt;br /&gt;
&lt;br /&gt;
Nach Eingabe von &amp;quot;1&amp;quot; für &amp;quot;Configure Network Module ESP8266&amp;quot; erscheint dann folgenes Menü:&lt;br /&gt;
&lt;br /&gt;
  1. Configure access to AP&lt;br /&gt;
  2. Configure time server&lt;br /&gt;
  3. Configure time zone&lt;br /&gt;
  0. Exit&lt;br /&gt;
&lt;br /&gt;
* Taste 1 drücken&lt;br /&gt;
* SSID eingeben (oder durch leere Eingabe per ENTER abbrechen)&lt;br /&gt;
* Key eingeben (oder durch leere Eingabe per ENTER abbrechen)&lt;br /&gt;
&lt;br /&gt;
Es wird jetzt für eine gewisse Zeit versucht, eine Verbindung mit dem AP aufzunehmen. fehlerhaft. Hat das Modul nach ca. 30 Sekunden immer noch keine stabile Verbindung, sollte man das Modul einmal komplett vom Strom trennen. Die Einstellungen sind aber im ESP8266-Modul gespeichert und sollten nach dem Wiedereinschalten der Spannung automatisch funktionieren. &#039;&#039;&#039;Eine erneute Konfiguration ist also in der Regel nicht mehr erforderlich.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Timeserver ====&lt;br /&gt;
&lt;br /&gt;
Den Timeserver kann man nun auch konfigurieren:&lt;br /&gt;
&lt;br /&gt;
* Taste &#039;c&#039; (klein!), danach &#039;1&#039; drücken&lt;br /&gt;
&lt;br /&gt;
Es erscheint dann folgendes Menü:&lt;br /&gt;
&lt;br /&gt;
  1. Configure access to AP&lt;br /&gt;
  2. Configure time server&lt;br /&gt;
  3. Configure time zone&lt;br /&gt;
  0. Exit&lt;br /&gt;
&lt;br /&gt;
* Taste 2 drücken&lt;br /&gt;
* IP-Adress des neuen Timeservers eingeben (leere Eingabe bricht ab)&lt;br /&gt;
&lt;br /&gt;
Der Time-Server muss ein RFC 868 konformer Time-Server (nicht NTP-Server!) sein. Voreingestellt ist ntp3.ptb.de (192.53.103.103). Da dieser Server oft ausgelastet ist, kann man auch auf time.nist.gov (216.229.0.179) oder auch uclock.de (88.198.64.6) ausweichen. Als Zeitzone ist standardmäßig GMT+1 gesetzt.&lt;br /&gt;
&lt;br /&gt;
Eine Liste von Time-Servern, welche RFC 868 genügen, findet man u.a. hier: http://tf.nist.gov/tf-cgi/servers.cgi&lt;br /&gt;
&lt;br /&gt;
Die aktuelle Uhrzeit wird einmal pro Stunde vom Time-Server geholt, nämlich immer um xx:10:17 Uhr. Im MCURSES-Monitor kann man aber auch jederzeit die Taste &#039;n&#039; drücken, um ad hoc die Zeit zu holen. Das funktioniert auch mit einer angelernten IR-Fernbedienung.&lt;br /&gt;
&lt;br /&gt;
==== Zeitzone ====&lt;br /&gt;
&lt;br /&gt;
Die Einstellung der Zeitzone geht folgendermaßen:&lt;br /&gt;
&lt;br /&gt;
* Taste &#039;c&#039; (klein!) gefolgt von &#039;1&#039; drücken&lt;br /&gt;
&lt;br /&gt;
Es erscheint dann wieder das bekannte Menü:&lt;br /&gt;
&lt;br /&gt;
  1. Configure access to AP&lt;br /&gt;
  2. Configure time server&lt;br /&gt;
  3. Configure time zone&lt;br /&gt;
  0. Exit&lt;br /&gt;
&lt;br /&gt;
* Taste 3 drücken&lt;br /&gt;
* Zeitzone eingeben, z.B. GMT&#039;&#039;&#039;+1&#039;&#039;&#039; für mitteleuropäische Zeit.&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration des LDR (Umgebungslicht-Messer) ===&lt;br /&gt;
&lt;br /&gt;
Die automatische Helligkeitsregelung muss explizit konfiguriert werden.&lt;br /&gt;
&lt;br /&gt;
* Im MCURSES-Monitor Taste &#039;c&#039; (klein!) drücken&lt;br /&gt;
&lt;br /&gt;
Es erscheint dann ein Menü:&lt;br /&gt;
&lt;br /&gt;
  1. Configure Network Module ESP8266&lt;br /&gt;
  2. Configure LDR&lt;br /&gt;
  0. Exit&lt;br /&gt;
&lt;br /&gt;
* Taste 2 drücken&lt;br /&gt;
&lt;br /&gt;
Dann kann man den LDR ein- oder ausschalten:&lt;br /&gt;
&lt;br /&gt;
  Current configuration: LDR connected&lt;br /&gt;
&lt;br /&gt;
  1. LDR connected&lt;br /&gt;
  2. LDR not connected&lt;br /&gt;
  0. Exit&lt;br /&gt;
&lt;br /&gt;
Mit &#039;1&#039; wird der LDR aktiviert, mit 2 wird er deaktiviert. Die Einstellung wird im EEPROM gespeichert.&lt;br /&gt;
&lt;br /&gt;
Geplant ist hier später noch eine Kalibrierung, d.h. Anpassung an die Gegebenheiten der Umgebung.&lt;br /&gt;
&lt;br /&gt;
=== IR-Fernbedienung ===&lt;br /&gt;
&lt;br /&gt;
In den ersten 3 Sekunden leuchtet die Status-LED mit der Farbe weiß, um zu signalisieren, dass nun eine IR-Fernbedienung angelernt werden kann. Wird währenddessen irgendein gültiger IR-Code empfangen, wechselt  die Status-LED für eine Sekunde auf rot (FB-Knopf loslassen!) und es wird in die Anlernroutine gesprungen. Wird kein IR-Signal empfangen, startet das Programm wie gewohnt.&lt;br /&gt;
&lt;br /&gt;
Die Anlernroutine kann man auch mit dem blauen User-Button auf dem Nucleo-Board aktivieren. Desweiteren ist dies auch mit der Taste &#039;i&#039; möglich, wenn man den MCURSES-Monitor nutzt. Dort wird man dann aufgefordert, folgende FB-Tasten zu drücken:&lt;br /&gt;
&lt;br /&gt;
{| {{Tabelle}}&lt;br /&gt;
|+ &#039;&#039;&#039;Tasten im MCURSES-Monitor&#039;&#039;&#039;&lt;br /&gt;
|-  style=&amp;quot;background-color:#eeeeee&amp;quot;&lt;br /&gt;
! Taste || Funktion || LED || Buchstabe&lt;br /&gt;
|-&lt;br /&gt;
| Power || Anzeige ein/aus                           || LED1  || style=&amp;quot;text-align:center&amp;quot;| E&lt;br /&gt;
|- &lt;br /&gt;
| OK    || Speichern der Einstellungen               || LED2  || style=&amp;quot;text-align:center&amp;quot;| S&lt;br /&gt;
|- &lt;br /&gt;
| MODE- || Anzeigemodus erniedrigen                  || LED3  || style=&amp;quot;text-align:center&amp;quot;| A&lt;br /&gt;
|- &lt;br /&gt;
| MODE+ || Anzeigemodus erhöhen                      || LED4  || style=&amp;quot;text-align:center&amp;quot;| I&lt;br /&gt;
|- &lt;br /&gt;
| ANIM- || Animation erniedrigen                     || LED5  || style=&amp;quot;text-align:center&amp;quot;| S&lt;br /&gt;
|- &lt;br /&gt;
| ANIM+ || Animation erhöhen                         || LED6  || style=&amp;quot;text-align:center&amp;quot;| T&lt;br /&gt;
|- &lt;br /&gt;
| HOUR- || Stunde erniedrigen                        || LED7  || style=&amp;quot;text-align:center&amp;quot;| O&lt;br /&gt;
|- &lt;br /&gt;
| HOUR+ || Stunde erhöhen                            || LED8  || style=&amp;quot;text-align:center&amp;quot;| V&lt;br /&gt;
|- &lt;br /&gt;
| MIN-  || Minute erniedrigen                        || LED9  || style=&amp;quot;text-align:center&amp;quot;| I&lt;br /&gt;
|- &lt;br /&gt;
| MIN+  || Minute erhöhen                            || LED10 || style=&amp;quot;text-align:center&amp;quot;| E&lt;br /&gt;
|- &lt;br /&gt;
| RED-  || Helligkeit der Farbe Rot erniedrigen      || LED11 || style=&amp;quot;text-align:center&amp;quot;| R&lt;br /&gt;
|- &lt;br /&gt;
| RED+  || Helligkeit der Farbe Rot erhöhen          || LED12 || style=&amp;quot;text-align:center&amp;quot;| T&lt;br /&gt;
|- &lt;br /&gt;
| GREEN- || Helligkeit der Farbe Grün erniedrigen    || LED13 || style=&amp;quot;text-align:center&amp;quot;| E&lt;br /&gt;
|- &lt;br /&gt;
| GREEN+ || Helligkeit der Farbe Grün erhöhen        || LED14 || style=&amp;quot;text-align:center&amp;quot;| L&lt;br /&gt;
|- &lt;br /&gt;
| BLUE-  || Helligkeit der Farbe Blau erniedrigen    || LED15 || style=&amp;quot;text-align:center&amp;quot;| E&lt;br /&gt;
|- &lt;br /&gt;
| BLUE+  || Helligkeit der Farbe Blau erhöhen        || LED16 || style=&amp;quot;text-align:center&amp;quot;| I&lt;br /&gt;
|- &lt;br /&gt;
| BRIGHT-  || Grundhelligkeit erniedrigen            || LED17 || style=&amp;quot;text-align:center&amp;quot;| N&lt;br /&gt;
|- &lt;br /&gt;
| BRIGHT+  || Grundhelligkeit erhöhen                || LED18 || style=&amp;quot;text-align:center&amp;quot;| S&lt;br /&gt;
|- &lt;br /&gt;
| AUTO+  || Automatische Helligkeitsregelung ein/aus || LED19 || style=&amp;quot;text-align:center&amp;quot;| D (2. Zeile)&lt;br /&gt;
|- &lt;br /&gt;
| TEMP   || Anzeige der Temperatur für 5 Sekunden    || LED20 || style=&amp;quot;text-align:center&amp;quot;| R (2. Zeile)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Dabei leuchtet die oben angegebene LED hinter dem jeweiligen Buchstaben auf dem Display in der obersten Zeile (&#039;&#039;&#039;ES#IST#VIERTELEINS&#039;&#039;&#039;), damit der Anlernvorgang auch ohne [[MCURSES]]-Monitor vorgenommen werden kann. Sind die FB-Tasten angelernt, kann man die Uhrzeit, den Anzeigemodus und auch die Farben mittels IR-Fernbedienung einstellen.&lt;br /&gt;
&lt;br /&gt;
Es sind nur die gebräuchlichsten IR-Protokolle aktiviert, nämlich:&lt;br /&gt;
&lt;br /&gt;
* SIRCS (Sony)&lt;br /&gt;
* NEC (Viele Hersteller, sehr verbreitet)&lt;br /&gt;
* SAMSUNG&lt;br /&gt;
* MATSUSHITA&lt;br /&gt;
* KASEIKYO&lt;br /&gt;
&lt;br /&gt;
[[IRMP]] &amp;quot;versteht&amp;quot; jedoch bis zu 40 Protokolle. Braucht man weitere - wie RC5 oder RC6 - kann man sie in irmp/irmp-config.h freischalten. Bei Problemen empfiehlt sich die Lektüre des [[IRMP]]-Artikels.&lt;br /&gt;
&lt;br /&gt;
=== Android App ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-Android.png|miniatur|WC24h Android App]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Für die STM32-Software-Version 1.5.0 muss die Android-App mindestens die Version 1.4 oder höher haben!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Ist ein ESP8266-Modul angeschlossen und korrekt konfiguriert, kann die Uhr ab Software-Version 1.0 per Android App ferngesteuert werden.&lt;br /&gt;
&lt;br /&gt;
Momentan können folgende Einstellungen vorgenommen werden:&lt;br /&gt;
&lt;br /&gt;
* Ein-/Ausschalten der Uhr&lt;br /&gt;
* Einstellen der Farben&lt;br /&gt;
* Manuelle Einstellung einer Grundhelligkeit (&#039;&#039;&#039;Neu&#039;&#039;&#039;)&lt;br /&gt;
* Automatische Helligkeitsregelung per LDR ein/aus  (&#039;&#039;&#039;Neu&#039;&#039;&#039;)&lt;br /&gt;
* Einstellung des Anzeigemodus&lt;br /&gt;
* Einstellung der Animation (Überblenden, Rollen, Explosion etc.)&lt;br /&gt;
&lt;br /&gt;
Weitere Features werden folgen.&lt;br /&gt;
&lt;br /&gt;
Bevor man mit der App Daten senden kann, muss man die IP-Adresse, die das ESP8266-Modul bekommen hat, in der App einstellen. Dies geht über den Menü-Eintrag &amp;quot;Server&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Geplante Features ===&lt;br /&gt;
&lt;br /&gt;
Die nächsten geplanten Punkte sind:&lt;br /&gt;
&lt;br /&gt;
* Konfiguration der Nachtzeit(en)&lt;br /&gt;
* Farbprogramme (Wählen der Farbe, optional automatisches Wechseln)&lt;br /&gt;
&lt;br /&gt;
== Mechanik ==&lt;br /&gt;
&lt;br /&gt;
Gehäuse (sofern man nicht den 50x50 Ribba-Rahmen des schwedischen Möbelhauses nehmen möchte):&lt;br /&gt;
&lt;br /&gt;
Eine preisgünstige Variante wäre der Aufbau auf einer 45 x 45 cm großen, 16mm starken MDF-Platte aus dem Baumarkt. Die Kanten kann man in der Regel gleich beim Zuschnitt mit Kantenumleimern versäubern lassen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Ausfraesungen vorne.png|MDF-Platte mit trichterförmigen Ausfräsungen für die LEDs, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_Rueckseite mit Bohrloechern.jpg|MDF-Platte mit Bohrlöchern für die LEDs, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_weiss_lackiert.png|MDF-Platte weiß lackiert, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_rueckwaerts.png|MDF-Platte mit Alu-Gehäuserahmen, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_und Milchglasabdeckung.png|MDF-Platte mit Alu-Gehäuserahmen und Milchglasscheibe für Hintergrund-Beleuchtung, Rückansicht&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
Die MDF-Platte erhält 288 Bohrungen im Rastermaß der LED-Matrix. Ein Bohrplan ist hier als Download im pdf-Format verfügbar. Die Bohrungen werden nach vorne hin auf 14mm Durchmesser aufgebohrt und dienen einerseits zur Lichtabdichtung gegenüber den benachbarten LEDs, andererseits als Reflektorkammern. Will man die Bohrungen selbst anbringen, eignet sich dafür ein 5mm Holzbohrer mit aufgesetztem 14mm Versenker. Die stirnseitigen Schneiden des Versenkers sind im Winkel von 45 ° abgeschrägt, dadurch ergeben sich am Boden der Kammern schöne Reflektorflächen. Da der Durchmesser der Bohrlöcher mit 5mm für die LEDs zu klein ist, muss man sie abschließend mit einem größeren Holzbohrer (8mm,..) auf den für die LEDs erforderlichen Durchmesser aufbohren (leider sind im Handel keine 14mm Versenker-Aufsätze für 8mm Bohrer erhältlich). Man kann auch gleich Löcher mit 8mm Durchmesser bohren und dann mit einem Versenker ohne Bohrer auf 14mm Durchmesser aufweiten. Für die Anbringung der Acrylglas-Frontplatte mittels Neodym-Magneten erhält die MDF-Platte am Rand 9 Ausnehmungen (Vertiefungen), welche den Abmessungen der Magneten entsprechen.&lt;br /&gt;
&lt;br /&gt;
Nach Abschluss der Fräs- und Bohrarbeiten wird die MDF-Platte vorderseitig grundiert und weiß spritzlackiert. Wenn man über keine Farbspritzpistole verfügt, verwendet man dafür Spritzfüller und Acryllack aus der Dose - jedoch unbedingt lösungsmittelhaltig und nicht auf Wasserbasis, damit die MDF-Platte nicht aufquillt! Da sich der Farbnebel weiträumig verteilt und überall anlegt, sollten die Spritzarbeiten vorzugsweise im Freien oder in einem leeren, gut belüfteten Nebenraum durchgeführt werden. In geschlossenen Räumen muss mit Atemschutzmaske gearbeitet werden! Wer sich das nicht antun will, kann die MDF-Platte selbstverständlich auch mit Pinsel grundieren und lackieren.&lt;br /&gt;
&lt;br /&gt;
Auf die Rückseite der MDF-Platte wird ein Rahmen aus Alu-U-Profil aufgeschraubt (Baumarkt, 2m Stange auf 4 Stk. mit je 40cm Länge auf Gehrung geschnitten). Er dient als Gehäuse für die Aufnahme der Elektronik und der Verdrahtung.&lt;br /&gt;
&lt;br /&gt;
Weitere mechanische Arbeiten sind:&lt;br /&gt;
&lt;br /&gt;
* Aufkleben der LED-Streifen auf einer Grundplatte. Es werden horizontal 16 Streifen zu je 18 LEDs (60 LEDs/lfm) mit einem vertikalen Abstand von 18,75 mm auf eine Grundplatte aufgeklebt. Vorzugsweise verwendet man dafür Aluminiumblech zur Wärmeableitung. Die LED-Streifen müssen mäanderförmig - jede zweite Reihe um 180° gestürzt - angebracht werden, sodass sich eine schlangenähnliche Anordnung der LEDs ergibt.&lt;br /&gt;
&lt;br /&gt;
* In die Außenflächen der U-Profile werden LED-Strips zur Hintergrundbeleuchtung eingeklebt und zum Schutz vor Staub und mechanischer Beschädigung mit Milchglasstreifchen aus Acrylglas oder Weichplastik abgedeckt ( man kann selbstverständlich auch fertige LED-Kanäle aus dem Handel verwenden).&lt;br /&gt;
&lt;br /&gt;
* Die Platzierung von Platinen, Umgebungslicht-Sensor, Buchsen für Stromzufuhr und PC-Anschluss, ggf. Lautsprecher ist abzuklären;&lt;br /&gt;
&lt;br /&gt;
* Bei Deckenbefestigung wird an der Zimmerdecke das Netzteil der Uhr in einem unscheinbaren Kästchen angebracht. Daran wird die Uhr an 2 Drahtseilen (transparent isolierte Seile aus dem LED-Zubehörhandel) aufgehängt, welche gleichzeitig als Stromzuführung für die LEDs und die Elektronik dienen.&lt;br /&gt;
&lt;br /&gt;
* Die Acrylglas-Frontplatte wird mit magnetischen Pads versehen, mit welchen sie an den Magneten der Montageplatte haftet.&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1 ES IST HH UHR MM (12)&lt;br /&gt;
  2 ES IST HH UHR MM (24)&lt;br /&gt;
  3 ES IST HH UHR UND MM MINUTEN (12)&lt;br /&gt;
  4 ES IST HH UHR UND MM MINUTEN (24)&lt;br /&gt;
  5 ES IST MM MINUTEN NACH HH UHR (12) NACHTS&lt;br /&gt;
  6 ES IST MM MINUTEN NACH HH UHR (24)&lt;br /&gt;
  7 OSSI  - ES IST MM NACH HH (12) &lt;br /&gt;
  8 OSSI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
  9 OESI - ES IST MM NACH HH UHR (12) - OESI&lt;br /&gt;
 10 OESI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
 11 RHEIN/RUHR - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 12 RHEIN/RUHR - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 13 SCHWABEN - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 14 SCHWABEN - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 15 WESSI - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 16 WESSI - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 17 COUNTDOUWN - ES IST MM MINUTEN VOR MITTERNACHT&lt;br /&gt;
 18 TEMPERATUR - &amp;quot;ES IST CC GRAD (&amp;quot;WARM&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung um Modi mit anderen Wortkombinationen ist jederzeit möglich.&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_it_is, tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Dateien wc24h1816_V3_Office_2003.zip und wc24h1816_V3_Office_2010.zip enthalten jeweils eine Excel und eine Access-Datenbank-Datei, in welchen ein Layout der Frontplatte sowie Tabellen mit den Positionsnummern der den einzelnen Wörtern zugeordneten LEDs enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation, Validierung, Code-Generator ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up in C#.net, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Der aktuelle Stand&#039;&#039;&#039; der Steuer-Tabellen kann auch online anhand von exemplarischen Uhrzeiten überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Auf diesen &#039;&#039;&#039;statischen&#039;&#039;&#039; HTML-Seiten gibt es für jeden Modus 60 Exemplarische Uhrzeiten:&lt;br /&gt;
  00:00, 01:01, 02:02, …, 23:23, 00:24, 01:25, 02:26, …, 11:59&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_uclock_de.png|miniatur|Interaktive WordClock24h]] Hier kann man sich &#039;&#039;&#039;interaktiv&#039;&#039;&#039; durch die Uhrzeiten klicken:&lt;br /&gt;
&lt;br /&gt;
* [http://uclock.de/ uclock.de]&lt;br /&gt;
Der Stand des Frontplatten-Layouts ist hier 08.12.2014.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wordclock2-cfg.png|miniatur|rechts|WordClock2 Exe Konfiguration]] Hier gibt es eine  Windows-Anwendung mit Simulationsmodus (ändern des Modus/Stunde/Minute per Taste) die auch als Screensaver benutzt werden kann nach umbennen der Exe:&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/code-creator/wordclock2scrnv/master/WordClock2.zip https://rawgit.com/code-creator/wordclock2scrnv/master/WordClock2.zip]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Im Mock-up in C#.net ist auch ein &#039;&#039;&#039;Code-Generator&#039;&#039;&#039; integriert. Für µCs mit Von-Neumann-Architektur und Havard-Architektur werden unterschiedliche Dialekte benötigt, z.B. mit &amp;quot;progmem&amp;quot; für einige gcc-Toolketten.&lt;br /&gt;
&lt;br /&gt;
* [https://gist.github.com/TorstenC/aec0724be4afcd1d7545 Codegenerator-Funktion] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/623738a39768ceba25cd wc24h1816tables.c (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/623738a39768ceba25cd/raw/wc24h1816tables.c Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/22ef6078188d33e36dfe wc24h1816tables.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/22ef6078188d33e36dfe/raw/wc24h1816tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/0e44b1a5e11ba0dcd3d7 tables.h (Von-Neumann, 16 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/0e44b1a5e11ba0dcd3d7/raw/tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/362a97d2c74a6b522fd6 display.h (Von-Neumann, 16 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/362a97d2c74a6b522fd6/raw/display.h Ziel speichern unter…])&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:wc24h1816_V3_Office_2010.zip]] 18x16 Matrix, MS Office 2000/2003-Dateien (MS Access .accdb), Excel .xlsx), hochgeladen 05.02.2015 07:24&lt;br /&gt;
&lt;br /&gt;
* [[Datei:wc24h1816_V3_Frontplatte_Arial_45x45cm.pdf.zip]] Frontplattenvorlage Maßstab 1:1 als pdf-Datei für Siebdruck, 450mm x 450 mm, 18x16 Matrix, Schriftfont &amp;quot;Arial&amp;quot;, Update 13.02.2015&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_V3_Stencil_Allround.svg.zip]] Frontplattenvorlage Maßstab 1:1 als svg-Datei für Lasercutter, 450mm x 450 mm, 18x16 Matrix, Schriftfont &amp;quot;Stencil Allround&amp;quot;, Update 08.02.2015&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_V3_Stencil_Allround.dxf.zip]] Frontplattenvorlage Maßstab 1:1 als dxf-Datei für CAD, 450mm x 450 mm, 18x16 Matrix, Schriftfont &amp;quot;Stencil Allround&amp;quot;, Update 08.02.2015&lt;br /&gt;
&lt;br /&gt;
* [[Datei:Wc24h1816_V3_Bohrplan_45x45cm.pdf]]  Bohr- und Frässchablone Maßstab 1:1 für MDF-Montageplatte 450mm x 450 mm, 18x16 Matrix, Update 06.02.2015 19:51, in 6 Teilen zum Ausdruck auf A4 Drucker&lt;br /&gt;
&lt;br /&gt;
* [[Datei:wc24h18x16_V3_Bohr- &amp;amp; Fräsplan.cdr]]  Bohr- und Fräsplan Maßstab 1:1 für MDF-Montageplatte 450mm x 450 mm, 18x16 Matrix, erstellt am 15.2.2015&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Controller_an_230V&amp;diff=87435</id>
		<title>Controller an 230V</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Controller_an_230V&amp;diff=87435"/>
		<updated>2015-02-17T20:09:25Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Noch besser: Schalt Shunt-Regler */ typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;von [[Benutzer:Lupin]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Da immer wieder mal die Frage aufkommt, wie man eine eigene Schaltung direkt am Netz betreiben kann soll hier ein Artikel entstehen, welcher die Möglichkeiten zur Erzeugung einer angemessenen Gleichspannung aufzeigt.&lt;br /&gt;
&lt;br /&gt;
Aber zuerst eine Warnung die ernst genommen werden sollte (!!!):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Das Arbeiten an Netzspannung ist lebensgefährlich!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Deshalb sollte man nie direkt an Netzspannung arbeiten, wenn überhaupt nur mit entsprechenden Schutzeinrichtungen (z.&amp;amp;nbsp;B. Trenntrafo) und dann auch nur wenn man über die nötige Erfahrung verfügt. Aber grundsätzlich ist Vorsicht geboten.&lt;br /&gt;
&lt;br /&gt;
Wer nicht ganz genau weiss womit er es zu tun hat sollte lieber eine sichere Lösung verwenden wie z.&amp;amp;nbsp;B. die Stromversorgung aus einem VDE zugelassenen Trafo oder fertige Steckernetzteile.&lt;br /&gt;
&lt;br /&gt;
== Stecker(schalt)netzteil ==&lt;br /&gt;
&lt;br /&gt;
Die sicherste Lösung ist die Verwendung eines Steckernetzteils welches eine galvanisch getrennte Gleichspannung bereit stellt. Wer ganz auf Nummer Sicher gehen will achtet auf das GS (Geprüfte Sicherheit) Kennzeichen auf dem Netzteil:&lt;br /&gt;
&lt;br /&gt;
[[Bild:SteckerNetzteile.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
Zwei Steckernetzteile. Das Linke hat eine ungeregelte Ausgangsspannung (Trafo-&amp;gt;Gleichrichtung-&amp;gt;Siebung). Das Rechte hat eine einstellbare Ausgangsspannung. Auch bei einstellbarer Ausgangsspannung kann diese geregelt oder ungeregelt sein.&lt;br /&gt;
&lt;br /&gt;
Die Spannung wird meist über Hohlstecker zur Schaltung geführt.&lt;br /&gt;
&lt;br /&gt;
Billige Steckernetzteile geben eine ungeregelte Spannung aus, sie verändert sich mit der Last. In diesem Falle ist keine direkte Versorgung der Schaltung möglich und die Eingangsspannung sollte mit einem Spannungsregler geregelt werden:&lt;br /&gt;
&lt;br /&gt;
[[Bild:V_Regler.gif]]&lt;br /&gt;
&lt;br /&gt;
== Trafonetzteil ==&lt;br /&gt;
&lt;br /&gt;
Ein Trafonetzteil besteht aus einem Netztrafo, einer Gleichrichtung, einer Siebung und einer Regelung.&lt;br /&gt;
&lt;br /&gt;
* Der Netztrafo stellt eine galvanisch getrennte Wechselspannung am Ausgang bereit, diese Spannungs ist bedeutend kleiner als die Eingangsspannung.&lt;br /&gt;
&lt;br /&gt;
* Die Gleichrichtung wandelt diese Wechselspannung in eine Gleichspannung. Die Siebung entfernt die restlichen Wechselspannungsanteile (nach einer Vollbrückengleichrichtung beträgt die Wechselspannungsfrequenz 100 Hz).&lt;br /&gt;
&lt;br /&gt;
* Die Regelung kann u.U. auch weggelassen werden, wenn keine genaue Ausgangsspannung gefordert ist. Aber ohne Regelung würde die Ausgangsspannung je nach Belastung schwanken. Die Regelung sorgt dafür, dass unabhängig von der Belastung des Netzteils die gewünschte Ausgangsspannung konstant am Ausgang anliegt.&lt;br /&gt;
&lt;br /&gt;
Die Ausgangsspannung des Trafos ist immer höher als die Ausgangsspannung des Reglers, da der Regler einen gewissen Arbeitsbereich benötigt, die sogenannte Dropout-Spannung. &lt;br /&gt;
&lt;br /&gt;
Die Leistung, die durch den Regler in Wärme umgesetzt wird errechnet sich wie folgt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P_{Verlust}=(U_{Ein}-U_{Aus}) \cdot I_{Aus}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bei 10 Volt am Eingang des Spannungsreglers, einer Ausgangsspannung von 5 Volt und einem Strom von 1 Ampere ergibt das eine Verlustleistung von 5 Watt. Hört sich nicht viel an, allerdings beträgt die Ausgangsleistung auch nur 5 Watt. Das Ergibt einen Wirkungsgrad von 50%. Dazu kommen aber noch Verluste welche im Transformator entstehen. Der Spannungsregler braucht dann einen [[Kühlkörper]].&lt;br /&gt;
&lt;br /&gt;
[[Bild:Trafont.gif]]&lt;br /&gt;
&lt;br /&gt;
Ein Trafonetzteil hat auch den Nachteil, daß es durch den schweren Eisenkern nicht sehr handlich ist.&lt;br /&gt;
&lt;br /&gt;
Es gibt Printtransformatoren, welche sich auf die Leiterplatte löten lassen. So ist es möglich das Netzteil in die eigene Schaltung zu integrieren. Der Anschluss der 230V Netzspannung birgt allerdings eine Gefahr.&lt;br /&gt;
&lt;br /&gt;
=== Sparsames Trafonetzteil für Dauerbetrieb ===&lt;br /&gt;
&lt;br /&gt;
Möchte man eine besonders sparsame Stromversorgung aufbauen, welche eine sehr kleine, sparsame Schaltung das ganze Jahr über betreiben soll, empfiehlt es sich, neben der Beachtung der Konzepte zum Stromsparen per [[Sleep Mode]] und [[Ultra low power]], von den bekannten Minitrafos mit nur 0,5-1VA zwei statt einem zu nutzen. Dabei werden jeweils Primär- und Sekundärwicklung in Reihe geschaltet. Warum?&lt;br /&gt;
&lt;br /&gt;
Weil diese Trafos auf Kante dimensioniert sind, um Material und Bauvolumen zu sparen und bei Nennspannung schon ordentlich in die magnetische Sättigung gehen. Dabei entstehen große Verluste durch Stromspitzen des Magnetisierungsstroms auf der Primärseite. Eine genauere Erklärung findet man im Artikel [[Transformatoren und Spulen]]. Bei der Reihenschaltung sieht jeder Trafo nur die halbe Spannung, damit kommt er nicht so stark in die Sättigung und es wird deutlich weniger Energie sinnlos verbraucht. Dazu noch einen [[Versorgung aus einer Zelle#Vier Mignonzellen mit LowDrop-Linearregler | stromsparenden Spannungsregler]] ala LP2950 und das Ganze braucht weniger als 0,5W.&lt;br /&gt;
In diesem [http://www.mikrocontroller.net/topic/191871#1875697 Forumsbeitrag] wure exemplarisch ein solcher Trafo vermessen.&lt;br /&gt;
&lt;br /&gt;
*Kanal 1 Eingangsstrom&lt;br /&gt;
*Kanal 2 Eingangsspannung&lt;br /&gt;
*Kanal M Leistung&lt;br /&gt;
&lt;br /&gt;
Einmal mit 120V Eingangsspannung (163mW) und einmal mit 230V (1550mW), die Unterschiede sind immens. Selbst wenn man die Verluste bei 120V bei der Reihenschaltung von zwei Stück verdoppelt, erreicht man in Summe eine Verringerung der Leerlaufverluste um den Faktor fünf! Die eingesparte Leistung von ca. 1224mW bedeutet bei Dauerbetrieb einen Verbrauch von ca. 10,7 kWh pro Jahr, was ca. 2,5 Euro entspricht. Damit sind die Kosten für den 2. Trafo nach etwas mehr als einem Jahr schon wieder kompensiert und man spart in den nachfolgenden Jahren das Geld.&lt;br /&gt;
&lt;br /&gt;
==== Von selbst sparsame Trafos (EuP) ====&lt;br /&gt;
Inzwischen (2013) gibt es auch fertige Trafos, welche im Leerlauf so sparsam sind, dass sie die EU-Norm einhalten. z.B. vom Hersteller HAHN die Serie EUP&amp;lt;ref&amp;gt;[http://www.hahn-trafo.com/katalog/10.05.11_Ha_EuP_GB.pdf HAHN Katalogauszug EUP] Abgerufen am 17. April 2013&amp;lt;/ref&amp;gt;, von BLOCK die Serie VBE&amp;lt;ref&amp;gt;[http://www.block-trafo.de/assets/data/409/28823/block_direkt__2012_13__3mb_.pdf BLOCK Katalog S. 4 und S. 42] Abgerufen am 17. April 2013&amp;lt;/ref&amp;gt;. Diese haben nur einen Leerlaufverbrauch von 0,4W und eigenen sich somit hervorragend für sparsame und langlebige Schaltungen.&lt;br /&gt;
&lt;br /&gt;
==== Dauerkurzschlussfeste Trafos ====&lt;br /&gt;
Printtrafos im Leistungsbereich bis vielleicht 4 VA werden heutzutage meist als dauerkurzschlussfeste (auch unbedingt kurzschlussfest genannte) Trafos angeboten.&lt;br /&gt;
Der Trick 2 Trafos in Reihe zu schalten um Energie zu sparen, kann bei diesen zu einem Problem führen: Die Kurzschlussfestigkeit wird durch einen höheren Widerstand der Sekundärwindung erreicht. Kommt es zu einem Kurzschluss, begrenzt der Widerstand den Strom und die insg. abgerufene Leistung bleibt unterhalb des thermischen Limits. Werden nun 2 dieser Sekundärwindungen in Reihe geschaltet, verdoppelt sich der Gesamtwiderstand. Die erreichte Spannung bei Nennlast bleibt dadurch deutlich unter der angegebenen Nennspannung der Trafos. Bei niedriger Last läuft dagegen die Spannung weit über diesen Wert hoch. Vor allem für Schaltungen mit stark schwankender Leistungsaufnahme wird es dadurch schwer passende Trafos zu wählen.&lt;br /&gt;
&lt;br /&gt;
Dem kann man begegnen, in dem man 2 Trafos für die doppelte der gewünschten Nennspannung verwendet. Die Primärwindungen werden wie bisher in Reihe geschaltet, die Sekundärwindungen dagegen parallel. Damit bleibt der Spareffekt bestehen, die Varianz der Ausgangsspannung wird aber deutlich reduziert.&lt;br /&gt;
&lt;br /&gt;
== Versorgung über Vorwiderstand/Kondensator ==&lt;br /&gt;
&lt;br /&gt;
Wenn nur sehr kleine Ausgangsströme benötigt werden, so kommt die Verwendung eines einfachen Netzteils in Frage, welches einen Vorwiderstand verwendet um die Netzspannung herabzusetzen. Da es sich bei der Netzspannung um eine Wechselspannung handelt, eignen sich neben rein ohmschen Widerständen auch Kondensatoren und Spulen als Vorwiderstand. Praktisch werden Spulen jedoch nie verwendet, weil diese zu groß wären. Da aus Energiegründen meist Kondensatoren verwendet werden, spricht man auch umgangssprachlich vom Kondensatornetzteil.&lt;br /&gt;
&lt;br /&gt;
=== Beispiel ===&lt;br /&gt;
&lt;br /&gt;
[[Bild:Capnt.gif | right | thumb | 500px | 5V / 10mA Kondensatornetzteil]]&lt;br /&gt;
&lt;br /&gt;
Der Kondensator C1 bildet hier den kapazitiven Vorwiderstand für unser Kondensatornetzteil, seine Impedanz bestimmt den Strom. Der Vorteil gegenüber einem Widerstand ist, dass keine Wirkleistung erzeugt wird, sprich es entsteht keine Wärme. Wenn wir alle Spannungsabfälle durch die übrigen Bauteile vernachlässigen, können wir einfach mit...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathrm{X_{C}= {1 \over {2 \pi \cdot f \cdot C}} }&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathrm{X_{C1}= {1 \over {2 \pi \cdot 50Hz \cdot C}} }&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
...die Impedanz des Kondensators an 50 Hz Wechselspannung errechnen (wir vernachlässigen den ohmschen Reihenwiderstand des Kodensators und betrachten seinen Blindwiderstand als Impedanz).&lt;br /&gt;
&lt;br /&gt;
Für 10 mA bei 230V brauchen wir einen Ersatzwiderstand von:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathrm{R_{Ersatz}= {230V - 12V \over 10mA} = {22k \Omega} }&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das ergibt nach Gleichsetzen von X(C1) = 22 kΩ und Umstellen nach C eine rechnerische Kapazität von 145 nF. Eine Kapazität von 150nF würde gut passen und ist als Standardwert verfügbar. Mit der Wahl eines etwas größeren Kondensators kommen wir rechnerisch über 10mA und haben dadurch ein wenig mehr Luft nach oben. Der Kondensator als kapazitiver Vorwiderstand erzeugt keine Wärme, nur etwas Phasenverschiebung zwischen Strom und Spannung. Ein 22-kΩ-Widerstand würde 2,2 W Verlustleistung als Wärme erzeugen. Der Rest der Schaltung erklärt sich relativ einfach.&lt;br /&gt;
&lt;br /&gt;
* Sicherung F1 soll vor möglichen Schwelbränden im Falle eines Kurzschlusses schützen. Brandsichere Widerstände R1 und R2 erfüllen den gleichen Zweck.&lt;br /&gt;
* R1 und R2 begrenzen zusammen den Einschaltstrom, sollte die Schaltung beim Sinusscheitelpunkt angeschlossen werden (Eingangsspannung kurzzeitig 325V). Es wurden zwei Widerstände verwendet, damit sich der Spannungsfall über beide Widerstände aufteilt, denn normale Widerstände sind nur bis 200 V belastbar. Der kurzzeitig hohe Ladestrom, der nur von diesen Widerständen begrenzt wird, wird von C2 und D1 aufgenommen.&lt;br /&gt;
* R3 und R4 dienen als Entladewiderstände für C1, damit nach Trennen vom Netz keine gefährliche Ladung im Kondensator verbleibt. Auch hier werden zwecks Spannungsaufteilung zwei Widerstände verwendet.&lt;br /&gt;
* Der Brückengleichrichter B1 richtet die Wechselspannung in eine Gleichspannung.&lt;br /&gt;
* Die [[Diode#Z-Diode | Z-Diode]] D1 begrenzt die maximale Eingangsspannung für IC1. Sie muss lediglich so gewählt werden, dass der Spannungsregler noch sauber arbeiten kann.&lt;br /&gt;
* Die Eingangsspannung für IC1 wird durch C2 und C3 gepuffert. Die Wechselspannungsanteile der gleichgerichteten Spannung sind dadurch sehr gering.&lt;br /&gt;
* IC1 ist der Spannungsregler, er erzeugt die 5V Ausgangsspannung. C4 soll ein Schwingen des Reglers verhindern.&lt;br /&gt;
* IC1 kann alternativ auch mit einem stromsparenden Regler wie z.B LP2950 bestückt werden, dadurch stehen 3..5mA mehr für die Schaltung zur Verfügung, welche sonst vom 7805 verbraucht werden.&lt;br /&gt;
&lt;br /&gt;
;Achtung!: Es ist wichtig zu wissen, daß zwischen den Punkten &amp;quot;+5V&amp;quot; und &amp;quot;GND&amp;quot; im Normalfall nur ein Potential von 5 Volt anliegt und der Strom auch durch die Schaltung begrenzt wird. Aber das Potential gegen Erde ist immer noch lebensgefährlich, da bei dieser Netzteilart keine galvanische Trennung stattfindet. Solch eine Schaltung &#039;&#039;&#039;muss&#039;&#039;&#039; man in ein Gehäuse verbauen, welches vor Berührung mit leitfähigen Teilen schützt (Schutzklasse I oder II).&lt;br /&gt;
&lt;br /&gt;
{{Warnung|;Warnung!: Wirklich niemals (!) leitfähige Teile einer Schaltung berühren, die vom Stromnetz nicht galvanisch getrennt sind!}}&lt;br /&gt;
&lt;br /&gt;
Ein halbwegs sicherer Umgang mit der Schaltung ist dann möglich, wenn man über einen Trenntrafo eine galvanische Trennung zum Netz herstellt und hinter dem Trenntrafo mit der Schaltung arbeitet.&lt;br /&gt;
&lt;br /&gt;
=== Links ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.grosse-elektronik.de/das-elko/trlosestr/index.html Stromversorgung über Vorwiderstand oder Kondensator ausführlich erklärt]&lt;br /&gt;
* [http://www.elektronik-kompendium.de/public/schaerer/cpowsup.htm Direkte 230V Versorgung im ELKO]&lt;br /&gt;
* [http://www.trifolium.de/netzteil/kap13.html Auschnitt auch &amp;quot;Das Netzteil- und Konverterbuch&amp;quot;]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/192090?goto=new#new Forenbeitrag: Weitbereichslinearregler mit kleinem Ausgangsstrom]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/194814#new Forenbeitrag: Weitbereichslinearregler mit kleinem Ausgangsstrom, weitere Vorschläge]&lt;br /&gt;
&lt;br /&gt;
=== Besser: Querregler ===&lt;br /&gt;
[http://commons.wikimedia.org/wiki/File%3ACapacitive_Power_Supply.png]&lt;br /&gt;
Die Verwendung von &#039;&#039;Längsreglern&#039;&#039; (etwa 78L05) ist bei dieser Netzteilart ungünstig, da eine Vorregelung per Zener-Diode erforderlich ist.&lt;br /&gt;
Besser ist die Verwendung eines &#039;&#039;Querreglers&#039;&#039; (etwa TL431). Dessen Vorwiderstand wird so dimensioniert, dass die Spannungsschwankungen am Ladekondensator bei maximalem Entnahmestrom gerade ausgeglichen werden können. In diesem Fall erscheinen 150 Ω angemessen, für 1,5 V Ripplespannung an C2. Auf diese Weise erhält man einen Low-Drop-Spannungsregler mit – ohnehin erforderlichem – konstanten Stromverbrauch.&lt;br /&gt;
&lt;br /&gt;
Merke: Die Wirkleistungsaufnahme solcher Netzteilschaltungen ist proportional zur Ladespannung am Elko C2. Daher ist diese möglichst niedrig anzusetzen.&lt;br /&gt;
Kondensatornetzteile sind eher &#039;&#039;Stromquellen&#039;&#039; als &#039;&#039;Spannungsquellen&#039;&#039;, was bei der Schaltungsdimensionierung zu beachten bzw. auszunutzen ist.&lt;br /&gt;
&lt;br /&gt;
=== Noch besser: Schalt-Shunt-Regler ===&lt;br /&gt;
&lt;br /&gt;
Mit einem &#039;Kondensator gekoppelten Schalt-Shunt-Regler&#039; (Capacitor-Coupled, Switched Shunt, Regulator oder &#039;&#039;&#039;„CCSS-Regulator“&#039;&#039;&#039;), z.B. dem [http://ww1.microchip.com/downloads/en/DeviceDoc/SR10%20B080613.pdf Supertex SR10] sind Standby-Verbräuche von weniger als 20mW möglich:&lt;br /&gt;
&lt;br /&gt;
[[Datei:SR10.PNG]]&lt;br /&gt;
&lt;br /&gt;
=== Relais-Schaltungen ===&lt;br /&gt;
Derartige Netzteile werden gern zur Ansteuerung von Relais eingesetzt. Um die Stromaufnahme und damit den Kondensator C1 möglichst klein zu halten (Kostenfaktor), werden gern 24-V-Typen benutzt, die sich mit 10 .. 20 mA Anzugstrom begnügen. Das ergibt aber trotzdem 0,25 .. 0,5 W Leistungsaufnahme, die von einem Konstantspannungsnetzteil permanent zur Verfügung gestellt wird und damit stets irgendwo verheizt wird, auch wenn das Relais nicht arbeitet.&lt;br /&gt;
&lt;br /&gt;
Eine Lösung des Problems ist die Umschaltung der Ausgangsspannung an C2. Damit kann die Relaisspule parallel zu C2 betrieben werden und wird zum Ausschalten durch einen Transistor mit Z-Diode am Kollektor gebrückt (ein selbstleitender SFET oder MOSFET liegt da nahe). Hauptsache, das Relais fällt bei – angenommen – 4 V auch tatsächlich ab. Die Freilaufdiode entfällt. Die Steuerschaltung (angenommen für 3 V) wird in diesem Fall mit einem Low-Drop-Längsregler mit genügend großem Eingangsspannungsbereich versorgt.&lt;br /&gt;
&lt;br /&gt;
[http://commons.wikimedia.org/wiki/File:Capacitive_power_supply_%2B_relay.png]&lt;br /&gt;
Eine andere Lösung verwendet eine Reihenschaltung sogar mehrerer Relaiswicklungen, die jeweils per Überbrückung abgeschaltet werden. In diesem Fall hat C2 bei höherer Spannungsfestigkeit eine vergleichsweise kleine Kapazität, da das Ripple größer ausfallen darf, da die Selbstinduktivität der Relaiswicklung(en) für Konstantstrom sorgt und C2 „leersaugt“.&lt;br /&gt;
&lt;br /&gt;
== Schaltnetzteil ==&lt;br /&gt;
&lt;br /&gt;
Schaltnetzteile sind heutzutage weit verbreitet, da sie gegenüber konventionellen Netzteilen eine kompaktere Bauweise, einen höheren Wirkungsgrad und geringere Produktionskosten aufweisen.&lt;br /&gt;
&lt;br /&gt;
Zur Versorgung einer eigenen Schaltung eignen sich am besten Steckernetzteile (auch &amp;quot;Wandwarzen&amp;quot; genannt :)) welche eine mehr oder weniger gut geregelte Ausgangsspannung bereit stellen.&lt;br /&gt;
&lt;br /&gt;
Um das Schaltnetzteil direkt in eine eigene Schaltung zu integrieren, ist die einzige Möglichkeit die Verwendung von fertigen AC/DC Modulen welche meist relativ teuer sind (im Vergleich zu Steckernetzteilen). Dafür bieten Fertigmodule meist gut spezifizierte Betriebsparameter und sind bei namhaften Herstellern auch über mehrere Jahre hinweg lieferbar. Ausserdem sind die leicht anwendbar, man muss kein Schaltnetzteilprofi sein.&lt;br /&gt;
&lt;br /&gt;
Als Alternative zum Kauf von fertigen Schaltnetzteilen soll im folgenden ein 230VAC-&amp;gt;5VDC Netzteil vorgestellt werden. Allerdings rate ich davon ab solch ein Netzteil in Umlauf zu bringen. Das Ganze dient eher als proof of concept und natürlich wurde das Netzteil nicht nach den geltenden Sicherheits- und EMV-Bestimmungen geprüft. Die Schaltung ist ausschließlich für eigene Experimente/Schaltungen gedacht.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Download&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Hier die ZIP Datei mit der EAGLE .brd- und .sch-Datei:&lt;br /&gt;
[http://www.mikrocontroller.net/wikifiles/9/94/Tiny_SMPS_eagle.zip Eagle Dateien downloaden]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Spezifikation&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Eingangsspannung 85VAC bis 265VAC @ 50-400 Hz&lt;br /&gt;
* Ausgangsspannung 5 Volt / 1 Ampere&lt;br /&gt;
&lt;br /&gt;
TODO: Ein paar mehr Messungen durchführen...&lt;br /&gt;
&lt;br /&gt;
Eingangsspannung kann auch unter 85VAC liegen (siehe Anmerkungen).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltplan&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Bild:Smps5v_sch.gif]]&lt;br /&gt;
&lt;br /&gt;
Der Schaltplan im Detail (von links nach rechts):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Primärseite&#039;&#039;&lt;br /&gt;
* F2 ist eine träge Sicherung (1 Ampere). Sie sichert die Schaltung ab, sollte auf der Primärseite ein Kurzschlussstrom fließen&lt;br /&gt;
* Der Brückengleichrichter richtet die Netzspannung gleich&lt;br /&gt;
* C9, L1, C2 bilden einen Pi-Filter. Über den Kondensatoren liegt bei 230VAC Eingangsspannung eine Spannung von ungefähr 310 Volt an&lt;br /&gt;
* C5, R1, D3 bilden ein [[Snubber]]-Netzwerk (Klemmschaltung) - dieses Netzwerk &amp;quot;verbrät&amp;quot; die Leistung welche beim Abschalten des Leistungstransistors in die Primärwicklung induziert wird (da sich die Spannungsverhältnisse umkehren)&lt;br /&gt;
* Der Regler-IC ohne Bezeichnung ist ein TNY264 - er integriert eine fortschrittliche [[PWM]]-Regelung (dabei handelt es sich um eine PWM mit variabler Frequenz und Frequenz-Jitter), eine primärseitige Strombegrenzung, einen Fehlereingang und die Erzeugung seiner eigenen Betriebsspannung aus der Netzspannung&lt;br /&gt;
* Der Trafo T1 ist ein Sperrwandlertrafo mit Luftspalt (Kern E16)&lt;br /&gt;
* C8 unterdrückt hochfrequente EMV Störungen - Wichtig: Der Kondensator muss der Klasse Y1 entsprechen um die Sicherheit zu gewährleisten.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Sekundärseite&#039;&#039;&lt;br /&gt;
* D2 dient als Gleichrichterdiode&lt;br /&gt;
* C4, L2, C3 bilden einen weiteren Pi-Filter zur Filterung der Ausgangsspannung&lt;br /&gt;
* Über [[Diode#Z-Diode | Zener Diode]] D1, R2 und Optokoppler OK1 wird die Ausgangsspannung zum Regler IC zurück gekoppelt. Der Regler versucht einen konstanten Strom durch den Transistor in OK1 fließen zu lassen, dadurch wird auf der Sekundärseite eine konstante Ausgangsspannung erzeugt.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Anmerkungen:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Zwischen L und N hätte man auch noch einen Varistor zur Überspannungsbegrenzung und einen X Kondensator (nach der Sicherung!) zur Unterdrückung von HF schalten können&lt;br /&gt;
* Zur Verbesserung der EMV hätte man auch noch eine Netzdoppeldrossel verwenden können. Diese Drossel würde Gegentaktstörungen verringern. Allerdings lässt sich auch mit einer einfachen Drossel eine ausreichende EMV erreichen (ob das bei dieser Schaltung der Fall ist weiss ich nicht und würde ich bezweifeln)&lt;br /&gt;
* Bei Versuchen am Labornetzteil stellte sich heraus, dass das Netzteil schon bei 50VDC Versorgung funktioniert. Einen Belastungstest habe ich bei dieser Spannung nicht durchgeführt, aber dadurch hat man die Möglichkeit das Netzteil gefahrlos zu erproben.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Layout&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Bild:Smps5v_brd.gif]]&lt;br /&gt;
&lt;br /&gt;
Zum Layout gibt es nicht viel zu sagen. Abstände wurden so groß wie möglich gehalten und der größte Teil des Layouts wurde mit großzügigen Kupferflächen realisiert, um eine gute Wärmeableitung und eine niederohmige Anbindung zu erhalten. Ob das Layout VDE-konform ist kann ich nicht sagen. Der Abstand zwischen Primär- und Sekundärseite sollte allerdings groß genug sein.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stückliste&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Das Netzteil wurde so gestaltet, dass alle Bauteile bei Farnell bestellt werden können. Nur die Platine muss man sich natürlich selbst ätzen.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable sortable&amp;quot; id=&amp;quot;stueckliste&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Stromlauf&lt;br /&gt;
! Bestellnummer&lt;br /&gt;
! Bezeichnung&lt;br /&gt;
! Preis (1 Stück)&lt;br /&gt;
|-&lt;br /&gt;
| F2&lt;br /&gt;
| 3030076&lt;br /&gt;
| Sicherung - 1A, Flink&lt;br /&gt;
| 0,62 €&lt;br /&gt;
|-&lt;br /&gt;
| B1&lt;br /&gt;
| 1467468&lt;br /&gt;
| DF04M Brückengleichrichter - 1.5A, 400V&lt;br /&gt;
| 0,21 €&lt;br /&gt;
|-&lt;br /&gt;
| C9 C2&lt;br /&gt;
| 1165626&lt;br /&gt;
| Kondensator Vishay - 4.7µF, 400V&lt;br /&gt;
| 0,23 €&lt;br /&gt;
|-&lt;br /&gt;
| L1&lt;br /&gt;
| 1077038&lt;br /&gt;
| Drossel - 2.2mH&lt;br /&gt;
| 1,25 €&lt;br /&gt;
|-&lt;br /&gt;
| IC1&lt;br /&gt;
| 9921320&lt;br /&gt;
| TNY264PN&lt;br /&gt;
| 1,65 €&lt;br /&gt;
|-&lt;br /&gt;
| D3&lt;br /&gt;
| 1299306&lt;br /&gt;
| SF18G Diode - 1A, 600V&lt;br /&gt;
| 0,23 €&lt;br /&gt;
|-&lt;br /&gt;
| C5&lt;br /&gt;
| 1141794&lt;br /&gt;
| Kondensator Vishay - 2.2nF, 1kV&lt;br /&gt;
| 0,22 €&lt;br /&gt;
|-&lt;br /&gt;
| R1&lt;br /&gt;
| &lt;br /&gt;
| Widerstand - 1/4W, 200k Ohm&lt;br /&gt;
| 0,05 €&lt;br /&gt;
|-&lt;br /&gt;
| C8&lt;br /&gt;
| 3531971&lt;br /&gt;
| Kondensator X1/Y1 Murata - 1nF, 4kV&lt;br /&gt;
| 0,31 €&lt;br /&gt;
|-&lt;br /&gt;
| T1&lt;br /&gt;
| 1214650&lt;br /&gt;
| Trafo Myrra 74094&lt;br /&gt;
| 4,20 €&lt;br /&gt;
|-&lt;br /&gt;
| D2&lt;br /&gt;
| 9907637&lt;br /&gt;
| Schottky Diode STPS2L60 - 2A&lt;br /&gt;
| 0,30 €&lt;br /&gt;
|-&lt;br /&gt;
| C4 C3&lt;br /&gt;
| 1219462&lt;br /&gt;
| Kondensator Panasonic - 470µF, 16V&lt;br /&gt;
| 0,37 €&lt;br /&gt;
|-&lt;br /&gt;
| L2&lt;br /&gt;
| 1077049&lt;br /&gt;
| Drossel - 10µH&lt;br /&gt;
| 1,25 €&lt;br /&gt;
|-&lt;br /&gt;
| D1&lt;br /&gt;
| 1097231&lt;br /&gt;
| Zener BZX79-C3V9 - 3.9 Volt, 500mW&lt;br /&gt;
| 0,11 €&lt;br /&gt;
|-&lt;br /&gt;
| R2&lt;br /&gt;
| &lt;br /&gt;
| Widerstand - 1/4W, 100Ω&lt;br /&gt;
| 0,05 €&lt;br /&gt;
|-&lt;br /&gt;
| OK1&lt;br /&gt;
| 9707700&lt;br /&gt;
| Optokoppler PC817&lt;br /&gt;
| 0,36 €&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Macht zusammen 11,88€. Das steht im grunde im keinen Verhältnis zu einem gekauften 5V/1A Netzteil, denn das kostet in etwa das Gleiche und ist bereits fertig aufgebaut und nach gültigen Normen geprüft. Die Eigenentwicklung solcher Netzteile lohnt sich nur in sehr großen Stückzahlen von 10.000 Stück und mehr und wenn man auf dem Gebiet viel Erfahrung hat. &lt;br /&gt;
&lt;br /&gt;
== Quellen ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:1. Wettbewerb]]&lt;br /&gt;
[[Category:Spannungsversorgung und Energiequellen]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Controller_an_230V&amp;diff=87434</id>
		<title>Controller an 230V</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Controller_an_230V&amp;diff=87434"/>
		<updated>2015-02-17T20:06:32Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Besser: Querregler */ &amp;#039;Noch besser: Schalt Shunt-Regler&amp;#039; ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;von [[Benutzer:Lupin]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Da immer wieder mal die Frage aufkommt, wie man eine eigene Schaltung direkt am Netz betreiben kann soll hier ein Artikel entstehen, welcher die Möglichkeiten zur Erzeugung einer angemessenen Gleichspannung aufzeigt.&lt;br /&gt;
&lt;br /&gt;
Aber zuerst eine Warnung die ernst genommen werden sollte (!!!):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Das Arbeiten an Netzspannung ist lebensgefährlich!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Deshalb sollte man nie direkt an Netzspannung arbeiten, wenn überhaupt nur mit entsprechenden Schutzeinrichtungen (z.&amp;amp;nbsp;B. Trenntrafo) und dann auch nur wenn man über die nötige Erfahrung verfügt. Aber grundsätzlich ist Vorsicht geboten.&lt;br /&gt;
&lt;br /&gt;
Wer nicht ganz genau weiss womit er es zu tun hat sollte lieber eine sichere Lösung verwenden wie z.&amp;amp;nbsp;B. die Stromversorgung aus einem VDE zugelassenen Trafo oder fertige Steckernetzteile.&lt;br /&gt;
&lt;br /&gt;
== Stecker(schalt)netzteil ==&lt;br /&gt;
&lt;br /&gt;
Die sicherste Lösung ist die Verwendung eines Steckernetzteils welches eine galvanisch getrennte Gleichspannung bereit stellt. Wer ganz auf Nummer Sicher gehen will achtet auf das GS (Geprüfte Sicherheit) Kennzeichen auf dem Netzteil:&lt;br /&gt;
&lt;br /&gt;
[[Bild:SteckerNetzteile.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
Zwei Steckernetzteile. Das Linke hat eine ungeregelte Ausgangsspannung (Trafo-&amp;gt;Gleichrichtung-&amp;gt;Siebung). Das Rechte hat eine einstellbare Ausgangsspannung. Auch bei einstellbarer Ausgangsspannung kann diese geregelt oder ungeregelt sein.&lt;br /&gt;
&lt;br /&gt;
Die Spannung wird meist über Hohlstecker zur Schaltung geführt.&lt;br /&gt;
&lt;br /&gt;
Billige Steckernetzteile geben eine ungeregelte Spannung aus, sie verändert sich mit der Last. In diesem Falle ist keine direkte Versorgung der Schaltung möglich und die Eingangsspannung sollte mit einem Spannungsregler geregelt werden:&lt;br /&gt;
&lt;br /&gt;
[[Bild:V_Regler.gif]]&lt;br /&gt;
&lt;br /&gt;
== Trafonetzteil ==&lt;br /&gt;
&lt;br /&gt;
Ein Trafonetzteil besteht aus einem Netztrafo, einer Gleichrichtung, einer Siebung und einer Regelung.&lt;br /&gt;
&lt;br /&gt;
* Der Netztrafo stellt eine galvanisch getrennte Wechselspannung am Ausgang bereit, diese Spannungs ist bedeutend kleiner als die Eingangsspannung.&lt;br /&gt;
&lt;br /&gt;
* Die Gleichrichtung wandelt diese Wechselspannung in eine Gleichspannung. Die Siebung entfernt die restlichen Wechselspannungsanteile (nach einer Vollbrückengleichrichtung beträgt die Wechselspannungsfrequenz 100 Hz).&lt;br /&gt;
&lt;br /&gt;
* Die Regelung kann u.U. auch weggelassen werden, wenn keine genaue Ausgangsspannung gefordert ist. Aber ohne Regelung würde die Ausgangsspannung je nach Belastung schwanken. Die Regelung sorgt dafür, dass unabhängig von der Belastung des Netzteils die gewünschte Ausgangsspannung konstant am Ausgang anliegt.&lt;br /&gt;
&lt;br /&gt;
Die Ausgangsspannung des Trafos ist immer höher als die Ausgangsspannung des Reglers, da der Regler einen gewissen Arbeitsbereich benötigt, die sogenannte Dropout-Spannung. &lt;br /&gt;
&lt;br /&gt;
Die Leistung, die durch den Regler in Wärme umgesetzt wird errechnet sich wie folgt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P_{Verlust}=(U_{Ein}-U_{Aus}) \cdot I_{Aus}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bei 10 Volt am Eingang des Spannungsreglers, einer Ausgangsspannung von 5 Volt und einem Strom von 1 Ampere ergibt das eine Verlustleistung von 5 Watt. Hört sich nicht viel an, allerdings beträgt die Ausgangsleistung auch nur 5 Watt. Das Ergibt einen Wirkungsgrad von 50%. Dazu kommen aber noch Verluste welche im Transformator entstehen. Der Spannungsregler braucht dann einen [[Kühlkörper]].&lt;br /&gt;
&lt;br /&gt;
[[Bild:Trafont.gif]]&lt;br /&gt;
&lt;br /&gt;
Ein Trafonetzteil hat auch den Nachteil, daß es durch den schweren Eisenkern nicht sehr handlich ist.&lt;br /&gt;
&lt;br /&gt;
Es gibt Printtransformatoren, welche sich auf die Leiterplatte löten lassen. So ist es möglich das Netzteil in die eigene Schaltung zu integrieren. Der Anschluss der 230V Netzspannung birgt allerdings eine Gefahr.&lt;br /&gt;
&lt;br /&gt;
=== Sparsames Trafonetzteil für Dauerbetrieb ===&lt;br /&gt;
&lt;br /&gt;
Möchte man eine besonders sparsame Stromversorgung aufbauen, welche eine sehr kleine, sparsame Schaltung das ganze Jahr über betreiben soll, empfiehlt es sich, neben der Beachtung der Konzepte zum Stromsparen per [[Sleep Mode]] und [[Ultra low power]], von den bekannten Minitrafos mit nur 0,5-1VA zwei statt einem zu nutzen. Dabei werden jeweils Primär- und Sekundärwicklung in Reihe geschaltet. Warum?&lt;br /&gt;
&lt;br /&gt;
Weil diese Trafos auf Kante dimensioniert sind, um Material und Bauvolumen zu sparen und bei Nennspannung schon ordentlich in die magnetische Sättigung gehen. Dabei entstehen große Verluste durch Stromspitzen des Magnetisierungsstroms auf der Primärseite. Eine genauere Erklärung findet man im Artikel [[Transformatoren und Spulen]]. Bei der Reihenschaltung sieht jeder Trafo nur die halbe Spannung, damit kommt er nicht so stark in die Sättigung und es wird deutlich weniger Energie sinnlos verbraucht. Dazu noch einen [[Versorgung aus einer Zelle#Vier Mignonzellen mit LowDrop-Linearregler | stromsparenden Spannungsregler]] ala LP2950 und das Ganze braucht weniger als 0,5W.&lt;br /&gt;
In diesem [http://www.mikrocontroller.net/topic/191871#1875697 Forumsbeitrag] wure exemplarisch ein solcher Trafo vermessen.&lt;br /&gt;
&lt;br /&gt;
*Kanal 1 Eingangsstrom&lt;br /&gt;
*Kanal 2 Eingangsspannung&lt;br /&gt;
*Kanal M Leistung&lt;br /&gt;
&lt;br /&gt;
Einmal mit 120V Eingangsspannung (163mW) und einmal mit 230V (1550mW), die Unterschiede sind immens. Selbst wenn man die Verluste bei 120V bei der Reihenschaltung von zwei Stück verdoppelt, erreicht man in Summe eine Verringerung der Leerlaufverluste um den Faktor fünf! Die eingesparte Leistung von ca. 1224mW bedeutet bei Dauerbetrieb einen Verbrauch von ca. 10,7 kWh pro Jahr, was ca. 2,5 Euro entspricht. Damit sind die Kosten für den 2. Trafo nach etwas mehr als einem Jahr schon wieder kompensiert und man spart in den nachfolgenden Jahren das Geld.&lt;br /&gt;
&lt;br /&gt;
==== Von selbst sparsame Trafos (EuP) ====&lt;br /&gt;
Inzwischen (2013) gibt es auch fertige Trafos, welche im Leerlauf so sparsam sind, dass sie die EU-Norm einhalten. z.B. vom Hersteller HAHN die Serie EUP&amp;lt;ref&amp;gt;[http://www.hahn-trafo.com/katalog/10.05.11_Ha_EuP_GB.pdf HAHN Katalogauszug EUP] Abgerufen am 17. April 2013&amp;lt;/ref&amp;gt;, von BLOCK die Serie VBE&amp;lt;ref&amp;gt;[http://www.block-trafo.de/assets/data/409/28823/block_direkt__2012_13__3mb_.pdf BLOCK Katalog S. 4 und S. 42] Abgerufen am 17. April 2013&amp;lt;/ref&amp;gt;. Diese haben nur einen Leerlaufverbrauch von 0,4W und eigenen sich somit hervorragend für sparsame und langlebige Schaltungen.&lt;br /&gt;
&lt;br /&gt;
==== Dauerkurzschlussfeste Trafos ====&lt;br /&gt;
Printtrafos im Leistungsbereich bis vielleicht 4 VA werden heutzutage meist als dauerkurzschlussfeste (auch unbedingt kurzschlussfest genannte) Trafos angeboten.&lt;br /&gt;
Der Trick 2 Trafos in Reihe zu schalten um Energie zu sparen, kann bei diesen zu einem Problem führen: Die Kurzschlussfestigkeit wird durch einen höheren Widerstand der Sekundärwindung erreicht. Kommt es zu einem Kurzschluss, begrenzt der Widerstand den Strom und die insg. abgerufene Leistung bleibt unterhalb des thermischen Limits. Werden nun 2 dieser Sekundärwindungen in Reihe geschaltet, verdoppelt sich der Gesamtwiderstand. Die erreichte Spannung bei Nennlast bleibt dadurch deutlich unter der angegebenen Nennspannung der Trafos. Bei niedriger Last läuft dagegen die Spannung weit über diesen Wert hoch. Vor allem für Schaltungen mit stark schwankender Leistungsaufnahme wird es dadurch schwer passende Trafos zu wählen.&lt;br /&gt;
&lt;br /&gt;
Dem kann man begegnen, in dem man 2 Trafos für die doppelte der gewünschten Nennspannung verwendet. Die Primärwindungen werden wie bisher in Reihe geschaltet, die Sekundärwindungen dagegen parallel. Damit bleibt der Spareffekt bestehen, die Varianz der Ausgangsspannung wird aber deutlich reduziert.&lt;br /&gt;
&lt;br /&gt;
== Versorgung über Vorwiderstand/Kondensator ==&lt;br /&gt;
&lt;br /&gt;
Wenn nur sehr kleine Ausgangsströme benötigt werden, so kommt die Verwendung eines einfachen Netzteils in Frage, welches einen Vorwiderstand verwendet um die Netzspannung herabzusetzen. Da es sich bei der Netzspannung um eine Wechselspannung handelt, eignen sich neben rein ohmschen Widerständen auch Kondensatoren und Spulen als Vorwiderstand. Praktisch werden Spulen jedoch nie verwendet, weil diese zu groß wären. Da aus Energiegründen meist Kondensatoren verwendet werden, spricht man auch umgangssprachlich vom Kondensatornetzteil.&lt;br /&gt;
&lt;br /&gt;
=== Beispiel ===&lt;br /&gt;
&lt;br /&gt;
[[Bild:Capnt.gif | right | thumb | 500px | 5V / 10mA Kondensatornetzteil]]&lt;br /&gt;
&lt;br /&gt;
Der Kondensator C1 bildet hier den kapazitiven Vorwiderstand für unser Kondensatornetzteil, seine Impedanz bestimmt den Strom. Der Vorteil gegenüber einem Widerstand ist, dass keine Wirkleistung erzeugt wird, sprich es entsteht keine Wärme. Wenn wir alle Spannungsabfälle durch die übrigen Bauteile vernachlässigen, können wir einfach mit...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathrm{X_{C}= {1 \over {2 \pi \cdot f \cdot C}} }&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathrm{X_{C1}= {1 \over {2 \pi \cdot 50Hz \cdot C}} }&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
...die Impedanz des Kondensators an 50 Hz Wechselspannung errechnen (wir vernachlässigen den ohmschen Reihenwiderstand des Kodensators und betrachten seinen Blindwiderstand als Impedanz).&lt;br /&gt;
&lt;br /&gt;
Für 10 mA bei 230V brauchen wir einen Ersatzwiderstand von:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathrm{R_{Ersatz}= {230V - 12V \over 10mA} = {22k \Omega} }&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das ergibt nach Gleichsetzen von X(C1) = 22 kΩ und Umstellen nach C eine rechnerische Kapazität von 145 nF. Eine Kapazität von 150nF würde gut passen und ist als Standardwert verfügbar. Mit der Wahl eines etwas größeren Kondensators kommen wir rechnerisch über 10mA und haben dadurch ein wenig mehr Luft nach oben. Der Kondensator als kapazitiver Vorwiderstand erzeugt keine Wärme, nur etwas Phasenverschiebung zwischen Strom und Spannung. Ein 22-kΩ-Widerstand würde 2,2 W Verlustleistung als Wärme erzeugen. Der Rest der Schaltung erklärt sich relativ einfach.&lt;br /&gt;
&lt;br /&gt;
* Sicherung F1 soll vor möglichen Schwelbränden im Falle eines Kurzschlusses schützen. Brandsichere Widerstände R1 und R2 erfüllen den gleichen Zweck.&lt;br /&gt;
* R1 und R2 begrenzen zusammen den Einschaltstrom, sollte die Schaltung beim Sinusscheitelpunkt angeschlossen werden (Eingangsspannung kurzzeitig 325V). Es wurden zwei Widerstände verwendet, damit sich der Spannungsfall über beide Widerstände aufteilt, denn normale Widerstände sind nur bis 200 V belastbar. Der kurzzeitig hohe Ladestrom, der nur von diesen Widerständen begrenzt wird, wird von C2 und D1 aufgenommen.&lt;br /&gt;
* R3 und R4 dienen als Entladewiderstände für C1, damit nach Trennen vom Netz keine gefährliche Ladung im Kondensator verbleibt. Auch hier werden zwecks Spannungsaufteilung zwei Widerstände verwendet.&lt;br /&gt;
* Der Brückengleichrichter B1 richtet die Wechselspannung in eine Gleichspannung.&lt;br /&gt;
* Die [[Diode#Z-Diode | Z-Diode]] D1 begrenzt die maximale Eingangsspannung für IC1. Sie muss lediglich so gewählt werden, dass der Spannungsregler noch sauber arbeiten kann.&lt;br /&gt;
* Die Eingangsspannung für IC1 wird durch C2 und C3 gepuffert. Die Wechselspannungsanteile der gleichgerichteten Spannung sind dadurch sehr gering.&lt;br /&gt;
* IC1 ist der Spannungsregler, er erzeugt die 5V Ausgangsspannung. C4 soll ein Schwingen des Reglers verhindern.&lt;br /&gt;
* IC1 kann alternativ auch mit einem stromsparenden Regler wie z.B LP2950 bestückt werden, dadurch stehen 3..5mA mehr für die Schaltung zur Verfügung, welche sonst vom 7805 verbraucht werden.&lt;br /&gt;
&lt;br /&gt;
;Achtung!: Es ist wichtig zu wissen, daß zwischen den Punkten &amp;quot;+5V&amp;quot; und &amp;quot;GND&amp;quot; im Normalfall nur ein Potential von 5 Volt anliegt und der Strom auch durch die Schaltung begrenzt wird. Aber das Potential gegen Erde ist immer noch lebensgefährlich, da bei dieser Netzteilart keine galvanische Trennung stattfindet. Solch eine Schaltung &#039;&#039;&#039;muss&#039;&#039;&#039; man in ein Gehäuse verbauen, welches vor Berührung mit leitfähigen Teilen schützt (Schutzklasse I oder II).&lt;br /&gt;
&lt;br /&gt;
{{Warnung|;Warnung!: Wirklich niemals (!) leitfähige Teile einer Schaltung berühren, die vom Stromnetz nicht galvanisch getrennt sind!}}&lt;br /&gt;
&lt;br /&gt;
Ein halbwegs sicherer Umgang mit der Schaltung ist dann möglich, wenn man über einen Trenntrafo eine galvanische Trennung zum Netz herstellt und hinter dem Trenntrafo mit der Schaltung arbeitet.&lt;br /&gt;
&lt;br /&gt;
=== Links ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.grosse-elektronik.de/das-elko/trlosestr/index.html Stromversorgung über Vorwiderstand oder Kondensator ausführlich erklärt]&lt;br /&gt;
* [http://www.elektronik-kompendium.de/public/schaerer/cpowsup.htm Direkte 230V Versorgung im ELKO]&lt;br /&gt;
* [http://www.trifolium.de/netzteil/kap13.html Auschnitt auch &amp;quot;Das Netzteil- und Konverterbuch&amp;quot;]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/192090?goto=new#new Forenbeitrag: Weitbereichslinearregler mit kleinem Ausgangsstrom]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/194814#new Forenbeitrag: Weitbereichslinearregler mit kleinem Ausgangsstrom, weitere Vorschläge]&lt;br /&gt;
&lt;br /&gt;
=== Besser: Querregler ===&lt;br /&gt;
[http://commons.wikimedia.org/wiki/File%3ACapacitive_Power_Supply.png]&lt;br /&gt;
Die Verwendung von &#039;&#039;Längsreglern&#039;&#039; (etwa 78L05) ist bei dieser Netzteilart ungünstig, da eine Vorregelung per Zener-Diode erforderlich ist.&lt;br /&gt;
Besser ist die Verwendung eines &#039;&#039;Querreglers&#039;&#039; (etwa TL431). Dessen Vorwiderstand wird so dimensioniert, dass die Spannungsschwankungen am Ladekondensator bei maximalem Entnahmestrom gerade ausgeglichen werden können. In diesem Fall erscheinen 150 Ω angemessen, für 1,5 V Ripplespannung an C2. Auf diese Weise erhält man einen Low-Drop-Spannungsregler mit – ohnehin erforderlichem – konstanten Stromverbrauch.&lt;br /&gt;
&lt;br /&gt;
Merke: Die Wirkleistungsaufnahme solcher Netzteilschaltungen ist proportional zur Ladespannung am Elko C2. Daher ist diese möglichst niedrig anzusetzen.&lt;br /&gt;
Kondensatornetzteile sind eher &#039;&#039;Stromquellen&#039;&#039; als &#039;&#039;Spannungsquellen&#039;&#039;, was bei der Schaltungsdimensionierung zu beachten bzw. auszunutzen ist.&lt;br /&gt;
&lt;br /&gt;
=== Noch besser: Schalt Shunt-Regler ===&lt;br /&gt;
&lt;br /&gt;
Mit einem &#039;Kondensator gekoppelten Schalt-Shunt-Regler&#039; (Capacitor-Coupled, Switched Shunt, Regulator oder &amp;quot;CCSS-Regulator&amp;quot;), z.B. dem [http://ww1.microchip.com/downloads/en/DeviceDoc/SR10%20B080613.pdf Supertex SR10] sind Standby-Verbräuche von weniger als 20mW möglich.&lt;br /&gt;
&lt;br /&gt;
[[Datei:SR10.PNG]]&lt;br /&gt;
&lt;br /&gt;
=== Relais-Schaltungen ===&lt;br /&gt;
Derartige Netzteile werden gern zur Ansteuerung von Relais eingesetzt. Um die Stromaufnahme und damit den Kondensator C1 möglichst klein zu halten (Kostenfaktor), werden gern 24-V-Typen benutzt, die sich mit 10 .. 20 mA Anzugstrom begnügen. Das ergibt aber trotzdem 0,25 .. 0,5 W Leistungsaufnahme, die von einem Konstantspannungsnetzteil permanent zur Verfügung gestellt wird und damit stets irgendwo verheizt wird, auch wenn das Relais nicht arbeitet.&lt;br /&gt;
&lt;br /&gt;
Eine Lösung des Problems ist die Umschaltung der Ausgangsspannung an C2. Damit kann die Relaisspule parallel zu C2 betrieben werden und wird zum Ausschalten durch einen Transistor mit Z-Diode am Kollektor gebrückt (ein selbstleitender SFET oder MOSFET liegt da nahe). Hauptsache, das Relais fällt bei – angenommen – 4 V auch tatsächlich ab. Die Freilaufdiode entfällt. Die Steuerschaltung (angenommen für 3 V) wird in diesem Fall mit einem Low-Drop-Längsregler mit genügend großem Eingangsspannungsbereich versorgt.&lt;br /&gt;
&lt;br /&gt;
[http://commons.wikimedia.org/wiki/File:Capacitive_power_supply_%2B_relay.png]&lt;br /&gt;
Eine andere Lösung verwendet eine Reihenschaltung sogar mehrerer Relaiswicklungen, die jeweils per Überbrückung abgeschaltet werden. In diesem Fall hat C2 bei höherer Spannungsfestigkeit eine vergleichsweise kleine Kapazität, da das Ripple größer ausfallen darf, da die Selbstinduktivität der Relaiswicklung(en) für Konstantstrom sorgt und C2 „leersaugt“.&lt;br /&gt;
&lt;br /&gt;
== Schaltnetzteil ==&lt;br /&gt;
&lt;br /&gt;
Schaltnetzteile sind heutzutage weit verbreitet, da sie gegenüber konventionellen Netzteilen eine kompaktere Bauweise, einen höheren Wirkungsgrad und geringere Produktionskosten aufweisen.&lt;br /&gt;
&lt;br /&gt;
Zur Versorgung einer eigenen Schaltung eignen sich am besten Steckernetzteile (auch &amp;quot;Wandwarzen&amp;quot; genannt :)) welche eine mehr oder weniger gut geregelte Ausgangsspannung bereit stellen.&lt;br /&gt;
&lt;br /&gt;
Um das Schaltnetzteil direkt in eine eigene Schaltung zu integrieren, ist die einzige Möglichkeit die Verwendung von fertigen AC/DC Modulen welche meist relativ teuer sind (im Vergleich zu Steckernetzteilen). Dafür bieten Fertigmodule meist gut spezifizierte Betriebsparameter und sind bei namhaften Herstellern auch über mehrere Jahre hinweg lieferbar. Ausserdem sind die leicht anwendbar, man muss kein Schaltnetzteilprofi sein.&lt;br /&gt;
&lt;br /&gt;
Als Alternative zum Kauf von fertigen Schaltnetzteilen soll im folgenden ein 230VAC-&amp;gt;5VDC Netzteil vorgestellt werden. Allerdings rate ich davon ab solch ein Netzteil in Umlauf zu bringen. Das Ganze dient eher als proof of concept und natürlich wurde das Netzteil nicht nach den geltenden Sicherheits- und EMV-Bestimmungen geprüft. Die Schaltung ist ausschließlich für eigene Experimente/Schaltungen gedacht.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Download&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Hier die ZIP Datei mit der EAGLE .brd- und .sch-Datei:&lt;br /&gt;
[http://www.mikrocontroller.net/wikifiles/9/94/Tiny_SMPS_eagle.zip Eagle Dateien downloaden]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Spezifikation&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Eingangsspannung 85VAC bis 265VAC @ 50-400 Hz&lt;br /&gt;
* Ausgangsspannung 5 Volt / 1 Ampere&lt;br /&gt;
&lt;br /&gt;
TODO: Ein paar mehr Messungen durchführen...&lt;br /&gt;
&lt;br /&gt;
Eingangsspannung kann auch unter 85VAC liegen (siehe Anmerkungen).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltplan&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Bild:Smps5v_sch.gif]]&lt;br /&gt;
&lt;br /&gt;
Der Schaltplan im Detail (von links nach rechts):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Primärseite&#039;&#039;&lt;br /&gt;
* F2 ist eine träge Sicherung (1 Ampere). Sie sichert die Schaltung ab, sollte auf der Primärseite ein Kurzschlussstrom fließen&lt;br /&gt;
* Der Brückengleichrichter richtet die Netzspannung gleich&lt;br /&gt;
* C9, L1, C2 bilden einen Pi-Filter. Über den Kondensatoren liegt bei 230VAC Eingangsspannung eine Spannung von ungefähr 310 Volt an&lt;br /&gt;
* C5, R1, D3 bilden ein [[Snubber]]-Netzwerk (Klemmschaltung) - dieses Netzwerk &amp;quot;verbrät&amp;quot; die Leistung welche beim Abschalten des Leistungstransistors in die Primärwicklung induziert wird (da sich die Spannungsverhältnisse umkehren)&lt;br /&gt;
* Der Regler-IC ohne Bezeichnung ist ein TNY264 - er integriert eine fortschrittliche [[PWM]]-Regelung (dabei handelt es sich um eine PWM mit variabler Frequenz und Frequenz-Jitter), eine primärseitige Strombegrenzung, einen Fehlereingang und die Erzeugung seiner eigenen Betriebsspannung aus der Netzspannung&lt;br /&gt;
* Der Trafo T1 ist ein Sperrwandlertrafo mit Luftspalt (Kern E16)&lt;br /&gt;
* C8 unterdrückt hochfrequente EMV Störungen - Wichtig: Der Kondensator muss der Klasse Y1 entsprechen um die Sicherheit zu gewährleisten.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Sekundärseite&#039;&#039;&lt;br /&gt;
* D2 dient als Gleichrichterdiode&lt;br /&gt;
* C4, L2, C3 bilden einen weiteren Pi-Filter zur Filterung der Ausgangsspannung&lt;br /&gt;
* Über [[Diode#Z-Diode | Zener Diode]] D1, R2 und Optokoppler OK1 wird die Ausgangsspannung zum Regler IC zurück gekoppelt. Der Regler versucht einen konstanten Strom durch den Transistor in OK1 fließen zu lassen, dadurch wird auf der Sekundärseite eine konstante Ausgangsspannung erzeugt.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Anmerkungen:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Zwischen L und N hätte man auch noch einen Varistor zur Überspannungsbegrenzung und einen X Kondensator (nach der Sicherung!) zur Unterdrückung von HF schalten können&lt;br /&gt;
* Zur Verbesserung der EMV hätte man auch noch eine Netzdoppeldrossel verwenden können. Diese Drossel würde Gegentaktstörungen verringern. Allerdings lässt sich auch mit einer einfachen Drossel eine ausreichende EMV erreichen (ob das bei dieser Schaltung der Fall ist weiss ich nicht und würde ich bezweifeln)&lt;br /&gt;
* Bei Versuchen am Labornetzteil stellte sich heraus, dass das Netzteil schon bei 50VDC Versorgung funktioniert. Einen Belastungstest habe ich bei dieser Spannung nicht durchgeführt, aber dadurch hat man die Möglichkeit das Netzteil gefahrlos zu erproben.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Layout&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Bild:Smps5v_brd.gif]]&lt;br /&gt;
&lt;br /&gt;
Zum Layout gibt es nicht viel zu sagen. Abstände wurden so groß wie möglich gehalten und der größte Teil des Layouts wurde mit großzügigen Kupferflächen realisiert, um eine gute Wärmeableitung und eine niederohmige Anbindung zu erhalten. Ob das Layout VDE-konform ist kann ich nicht sagen. Der Abstand zwischen Primär- und Sekundärseite sollte allerdings groß genug sein.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stückliste&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Das Netzteil wurde so gestaltet, dass alle Bauteile bei Farnell bestellt werden können. Nur die Platine muss man sich natürlich selbst ätzen.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable sortable&amp;quot; id=&amp;quot;stueckliste&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Stromlauf&lt;br /&gt;
! Bestellnummer&lt;br /&gt;
! Bezeichnung&lt;br /&gt;
! Preis (1 Stück)&lt;br /&gt;
|-&lt;br /&gt;
| F2&lt;br /&gt;
| 3030076&lt;br /&gt;
| Sicherung - 1A, Flink&lt;br /&gt;
| 0,62 €&lt;br /&gt;
|-&lt;br /&gt;
| B1&lt;br /&gt;
| 1467468&lt;br /&gt;
| DF04M Brückengleichrichter - 1.5A, 400V&lt;br /&gt;
| 0,21 €&lt;br /&gt;
|-&lt;br /&gt;
| C9 C2&lt;br /&gt;
| 1165626&lt;br /&gt;
| Kondensator Vishay - 4.7µF, 400V&lt;br /&gt;
| 0,23 €&lt;br /&gt;
|-&lt;br /&gt;
| L1&lt;br /&gt;
| 1077038&lt;br /&gt;
| Drossel - 2.2mH&lt;br /&gt;
| 1,25 €&lt;br /&gt;
|-&lt;br /&gt;
| IC1&lt;br /&gt;
| 9921320&lt;br /&gt;
| TNY264PN&lt;br /&gt;
| 1,65 €&lt;br /&gt;
|-&lt;br /&gt;
| D3&lt;br /&gt;
| 1299306&lt;br /&gt;
| SF18G Diode - 1A, 600V&lt;br /&gt;
| 0,23 €&lt;br /&gt;
|-&lt;br /&gt;
| C5&lt;br /&gt;
| 1141794&lt;br /&gt;
| Kondensator Vishay - 2.2nF, 1kV&lt;br /&gt;
| 0,22 €&lt;br /&gt;
|-&lt;br /&gt;
| R1&lt;br /&gt;
| &lt;br /&gt;
| Widerstand - 1/4W, 200k Ohm&lt;br /&gt;
| 0,05 €&lt;br /&gt;
|-&lt;br /&gt;
| C8&lt;br /&gt;
| 3531971&lt;br /&gt;
| Kondensator X1/Y1 Murata - 1nF, 4kV&lt;br /&gt;
| 0,31 €&lt;br /&gt;
|-&lt;br /&gt;
| T1&lt;br /&gt;
| 1214650&lt;br /&gt;
| Trafo Myrra 74094&lt;br /&gt;
| 4,20 €&lt;br /&gt;
|-&lt;br /&gt;
| D2&lt;br /&gt;
| 9907637&lt;br /&gt;
| Schottky Diode STPS2L60 - 2A&lt;br /&gt;
| 0,30 €&lt;br /&gt;
|-&lt;br /&gt;
| C4 C3&lt;br /&gt;
| 1219462&lt;br /&gt;
| Kondensator Panasonic - 470µF, 16V&lt;br /&gt;
| 0,37 €&lt;br /&gt;
|-&lt;br /&gt;
| L2&lt;br /&gt;
| 1077049&lt;br /&gt;
| Drossel - 10µH&lt;br /&gt;
| 1,25 €&lt;br /&gt;
|-&lt;br /&gt;
| D1&lt;br /&gt;
| 1097231&lt;br /&gt;
| Zener BZX79-C3V9 - 3.9 Volt, 500mW&lt;br /&gt;
| 0,11 €&lt;br /&gt;
|-&lt;br /&gt;
| R2&lt;br /&gt;
| &lt;br /&gt;
| Widerstand - 1/4W, 100Ω&lt;br /&gt;
| 0,05 €&lt;br /&gt;
|-&lt;br /&gt;
| OK1&lt;br /&gt;
| 9707700&lt;br /&gt;
| Optokoppler PC817&lt;br /&gt;
| 0,36 €&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Macht zusammen 11,88€. Das steht im grunde im keinen Verhältnis zu einem gekauften 5V/1A Netzteil, denn das kostet in etwa das Gleiche und ist bereits fertig aufgebaut und nach gültigen Normen geprüft. Die Eigenentwicklung solcher Netzteile lohnt sich nur in sehr großen Stückzahlen von 10.000 Stück und mehr und wenn man auf dem Gebiet viel Erfahrung hat. &lt;br /&gt;
&lt;br /&gt;
== Quellen ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:1. Wettbewerb]]&lt;br /&gt;
[[Category:Spannungsversorgung und Energiequellen]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:SR10.PNG&amp;diff=87433</id>
		<title>Datei:SR10.PNG</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:SR10.PNG&amp;diff=87433"/>
		<updated>2015-02-17T20:05:31Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86410</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86410"/>
		<updated>2014-12-31T12:10:14Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Software für Windows */ &amp;quot;Software&amp;quot; ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
Es geht hier um den Bau einer Wand- bzw. Tischuhr, bei welcher auf einer quadratischen Frontplatte die jeweils aktuelle Uhrzeit als Text durch Hinterleuchtung der entsprechenden Wörter angezeigt wird. Die Hinterleuchtung der Wörter erfolgt durch farbige RGB-LEDs (Farbeinstellung mittels Fernbedienung wählbar), welche durch einen mit der Uhrzeit synchronisierten Mikrocontroller angesteuert werden.&lt;br /&gt;
&lt;br /&gt;
Im Unterschied zu der bekannten QlockTwo Wortuhr, welche die Uhrzeit im 12 Stunden-Wiederholungsrhythmus in Fünf-Minuten-Schritten anzeigt, liegt dieser Wortuhr ein Konzept zu Grunde, welches eine minutengenaue Zeitanzeige für 24 Stunden ermöglicht. Um den unterschiedlichsten regionalen und persönlichen Gewohnheiten gerecht zu werden, verfügt diese minutengenaue 24 Stunden-Wortuhr über mehrere Betriebsarten, mit welchen sich über die allgemein üblichen Standard-Zeitanzeigen hinaus per Voreinstellung auch verschiedene, regional übliche Wortfolgen konfigurieren lassen (viertel nach ..., dreiviertel ..., viertel vor ... ,...). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_schwarz_Arial_orange.png|Schwarzes Acrylglas mit oranger Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_rot_Arial_weiss.png|Rotes Acrylglas mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Burlwood_Stencil_Allround_weiss.png|Burlwood (Wurzelholz) mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Edelstahl_Stencil_Allround_weiss.png|Edelstahl gebürstet mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Rost_Stencil_Allround_weiss.png|Rostiger Stahl mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4-Discovery-Board oder alternativ Arduino mega1284p, ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
* 288 WS2812-LEDs auf Stripes (18x16 Matrix, 60Stk. pro Meter)&lt;br /&gt;
* I²C-RTC DS3231&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* TSOP für die Bedienung/Konfiguration mittels IR-Fernbedienung ([[IRMP]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Software-Komponenten ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Software-Module für STM32F4-Discovery:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Tools zur Pflege/Erstellung der Wort-Tabellen (tables.h usw.)&lt;br /&gt;
&lt;br /&gt;
* Ansteuerung der WS2812-Stripes per DMA&lt;br /&gt;
&lt;br /&gt;
* Benutzer-Interaktion mittels [[IRMP]] (Anlernen, Farbe &amp;amp; Uhrzeit stellen usw.)&lt;br /&gt;
&lt;br /&gt;
* Debugging-Monitor mit [[MCURSES]] (insb. Display Front, Logging usw.)&lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung der DS3231 &lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung eines I2C-EEPROMS zur Speicherung der Einstellungen&lt;br /&gt;
&lt;br /&gt;
* Anpassung der Helligkeit an die Umgebung mittels LDR oder I²C Ambient-Light-Sensor&lt;br /&gt;
&lt;br /&gt;
* Anbindung von diversen DCF77-Modulen&lt;br /&gt;
&lt;br /&gt;
* Anbindung eines WLAN-Moduls ESP8266&lt;br /&gt;
&lt;br /&gt;
* Zugriff auf NTP-Server via WLAN&lt;br /&gt;
&lt;br /&gt;
== STM32F4 Discovery Projekt ==&lt;br /&gt;
&lt;br /&gt;
Download Version 0.5 vom 23.12.2014: [http://www.mikrocontroller.net/wikifiles/1/18/Wclock24h.zip Wclock24h.zip]&lt;br /&gt;
&lt;br /&gt;
=== Software für Windows ===&lt;br /&gt;
&lt;br /&gt;
* EM::Blocks IDE, siehe http://www.emblocks.org/&lt;br /&gt;
* ST-Link/V2 Software zum Flashen, siehe: http://www.st.com/web/catalog/tools/FM146/CL1984/SC724/SS1677/PF251168&lt;br /&gt;
* STM32 Virtual COM Port Driver: http://www.st.com/web/en/catalog/tools/PF257938&lt;br /&gt;
* PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) oder andere Terminal-Emulation&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h-Versuchsaufbau.jpg|miniatur|Versuchsaufbau mit STM32F4 Discovery Board]]&lt;br /&gt;
&lt;br /&gt;
* STM32F4 Discovery Board&lt;br /&gt;
&lt;br /&gt;
* TSOP31238&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: TSOP-Pin1 an Disco-Board GND, TSOP-Pin2 an Disco-Board 5V, TSOP-Pin3 an Disco PC14&lt;br /&gt;
      (Diese befinden sich alle am oberen Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
* WS2812 LED-Streifen mit 288 LEDs, pro Zeile 18 LEDs. Zum Test reicht erstmal ein Streifen mit 18 LEDs&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: Stripe +5V an externe Stromversorgung +5V&lt;br /&gt;
                  Stripe DI an Disco PC6&lt;br /&gt;
                  Stripe GND an externe Stromversorgung GND und an Disco GND (neben PC6)&lt;br /&gt;
      (PC6 und GND befinden sich am unteren Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
* Optional: Reichelt DCF77 Modul&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: DCF77 GND an Disco GND&lt;br /&gt;
                  DCF77 V+  an Disco 3,3V&lt;br /&gt;
                  DCF77 Out an Disco PC15&lt;br /&gt;
      (Alle 3 Anschlüsse befinden sich auf dem Disco-Board oben rechts nahe beieinander)&lt;br /&gt;
&lt;br /&gt;
      Wird ein anderes DCF77-Modul benutzt, welches einen Open-Collector-Ausgang&lt;br /&gt;
      hat, muss an PC15 noch ein 100k Pullup (zu 3,3V) angeschlossen oder der&lt;br /&gt;
      interne Pullup des STM32-Pins aktiviert werden.&lt;br /&gt;
&lt;br /&gt;
* Optional: ESP8266: WLAN Modul&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: ESP8266 GND an Disco GND&lt;br /&gt;
                  ESP8266 VCC an externe 3,3V (Vorsicht: Modul zieht bis zu 200mA!)&lt;br /&gt;
                  ESP8266 CH_PD ebenso an externe 3,3V&lt;br /&gt;
                  ESP8266 TXD an Disco UART2 RX (PA3)&lt;br /&gt;
                  ESP8266 RXD an Disco UART2 TX (PA2)&lt;br /&gt;
&lt;br /&gt;
Es ist wenig ratsam, ein DCF77- und das ESP8266-Modul gleichzeitig einzusetzen, da das ESP8266-WLAN-Modul den DCF77-Empfänger stören kann. Im Zweifel sollte man sich für eine der beiden Möglichkeiten entscheiden.&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration ===&lt;br /&gt;
&lt;br /&gt;
In wclock24h-config.h kann man folgende Parameter einstellen:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#define USE_MCURSES_MONITOR         1                           // use mcurses monitor for debugging/monitoring&lt;br /&gt;
#define USE_DCF77_MODULE            0                           // use DCF77 module&lt;br /&gt;
#define USE_ESP8266_MODULE          0                           // use ESP8266 module&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der [[MCURSES]]-Monitor dient rein zum Debuggen und zur Ausgabe von Fehlermeldungen. Man kann ihn auch abschalten: Dazu muss USE_MCURSES_MONITOR auf 0 gestellt werden. Dann ist kein Micro-USB-Kabel und auch kein Terminal-Programm nötig. Wenn man ein DCF77-Modul verwendet, dann musss USE_DCF77_MODULE auf 1 gesetzt werden. Dasselbe gilt für ein ESP8266-WLAN-Modul.&lt;br /&gt;
&lt;br /&gt;
Wenn man das ESP8266-Modul verwendet, dann sollte noch esp8266/esp8266-config.h bearbeitet werden:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
/*--------------------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
 * Time server (RFC 868)&lt;br /&gt;
 *&lt;br /&gt;
 * Default is is uclock.de (88.198.64.6)&lt;br /&gt;
 * You can also use ntp3.ptb.de (192.53.103.103) or any other RFC 868 time server&lt;br /&gt;
 *--------------------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
 */&lt;br /&gt;
#define NET_TIME_HOST           &amp;quot;88.198.64.6&amp;quot;               // IP address of RFC 868 time server&lt;br /&gt;
&lt;br /&gt;
/*--------------------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
 * SSID and KEY of your Access Point&lt;br /&gt;
 *&lt;br /&gt;
 * Set values only the first time. After powering up, ESP8266 will be initialized with these values.&lt;br /&gt;
 * After initializing your ESP8266 module should store the values in non volatile memory, so you should then&lt;br /&gt;
 * power off, reset the values below to empty strings again. Then your ESP8266 is ready to use.&lt;br /&gt;
 *--------------------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
 */&lt;br /&gt;
#define ESP8266_SSID            &amp;quot;&amp;quot;                          // set it only for first initialization, set it empty for later use (&amp;quot;&amp;quot;)&lt;br /&gt;
#define ESP8266_KEY             &amp;quot;&amp;quot;                          // set it only for first initialization, set it empty for later use (&amp;quot;&amp;quot;)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die aktuelle Zeit wird von der für NET_TIME_HOST eingestellten IP-Adresse geholt. Dies muss ein RFC 868 Time-Server sein, zum Beispiel ntp3.ptb.de (192.53.103.103). Da dieser Server oft ausgelastet ist, ist standardmäßig uclock.de (88.198.64.6) als Time-Server eingestellt.&lt;br /&gt;
&lt;br /&gt;
Beim allerersten Mal sollte man in dieser Datei die SSID und den KEY für den verwendeten AP einstellen. Sobald das ESP8266-Modul mit diesen Werten initialisiert wurde, speichert das Modul diese Werte intern. Dann können die beiden Parameter-Konstanten wieder geleert werden, um unnötige Wartezeiten bei der nur einmalig nötigen Initialisierung zu vermeiden.&lt;br /&gt;
&lt;br /&gt;
Die Uhrzeit wird einmal pro Stunde geholt, nämlich immer um xx:10:17 Uhr. Im [[MCURSES]]-Monitor kann man aber auch jederzeit die Taste &#039;n&#039; drücken, um ad hoc die Zeit zu holen. Das funktioniert auch mit der angelernten IR-Fernbedienung.&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wclock24-in-putty.png|miniatur|WordClock24h in PuTTY]]&lt;br /&gt;
&lt;br /&gt;
* Disco-Board und PC mit Mini-USB-Kabel verbinden (zum Flashen und Debuggen)&lt;br /&gt;
* Disco-Board und PC mit Micro-USB-Kabel verbinden (dient als COM-Schnittstelle)&lt;br /&gt;
* Projekt compilieren und flashen&lt;br /&gt;
* PuTTY starten&lt;br /&gt;
* PuTTY einstellen: Auswahl &amp;quot;Serial&amp;quot;, Serial Line: COM11 (kann abweichen, s.u.), Speed: 115200&lt;br /&gt;
* Einen Session-Namen eingeben, z.B. &amp;quot;Disco&amp;quot;&lt;br /&gt;
* Auf SAVE klicken, dann kann man die Session später wieder auswählen&lt;br /&gt;
* Open anklicken&lt;br /&gt;
&lt;br /&gt;
Es sollte nun im Terminal &amp;quot;Press any key to start&amp;quot; erscheinen. Nach Tastendruck erscheint dann das nebenstehende Bild. Ausserdem sollten nun die LEDs für &amp;quot;ES IST&amp;quot; in rot leuchten.&lt;br /&gt;
&lt;br /&gt;
Sollte man Probleme mit dem Finden der richtigen COM-Schnittstelle haben, hilft der Geräte-Manager aus der Systemsteuerung weiter. Wichtig: Die COM-Schnittstelle wird nur dann angezeigt, wenn das Programm auf dem Disco-Board auch läuft! Bei manuellen Resets des Disco-Boards muss die Terminal-Emulation zuvor geschlossen und anschließend neu geöffnet werden. Sonst erhält man keine neue Verbindung.&lt;br /&gt;
&lt;br /&gt;
Folgende Tasten werden ausgewertet:&lt;br /&gt;
&lt;br /&gt;
* x/X Anzeigemodus wechseln&lt;br /&gt;
* h/H Stunden einstellen&lt;br /&gt;
* m/M Minuten einstellen&lt;br /&gt;
* r/R Helligkeit für Rot&lt;br /&gt;
* g/G Helligkeit für Grün&lt;br /&gt;
* b/B Helligkeit für Blau&lt;br /&gt;
* n   Zeit von einem Time-Server holen&lt;br /&gt;
&lt;br /&gt;
Die Uhzeit wird jede Sekunde in Real Time hochgezählt.&lt;br /&gt;
&lt;br /&gt;
Wenn man nun die blaue Taste auf dem Disco-Board drückt, kann man eine Fernbedienung anlernen. Im Terminal wird man dann aufgefordert, die FB-Tasten für&lt;br /&gt;
&lt;br /&gt;
* Decrement Mode (LED1 leuchtet dabei)&lt;br /&gt;
* Increment Mode (LED2)&lt;br /&gt;
* Decrement hour (LED3)&lt;br /&gt;
* Increment hour (LED4)&lt;br /&gt;
* Decrement minute (LED5)&lt;br /&gt;
* Increment minute (LED6)&lt;br /&gt;
* Decrement red brightness (LED7)&lt;br /&gt;
* Increment red brightness (LED8)&lt;br /&gt;
* Decrement green brightness (LED9)&lt;br /&gt;
* Increment green brightness (LED10)&lt;br /&gt;
* Decrement blue brightness (LED11)&lt;br /&gt;
* Increment blue brightness (LED12)&lt;br /&gt;
* Get time from time server (LED13)&lt;br /&gt;
&lt;br /&gt;
zu drücken. Sind die FB-Tasten angelernt, kann man die Uhrzeit und den Anzeigemodus auch per IR-Fernbedienung einstellen.&lt;br /&gt;
&lt;br /&gt;
Es sind nur die gebräuchlichsten IR-Protokolle aktiviert, nämlich:&lt;br /&gt;
&lt;br /&gt;
* SIRCS (Sony)&lt;br /&gt;
* NEC (Viele Hersteller, sehr verbreitet)&lt;br /&gt;
* SAMSUNG&lt;br /&gt;
* MATSUSHITA&lt;br /&gt;
* KASEIKYO&lt;br /&gt;
&lt;br /&gt;
[[IRMP]] &amp;quot;versteht&amp;quot; jedoch bis zu 40 Protokolle. Braucht man weitere - wie RC5 oder RC6 - kann man sie in irmp/irmp-config.h freischalten. Bei Problemen empfiehlt sich die Lektüre des [[IRMP]]-Artikels.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
&lt;br /&gt;
Die Software wird ständig weiterentwickelt. Folgende Punkte sind bereits erledigt:&lt;br /&gt;
&lt;br /&gt;
* Anbindung IR-Fernbedienung mittels [IRMP]]&lt;br /&gt;
* Einstellen des Anzeigemodus (&amp;quot;Sprache&amp;quot;) per IR-FB&lt;br /&gt;
* Einstellung der Farbe mit IR-Fernbedienung&lt;br /&gt;
* Anbindung LED-Stripes WS2812&lt;br /&gt;
* Sanftes Überblenden der Uhrzeiten auf den LEDs&lt;br /&gt;
* Anbindung DCF77-Modul&lt;br /&gt;
* Anbindung ESP8266-WLAN-Modul&lt;br /&gt;
&lt;br /&gt;
Die nächsten geplanten Punkte sind:&lt;br /&gt;
&lt;br /&gt;
* Speichern aller Einstellungen in externem EEPROM&lt;br /&gt;
* Anbindung der DS3231-RTC&lt;br /&gt;
* Farbprogramme (Wählen der Farbe, optional automatisches Wechseln)&lt;br /&gt;
* Android App zum Fernsteuern der Uhr (Zeit, Modus, Farben)&lt;br /&gt;
&lt;br /&gt;
== Mechanik ==&lt;br /&gt;
&lt;br /&gt;
Gehäuse (sofern man nicht den 50x50 Ribba-Rahmen des schwedischen Möbelhauses nehmen möchte):&lt;br /&gt;
&lt;br /&gt;
Eine preisgünstige Variante wäre der Aufbau auf einer 45 x 45 cm großen, 16mm starken MDF-Platte aus dem Baumarkt. Die Kanten kann man in der Regel gleich beim Zuschnitt mit Kantenumleimern versäubern lassen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Ausfraesungen vorne.png|MDF-Platte mit trichterförmigen Ausfräsungen für die LEDs, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_Rueckseite mit Bohrloechern.jpg|MDF-Platte mit Bohrlöchern für die LEDs, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_weiss_lackiert.png|MDF-Platte weiß lackiert, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_rueckwaerts.png|MDF-Platte mit Alu-Gehäuserahmen, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_und Milchglasabdeckung.png|MDF-Platte mit Alu-Gehäuserahmen und Milchglasscheibe für Hintergrund-Beleuchtung, Rückansicht&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
Die MDF-Platte erhält 288 Bohrungen im Rastermaß der LED-Matrix. Ein Bohrplan ist hier als Download im pdf-Format verfügbar. Die Bohrungen werden nach vorne hin auf 14mm Durchmesser aufgebohrt und dienen einerseits zur Lichtabdichtung gegenüber den benachbarten LEDs, andererseits als Reflektorkammern. Will man die Bohrungen selbst anbringen, eignet sich dafür ein 5mm Holzbohrer mit aufgesetztem 14mm Versenker. Die stirnseitigen Schneiden des Versenkers sind im Winkel von 45 ° abgeschrägt, dadurch ergeben sich am Boden der Kammern schöne Reflektorflächen. Da der Durchmesser der Bohrlöcher mit 5mm für die LEDs zu klein ist, muss man sie abschließend mit einem größeren Holzbohrer (8mm,..) auf den für die LEDs erforderlichen Durchmesser aufbohren (leider sind im Handel keine 14mm Versenker-Aufsätze für 8mm Bohrer erhältlich). Man kann auch gleich Löcher mit 8mm Durchmesser bohren und dann mit einem Versenker ohne Bohrer auf 14mm Durchmesser aufweiten. Für die Anbringung der Acrylglas-Frontplatte mittels Neodym-Magneten erhält die MDF-Platte am Rand 9 Ausnehmungen (Vertiefungen), welche den Abmessungen der Magneten entsprechen.&lt;br /&gt;
&lt;br /&gt;
Nach Abschluss der Fräs- und Bohrarbeiten wird die MDF-Platte vorderseitig grundiert und weiß spritzlackiert. Wenn man über keine Farbspritzpistole verfügt, verwendet man dafür Spritzfüller und Acryllack aus der Dose - jedoch unbedingt lösungsmittelhaltig und nicht auf Wasserbasis, damit die MDF-Platte nicht aufquillt! Da sich der Farbnebel weiträumig verteilt und überall anlegt, sollten die Spritzarbeiten vorzugsweise im Freien oder in einem leeren, gut belüfteten Nebenraum durchgeführt werden. In geschlossenen Räumen muss mit Atemschutzmaske gearbeitet werden! Wer sich das nicht antun will, kann die MDF-Platte selbstverständlich auch mit Pinsel grundieren und lackieren.&lt;br /&gt;
&lt;br /&gt;
Auf die Rückseite der MDF-Platte wird ein Rahmen aus Alu-U-Profil aufgeschraubt (Baumarkt, 2m Stange auf 4 Stk. mit je 40cm Länge auf Gehrung geschnitten). Er dient als Gehäuse für die Aufnahme der Elektronik und der Verdrahtung.&lt;br /&gt;
&lt;br /&gt;
Weitere mechanische Arbeiten sind:&lt;br /&gt;
&lt;br /&gt;
* Aufkleben der LED-Streifen auf einer Grundplatte. Es werden horizontal 16 Streifen zu je 18 LEDs (60 LEDs/lfm) mit einem vertikalen Abstand von 18,75 mm auf eine Grundplatte aufgeklebt. Vorzugsweise verwendet man dafür Aluminiumblech zur Wärmeableitung. Die LED-Streifen müssen mäanderförmig - jede zweite Reihe um 180° gestürzt - angebracht werden, sodass sich eine schlangenähnliche Anordnung der LEDs ergibt.&lt;br /&gt;
&lt;br /&gt;
* In die Außenflächen der U-Profile werden LED-Strips zur Hintergrundbeleuchtung eingeklebt und zum Schutz vor Staub und mechanischer Beschädigung mit Milchglasstreifchen aus Acrylglas oder Weichplastik abgedeckt ( man kann selbstverständlich auch fertige LED-Kanäle aus dem Handel verwenden).&lt;br /&gt;
&lt;br /&gt;
* Die Platzierung von Platinen, Umgebungslicht-Sensor, Buchsen für Stromzufuhr und PC-Anschluss, ggf. Lautsprecher ist abzuklären;&lt;br /&gt;
&lt;br /&gt;
* Bei Deckenbefestigung wird an der Zimmerdecke das Netzteil der Uhr in einem unscheinbaren Kästchen angebracht. Daran wird die Uhr an 2 Drahtseilen (transparent isolierte Seile aus dem LED-Zubehörhandel) aufgehängt, welche gleichzeitig als Stromzuführung für die LEDs und die Elektronik dienen.&lt;br /&gt;
&lt;br /&gt;
* Die Acrylglas-Frontplatte wird mit magnetischen Pads versehen, mit welchen sie an den Magneten der Montageplatte haftet.&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1 ES IST HH UHR MM (12)&lt;br /&gt;
  2 ES IST HH UHR MM (24)&lt;br /&gt;
  3 ES IST HH UHR UND MM MINUTEN (12)&lt;br /&gt;
  4 ES IST HH UHR UND MM MINUTEN (24)&lt;br /&gt;
  5 ES IST MM MINUTEN NACH HH UHR (12) NACHTS&lt;br /&gt;
  6 ES IST MM MINUTEN NACH HH UHR (24)&lt;br /&gt;
  7 OSSI  - ES IST MM NACH HH (12) &lt;br /&gt;
  8 OSSI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
  9 OESI - ES IST MM NACH HH UHR (12) - OESI&lt;br /&gt;
 10 OESI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
 11 RHEIN/RUHR - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 12 RHEIN/RUHR - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 13 SCHWABEN - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 14 SCHWABEN - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 15 WESSI - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 16 WESSI - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 17 COUNTDOUWN MM MINUTEN VOR MITTERNACHT&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung um Modi mit anderen Wortkombinationen ist jederzeit möglich.&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Dateien WC24h_18x16_V2_Office_2003.zip und WC24h_18x16_V2_Office_2010.zip enthalten jeweils eine Excel und eine Access-Datenbank-Datei, in welchen ein Layout der Frontplatte sowie Tabellen mit den Positionsnummern der den einzelnen Wörtern zugeordneten LEDs enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation, Validierung, Code-Generator ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up in C#.net, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Der aktuelle Stand&#039;&#039;&#039; der Steuer-Tabellen kann auch online anhand von exemplarischen Uhrzeiten überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Auf diesen &#039;&#039;&#039;statischen&#039;&#039;&#039; HTML-Seiten gibt es für jeden Modus 60 Exemplarische Uhrzeiten:&lt;br /&gt;
  00:00, 01:01, 02:02, …, 23:23, 00:24, 01:25, 02:26, …, 11:59&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_uclock_de.png|miniatur|Interaktive WordClock24h]] Hier kann man sich &#039;&#039;&#039;interaktiv&#039;&#039;&#039; durch die Uhrzeiten klicken:&lt;br /&gt;
&lt;br /&gt;
* [http://uclock.de/ uclock.de]&lt;br /&gt;
Der Stand des Frontplatten-Layouts ist hier 08.12.2014.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wordclock2-cfg.png|miniatur|rechts|WordClock2 Exe Konfiguration]] Hier gibt es eine  Windows-Anwendung mit Simulationsmodus (ändern des Modus/Stunde/Minute per Taste) die auch als Screensaver benutzt werden kann nach umbennen der Exe:&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/code-creator/wordclock2scrnv/master/WordClock2.zip https://rawgit.com/code-creator/wordclock2scrnv/master/WordClock2.zip]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Im Mock-up in C#.net ist auch ein &#039;&#039;&#039;Code-Generator&#039;&#039;&#039; integriert. Für µCs mit Von-Neumann-Architektur und Havard-Architektur werden unterschiedliche Dialekte benötigt, z.B. mit &amp;quot;progmem&amp;quot; für einige gcc-Toolketten.&lt;br /&gt;
&lt;br /&gt;
* [https://gist.github.com/TorstenC/aec0724be4afcd1d7545 Codegenerator-Funktion] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/c45751a699af50fe9e64 tables.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/c45751a699af50fe9e64/raw/tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/620741027bf23899012a display.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/620741027bf23899012a/raw/display.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/0e44b1a5e11ba0dcd3d7 tables.h (Von-Neumann, 16 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/0e44b1a5e11ba0dcd3d7/raw/tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/362a97d2c74a6b522fd6 display.h (Von-Neumann, 16 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/362a97d2c74a6b522fd6/raw/display.h Ziel speichern unter…])&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
&lt;br /&gt;
*Wordclock 16 x 16 LED-Matrix, 32 cm x 32 cm :*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
*Wordclock 18 x 16 Matrix, 30 cm x 30 cm:*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2010.zip]] 18x16 Matrix, MS Office 2007/2010-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Frontplatte_Arial_45x45cm.pdf]] Frontplattenvorlage Maßstab 1:1 für Siebdruck, 450mm x 450 mm, 18x16 Matrix, Schriftfont &amp;quot;Arial&amp;quot;, Update 11.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohrplan_Frontplatte_45x45cm.pdf]]  Bohr- und Frässchablone Maßstab 1:1 für  MDF-Montageplatte 450mm x 450 mm, 18x16 Matrix, Update 11.12.2014&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=ESP8266&amp;diff=86338</id>
		<title>ESP8266</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=ESP8266&amp;diff=86338"/>
		<updated>2014-12-25T22:25:51Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* AT-Befehle für eine Firmware auf Basis des SDK-Beispiels &amp;quot;AT&amp;quot; */ CIPSEND Eingabeprompt korrigiert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Datei:ESP8266.jpg|thumb|300px|ESP8266, Funkmodul]]&lt;br /&gt;
Das [[ESP8266]] von dem Hersteller Espressif ist ein programmierbarer WLAN-SoC mit [[UART]]- und [[SPI]]-Schnittstelle. &#039;&#039;&#039;WLAN&#039;&#039;&#039;-Funkmodule mit ESP8266 sind ab 3€ verfügbar. Die UART-Schnitttstelle ermöglicht eine einfache Integration in Mikrocontrollerprojekte.&lt;br /&gt;
&lt;br /&gt;
== Spezifikation ==&lt;br /&gt;
Laut Hersteller &amp;lt;ref&amp;gt;[http://espressif.com/en/products/esp8266 &#039;&#039;Herstellerseite -  unter Details&#039;&#039;] Abgerufen am 26. August 2014.&amp;lt;/ref&amp;gt;. :&lt;br /&gt;
* 802.11 b/g/n&lt;br /&gt;
* Wi-Fi Direct (P2P), soft-AP&lt;br /&gt;
* Integrated TCP/IP protocol stack&lt;br /&gt;
* Integrated TR switch, balun, LNA, power amplifier and matching network&lt;br /&gt;
* Integrated PLLs, regulators, DCXO and power management units&lt;br /&gt;
* +19.5dBm output power in 802.11b mode&lt;br /&gt;
* Power down leakage current of &amp;lt;10uA&lt;br /&gt;
* Integrated low power 32-bit CPU could be used as application processor&lt;br /&gt;
* SDIO 1.1/2.0, SPI, UART&lt;br /&gt;
* STBC, 1×1 MIMO, 2×1 MIMO&lt;br /&gt;
* A-MPDU &amp;amp; A-MSDU aggregation &amp;amp; 0.4ms guard interval&lt;br /&gt;
* Wake up and transmit packets in &amp;lt; 2ms&lt;br /&gt;
* Standby power consumption of &amp;lt; 1.0mW (DTIM3)&lt;br /&gt;
* VCC: 3,3V (Achtung: Eingänge sind &#039;&#039;&#039;NICHT 5V TOLERANT&#039;&#039;&#039;!)&lt;br /&gt;
Weiterhin:&lt;br /&gt;
* GPIOs, ADC&lt;br /&gt;
&lt;br /&gt;
=== Datendurchsatz/Performanz ===&lt;br /&gt;
[https://www.mikrocontroller.net/topic/342240?page=single#3857630 Beitrag im Forum mit Tests: TCP: bis zu 7 MBit/s]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://bbs.espressif.com/viewtopic.php?f=7&amp;amp;t=24 Beitrag Espressif-Form: UART loopback: 4.5 Mbps]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Bei den chinesischen Modulen mit Firmware 0.9.1 werden Ping Befehle unabhängig von der Paketgröße typischerweise in 30-150ms beantwortet. Datenpakete, die man vom PC aus an das Modul sendet werden unabhängig von der Paketgröße typischerweise nach 100-200ms quittiert.&lt;br /&gt;
&lt;br /&gt;
== WLAN-Module mit ESP8266 ==&lt;br /&gt;
Es existieren ca. 11 Varianten von chinesischen Herstellern. Beispielsweise mit PCB- oder Keramik-Antenne oder mit u.fl.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Die Firmware 0.9.1 unterstützt bis zu vier gleichzeitige TCP oder UDP Verbindungen. Sie kann sich in vorhandene WLAN Netze einbuchen, aber auch selbst Access-Point mit DHCP Server sein. Der Access-Point ist zu Android kompatibel (mit 4.1.2 getestet).&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
Die Firmware enhtält jedoch keinen Router. Mehrere Computer, die mit dem Modul als Access-Point verbunden sind, können keine Verbindung zueinander aufbauen.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
#Produktbeschreibung: [[http://playground.boxtec.ch/doku.php/wireless/esp8266]]&lt;br /&gt;
&lt;br /&gt;
=== Pinbelegung einiger ESP8266-Module ===&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
Datei:ESP8266-PinBelegung1.jpg|Pinbelegung - Groß mit PCB-Antenne&lt;br /&gt;
Datei:ESP8266-PinBelegung2.jpg|Pinbelegung - Klein mit Keramik-Antenne&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
Quelle &amp;lt;ref&amp;gt;[http://pan.baidu.com/share/link?shareid=727869034&amp;amp;uk=1900861665 &#039;&#039;Seller Information&#039;&#039;] Abgerufen am 26. August 2014.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== AT-Befehle für eine Firmware auf Basis des SDK-Beispiels &amp;quot;AT&amp;quot;==&lt;br /&gt;
&lt;br /&gt;
Einstellen des Moduls als AP&lt;br /&gt;
&lt;br /&gt;
Da wir nicht wissen, in welchem Modus sich das Modul gerade befindet, fragen wir diesen ab mit dem &lt;br /&gt;
Befehl AT+CWMODE?  Das Modul antwortet mit &lt;br /&gt;
&lt;br /&gt;
    AT+CWMODE?&amp;lt;\r&amp;gt;&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;+CWMODE:1&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
    &amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
    OK&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
In diesem Fall ist das Modul aktuell im Modus 1 ( Station) eingestellt. Also ändern wir den Modus auf 2 ( AP)&lt;br /&gt;
mit dem Befehl AT+CWMODE=2. Nach diesem Befehl ist ein Reset des Moduls erforderlich, damit die Änderung &lt;br /&gt;
sichtbar wird. Mit dem Befehl AT+RST führen wir diesen durch. Das Modul startet neu und die Stromaufnahme&lt;br /&gt;
steigt auf ca 80 mA. Das Modul ist jetzt als WLAN AP im Wireless Lan sichtbar. &lt;br /&gt;
&lt;br /&gt;
Jetzt müssen wir noch einstellen, das wir mehrere Verbindungen gleichzeit haben wollen und den TCP Server starten und einstellen. Mit dem Befehl AT+CIPMUX=1 sagen wir dem Modul, das wir mehrere verbindungen haben wollen. Und mit dem Befehl AT+CIPSERVER=1,2526 starten wir den TCP Server und lassen ihn auf Port 2526 laufen. Sobald sich ein Client verbindet, sendet das Modul &#039;Link&#039; + LF + CR. Beim Trennen einer Verbindung vom Client kommt &#039;Unlink&#039; + LF + CR.&lt;br /&gt;
&lt;br /&gt;
Ab hier können wir uns über ein TCP Socket auf Port 2526 mit dem Modul verbinden und Daten austauschen. Empfangene Daten werden folgender Weise angezeigt. Gesendet wurde  &amp;quot;Hallo Leute&amp;quot; + LF + CR.&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
     +IPD,0,11:Hallo Leute&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
     OK&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
&lt;br /&gt;
+IPD kommt immer, 0 ist die erste Verbindung. Wenn 2 Geräte gleichzeitig eine Verbindung aufgebaut haben, steht dort eine 1. 11 Zeichen wurden empfangen, dann kommen die Daten.&lt;br /&gt;
&lt;br /&gt;
Zum senden von Daten vom Modul zum Client geht man folgender weise vor. Erstmal sagen wir dem Modul, wieviel Daten wir an welche Verbindung schicken wollen. Mit dem Befehl AT+CIPSEND=0,5 z.B. sagen wir dem Modul wir möchten 5 Bytes an Verbindung 0 senden. Nach diesem Befehl werden die nächsten 5 zeichen direkt an die Verbindung weitergereicht.&lt;br /&gt;
Sollte keine aktive Verbindung bestehen, sendet das Modul &lt;br /&gt;
     AT+CIPSEND=0,5&amp;lt;\r&amp;gt;&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;link is not&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
ansonsten kommt &lt;br /&gt;
     &amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt; &amp;gt;&lt;br /&gt;
und man kann Daten senden. Nach dem absenden der Daten &#039;Leute&#039; + LF + CR sendet das Modul &lt;br /&gt;
    Leute&amp;lt;\r&amp;gt;&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;busy&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
    &amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
    busy&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
    &amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
    SEND OK&amp;lt;\r&amp;gt;&amp;lt;\n&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einstellen des Moduls als Station&lt;br /&gt;
&lt;br /&gt;
== Software Development Kit (SDK) ==&lt;br /&gt;
Mit dem SDK können eigene Applikationen programmiert und die im SDK vorhandenen Beispiele &amp;quot;AT&amp;quot; und &amp;quot;IoT&amp;quot; verändert werden. Das SDK wird vom Hersteller zur Verfügung gestellt (Stand 25.10.2014). Passend zum SDK existiert eine virtuelle Maschine mit eingerichtetem gcc zum Kompilieren. Insbesondere der nun verfügbare gcc basiert auf einer Community-Entwicklung.&lt;br /&gt;
&lt;br /&gt;
[http://bbs.espressif.com/viewforum.php?f=5&amp;amp;sid=3cf7540ab17805367e6a45d2c4682fc9 SDK0.9.2 + virtuelle Linuxmaschine mit eingerichtetem gcc]&lt;br /&gt;
&lt;br /&gt;
[https://drive.google.com/folderview?id=0B5bwBE9A5dBXaExvdDExVFNrUXM&amp;amp;usp=sharing Alternativlink für die virtuelle Maschine + Anleitung/HOWTO für das Setup sowie für das Kompilieren]&lt;br /&gt;
&lt;br /&gt;
=== Firmware updaten ===&lt;br /&gt;
Typischerweise wird eine kompilierte Firmware per UART-Bootloader des ESP8266-SoC auf einen Flash-Chip eines ESP8266-Moduls geladen. Von dort startet der ESP8266-SoC anschließend die Firmware.&lt;br /&gt;
&lt;br /&gt;
[http://github.com/themadinventor/esptool Python Tool zum Flashen (von Fredrik Ahlberg)] &amp;lt;br&amp;gt;&lt;br /&gt;
[http://github.com/3s1d/esp_prog Extension zum Tool von Fredrik Ahlberg] &amp;lt;br&amp;gt;&lt;br /&gt;
[http://www.mikrocontroller.net/topic/342240?page=2#3857075 Tool zum Flashen (von Christian Klippel)] &amp;lt;br&amp;gt;&lt;br /&gt;
[http://defcon-cc.dyndns.org/wiki/ESP8266#Update Anleitung, extern] &amp;lt;br&amp;gt;&lt;br /&gt;
[http://www.mikrocontroller.net/topic/342240?page=3#3810559 Anleitung, Forum]&lt;br /&gt;
&lt;br /&gt;
=== Anmerkung ===&lt;br /&gt;
Mit dem SDK wird der Mikrocontroller progammiert, der sich direkt auf dem ESP8266-SoC-Chip befindet. Dies ist nicht zu verwechseln mit Programmieranleitungen zur UART-Ansteuerung des ESP8266-SoC (meist mit AT-Firmware) mit einem anderen Mikrocontroller.&lt;br /&gt;
&lt;br /&gt;
==Checkliste bei Problemen mit dem Modul/Compiler/SDK==&lt;br /&gt;
Bitte berücksichtige bei der Frage nach Hilfestellung zu Deinem Problem die folgende Checkliste.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bei Problemen mit der AT-Firmware/UART-Ansteuerung mit Mikrocontroller&#039;&#039;&#039;&lt;br /&gt;
# Was nutzt Du für die Stromversorgung?&amp;lt;br/&amp;gt;(Ganz knapp benennen, so dass Rückschlüsse auf Spannung und Stromstärke möglich sind)&lt;br /&gt;
# Welche Firmware-Version verwendest Du und von woher hast Du sie?&lt;br /&gt;
# Welchen Mikrocontroller verwendest Du?&lt;br /&gt;
# Welche Baudrate verwendest Du?&lt;br /&gt;
# &amp;quot;Sieht&amp;quot; das Modul den AP, &amp;quot;sieht&amp;quot; der PC das Modul?&lt;br /&gt;
# Funktioniert ein Connect?&lt;br /&gt;
# Welche AT-Befehlssequenz verwendest Du und was antwortet das Modul?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bei Problemen mit dem SDK/Compiler&#039;&#039;&#039;&lt;br /&gt;
# Benutzt Du die neuste, offizielle VM?&amp;lt;br/&amp;gt;(Diese ist ausgelegt für das neueste SDK)&lt;br /&gt;
# Benutzt Du das neueste, offizielle SDK? Welche Version benutzt Du?&amp;lt;br/&amp;gt;(Es werden regelmäßig Bugfixes und Erweiterungen eingepflegt)&lt;br /&gt;
# Kannst Du die SDK-Beispiele (IoT,AT) entsprechend der offiziellen Anleitung kompilieren, flashen und läuft es?&lt;br /&gt;
&lt;br /&gt;
== SDK Programmers Guide ==&lt;br /&gt;
(ggf. später in eigenen Artikel)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; GPIO Initialisieren, Setzen, Löschen, Lesen: &#039;&#039;&#039; TODO&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; UART ECHO LOOP: &#039;&#039;&#039; TODO&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; ADC lesen: &#039;&#039;&#039; TODO&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Watchdog und Timer ===&lt;br /&gt;
&amp;lt;h4&amp;gt;&lt;br /&gt;
In der C Datei in der der Watchdog an/ausgeschaltet werden soll&lt;br /&gt;
folgendes definieren:&lt;br /&gt;
&amp;lt;/h4&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   extern void ets_wdt_enable(void);&lt;br /&gt;
   extern void ets_wdt_disable(void);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;h4&amp;gt;&lt;br /&gt;
Diese beiden Funktionen sind im internen ROM.&lt;br /&gt;
Dann eben diese Funktionen entsprechend aufrufen.&lt;br /&gt;
&amp;lt;/h4&amp;gt;&lt;br /&gt;
&amp;lt;h4&amp;gt;&lt;br /&gt;
Es gibt auch noch:&lt;br /&gt;
&amp;lt;/h4&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   extern void wdt_feed(void);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;h4&amp;gt;&lt;br /&gt;
Wird diese Funktion aufgerufen wird der Watchdog zurückgesetzt und&lt;br /&gt;
startet wieder bei 0.&lt;br /&gt;
&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Interrupts: &#039;&#039;&#039; TODO&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; WLAN UDP/TCP ECHO LOOP: &#039;&#039;&#039; TODO&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; Minimalbeispiel1: GPIO/LED schalten mittels UART: &#039;&#039;&#039; TODO &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; Minimalbeispiel2: GPIO/LED schalten von einem zweiten Modul aus: &#039;&#039;&#039; TODO&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
[http://www.esp8266.com/ ESP8266 Community Forum]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://github.com/esp8266 ESP8266 Github mit Wiki und Source-Code Samples]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://defcon-cc.dyndns.org/wiki/ESP8266 ESP8266-Informationen]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/topic/348772 Topic neu im mikrocontroller.net-Forum]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/topic/342240 Topic alt im mikrocontroller.net-Forum]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.mikrocontroller.net/topic/342878 Sammelbestellungen im mikrocontroller.net-Forum]&lt;br /&gt;
&lt;br /&gt;
=== Dokumente === &lt;br /&gt;
[https://drive.google.com/folderview?id=0B5bwBE9A5dBXaExvdDExVFNrUXM&amp;amp;usp=sharing Anleitung/HOWTO für das Setup der virtuellen Maschine (SDK) sowie für das Kompilieren]&amp;lt;br/&amp;gt;&lt;br /&gt;
[https://nurdspace.nl/ESP8266 Übersetztes Datenblatt]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.electrodragon.com/w/Wi07c AT Instructions Set (English)] und [http://www.electrodragon.com/w/Wi07c#First_time_use_guide Anleitung zum Betrieb an einem Arduino (inkl. Code)]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://thomaspfeifer.net/esp8266_wlan_seriell_modul_at_kommandos.htm Beschreibung der AT-Kommandos mit Beispielen]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.mikrocontroller.net/attachment/229016/Espressif_IoT_AT____v0.1.5.906.pdf Espressif AT Instruction Set(Chinese)]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.seeedstudio.com/document/pdf/ESP8266%20Specifications(Chinese).pdf ESP8266 Specifications(Chinese)]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Daten===&lt;br /&gt;
[http://bbs.espressif.com/viewforum.php?f=5&amp;amp;sid=3cf7540ab17805367e6a45d2c4682fc9 SDK0.9.2 + virtuelle Linuxmaschine mit eingerichtetem gcc]&amp;lt;br&amp;gt;&lt;br /&gt;
[https://drive.google.com/folderview?id=0B5bwBE9A5dBXaExvdDExVFNrUXM&amp;amp;usp=sharing Alternativlink für die virtuelle Maschine]&amp;lt;br/&amp;gt;&lt;br /&gt;
[https://onedrive.live.com/#cid=C4DDF72E6EEA3826&amp;amp;id=C4DDF72E6EEA3826%21631 Dateien (Xplorer+SDK+PDF+etc.)]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.mikrocontroller.net/attachment/230185/esp8266_config_v050.exe Config-Tool] &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Bezugsquellen ===&lt;br /&gt;
[http://www.aliexpress.com/wholesale?SearchText=ESP8266 aliexpress.com] ~ 3€&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.banggood.com/?zf=283997 banggood.com] ~ 3.50€&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.ebay.de Ebay]&lt;br /&gt;
ab 3€ inkl. Versand, Einzelstückpreis: ESP-01/02/03/04/05&amp;lt;br/&amp;gt;&lt;br /&gt;
(Suchbegriff: ESP8266, Option Artikelstandort: &amp;quot;Weltweit&amp;quot;)&amp;lt;br/&amp;gt;&lt;br /&gt;
(10 Stück ab 27 EUR inkl. Versand; Suchbegriff: 10pcs ESP8266)&amp;lt;br/&amp;gt;&lt;br /&gt;
ab 3.20€ inkl. Versand, Einzelstückpreis: ESP-07/08/09/11&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.electrodragon.com/?s=esp8266&amp;amp;post_type=product electrodragon.com] ~ 3.50€ (zzgl. Versand)&amp;lt;br/&amp;gt;&lt;br /&gt;
[https://ex-store.de/advanced_search_result.php?keywords=esp8266&amp;amp;x=0&amp;amp;y=0 eX-store.de] (ESP-01,ESP-02, ESP-03,ESP-05,ESP-07) ab 5.49€ (zzgl. Versand)&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.seeedstudio.com/depot/WiFi-Serial-Transceiver-Module-w-ESP8266-p-1994.html seeedstudio.com] ~ 5.50€&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Anderes==&lt;br /&gt;
[http://www.mikrocontroller.net/articles/ESP8266-CPCB PCB für Community-Modul (Vorschlag)]&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--von [[axhieb]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Bauteile]]&lt;br /&gt;
[[Kategorie:Funk]]&lt;br /&gt;
[[Kategorie:Wlan]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:HUB_08_RGB.jpg&amp;diff=86302</id>
		<title>Datei:HUB 08 RGB.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:HUB_08_RGB.jpg&amp;diff=86302"/>
		<updated>2014-12-19T23:13:53Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pinbelegung eines LED-Display-Moduls (LED-Matrix) mit 32x16 RGB-LEDs, Variante HUB08 für 1/16-Scan&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:HUB_08_RGB.jpg&amp;diff=86301</id>
		<title>Datei:HUB 08 RGB.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:HUB_08_RGB.jpg&amp;diff=86301"/>
		<updated>2014-12-19T23:11:12Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Pinbelegung eines LED-Display-Moduls (LED-Matrix) mit 32x16 RGB-LEDs, Variante HUB08&amp;quot; für 1/16-Scan&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pinbelegung eines LED-Display-Moduls (LED-Matrix) mit 32x16 RGB-LEDs, Variante HUB08&amp;quot; für 1/16-Scan&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86269</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86269"/>
		<updated>2014-12-16T11:50:12Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Verifikation, Validierung, Code-Generator */ Tippfehler&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
Es geht hier um den Bau einer Wand- bzw. Tischuhr, bei welcher auf einer quadratischen Frontplatte die jeweils aktuelle Uhrzeit als Text durch Hinterleuchtung der entsprechenden Wörter angezeigt wird. Die Hinterleuchtung der Wörter erfolgt durch farbige RGB-LEDs (Farbeinstellung mittels Fernbedienung wählbar), welche durch einen mit der Uhrzeit synchronisierten Mikrocontroller angesteuert werden.&lt;br /&gt;
&lt;br /&gt;
Im Unterschied zu der bekannten QlockTwo Wortuhr, welche die Uhrzeit im 12 Stunden-Wiederholungsrhythmus in Fünf-Minuten-Schritten anzeigt, liegt dieser Wortuhr ein Konzept zu Grunde, welches eine minutengenaue Zeitanzeige für 24 Stunden ermöglicht. Um den unterschiedlichsten regionalen und persönlichen Gewohnheiten gerecht zu werden, verfügt diese minutengenaue 24 Stunden-Wortuhr über mehrere Betriebsarten, mit welchen sich über die allgemein üblichen Standard-Zeitanzeigen hinaus per Voreinstellung auch verschiedene, regional übliche Wortfolgen konfigurieren lassen (viertel nach ..., dreiviertel ..., viertel vor ... ,...). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_schwarz_Arial_orange.png|Schwarzes Acrylglas mit oranger Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_rot_Arial_weiss.png|Rotes Acrylglas mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Burlwood_Stencil_Allround_weiss.png|Burlwood (Wurzelholz) mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Edelstahl_Stencil_Allround_weiss.png|Edelstahl gebürstet mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Rost_Stencil_Allround_weiss.png|Rostiger Stahl mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4-Discovery-Board oder alternativ Arduino mega1284p, ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
* 288 WS2812-LEDs auf Stripes (18x16 Matrix, 60Stk. pro Meter)&lt;br /&gt;
* I²C-RTC DS3231&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* TSOP für die Bedienung/Konfiguration mittels IR-Fernbedienung ([[IRMP]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Software-Komponenten ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Software-Module für STM32F4-Discovery:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Tools zur Pflege/Erstellung der Wort-Tabellen (tables.h usw.)&lt;br /&gt;
&lt;br /&gt;
* Ansteuerung der WS2812-Stripes per DMA&lt;br /&gt;
&lt;br /&gt;
* Benutzer-Interaktion mittels [[IRMP]] (Anlernen, Farbe &amp;amp; Uhrzeit stellen usw.)&lt;br /&gt;
&lt;br /&gt;
* Debugging-Monitor mit [[MCURSES]] (insb. Display Front, Logging usw.)&lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung der DS3231 &lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung eines I2C-EEPROMS zur Speicherung der Einstellungen&lt;br /&gt;
&lt;br /&gt;
* Anpassung der Helligkeit an die Umgebung mittels LDR oder I²C Ambient-Light-Sensor&lt;br /&gt;
&lt;br /&gt;
* Anbindung von diversen DCF77-Modulen&lt;br /&gt;
&lt;br /&gt;
* Anbindung eines WLAN-Moduls ESP8266&lt;br /&gt;
&lt;br /&gt;
* Zugriff auf NTP-Server via WLAN&lt;br /&gt;
&lt;br /&gt;
== CooCox Projekt ==&lt;br /&gt;
&lt;br /&gt;
Download Version 0.4.2 vom 16.12.2014: [http://www.mikrocontroller.net/wikifiles/1/18/Wclock24h.zip Wclock24h.zip]&lt;br /&gt;
&lt;br /&gt;
=== Software für Windows ===&lt;br /&gt;
&lt;br /&gt;
* CooCox IDE, siehe [[STM32_CooCox_Installation]]&lt;br /&gt;
* ST-Link zum Flashen (Download steht in obigem Artikel)&lt;br /&gt;
* STM32 Virtual COM Port Driver: http://www.st.com/web/en/catalog/tools/PF257938&lt;br /&gt;
* PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) oder andere Terminal-Emulation&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h-Versuchsaufbau.jpg|miniatur|Versuchsaufbau mit STM32F4 Discovery Board]]&lt;br /&gt;
&lt;br /&gt;
* STM32F4 Discovery Board&lt;br /&gt;
&lt;br /&gt;
* TSOP31238&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: TSOP-Pin1 an Disco-Board GND, TSOP-Pin2 an Disco-Board 5V, TSOP-Pin3 an Disco PC14&lt;br /&gt;
      (Diese befinden sich alle am oberen Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
* WS2812 LED-Streifen, pro Zeile 18 LEDs. Zum Test reicht erstmal ein Streifen mit 18 LEDs&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: Stripe +5V an externe Stromversorgung +5V&lt;br /&gt;
                  Stripe DI an Disco PC6&lt;br /&gt;
                  Stripe GND an externe Stromversorgung GND und an Disco GND (neben PC6)&lt;br /&gt;
      (PC6 und GND befinden sich am unteren Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wclock24-in-putty.png|miniatur|WordClock24h in PuTTY]]&lt;br /&gt;
&lt;br /&gt;
* Disco-Board und PC mit Mini-USB-Kabel verbinden (zum Flashen und Debuggen)&lt;br /&gt;
* Disco-Board und PC mit Micro-USB-Kabel verbinden (dient als COM-Schnittstelle)&lt;br /&gt;
* Projekt compilieren und flashen&lt;br /&gt;
* PuTTY starten&lt;br /&gt;
* PuTTY einstellen: Auswahl &amp;quot;Serial&amp;quot;, Serial Line: COM11 (kann abweichen, s.u.), Speed: 115200&lt;br /&gt;
* Einen Session-Namen eingeben, z.B. &amp;quot;Disco&amp;quot;&lt;br /&gt;
* Auf SAVE klicken, dann kann man die Session später wieder auswählen&lt;br /&gt;
* Open anklicken&lt;br /&gt;
&lt;br /&gt;
Es sollte nun im Terminal &amp;quot;Press any key to start&amp;quot; erscheinen. Nach Tastendruck erscheint dann das nebenstehende Bild. Ausserdem sollten nun die LEDs für &amp;quot;ES IST&amp;quot; in rot leuchten.&lt;br /&gt;
&lt;br /&gt;
Sollte man Probleme mit dem Finden der richtigen COM-Schnittstelle haben, hilft der Geräte-Manager aus der Systemsteuerung weiter. Wichtig: Die COM-Schnittstelle wird nur dann angezeigt, wenn das Programm auf dem Disco-Board auch läuft! Bei manuellen Resets des Disco-Boards muss die Terminal-Emulation zuvor geschlossen und anschließend neu geöffnet werden. Sonst erhält man keine neue Verbindung.&lt;br /&gt;
&lt;br /&gt;
Folgende Tasten werden ausgewertet:&lt;br /&gt;
&lt;br /&gt;
* x/X Anzeigemodus wechseln&lt;br /&gt;
* h/H Stunden einstellen&lt;br /&gt;
* m/M Minuten einstellen&lt;br /&gt;
* r/R Helligkeit für Rot&lt;br /&gt;
* g/G Helligkeit für Grün&lt;br /&gt;
* b/B Helligkeit für Blau&lt;br /&gt;
&lt;br /&gt;
Drückt man innerhalb von 5 Sekunden keine Taste, springt die Uhrzeit um eine Minute weiter.&lt;br /&gt;
&lt;br /&gt;
Man kann den [[MCURSES]]-Monitor auch abschalten: Dazu muss USE_MCURSES_MONITOR in wclock24h-config.h auf 0 gestellt werden. Dann ist kein Micro-USB-Kabel und auch kein Terminal-Programm nötig. Allerdings muss dann die IR-Fernbedienung zur Zeit noch &amp;quot;blind&amp;quot; programmiert werden, d.h. ohne Interaktion. Es ist jedoch geplant, dafür auch die LEDs einzusetzen.&lt;br /&gt;
&lt;br /&gt;
Wenn man nun die blaue Taste auf dem Disco-Board drückt, kann man eine Fernbedienung anlernen. Im Terminal wird man dann aufgefordert, die FB-Tasten für&lt;br /&gt;
&lt;br /&gt;
* Decrement Mode (LED1 leuchtet dabei)&lt;br /&gt;
* Increment Mode (LED2)&lt;br /&gt;
* Decrement hour (LED3)&lt;br /&gt;
* Increment hour (LED4)&lt;br /&gt;
* Decrement minute (LED5)&lt;br /&gt;
* Increment minute (LED6)&lt;br /&gt;
* Decrement red brightness (LED7)&lt;br /&gt;
* Increment red brightness (LED8)&lt;br /&gt;
* Decrement green brightness (LED9)&lt;br /&gt;
* Increment green brightness (LED10)&lt;br /&gt;
* Decrement blue brightness (LED11)&lt;br /&gt;
* Increment blue brightness (LED12)&lt;br /&gt;
&lt;br /&gt;
zu drücken. Sind die FB-Tasten angelernt, kann man die Uhrzeit und den Anzeigemodus auch per IR-Fernbedienung einstellen.&lt;br /&gt;
&lt;br /&gt;
Es sind nur die gebräuchlichsten IR-Protokolle aktiviert, nämlich:&lt;br /&gt;
&lt;br /&gt;
* SIRCS (Sony)&lt;br /&gt;
* NEC (Viele Hersteller, sehr verbreitet)&lt;br /&gt;
* SAMSUNG&lt;br /&gt;
* MATSUSHITA&lt;br /&gt;
* KASEIKYO&lt;br /&gt;
&lt;br /&gt;
[[IRMP]] &amp;quot;versteht&amp;quot; jedoch bis zu 40 Protokolle. Braucht man weitere - wie RC5 oder RC6 - kann man sie in irmp/irmp-config.h freischalten. Bei Problemen empfiehlt sich die Lektüre des [[IRMP]]-Artikels.&lt;br /&gt;
&lt;br /&gt;
=== Weitere geplante Features ===&lt;br /&gt;
&lt;br /&gt;
Die Software wird ständig weiterentwickelt. Folgende Punkte sind bereits erledigt:&lt;br /&gt;
&lt;br /&gt;
* Anbindung IR-Fernbedienung mittels [IRMP]]&lt;br /&gt;
* Einstellen des Anzeigemodus (&amp;quot;Sprache&amp;quot;) per IR-FB&lt;br /&gt;
* Einstellung der Farbe mit IR-Fernbedienung&lt;br /&gt;
* Anbindung LED-Stripes WS2812&lt;br /&gt;
* Sanftes Überblenden der Uhrzeiten auf den LEDs&lt;br /&gt;
&lt;br /&gt;
Die nächsten geplanten Punkte sind:&lt;br /&gt;
&lt;br /&gt;
* Farbprogramme (Wählen der Farbe, optional automatisches Wechseln)&lt;br /&gt;
* Speichern aller Einstellungen in externem EEPROM&lt;br /&gt;
* Anbindung der DS3231-RTC&lt;br /&gt;
&lt;br /&gt;
== Mechanik ==&lt;br /&gt;
&lt;br /&gt;
Gehäuse (sofern man nicht den 50x50 Ribba-Rahmen des schwedischen Möbelhauses nehmen möchte):&lt;br /&gt;
&lt;br /&gt;
Eine preisgünstige Variante wäre der Aufbau auf einer 45 x 45 cm großen, 16mm starken MDF-Platte aus dem Baumarkt. Die Kanten kann man in der Regel gleich beim Zuschnitt mit Kantenumleimern versäubern lassen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Ausfraesungen vorne.png|MDF-Platte mit trichterförmigen Ausfräsungen für die LEDs, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_Rueckseite mit Bohrloechern.jpg|MDF-Platte mit Bohrlöchern für die LEDs, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_weiss_lackiert.png|MDF-Platte weiß lackiert, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_rueckwaerts.png|MDF-Platte mit Alu-Gehäuserahmen, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_und Milchglasabdeckung.png|MDF-Platte mit Alu-Gehäuserahmen und Milchglasscheibe für Hintergrund-Beleuchtung, Rückansicht&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
Die MDF-Platte erhält 288 Bohrungen im Rastermaß der LED-Matrix. Ein Bohrplan ist hier als Download im pdf-Format verfügbar. Die Bohrungen werden nach vorne hin auf 14mm Durchmesser aufgebohrt und dienen einerseits zur Lichtabdichtung gegenüber den benachbarten LEDs, andererseits als Reflektorkammern. Will man die Bohrungen selbst anbringen, eignet sich dafür ein 5mm Holzbohrer mit aufgesetztem 14mm Versenker. Die stirnseitigen Schneiden des Versenkers sind im Winkel von 45 ° abgeschrägt, dadurch ergeben sich am Boden der Kammern schöne Reflektorflächen. Da der Durchmesser der Bohrlöcher mit 5mm für die LEDs zu klein ist, muss man sie abschließend mit einem größeren Holzbohrer (8mm,..) auf den für die LEDs erforderlichen Durchmesser aufbohren (leider sind im Handel keine 14mm Versenker-Aufsätze für 8mm Bohrer erhältlich). Man kann auch gleich Löcher mit 8mm Durchmesser bohren und dann mit einem Versenker ohne Bohrer auf 14mm Durchmesser aufweiten. Für die Anbringung der Acrylglas-Frontplatte mittels Neodym-Magneten erhält die MDF-Platte am Rand 9 Ausnehmungen (Vertiefungen), welche den Abmessungen der Magneten entsprechen.&lt;br /&gt;
&lt;br /&gt;
Nach Abschluss der Fräs- und Bohrarbeiten wird die MDF-Platte vorderseitig grundiert und weiß spritzlackiert. Wenn man über keine Farbspritzpistole verfügt, verwendet man dafür Spritzfüller und Acryllack aus der Dose - jedoch unbedingt lösungsmittelhaltig und nicht auf Wasserbasis, damit die MDF-Platte nicht aufquillt! Da sich der Farbnebel weiträumig verteilt und überall anlegt, sollten die Spritzarbeiten vorzugsweise im Freien oder in einem leeren, gut belüfteten Nebenraum durchgeführt werden. In geschlossenen Räumen muss mit Atemschutzmaske gearbeitet werden! Wer sich das nicht antun will, kann die MDF-Platte selbstverständlich auch mit Pinsel grundieren und lackieren.&lt;br /&gt;
&lt;br /&gt;
Auf die Rückseite der MDF-Platte wird ein Rahmen aus Alu-U-Profil aufgeschraubt (Baumarkt, 2m Stange auf 4 Stk. mit je 40cm Länge auf Gehrung geschnitten). Er dient als Gehäuse für die Aufnahme der Elektronik und der Verdrahtung.&lt;br /&gt;
&lt;br /&gt;
Weitere mechanische Arbeiten sind:&lt;br /&gt;
&lt;br /&gt;
* Aufkleben der LED-Streifen auf einer Grundplatte. Es werden horizontal 16 Streifen zu je 18 LEDs (60 LEDs/lfm) mit einem vertikalen Abstand von 18,75 mm auf eine Grundplatte aufgeklebt. Vorzugsweise verwendet man dafür Aluminiumblech zur Wärmeableitung. Die LED-Streifen müssen mäanderförmig - jede zweite Reihe um 180° gestürzt - angebracht werden, sodass sich eine schlangenähnliche Anordnung der LEDs ergibt.&lt;br /&gt;
&lt;br /&gt;
* In die Außenflächen der U-Profile werden LED-Strips zur Hintergrundbeleuchtung eingeklebt und zum Schutz vor Staub und mechanischer Beschädigung mit Milchglasstreifchen aus Acrylglas oder Weichplastik abgedeckt ( man kann selbstverständlich auch fertige LED-Kanäle aus dem Handel verwenden).&lt;br /&gt;
&lt;br /&gt;
* Die Platzierung von Platinen, Umgebungslicht-Sensor, Buchsen für Stromzufuhr und PC-Anschluss, ggf. Lautsprecher ist abzuklären;&lt;br /&gt;
&lt;br /&gt;
* Bei Deckenbefestigung wird an der Zimmerdecke das Netzteil der Uhr in einem unscheinbaren Kästchen angebracht. Daran wird die Uhr an 2 Drahtseilen (transparent isolierte Seile aus dem LED-Zubehörhandel) aufgehängt, welche gleichzeitig als Stromzuführung für die LEDs und die Elektronik dienen.&lt;br /&gt;
&lt;br /&gt;
* Die Acrylglas-Frontplatte wird mit magnetischen Pads versehen, mit welchen sie an den Magneten der Montageplatte haftet.&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1 ES IST HH UHR MM (12)&lt;br /&gt;
  2 ES IST HH UHR MM (24)&lt;br /&gt;
  3 ES IST HH UHR UND MM MINUTEN (12)&lt;br /&gt;
  4 ES IST HH UHR UND MM MINUTEN (24)&lt;br /&gt;
  5 ES IST MM MINUTEN NACH HH UHR (12) NACHTS&lt;br /&gt;
  6 ES IST MM MINUTEN NACH HH UHR (24)&lt;br /&gt;
  7 OSSI  - ES IST MM NACH HH (12) &lt;br /&gt;
  8 OSSI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
  9 OESI - ES IST MM NACH HH UHR (12) - OESI&lt;br /&gt;
 10 OESI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
 11 RHEIN/RUHR - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 12 RHEIN/RUHR - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 13 SCHWABEN - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 14 SCHWABEN - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 15 WESSI - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 16 WESSI - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 17 COUNTDOUWN MM MINUTEN VOR MITTERNACHT&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung um Modi mit anderen Wortkombinationen ist jederzeit möglich.&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Dateien WC24h_18x16_V2_Office_2003.zip und WC24h_18x16_V2_Office_2010.zip enthalten jeweils eine Excel und eine Access-Datenbank-Datei, in welchen ein Layout der Frontplatte sowie Tabellen mit den Positionsnummern der den einzelnen Wörtern zugeordneten LEDs enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation, Validierung, Code-Generator ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up in C#.net, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Der aktuelle Stand&#039;&#039;&#039; der Steuer-Tabellen kann auch online anhand von exemplarischen Uhrzeiten überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Auf diesen &#039;&#039;&#039;statischen&#039;&#039;&#039; HTML-Seiten gibt es für jeden Modus 60 Exemplarische Uhrzeiten:&lt;br /&gt;
  00:00, 01:01, 02:02, …, 23:23, 00:24, 01:25, 02:26, …, 11:59&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_uclock_de.png|miniatur|Interaktive WordClock24h]] Hier kann man sich &#039;&#039;&#039;interaktiv&#039;&#039;&#039; durch die Uhrzeiten klicken:&lt;br /&gt;
&lt;br /&gt;
* [http://uclock.de/ uclock.de]&lt;br /&gt;
&lt;br /&gt;
Der Stand des Frontplatten-Layouts ist hier 08.12.2014.&lt;br /&gt;
&lt;br /&gt;
Im Mock-up in C#.net ist auch ein &#039;&#039;&#039;Code-Generator&#039;&#039;&#039; integriert. Für µCs mit Von-Neumann-Architektur und Havard-Architektur werden unterschiedliche Dialekte benötigt, z.B. mit &amp;quot;progmem&amp;quot; für einige gcc-Toolketten.&lt;br /&gt;
&lt;br /&gt;
* [https://gist.github.com/TorstenC/aec0724be4afcd1d7545 Codegenerator-Funktion] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/c45751a699af50fe9e64 tables.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/c45751a699af50fe9e64/raw/tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/620741027bf23899012a display.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/620741027bf23899012a/raw/display.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/0e44b1a5e11ba0dcd3d7 tables.h (Von-Neumann, 16 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/0e44b1a5e11ba0dcd3d7/raw/tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/362a97d2c74a6b522fd6 display.h (Von-Neumann, 16 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/362a97d2c74a6b522fd6/raw/display.h Ziel speichern unter…])&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
&lt;br /&gt;
*Wordclock 16 x 16 LED-Matrix, 32 cm x 32 cm :*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
*Wordclock 18 x 16 Matrix, 30 cm x 30 cm:*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2010.zip]] 18x16 Matrix, MS Office 2007/2010-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Frontplatte_Arial_45x45cm.pdf]] Frontplattenvorlage Maßstab 1:1 für Siebdruck, 450mm x 450 mm, 18x16 Matrix, Schriftfont &amp;quot;Arial&amp;quot;, Update 11.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohrplan_Frontplatte_45x45cm.pdf]]  Bohr- und Frässchablone Maßstab 1:1 für  MDF-Montageplatte 450mm x 450 mm, 18x16 Matrix, Update 11.12.2014&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86268</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86268"/>
		<updated>2014-12-16T11:49:14Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Verifikation, Validierung, Code-Generator */ AutoCode 16x16 ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
Es geht hier um den Bau einer Wand- bzw. Tischuhr, bei welcher auf einer quadratischen Frontplatte die jeweils aktuelle Uhrzeit als Text durch Hinterleuchtung der entsprechenden Wörter angezeigt wird. Die Hinterleuchtung der Wörter erfolgt durch farbige RGB-LEDs (Farbeinstellung mittels Fernbedienung wählbar), welche durch einen mit der Uhrzeit synchronisierten Mikrocontroller angesteuert werden.&lt;br /&gt;
&lt;br /&gt;
Im Unterschied zu der bekannten QlockTwo Wortuhr, welche die Uhrzeit im 12 Stunden-Wiederholungsrhythmus in Fünf-Minuten-Schritten anzeigt, liegt dieser Wortuhr ein Konzept zu Grunde, welches eine minutengenaue Zeitanzeige für 24 Stunden ermöglicht. Um den unterschiedlichsten regionalen und persönlichen Gewohnheiten gerecht zu werden, verfügt diese minutengenaue 24 Stunden-Wortuhr über mehrere Betriebsarten, mit welchen sich über die allgemein üblichen Standard-Zeitanzeigen hinaus per Voreinstellung auch verschiedene, regional übliche Wortfolgen konfigurieren lassen (viertel nach ..., dreiviertel ..., viertel vor ... ,...). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_schwarz_Arial_orange.png|Schwarzes Acrylglas mit oranger Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_rot_Arial_weiss.png|Rotes Acrylglas mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Burlwood_Stencil_Allround_weiss.png|Burlwood (Wurzelholz) mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Edelstahl_Stencil_Allround_weiss.png|Edelstahl gebürstet mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Rost_Stencil_Allround_weiss.png|Rostiger Stahl mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4-Discovery-Board oder alternativ Arduino mega1284p, ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
* 288 WS2812-LEDs auf Stripes (18x16 Matrix, 60Stk. pro Meter)&lt;br /&gt;
* I²C-RTC DS3231&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* TSOP für die Bedienung/Konfiguration mittels IR-Fernbedienung ([[IRMP]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Software-Komponenten ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Software-Module für STM32F4-Discovery:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Tools zur Pflege/Erstellung der Wort-Tabellen (tables.h usw.)&lt;br /&gt;
&lt;br /&gt;
* Ansteuerung der WS2812-Stripes per DMA&lt;br /&gt;
&lt;br /&gt;
* Benutzer-Interaktion mittels [[IRMP]] (Anlernen, Farbe &amp;amp; Uhrzeit stellen usw.)&lt;br /&gt;
&lt;br /&gt;
* Debugging-Monitor mit [[MCURSES]] (insb. Display Front, Logging usw.)&lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung der DS3231 &lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung eines I2C-EEPROMS zur Speicherung der Einstellungen&lt;br /&gt;
&lt;br /&gt;
* Anpassung der Helligkeit an die Umgebung mittels LDR oder I²C Ambient-Light-Sensor&lt;br /&gt;
&lt;br /&gt;
* Anbindung von diversen DCF77-Modulen&lt;br /&gt;
&lt;br /&gt;
* Anbindung eines WLAN-Moduls ESP8266&lt;br /&gt;
&lt;br /&gt;
* Zugriff auf NTP-Server via WLAN&lt;br /&gt;
&lt;br /&gt;
== CooCox Projekt ==&lt;br /&gt;
&lt;br /&gt;
Download Version 0.4.2 vom 16.12.2014: [http://www.mikrocontroller.net/wikifiles/1/18/Wclock24h.zip Wclock24h.zip]&lt;br /&gt;
&lt;br /&gt;
=== Software für Windows ===&lt;br /&gt;
&lt;br /&gt;
* CooCox IDE, siehe [[STM32_CooCox_Installation]]&lt;br /&gt;
* ST-Link zum Flashen (Download steht in obigem Artikel)&lt;br /&gt;
* STM32 Virtual COM Port Driver: http://www.st.com/web/en/catalog/tools/PF257938&lt;br /&gt;
* PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) oder andere Terminal-Emulation&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h-Versuchsaufbau.jpg|miniatur|Versuchsaufbau mit STM32F4 Discovery Board]]&lt;br /&gt;
&lt;br /&gt;
* STM32F4 Discovery Board&lt;br /&gt;
&lt;br /&gt;
* TSOP31238&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: TSOP-Pin1 an Disco-Board GND, TSOP-Pin2 an Disco-Board 5V, TSOP-Pin3 an Disco PC14&lt;br /&gt;
      (Diese befinden sich alle am oberen Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
* WS2812 LED-Streifen, pro Zeile 18 LEDs. Zum Test reicht erstmal ein Streifen mit 18 LEDs&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: Stripe +5V an externe Stromversorgung +5V&lt;br /&gt;
                  Stripe DI an Disco PC6&lt;br /&gt;
                  Stripe GND an externe Stromversorgung GND und an Disco GND (neben PC6)&lt;br /&gt;
      (PC6 und GND befinden sich am unteren Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wclock24-in-putty.png|miniatur|WordClock24h in PuTTY]]&lt;br /&gt;
&lt;br /&gt;
* Disco-Board und PC mit Mini-USB-Kabel verbinden (zum Flashen und Debuggen)&lt;br /&gt;
* Disco-Board und PC mit Micro-USB-Kabel verbinden (dient als COM-Schnittstelle)&lt;br /&gt;
* Projekt compilieren und flashen&lt;br /&gt;
* PuTTY starten&lt;br /&gt;
* PuTTY einstellen: Auswahl &amp;quot;Serial&amp;quot;, Serial Line: COM11 (kann abweichen, s.u.), Speed: 115200&lt;br /&gt;
* Einen Session-Namen eingeben, z.B. &amp;quot;Disco&amp;quot;&lt;br /&gt;
* Auf SAVE klicken, dann kann man die Session später wieder auswählen&lt;br /&gt;
* Open anklicken&lt;br /&gt;
&lt;br /&gt;
Es sollte nun im Terminal &amp;quot;Press any key to start&amp;quot; erscheinen. Nach Tastendruck erscheint dann das nebenstehende Bild. Ausserdem sollten nun die LEDs für &amp;quot;ES IST&amp;quot; in rot leuchten.&lt;br /&gt;
&lt;br /&gt;
Sollte man Probleme mit dem Finden der richtigen COM-Schnittstelle haben, hilft der Geräte-Manager aus der Systemsteuerung weiter. Wichtig: Die COM-Schnittstelle wird nur dann angezeigt, wenn das Programm auf dem Disco-Board auch läuft! Bei manuellen Resets des Disco-Boards muss die Terminal-Emulation zuvor geschlossen und anschließend neu geöffnet werden. Sonst erhält man keine neue Verbindung.&lt;br /&gt;
&lt;br /&gt;
Folgende Tasten werden ausgewertet:&lt;br /&gt;
&lt;br /&gt;
* x/X Anzeigemodus wechseln&lt;br /&gt;
* h/H Stunden einstellen&lt;br /&gt;
* m/M Minuten einstellen&lt;br /&gt;
* r/R Helligkeit für Rot&lt;br /&gt;
* g/G Helligkeit für Grün&lt;br /&gt;
* b/B Helligkeit für Blau&lt;br /&gt;
&lt;br /&gt;
Drückt man innerhalb von 5 Sekunden keine Taste, springt die Uhrzeit um eine Minute weiter.&lt;br /&gt;
&lt;br /&gt;
Man kann den [[MCURSES]]-Monitor auch abschalten: Dazu muss USE_MCURSES_MONITOR in wclock24h-config.h auf 0 gestellt werden. Dann ist kein Micro-USB-Kabel und auch kein Terminal-Programm nötig. Allerdings muss dann die IR-Fernbedienung zur Zeit noch &amp;quot;blind&amp;quot; programmiert werden, d.h. ohne Interaktion. Es ist jedoch geplant, dafür auch die LEDs einzusetzen.&lt;br /&gt;
&lt;br /&gt;
Wenn man nun die blaue Taste auf dem Disco-Board drückt, kann man eine Fernbedienung anlernen. Im Terminal wird man dann aufgefordert, die FB-Tasten für&lt;br /&gt;
&lt;br /&gt;
* Decrement Mode (LED1 leuchtet dabei)&lt;br /&gt;
* Increment Mode (LED2)&lt;br /&gt;
* Decrement hour (LED3)&lt;br /&gt;
* Increment hour (LED4)&lt;br /&gt;
* Decrement minute (LED5)&lt;br /&gt;
* Increment minute (LED6)&lt;br /&gt;
* Decrement red brightness (LED7)&lt;br /&gt;
* Increment red brightness (LED8)&lt;br /&gt;
* Decrement green brightness (LED9)&lt;br /&gt;
* Increment green brightness (LED10)&lt;br /&gt;
* Decrement blue brightness (LED11)&lt;br /&gt;
* Increment blue brightness (LED12)&lt;br /&gt;
&lt;br /&gt;
zu drücken. Sind die FB-Tasten angelernt, kann man die Uhrzeit und den Anzeigemodus auch per IR-Fernbedienung einstellen.&lt;br /&gt;
&lt;br /&gt;
Es sind nur die gebräuchlichsten IR-Protokolle aktiviert, nämlich:&lt;br /&gt;
&lt;br /&gt;
* SIRCS (Sony)&lt;br /&gt;
* NEC (Viele Hersteller, sehr verbreitet)&lt;br /&gt;
* SAMSUNG&lt;br /&gt;
* MATSUSHITA&lt;br /&gt;
* KASEIKYO&lt;br /&gt;
&lt;br /&gt;
[[IRMP]] &amp;quot;versteht&amp;quot; jedoch bis zu 40 Protokolle. Braucht man weitere - wie RC5 oder RC6 - kann man sie in irmp/irmp-config.h freischalten. Bei Problemen empfiehlt sich die Lektüre des [[IRMP]]-Artikels.&lt;br /&gt;
&lt;br /&gt;
=== Weitere geplante Features ===&lt;br /&gt;
&lt;br /&gt;
Die Software wird ständig weiterentwickelt. Folgende Punkte sind bereits erledigt:&lt;br /&gt;
&lt;br /&gt;
* Anbindung IR-Fernbedienung mittels [IRMP]]&lt;br /&gt;
* Einstellen des Anzeigemodus (&amp;quot;Sprache&amp;quot;) per IR-FB&lt;br /&gt;
* Einstellung der Farbe mit IR-Fernbedienung&lt;br /&gt;
* Anbindung LED-Stripes WS2812&lt;br /&gt;
* Sanftes Überblenden der Uhrzeiten auf den LEDs&lt;br /&gt;
&lt;br /&gt;
Die nächsten geplanten Punkte sind:&lt;br /&gt;
&lt;br /&gt;
* Farbprogramme (Wählen der Farbe, optional automatisches Wechseln)&lt;br /&gt;
* Speichern aller Einstellungen in externem EEPROM&lt;br /&gt;
* Anbindung der DS3231-RTC&lt;br /&gt;
&lt;br /&gt;
== Mechanik ==&lt;br /&gt;
&lt;br /&gt;
Gehäuse (sofern man nicht den 50x50 Ribba-Rahmen des schwedischen Möbelhauses nehmen möchte):&lt;br /&gt;
&lt;br /&gt;
Eine preisgünstige Variante wäre der Aufbau auf einer 45 x 45 cm großen, 16mm starken MDF-Platte aus dem Baumarkt. Die Kanten kann man in der Regel gleich beim Zuschnitt mit Kantenumleimern versäubern lassen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Ausfraesungen vorne.png|MDF-Platte mit trichterförmigen Ausfräsungen für die LEDs, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_Rueckseite mit Bohrloechern.jpg|MDF-Platte mit Bohrlöchern für die LEDs, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_weiss_lackiert.png|MDF-Platte weiß lackiert, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_rueckwaerts.png|MDF-Platte mit Alu-Gehäuserahmen, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_und Milchglasabdeckung.png|MDF-Platte mit Alu-Gehäuserahmen und Milchglasscheibe für Hintergrund-Beleuchtung, Rückansicht&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
Die MDF-Platte erhält 288 Bohrungen im Rastermaß der LED-Matrix. Ein Bohrplan ist hier als Download im pdf-Format verfügbar. Die Bohrungen werden nach vorne hin auf 14mm Durchmesser aufgebohrt und dienen einerseits zur Lichtabdichtung gegenüber den benachbarten LEDs, andererseits als Reflektorkammern. Will man die Bohrungen selbst anbringen, eignet sich dafür ein 5mm Holzbohrer mit aufgesetztem 14mm Versenker. Die stirnseitigen Schneiden des Versenkers sind im Winkel von 45 ° abgeschrägt, dadurch ergeben sich am Boden der Kammern schöne Reflektorflächen. Da der Durchmesser der Bohrlöcher mit 5mm für die LEDs zu klein ist, muss man sie abschließend mit einem größeren Holzbohrer (8mm,..) auf den für die LEDs erforderlichen Durchmesser aufbohren (leider sind im Handel keine 14mm Versenker-Aufsätze für 8mm Bohrer erhältlich). Man kann auch gleich Löcher mit 8mm Durchmesser bohren und dann mit einem Versenker ohne Bohrer auf 14mm Durchmesser aufweiten. Für die Anbringung der Acrylglas-Frontplatte mittels Neodym-Magneten erhält die MDF-Platte am Rand 9 Ausnehmungen (Vertiefungen), welche den Abmessungen der Magneten entsprechen.&lt;br /&gt;
&lt;br /&gt;
Nach Abschluss der Fräs- und Bohrarbeiten wird die MDF-Platte vorderseitig grundiert und weiß spritzlackiert. Wenn man über keine Farbspritzpistole verfügt, verwendet man dafür Spritzfüller und Acryllack aus der Dose - jedoch unbedingt lösungsmittelhaltig und nicht auf Wasserbasis, damit die MDF-Platte nicht aufquillt! Da sich der Farbnebel weiträumig verteilt und überall anlegt, sollten die Spritzarbeiten vorzugsweise im Freien oder in einem leeren, gut belüfteten Nebenraum durchgeführt werden. In geschlossenen Räumen muss mit Atemschutzmaske gearbeitet werden! Wer sich das nicht antun will, kann die MDF-Platte selbstverständlich auch mit Pinsel grundieren und lackieren.&lt;br /&gt;
&lt;br /&gt;
Auf die Rückseite der MDF-Platte wird ein Rahmen aus Alu-U-Profil aufgeschraubt (Baumarkt, 2m Stange auf 4 Stk. mit je 40cm Länge auf Gehrung geschnitten). Er dient als Gehäuse für die Aufnahme der Elektronik und der Verdrahtung.&lt;br /&gt;
&lt;br /&gt;
Weitere mechanische Arbeiten sind:&lt;br /&gt;
&lt;br /&gt;
* Aufkleben der LED-Streifen auf einer Grundplatte. Es werden horizontal 16 Streifen zu je 18 LEDs (60 LEDs/lfm) mit einem vertikalen Abstand von 18,75 mm auf eine Grundplatte aufgeklebt. Vorzugsweise verwendet man dafür Aluminiumblech zur Wärmeableitung. Die LED-Streifen müssen mäanderförmig - jede zweite Reihe um 180° gestürzt - angebracht werden, sodass sich eine schlangenähnliche Anordnung der LEDs ergibt.&lt;br /&gt;
&lt;br /&gt;
* In die Außenflächen der U-Profile werden LED-Strips zur Hintergrundbeleuchtung eingeklebt und zum Schutz vor Staub und mechanischer Beschädigung mit Milchglasstreifchen aus Acrylglas oder Weichplastik abgedeckt ( man kann selbstverständlich auch fertige LED-Kanäle aus dem Handel verwenden).&lt;br /&gt;
&lt;br /&gt;
* Die Platzierung von Platinen, Umgebungslicht-Sensor, Buchsen für Stromzufuhr und PC-Anschluss, ggf. Lautsprecher ist abzuklären;&lt;br /&gt;
&lt;br /&gt;
* Bei Deckenbefestigung wird an der Zimmerdecke das Netzteil der Uhr in einem unscheinbaren Kästchen angebracht. Daran wird die Uhr an 2 Drahtseilen (transparent isolierte Seile aus dem LED-Zubehörhandel) aufgehängt, welche gleichzeitig als Stromzuführung für die LEDs und die Elektronik dienen.&lt;br /&gt;
&lt;br /&gt;
* Die Acrylglas-Frontplatte wird mit magnetischen Pads versehen, mit welchen sie an den Magneten der Montageplatte haftet.&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1 ES IST HH UHR MM (12)&lt;br /&gt;
  2 ES IST HH UHR MM (24)&lt;br /&gt;
  3 ES IST HH UHR UND MM MINUTEN (12)&lt;br /&gt;
  4 ES IST HH UHR UND MM MINUTEN (24)&lt;br /&gt;
  5 ES IST MM MINUTEN NACH HH UHR (12) NACHTS&lt;br /&gt;
  6 ES IST MM MINUTEN NACH HH UHR (24)&lt;br /&gt;
  7 OSSI  - ES IST MM NACH HH (12) &lt;br /&gt;
  8 OSSI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
  9 OESI - ES IST MM NACH HH UHR (12) - OESI&lt;br /&gt;
 10 OESI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
 11 RHEIN/RUHR - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 12 RHEIN/RUHR - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 13 SCHWABEN - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 14 SCHWABEN - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 15 WESSI - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 16 WESSI - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 17 COUNTDOUWN MM MINUTEN VOR MITTERNACHT&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung um Modi mit anderen Wortkombinationen ist jederzeit möglich.&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Dateien WC24h_18x16_V2_Office_2003.zip und WC24h_18x16_V2_Office_2010.zip enthalten jeweils eine Excel und eine Access-Datenbank-Datei, in welchen ein Layout der Frontplatte sowie Tabellen mit den Positionsnummern der den einzelnen Wörtern zugeordneten LEDs enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation, Validierung, Code-Generator ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up in C#.net, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Der aktuelle Stand&#039;&#039;&#039; der Steuer-Tabellen kann auch online anhand von exemplarischen Uhrzeiten überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Auf diesen &#039;&#039;&#039;statischen&#039;&#039;&#039; HTML-Seiten gibt es für jeden Modus 60 Exemplarische Uhrzeiten:&lt;br /&gt;
  00:00, 01:01, 02:02, …, 23:23, 00:24, 01:25, 02:26, …, 11:59&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_uclock_de.png|miniatur|Interaktive WordClock24h]] Hier kann man sich &#039;&#039;&#039;interaktiv&#039;&#039;&#039; durch die Uhrzeiten klicken:&lt;br /&gt;
&lt;br /&gt;
* [http://uclock.de/ uclock.de]&lt;br /&gt;
&lt;br /&gt;
Der Stand des Frontplatten-Layouts ist hier 08.12.2014.&lt;br /&gt;
&lt;br /&gt;
Im Mock-up in C#.net ist auch ein &#039;&#039;&#039;Code-Generator&#039;&#039;&#039; integriert. Für µCs mit Von-Neumann-Architektur und Havard-Architektur werden unterschiedliche Dialekte benötigt, z.B. mit &amp;quot;progmem&amp;quot; für einige gcc-Toolketten.&lt;br /&gt;
&lt;br /&gt;
* [https://gist.github.com/TorstenC/aec0724be4afcd1d7545 Codegenerator-Funktion] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/c45751a699af50fe9e64 tables.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/c45751a699af50fe9e64/raw/tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/620741027bf23899012a display.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/620741027bf23899012a/raw/display.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/0e44b1a5e11ba0dcd3d7 tables.h (Von-Neumann, 16 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/0e44b1a5e11ba0dcd3d7/raw/tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/362a97d2c74a6b522fd6 display.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/362a97d2c74a6b522fd6/raw/display.h Ziel speichern unter…])&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
&lt;br /&gt;
*Wordclock 16 x 16 LED-Matrix, 32 cm x 32 cm :*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
*Wordclock 18 x 16 Matrix, 30 cm x 30 cm:*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2010.zip]] 18x16 Matrix, MS Office 2007/2010-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Frontplatte_Arial_45x45cm.pdf]] Frontplattenvorlage Maßstab 1:1 für Siebdruck, 450mm x 450 mm, 18x16 Matrix, Schriftfont &amp;quot;Arial&amp;quot;, Update 11.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohrplan_Frontplatte_45x45cm.pdf]]  Bohr- und Frässchablone Maßstab 1:1 für  MDF-Montageplatte 450mm x 450 mm, 18x16 Matrix, Update 11.12.2014&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86256</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86256"/>
		<updated>2014-12-15T18:09:23Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Verifikation, Validierung, Code-Generator */ , 18 x 16 ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
Es geht hier um den Bau einer Wand- bzw. Tischuhr, bei welcher auf einer quadratischen Frontplatte die jeweils aktuelle Uhrzeit als Text durch Hinterleuchtung der entsprechenden Wörter angezeigt wird. Die Hinterleuchtung der Wörter erfolgt durch farbige RGB-LEDs (Farbeinstellung mittels Fernbedienung wählbar), welche durch einen mit der Uhrzeit synchronisierten Mikrocontroller angesteuert werden.&lt;br /&gt;
&lt;br /&gt;
Im Unterschied zu der bekannten QlockTwo Wortuhr, welche die Uhrzeit im 12 Stunden-Wiederholungsrhythmus in Fünf-Minuten-Schritten anzeigt, liegt dieser Wortuhr ein Konzept zu Grunde, welches eine minutengenaue Zeitanzeige für 24 Stunden ermöglicht. Um den unterschiedlichsten regionalen und persönlichen Gewohnheiten gerecht zu werden, verfügt diese minutengenaue 24 Stunden-Wortuhr über mehrere Betriebsarten, mit welchen sich über die allgemein üblichen Standard-Zeitanzeigen hinaus per Voreinstellung auch verschiedene, regional übliche Wortfolgen konfigurieren lassen (viertel nach ..., dreiviertel ..., viertel vor ... ,...). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_schwarz_Arial_orange.png|Schwarzes Acrylglas mit oranger Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_rot_Arial_weiss.png|Rotes Acrylglas mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Burlwood_Stencil_Allround_weiss.png|Burlwood (Wurzelholz) mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Edelstahl_Stencil_Allround_weiss.png|Edelstahl gebürstet mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Rost_Stencil_Allround_weiss.png|Rostiger Stahl mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4-Discovery-Board oder alternativ Arduino mega1284p, ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
* 288 WS2812-LEDs auf Stripes (18x16 Matrix, 60Stk. pro Meter)&lt;br /&gt;
* I²C-RTC DS3231&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* TSOP für die Bedienung/Konfiguration mittels IR-Fernbedienung ([[IRMP]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Software-Komponenten ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Software-Module für STM32F4-Discovery:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Tools zur Pflege/Erstellung der Wort-Tabellen (tables.h usw.)&lt;br /&gt;
&lt;br /&gt;
* Ansteuerung der WS2812-Stripes per DMA&lt;br /&gt;
&lt;br /&gt;
* Benutzer-Interaktion mittels [[IRMP]] (Anlernen, Farbe &amp;amp; Uhrzeit stellen usw.)&lt;br /&gt;
&lt;br /&gt;
* Debugging-Monitor mit [[MCURSES]] (insb. Display Front, Logging usw.)&lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung der DS3231 &lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung eines I2C-EEPROMS zur Speicherung der Einstellungen&lt;br /&gt;
&lt;br /&gt;
* Anpassung der Helligkeit an die Umgebung mittels LDR oder I²C Ambient-Light-Sensor&lt;br /&gt;
&lt;br /&gt;
* Anbindung von diversen DCF77-Modulen&lt;br /&gt;
&lt;br /&gt;
* Anbindung eines WLAN-Moduls ESP8266&lt;br /&gt;
&lt;br /&gt;
* Zugriff auf NTP-Server via WLAN&lt;br /&gt;
&lt;br /&gt;
== CooCox Projekt ==&lt;br /&gt;
&lt;br /&gt;
Download Version 0.4 vom 15.12.2014: [http://www.mikrocontroller.net/wikifiles/1/18/Wclock24h.zip Wclock24h.zip]&lt;br /&gt;
&lt;br /&gt;
=== Software für Windows ===&lt;br /&gt;
&lt;br /&gt;
* CooCox IDE, siehe [[STM32_CooCox_Installation]]&lt;br /&gt;
* ST-Link zum Flashen (Download steht in obigem Artikel)&lt;br /&gt;
* STM32 Virtual COM Port Driver: http://www.st.com/web/en/catalog/tools/PF257938&lt;br /&gt;
* PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) oder andere Terminal-Emulation&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h-Versuchsaufbau.jpg|miniatur|Versuchsaufbau mit STM32F4 Discovery Board]]&lt;br /&gt;
&lt;br /&gt;
* STM32F4 Discovery Board&lt;br /&gt;
&lt;br /&gt;
* TSOP31238&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: TSOP-Pin1 an Disco-Board GND, TSOP-Pin2 an Disco-Board 5V, TSOP-Pin3 an Disco PC14&lt;br /&gt;
      (Diese befinden sich alle am oberen Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
* WS2812 LED-Streifen, pro Zeile 18 LEDs. Zum Test reicht erstmal ein Streifen mit 18 LEDs&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: Stripe +5V an externe Stromversorgung +5V&lt;br /&gt;
                  Stripe DI an Disco PC6&lt;br /&gt;
                  Stripe GND an externe Stromversorgung GND und an Disco GND (neben PC6)&lt;br /&gt;
      (PC6 und GND befinden sich am unteren Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wclock24-in-putty.png|miniatur|WordClock24h in PuTTY]]&lt;br /&gt;
&lt;br /&gt;
* Disco-Board und PC mit Mini-USB-Kabel verbinden (zum Flashen und Debuggen)&lt;br /&gt;
* Disco-Board und PC mit Micro-USB-Kabel verbinden (dient als COM-Schnittstelle)&lt;br /&gt;
* Projekt compilieren und flashen&lt;br /&gt;
* PuTTY starten&lt;br /&gt;
* PuTTY einstellen: Auswahl &amp;quot;Serial&amp;quot;, Serial Line: COM11 (kann abweichen, s.u.), Speed: 115200&lt;br /&gt;
* Einen Session-Namen eingeben, z.B. &amp;quot;Disco&amp;quot;&lt;br /&gt;
* Auf SAVE klicken, dann kann man die Session später wieder auswählen&lt;br /&gt;
* Open anklicken&lt;br /&gt;
&lt;br /&gt;
Es sollte nun im Terminal &amp;quot;Press any key to start&amp;quot; erscheinen. Nach Tastendruck erscheint dann das nebenstehende Bild. Ausserdem sollten nun die LEDs für &amp;quot;ES IST&amp;quot; in rot leuchten.&lt;br /&gt;
&lt;br /&gt;
Sollte man Probleme mit dem Finden der richtigen COM-Schnittstelle haben, hilft der Geräte-Manager aus der Systemsteuerung weiter. Wichtig: Die COM-Schnittstelle wird nur dann angezeigt, wenn das Programm auf dem Disco-Board auch läuft! Bei manuellen Resets des Disco-Boards muss die Terminal-Emulation zuvor geschlossen und anschließend neu geöffnet werden. Sonst erhält man keine neue Verbindung.&lt;br /&gt;
&lt;br /&gt;
Folgende Tasten werden ausgewertet:&lt;br /&gt;
&lt;br /&gt;
* x/X Anzeigemodus wechseln&lt;br /&gt;
* h/H Stunden einstellen&lt;br /&gt;
* m/M Minuten einstellen&lt;br /&gt;
* r/R Helligkeit für Rot&lt;br /&gt;
* g/G Helligkeit für Grün&lt;br /&gt;
* b/B Helligkeit für Blau&lt;br /&gt;
&lt;br /&gt;
Drückt man innerhalb von 5 Sekunden keine Taste, springt die Uhrzeit um eine Minute weiter.&lt;br /&gt;
&lt;br /&gt;
Man kann den [[MCURSES]]-Monitor auch abschalten: Dazu muss USE_MCURSES_MONITOR in wclock24h-config.h auf 0 gestellt werden. Dann ist kein Micro-USB-Kabel und auch kein Terminal-Programm nötig. Allerdings muss dann die IR-Fernbedienung zur Zeit noch &amp;quot;blind&amp;quot; programmiert werden, d.h. ohne Interaktion. Es ist jedoch geplant, dafür auch die LEDs einzusetzen.&lt;br /&gt;
&lt;br /&gt;
Wenn man nun die blaue Taste auf dem Disco-Board drückt, kann man eine Fernbedienung anlernen. Im Terminal wird man dann aufgefordert, die FB-Tasten für&lt;br /&gt;
&lt;br /&gt;
* Decrement Mode (LED1 leuchtet dabei)&lt;br /&gt;
* Increment Mode (LED2)&lt;br /&gt;
* Decrement hour (LED3)&lt;br /&gt;
* Increment hour (LED4)&lt;br /&gt;
* Decrement minute (LED5)&lt;br /&gt;
* Increment minute (LED6)&lt;br /&gt;
* Decrement red brightness (LED7)&lt;br /&gt;
* Increment red brightness (LED8)&lt;br /&gt;
* Decrement green brightness (LED9)&lt;br /&gt;
* Increment green brightness (LED10)&lt;br /&gt;
* Decrement blue brightness (LED11)&lt;br /&gt;
* Increment blue brightness (LED12)&lt;br /&gt;
&lt;br /&gt;
zu drücken. Sind die FB-Tasten angelernt, kann man die Uhrzeit und den Anzeigemodus auch per IR-Fernbedienung einstellen.&lt;br /&gt;
&lt;br /&gt;
Es sind nur die gebräuchlichsten IR-Protokolle aktiviert, nämlich:&lt;br /&gt;
&lt;br /&gt;
* SIRCS (Sony)&lt;br /&gt;
* NEC (Viele Hersteller, sehr verbreitet)&lt;br /&gt;
* SAMSUNG&lt;br /&gt;
* MATSUSHITA&lt;br /&gt;
* KASEIKYO&lt;br /&gt;
&lt;br /&gt;
[[IRMP]] &amp;quot;versteht&amp;quot; jedoch bis zu 40 Protokolle. Braucht man weitere - wie RC5 oder RC6 - kann man sie in irmp/irmp-config.h freischalten. Bei Problemen empfiehlt sich die Lektüre des [[IRMP]]-Artikels.&lt;br /&gt;
&lt;br /&gt;
=== Weitere geplante Features ===&lt;br /&gt;
&lt;br /&gt;
Die Software wird ständig weiterentwickelt. Folgende Punkte sind bereits erledigt:&lt;br /&gt;
&lt;br /&gt;
* Anbindung IR-Fernbedienung mittels [IRMP]]&lt;br /&gt;
* Einstellen des Anzeigemodus (&amp;quot;Sprache&amp;quot;) per IR-FB&lt;br /&gt;
* Einstellung der Farbe mit IR-Fernbedienung&lt;br /&gt;
* Anbindung LED-Stripes WS2812&lt;br /&gt;
* Sanftes Überblenden der Uhrzeiten auf den LEDs&lt;br /&gt;
&lt;br /&gt;
Die nächsten geplanten Punkte sind:&lt;br /&gt;
&lt;br /&gt;
* Farbprogramme (Wählen der Farbe, optional automatisches Wechseln)&lt;br /&gt;
* Speichern aller Einstellungen in externem EEPROM&lt;br /&gt;
* Anbindung der DS3231-RTC&lt;br /&gt;
&lt;br /&gt;
== Mechanik ==&lt;br /&gt;
&lt;br /&gt;
Gehäuse (sofern man nicht den 50x50 Ribba-Rahmen des schwedischen Möbelhauses nehmen möchte):&lt;br /&gt;
&lt;br /&gt;
Eine preisgünstige Variante wäre der Aufbau auf einer 45 x 45 cm großen, 16mm starken MDF-Platte aus dem Baumarkt. Die Kanten kann man in der Regel gleich beim Zuschnitt mit Kantenumleimern versäubern lassen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Ausfraesungen vorne.png|MDF-Platte mit trichterförmigen Ausfräsungen für die LEDs, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_Rueckseite mit Bohrloechern.jpg|MDF-Platte mit Bohrlöchern für die LEDs, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_weiss_lackiert.png|MDF-Platte weiß lackiert, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_rueckwaerts.png|MDF-Platte mit Alu-Gehäuserahmen, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_und Milchglasabdeckung.png|MDF-Platte mit Alu-Gehäuserahmen und Milchglasscheibe für Hintergrund-Beleuchtung, Rückansicht&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
Die MDF-Platte erhält 288 Bohrungen im Rastermaß der LED-Matrix. Ein Bohrplan ist hier als Download im pdf-Format verfügbar. Die Bohrungen werden nach vorne hin auf 14mm Durchmesser aufgebohrt und dienen einerseits zur Lichtabdichtung gegenüber den benachbarten LEDs, andererseits als Reflektorkammern. Will man die Bohrungen selbst anbringen, eignet sich dafür ein 5mm Holzbohrer mit aufgesetztem 14mm Versenker. Die stirnseitigen Schneiden des Versenkers sind im Winkel von 45 ° abgeschrägt, dadurch ergeben sich am Boden der Kammern schöne Reflektorflächen. Da der Durchmesser der Bohrlöcher mit 5mm für die LEDs zu klein ist, muss man sie abschließend mit einem größeren Holzbohrer (8mm,..) auf den für die LEDs erforderlichen Durchmesser aufbohren (leider sind im Handel keine 14mm Versenker-Aufsätze für 8mm Bohrer erhältlich). Man kann auch gleich Löcher mit 8mm Durchmesser bohren und dann mit einem Versenker ohne Bohrer auf 14mm Durchmesser aufweiten. Für die Anbringung der Acrylglas-Frontplatte mittels Neodym-Magneten erhält die MDF-Platte am Rand 9 Ausnehmungen (Vertiefungen), welche den Abmessungen der Magneten entsprechen.&lt;br /&gt;
&lt;br /&gt;
Nach Abschluss der Fräs- und Bohrarbeiten wird die MDF-Platte vorderseitig grundiert und weiß spritzlackiert. Wenn man über keine Farbspritzpistole verfügt, verwendet man dafür Spritzfüller und Acryllack aus der Dose - jedoch unbedingt lösungsmittelhaltig und nicht auf Wasserbasis, damit die MDF-Platte nicht aufquillt! Da sich der Farbnebel weiträumig verteilt und überall anlegt, sollten die Spritzarbeiten vorzugsweise im Freien oder in einem leeren, gut belüfteten Nebenraum durchgeführt werden. In geschlossenen Räumen muss mit Atemschutzmaske gearbeitet werden! Wer sich das nicht antun will, kann die MDF-Platte selbstverständlich auch mit Pinsel grundieren und lackieren.&lt;br /&gt;
&lt;br /&gt;
Auf die Rückseite der MDF-Platte wird ein Rahmen aus Alu-U-Profil aufgeschraubt (Baumarkt, 2m Stange auf 4 Stk. mit je 40cm Länge auf Gehrung geschnitten). Er dient als Gehäuse für die Aufnahme der Elektronik und der Verdrahtung.&lt;br /&gt;
&lt;br /&gt;
Weitere mechanische Arbeiten sind:&lt;br /&gt;
&lt;br /&gt;
* Aufkleben der LED-Streifen auf einer Grundplatte. Es werden horizontal 16 Streifen zu je 18 LEDs (60 LEDs/lfm) mit einem vertikalen Abstand von 18,75 mm auf eine Grundplatte aufgeklebt. Vorzugsweise verwendet man dafür Aluminiumblech zur Wärmeableitung. Die LED-Streifen müssen mäanderförmig - jede zweite Reihe um 180° gestürzt - angebracht werden, sodass sich eine schlangenähnliche Anordnung der LEDs ergibt.&lt;br /&gt;
&lt;br /&gt;
* In die Außenflächen der U-Profile werden LED-Strips zur Hintergrundbeleuchtung eingeklebt und zum Schutz vor Staub und mechanischer Beschädigung mit Milchglasstreifchen aus Acrylglas oder Weichplastik abgedeckt ( man kann selbstverständlich auch fertige LED-Kanäle aus dem Handel verwenden).&lt;br /&gt;
&lt;br /&gt;
* Die Platzierung von Platinen, Umgebungslicht-Sensor, Buchsen für Stromzufuhr und PC-Anschluss, ggf. Lautsprecher ist abzuklären;&lt;br /&gt;
&lt;br /&gt;
* Bei Deckenbefestigung wird an der Zimmerdecke das Netzteil der Uhr in einem unscheinbaren Kästchen angebracht. Daran wird die Uhr an 2 Drahtseilen (transparent isolierte Seile aus dem LED-Zubehörhandel) aufgehängt, welche gleichzeitig als Stromzuführung für die LEDs und die Elektronik dienen.&lt;br /&gt;
&lt;br /&gt;
* Die Acrylglas-Frontplatte wird mit magnetischen Pads versehen, mit welchen sie an den Magneten der Montageplatte haftet.&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1 ES IST HH UHR MM (12)&lt;br /&gt;
  2 ES IST HH UHR MM (24)&lt;br /&gt;
  3 ES IST HH UHR UND MM MINUTEN (12)&lt;br /&gt;
  4 ES IST HH UHR UND MM MINUTEN (24)&lt;br /&gt;
  5 ES IST MM MINUTEN NACH HH UHR (12) NACHTS&lt;br /&gt;
  6 ES IST MM MINUTEN NACH HH UHR (24)&lt;br /&gt;
  7 OSSI  - ES IST MM NACH HH (12) &lt;br /&gt;
  8 OSSI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
  9 OESI - ES IST MM NACH HH UHR (12) - OESI&lt;br /&gt;
 10 OESI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
 11 RHEIN/RUHR - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 12 RHEIN/RUHR - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 13 SCHWABEN - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 14 SCHWABEN - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 15 WESSI - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 16 WESSI - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 17 COUNTDOUWN MM MINUTEN VOR MITTERNACHT&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung um Modi mit anderen Wortkombinationen ist jederzeit möglich.&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Dateien WC24h_18x16_V2_Office_2003.zip und WC24h_18x16_V2_Office_2010.zip enthalten jeweils eine Excel und eine Access-Datenbank-Datei, in welchen ein Layout der Frontplatte sowie Tabellen mit den Positionsnummern der den einzelnen Wörtern zugeordneten LEDs enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation, Validierung, Code-Generator ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up in C#.net, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Der aktuelle Stand&#039;&#039;&#039; der Steuer-Tabellen kann auch online anhand von exemplarischen Uhrzeiten überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Auf diesen &#039;&#039;&#039;statischen&#039;&#039;&#039; HTML-Seiten gibt es für jeden Modus 60 Exemplarische Uhrzeiten:&lt;br /&gt;
  00:00, 01:01, 02:02, …, 23:23, 00:24, 01:25, 02:26, …, 11:59&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_uclock_de.png|miniatur|Interaktive WordClock24h]] Hier kann man sich &#039;&#039;&#039;interaktiv&#039;&#039;&#039; durch die Uhrzeiten klicken:&lt;br /&gt;
&lt;br /&gt;
* [http://uclock.de/ uclock.de]&lt;br /&gt;
&lt;br /&gt;
Der Stand des Frontplatten-Layouts ist hier 08.12.2014.&lt;br /&gt;
&lt;br /&gt;
Im Mock-up in C#.net ist auch ein &#039;&#039;&#039;Code-Generator&#039;&#039;&#039; integriert. Für µCs mit Von-Neumann-Architektur und Havard-Architektur werden unterschiedliche Dialekte benötigt, z.B. mit &amp;quot;progmem&amp;quot; für einige gcc-Toolketten.&lt;br /&gt;
&lt;br /&gt;
* [https://gist.github.com/TorstenC/aec0724be4afcd1d7545 Codegenerator-Funktion] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/c45751a699af50fe9e64 tables.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/c45751a699af50fe9e64/raw/tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/620741027bf23899012a display.h (Von-Neumann, 18 x 16)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/620741027bf23899012a/raw/display.h Ziel speichern unter…])&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
&lt;br /&gt;
*Wordclock 16 x 16 LED-Matrix, 32 cm x 32 cm :*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
*Wordclock 18 x 16 Matrix, 30 cm x 30 cm:*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2010.zip]] 18x16 Matrix, MS Office 2007/2010-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Frontplatte_Arial_45x45cm.pdf]] Frontplattenvorlage Maßstab 1:1 für Siebdruck, 450mm x 450 mm, 18x16 Matrix, Schriftfont &amp;quot;Arial&amp;quot;, Update 11.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohrplan_Frontplatte_45x45cm.pdf]]  Bohr- und Frässchablone Maßstab 1:1 für  MDF-Montageplatte 450mm x 450 mm, 18x16 Matrix, Update 11.12.2014&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86251</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86251"/>
		<updated>2014-12-14T18:05:09Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Verifikation, Validierung, Code-Generator */ Ziel speichern unter…&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
Es geht hier um den Bau einer Wand- bzw. Tischuhr, bei welcher auf einer quadratischen Frontplatte die jeweils aktuelle Uhrzeit als Text durch Hinterleuchtung der entsprechenden Wörter angezeigt wird. Die Hinterleuchtung der Wörter erfolgt durch farbige RGB-LEDs (Farbeinstellung mittels Fernbedienung wählbar), welche durch einen mit der Uhrzeit synchronisierten Mikrocontroller angesteuert werden.&lt;br /&gt;
&lt;br /&gt;
Im Unterschied zu der bekannten QlockTwo Wortuhr, welche die Uhrzeit im 12 Stunden-Wiederholungsrhythmus in Fünf-Minuten-Schritten anzeigt, liegt dieser Wortuhr ein Konzept zu Grunde, welches eine minutengenaue Zeitanzeige für 24 Stunden ermöglicht. Um den unterschiedlichsten regionalen und persönlichen Gewohnheiten gerecht zu werden, verfügt diese minutengenaue 24 Stunden-Wortuhr über mehrere Betriebsarten, mit welchen sich über die allgemein üblichen Standard-Zeitanzeigen hinaus per Voreinstellung auch verschiedene, regional übliche Wortfolgen konfigurieren lassen (viertel nach ..., dreiviertel ..., viertel vor ... ,...). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_schwarz_Arial_orange.png|Schwarzes Acrylglas mit oranger Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Acryl_rot_Arial_weiss.png|Rotes Acrylglas mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Burlwood_Stencil_Allround_weiss.png|Burlwood (Wurzelholz) mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Edelstahl_Stencil_Allround_weiss.png|Edelstahl gebürstet mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
Datei:WC24h18x16_Rost_Stencil_Allround_weiss.png|Rostiger Stahl mit weißer Schrift&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4-Discovery-Board oder alternativ Arduino mega1284p, ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
* 288 WS2812-LEDs auf Stripes (18x16 Matrix, 60Stk. pro Meter)&lt;br /&gt;
* I²C-RTC DS3231&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* TSOP für die Bedienung/Konfiguration mittels IR-Fernbedienung ([[IRMP]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Software-Komponenten ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Software-Module für STM32F4-Discovery:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Tools zur Pflege/Erstellung der Wort-Tabellen (tables.h usw.)&lt;br /&gt;
&lt;br /&gt;
* Ansteuerung der WS2812-Stripes per DMA&lt;br /&gt;
&lt;br /&gt;
* Benutzer-Interaktion mittels [[IRMP]] (Anlernen, Farbe &amp;amp; Uhrzeit stellen usw.)&lt;br /&gt;
&lt;br /&gt;
* Debugging-Monitor mit [[MCURSES]] (insb. Display Front, Logging usw.)&lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung der DS3231 &lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung eines I2C-EEPROMS zur Speicherung der Einstellungen&lt;br /&gt;
&lt;br /&gt;
* Anpassung der Helligkeit an die Umgebung mittels LDR oder I²C Ambient-Light-Sensor&lt;br /&gt;
&lt;br /&gt;
* Anbindung von diversen DCF77-Modulen&lt;br /&gt;
&lt;br /&gt;
* Anbindung eines WLAN-Moduls ESP8266&lt;br /&gt;
&lt;br /&gt;
* Zugriff auf NTP-Server via WLAN&lt;br /&gt;
&lt;br /&gt;
== CooCox Projekt ==&lt;br /&gt;
&lt;br /&gt;
Download Version 0.3.5 vom 10.12.2014: [http://www.mikrocontroller.net/wikifiles/1/18/Wclock24h.zip Wclock24h.zip]&lt;br /&gt;
&lt;br /&gt;
=== Software für Windows ===&lt;br /&gt;
&lt;br /&gt;
* CooCox IDE, siehe [[STM32_CooCox_Installation]]&lt;br /&gt;
* ST-Link zum Flashen (Download steht in obigem Artikel)&lt;br /&gt;
* STM32 Virtual COM Port Driver: http://www.st.com/web/en/catalog/tools/PF257938&lt;br /&gt;
* PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) oder andere Terminal-Emulation&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h-Versuchsaufbau.jpg|miniatur|Versuchsaufbau mit STM32F4 Discovery Board]]&lt;br /&gt;
&lt;br /&gt;
* STM32F4 Discovery Board&lt;br /&gt;
&lt;br /&gt;
* TSOP31238&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: TSOP-Pin1 an Disco-Board GND, TSOP-Pin2 an Disco-Board 5V, TSOP-Pin3 an Disco PC14&lt;br /&gt;
      (Diese befinden sich alle am oberen Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
* WS2812 LED-Streifen, pro Zeile 18 LEDs. Zum Test reicht erstmal ein Streifen mit 18 LEDs&lt;br /&gt;
&lt;br /&gt;
      Anschlüsse: Stripe +5V an externe Stromversorgung +5V&lt;br /&gt;
                  Stripe DI an Disco PC6&lt;br /&gt;
                  Stripe GND an externe Stromversorgung GND und an Disco GND (neben PC6)&lt;br /&gt;
      (PC6 und GND befinden sich am unteren Ende von Steckerleiste P2)&lt;br /&gt;
&lt;br /&gt;
=== Start ===&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wclock24-in-putty.png|miniatur|WordClock24h in PuTTY]]&lt;br /&gt;
&lt;br /&gt;
* Disco-Board und PC mit Mini-USB-Kabel verbinden (zum Flashen und Debuggen)&lt;br /&gt;
* Disco-Board und PC mit Micro-USB-Kabel verbinden (dient als COM-Schnittstelle)&lt;br /&gt;
* Projekt compilieren und flashen&lt;br /&gt;
* PuTTY starten&lt;br /&gt;
* PuTTY einstellen: Auswahl &amp;quot;Serial&amp;quot;, Serial Line: COM11 (kann abweichen, s.u.), Speed: 115200&lt;br /&gt;
* Einen Session-Namen eingeben, z.B. &amp;quot;Disco&amp;quot;&lt;br /&gt;
* Auf SAVE klicken, dann kann man die Session später wieder auswählen&lt;br /&gt;
* Open anklicken&lt;br /&gt;
&lt;br /&gt;
Es sollte nun im Terminal &amp;quot;Press any key to start&amp;quot; erscheinen. Nach Tastendruck erscheint dann das nebenstehende Bild. Ausserdem sollten nun die LEDs für &amp;quot;ES IST&amp;quot; in rot leuchten.&lt;br /&gt;
&lt;br /&gt;
Sollte man Probleme mit dem Finden der richtigen COM-Schnittstelle haben, hilft der Geräte-Manager aus der Systemsteuerung weiter. Wichtig: Die COM-Schnittstelle wird nur dann angezeigt, wenn das Programm auf dem Disco-Board auch läuft! Bei manuellen Resets des Disco-Boards muss die Terminal-Emulation zuvor geschlossen und anschließend neu geöffnet werden. Sonst erhält man keine neue Verbindung.&lt;br /&gt;
&lt;br /&gt;
Folgende Tasten werden ausgewertet:&lt;br /&gt;
&lt;br /&gt;
* x/X Anzeigemodus wechseln&lt;br /&gt;
* h/H Stunden einstellen&lt;br /&gt;
* m/M Minuten einstellen&lt;br /&gt;
* r/R Helligkeit für Rot&lt;br /&gt;
* g/G Helligkeit für Grün&lt;br /&gt;
* b/B Helligkeit für Blau&lt;br /&gt;
&lt;br /&gt;
Drückt man innerhalb von 5 Sekunden keine Taste, springt die Uhrzeit um eine Minute weiter.&lt;br /&gt;
&lt;br /&gt;
Man kann den [[MCURSES]]-Monitor auch abschalten: Dazu muss USE_MCURSES_MONITOR in wclock24h-config.h auf 0 gestellt werden. Dann ist kein Micro-USB-Kabel und auch kein Terminal-Programm nötig. Allerdings muss dann die IR-Fernbedienung zur Zeit noch &amp;quot;blind&amp;quot; programmiert werden, d.h. ohne Interaktion. Es ist jedoch geplant, dafür auch die LEDs einzusetzen.&lt;br /&gt;
&lt;br /&gt;
Wenn man nun die blaue Taste auf dem Disco-Board drückt, kann man eine Fernbedienung anlernen. Im Terminal wird man dann aufgefordert, die FB-Tasten für&lt;br /&gt;
&lt;br /&gt;
* Decrement Mode (LED1 leuchtet dabei)&lt;br /&gt;
* Increment Mode (LED2)&lt;br /&gt;
* Decrement hour (LED3)&lt;br /&gt;
* Increment hour (LED4)&lt;br /&gt;
* Decrement minute (LED5)&lt;br /&gt;
* Increment minute (LED6)&lt;br /&gt;
* Decrement red brightness (LED7)&lt;br /&gt;
* Increment red brightness (LED8)&lt;br /&gt;
* Decrement green brightness (LED9)&lt;br /&gt;
* Increment green brightness (LED10)&lt;br /&gt;
* Decrement blue brightness (LED11)&lt;br /&gt;
* Increment blue brightness (LED12)&lt;br /&gt;
&lt;br /&gt;
zu drücken. Sind die FB-Tasten angelernt, kann man die Uhrzeit und den Anzeigemodus auch per IR-Fernbedienung einstellen.&lt;br /&gt;
&lt;br /&gt;
Es sind nur die gebräuchlichsten IR-Protokolle aktiviert, nämlich:&lt;br /&gt;
&lt;br /&gt;
* SIRCS (Sony)&lt;br /&gt;
* NEC (Viele Hersteller, sehr verbreitet)&lt;br /&gt;
* SAMSUNG&lt;br /&gt;
* MATSUSHITA&lt;br /&gt;
* KASEIKYO&lt;br /&gt;
&lt;br /&gt;
[[IRMP]] &amp;quot;versteht&amp;quot; jedoch bis zu 40 Protokolle. Braucht man weitere - wie RC5 oder RC6 - kann man sie in irmp/irmp-config.h freischalten. Bei Problemen empfiehlt sich die Lektüre des [[IRMP]]-Artikels.&lt;br /&gt;
&lt;br /&gt;
=== Weitere geplante Features ===&lt;br /&gt;
&lt;br /&gt;
Die Software wird ständig weiterentwickelt. Die nächsten geplanten Punkte sind:&lt;br /&gt;
&lt;br /&gt;
* Sanftes Überblenden der Uhrzeiten auf den LEDs&lt;br /&gt;
* Farbprogramme (Wählen der Farbe, optional automatisches Wechseln)&lt;br /&gt;
* Einstellen des Anzeigemodus (&amp;quot;Sprache&amp;quot;) per FB&lt;br /&gt;
* Speichern aller Einstellungen in externem EEPROM&lt;br /&gt;
* Anbindung der DS3231-RTC&lt;br /&gt;
&lt;br /&gt;
== Mechanik ==&lt;br /&gt;
&lt;br /&gt;
Gehäuse (sofern man nicht den 50x50 Ribba-Rahmen des schwedischen Möbelhauses nehmen möchte):&lt;br /&gt;
&lt;br /&gt;
Eine preisgünstige Variante wäre der Aufbau auf einer 45 x 45 cm großen, 16mm starken MDF-Platte aus dem Baumarkt. Die Kanten kann man in der Regel gleich beim Zuschnitt mit Kantenumleimern versäubern lassen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Ausfraesungen vorne.png|MDF-Platte mit trichterförmigen Ausfräsungen für die LEDs, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_Rueckseite mit Bohrloechern.jpg|MDF-Platte mit Bohrlöchern für die LEDs, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_weiss_lackiert.png|MDF-Platte weiß lackiert, Vorderansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_rueckwaerts.png|MDF-Platte mit Alu-Gehäuserahmen, Rückansicht&lt;br /&gt;
Datei:WC24h18x16_Montageplatte_mit_Gehaeuserahmen_und Milchglasabdeckung.png|MDF-Platte mit Alu-Gehäuserahmen und Milchglasscheibe für Hintergrund-Beleuchtung, Rückansicht&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
Die MDF-Platte erhält 288 Bohrungen im Rastermaß der LED-Matrix. Ein Bohrplan ist hier als Download im pdf-Format verfügbar. Die Bohrungen werden nach vorne hin auf 14mm Durchmesser aufgebohrt und dienen einerseits zur Lichtabdichtung gegenüber den benachbarten LEDs, andererseits als Reflektorkammern. Will man die Bohrungen selbst anbringen, eignet sich dafür ein 5mm Holzbohrer mit aufgesetztem 14mm Versenker. Die stirnseitigen Schneiden des Versenkers sind im Winkel von 45 ° abgeschrägt, dadurch ergeben sich am Boden der Kammern schöne Reflektorflächen. Da der Durchmesser der Bohrlöcher mit 5mm für die LEDs zu klein ist, muss man sie abschließend mit einem größeren Holzbohrer (8mm,..) auf den für die LEDs erforderlichen Durchmesser aufbohren (leider sind im Handel keine 14mm Versenker-Aufsätze für 8mm Bohrer erhältlich). Man kann auch gleich Löcher mit 8mm Durchmesser bohren und dann mit einem Versenker ohne Bohrer auf 14mm Durchmesser aufweiten. Für die Anbringung der Acrylglas-Frontplatte mittels Neodym-Magneten erhält die MDF-Platte am Rand 9 Ausnehmungen (Vertiefungen), welche den Abmessungen der Magneten entsprechen.&lt;br /&gt;
&lt;br /&gt;
Nach Abschluss der Fräs- und Bohrarbeiten wird die MDF-Platte vorderseitig grundiert und weiß spritzlackiert. Wenn man über keine Farbspritzpistole verfügt, verwendet man dafür Spritzfüller und Acryllack aus der Dose - jedoch unbedingt lösungsmittelhaltig und nicht auf Wasserbasis, damit die MDF-Platte nicht aufquillt! Da sich der Farbnebel weiträumig verteilt und überall anlegt, sollten die Spritzarbeiten vorzugsweise im Freien oder in einem leeren, gut belüfteten Nebenraum durchgeführt werden. In geschlossenen Räumen muss mit Atemschutzmaske gearbeitet werden! Wer sich das nicht antun will, kann die MDF-Platte selbstverständlich auch mit Pinsel grundieren und lackieren.&lt;br /&gt;
&lt;br /&gt;
Auf die Rückseite der MDF-Platte wird ein Rahmen aus Alu-U-Profil aufgeschraubt (Baumarkt, 2m Stange auf 4 Stk. mit je 40cm Länge auf Gehrung geschnitten). Er dient als Gehäuse für die Aufnahme der Elektronik und der Verdrahtung.&lt;br /&gt;
&lt;br /&gt;
Weitere mechanische Arbeiten sind:&lt;br /&gt;
&lt;br /&gt;
* Aufkleben der LED-Streifen auf einer Grundplatte. Es werden horizontal 16 Streifen zu je 18 LEDs (60 LEDs/lfm) mit einem vertikalen Abstand von 18,75 mm auf eine Grundplatte aufgeklebt. Vorzugsweise verwendet man dafür Aluminiumblech zur Wärmeableitung. Die LED-Streifen müssen mäanderförmig - jede zweite Reihe um 180° gestürzt - angebracht werden, sodass sich eine schlangenähnliche Anordnung der LEDs ergibt.&lt;br /&gt;
&lt;br /&gt;
* In die Außenflächen der U-Profile werden LED-Strips zur Hintergrundbeleuchtung eingeklebt und zum Schutz vor Staub und mechanischer Beschädigung mit Milchglasstreifchen aus Acrylglas oder Weichplastik abgedeckt ( man kann selbstverständlich auch fertige LED-Kanäle aus dem Handel verwenden).&lt;br /&gt;
&lt;br /&gt;
* Die Platzierung von Platinen, Umgebungslicht-Sensor, Buchsen für Stromzufuhr und PC-Anschluss, ggf. Lautsprecher ist abzuklären;&lt;br /&gt;
&lt;br /&gt;
* Bei Deckenbefestigung wird an der Zimmerdecke das Netzteil der Uhr in einem unscheinbaren Kästchen angebracht. Daran wird die Uhr an 2 Drahtseilen (transparent isolierte Seile aus dem LED-Zubehörhandel) aufgehängt, welche gleichzeitig als Stromzuführung für die LEDs und die Elektronik dienen.&lt;br /&gt;
&lt;br /&gt;
* Die Acrylglas-Frontplatte wird mit magnetischen Pads versehen, mit welchen sie an den Magneten der Montageplatte haftet.&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1 ES IST HH UHR MM (12)&lt;br /&gt;
  2 ES IST HH UHR MM (24)&lt;br /&gt;
  3 ES IST HH UHR UND MM MINUTEN (12)&lt;br /&gt;
  4 ES IST HH UHR UND MM MINUTEN (24)&lt;br /&gt;
  5 ES IST MM MINUTEN NACH HH UHR (12) NACHTS&lt;br /&gt;
  6 ES IST MM MINUTEN NACH HH UHR (24)&lt;br /&gt;
  7 OSSI  - ES IST MM NACH HH (12) &lt;br /&gt;
  8 OSSI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
  9 OESI - ES IST MM NACH HH UHR (12) - OESI&lt;br /&gt;
 10 OESI - ES IST MM NACH HH UHR (12) NACHTS &lt;br /&gt;
 11 RHEIN/RUHR - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 12 RHEIN/RUHR - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 13 SCHWABEN - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 14 SCHWABEN - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 15 WESSI - ES IST MM MINUTEN NACH HH (12) &lt;br /&gt;
 16 WESSI - ES IST MM MINUTEN NACH (12) NACHTS &lt;br /&gt;
 17 COUNTDOUWN MM MINUTEN VOR MITTERNACHT&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung um Modi mit anderen Wortkombinationen ist jederzeit möglich.&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Dateien WC24h_18x16_V2_Office_2003.zip und WC24h_18x16_V2_Office_2010.zip enthalten jeweils eine Excel und eine Access-Datenbank-Datei, in welchen ein Layout der Frontplatte sowie Tabellen mit den Positionsnummern der den einzelnen Wörtern zugeordneten LEDs enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation, Validierung, Code-Generator ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up in C#.net, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Der aktuelle Stand&#039;&#039;&#039; der Steuer-Tabellen kann auch online anhand von exemplarischen Uhrzeiten überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Auf diesen &#039;&#039;&#039;statischen&#039;&#039;&#039; HTML-Seiten gibt es für jeden Modus 60 Exemplarische Uhrzeiten:&lt;br /&gt;
  00:00, 01:01, 02:02, …, 23:23, 00:24, 01:25, 02:26, …, 11:59&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_uclock_de.png|miniatur|Interaktive WordClock24h]] Hier kann man sich &#039;&#039;&#039;interaktiv&#039;&#039;&#039; durch die Uhrzeiten klicken:&lt;br /&gt;
&lt;br /&gt;
* [http://uclock.de/ uclock.de]&lt;br /&gt;
&lt;br /&gt;
Der Stand des Frontplatten-Layouts ist hier 08.12.2014.&lt;br /&gt;
&lt;br /&gt;
Im Mock-up in C#.net ist auch ein &#039;&#039;&#039;Code-Generator&#039;&#039;&#039; integriert. Für µCs mit Von-Neumann-Architektur und Havard-Architektur werden unterschiedliche Dialekte benötigt, z.B. mit &amp;quot;progmem&amp;quot; für einige gcc-Toolketten.&lt;br /&gt;
&lt;br /&gt;
* [https://gist.github.com/TorstenC/aec0724be4afcd1d7545 Codegenerator-Funktion] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/c45751a699af50fe9e64 tables.h (Von-Neumann)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/c45751a699af50fe9e64/raw/tables.h Ziel speichern unter…])&lt;br /&gt;
* [https://gist.github.com/TorstenC/620741027bf23899012a display.h (Von-Neumann)] bei GitHub ([https://gist.githubusercontent.com/TorstenC/620741027bf23899012a/raw/display.h Ziel speichern unter…])&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
&lt;br /&gt;
*Wordclock 16 x 16 LED-Matrix, 32 cm x 32 cm :*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
*Wordclock 18 x 16 Matrix, 30 cm x 30 cm:*&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2010.zip]] 18x16 Matrix, MS Office 2007/2010-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 09.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Frontplatte_Arial_45x45cm.pdf]] Frontplattenvorlage Maßstab 1:1 für Siebdruck, 450mm x 450 mm, 18x16 Matrix, Schriftfont &amp;quot;Arial&amp;quot;, Update 11.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohrplan_Frontplatte_45x45cm.pdf]]  Bohr- und Frässchablone Maßstab 1:1 für  MDF-Montageplatte 450mm x 450 mm, 18x16 Matrix, Update 11.12.2014&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86111</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86111"/>
		<updated>2014-12-07T16:55:31Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Verifikation, Validierung, Code-Generator */ Hinweis auf &amp;quot;Raw&amp;quot; Button&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4-Discovery-Board oder alternativ Arduino mega1284p, ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
* 288 WS2812-LEDs auf Stripes (18x16 Matrix, 60Stk. pro Meter)&lt;br /&gt;
* I²C-RTC DS3231&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* TSOP für die Bedienung/Konfiguration mittels IR-Fernbedienung ([[IRMP]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Software-Komponenten ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Software-Module für STM32F4-Discovery:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Tools zur Pflege/Erstellung der Wort-Tabellen (tables.h usw.)&lt;br /&gt;
&lt;br /&gt;
* Ansteuerung der WS2812-Stripes per DMA&lt;br /&gt;
&lt;br /&gt;
* Benutzer-Interaktion mittels IRMP (Anlernen, Farbe &amp;amp; Uhrzeit stellen usw.)&lt;br /&gt;
&lt;br /&gt;
* Debugging-Monitor mit MCURSES (insb. Display Front, Logging usw.)&lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung der DS3231 &lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung eines I2C-EEPROMS zur Speicherung der Einstellungen&lt;br /&gt;
&lt;br /&gt;
* Anpassung der Helligkeit an die Umgebung mittels LDR oder I²C Ambient-Light-Sensor&lt;br /&gt;
&lt;br /&gt;
* Anbindung von diversen DCF77-Modulen&lt;br /&gt;
&lt;br /&gt;
* Anbindung eines WLAN-Moduls ESP8266&lt;br /&gt;
&lt;br /&gt;
* Zugriff auf NTP-Server via WLAN&lt;br /&gt;
&lt;br /&gt;
== Mechanik ==&lt;br /&gt;
&lt;br /&gt;
* Gehäuse (sofern man nicht den 50x50 Ribba-Rahmen nehmen möchte);&lt;br /&gt;
&lt;br /&gt;
* Grundplatte für LED-Matrix inkl. Verkabelung&lt;br /&gt;
&lt;br /&gt;
* gefräste MDF-Platte zur optischen Abgrenzung der LEDs mit Neodym-Magneten zur Frontplattenbefestigung (sofern man keinen Ribba-Rahmen verwenden möchte)&lt;br /&gt;
&lt;br /&gt;
* Platzierung von Platinen, LDR, Buchse für PC-Anschluss, ggf. Lautsprecher;&lt;br /&gt;
&lt;br /&gt;
* Dimmbare, färbige Hintergrundbeleuchtung mit LED-Stripes?&lt;br /&gt;
&lt;br /&gt;
* Stromversorgung, Zuleitungen und Befestigung: Drahtseile zum Abhängen von der Decke? Netzteil in der Deckenbefestigung?&lt;br /&gt;
&lt;br /&gt;
* Verdrahtungsplan&lt;br /&gt;
&lt;br /&gt;
* Frontplatte&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM MINUTEN NACH HH UHR (12) NACHTS&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH UHR (24)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12) NACHTS&lt;br /&gt;
  9. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12) NACHTS&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL VOR) HH UHR (12)&lt;br /&gt;
 12. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL VOR) HH UHR (12) NACHTS&lt;br /&gt;
 13. COUNTDOUWN MM MINUTEN VOR MITTERNACHT (für Silvester)&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung um Modi mit anderen Wortkombinationen ist jederzeit möglich.&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation, Validierung, Code-Generator ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up in C#.net, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Der aktuelle Stand&#039;&#039;&#039; der Steuer-Tabellen kann auch online anhand von exemplarischen Uhrzeiten überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Auf diesen &#039;&#039;&#039;statischen&#039;&#039;&#039; HTML-Seiten gibt es für jeden Modus 60 Exemplarische Uhrzeiten:&lt;br /&gt;
  00:00, 01:01, 02:02, …, 23:23, 00:24, 01:25, 02:26, …, 11:59&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_uclock_de.png|miniatur|Interaktive WordClock24h]] Hier kann man sich &#039;&#039;&#039;interaktiv&#039;&#039;&#039; durch die Uhrzeiten klicken:&lt;br /&gt;
&lt;br /&gt;
* [http://uclock.de/ uclock.de]&lt;br /&gt;
&lt;br /&gt;
Der Stand des Frontplatten-Layouts ist hier jedoch (noch) Ende November.&lt;br /&gt;
&lt;br /&gt;
Im Mock-up in C#.net ist auch ein &#039;&#039;&#039;Code-Generator&#039;&#039;&#039; integriert. Für µCs mit Von-Neumann-Architektur und Havard-Architektur werden unterschiedliche Dialekte benötigt, z.B. mit &amp;quot;progmem&amp;quot; für einige gcc-Toolketten. Hinweis: &#039;&#039;&#039;Download&#039;&#039;&#039; mit Click auf den &amp;quot;Raw&amp;quot; Button, dann &amp;quot;speichern unter&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* [https://gist.github.com/TorstenC/aec0724be4afcd1d7545 Codegenerator-Funktion] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/c45751a699af50fe9e64 tables.h (Von-Neumann)] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/620741027bf23899012a display.h (Von-Neumann)] bei GitHub&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2010.zip]] 18x16 Matrix, MS Office 2007/2010-Dateien, Update 04.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 04.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohr_&amp;amp;_Positionierschablone_30x30cm.zip]]  Bohr- und Positionierungsschablone für 18 x 16 Matrix (16,67mm x 18,75mm Raster)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:WC24h18x16_V2.zip&amp;diff=86096</id>
		<title>Datei:WC24h18x16 V2.zip</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:WC24h18x16_V2.zip&amp;diff=86096"/>
		<updated>2014-12-06T14:53:50Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Ersetzt durch neue Version im Artikel WordClock24h&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Version 2 der Frontplatte mit geänderter Wortanordnung und neuen Worttabellen.&lt;br /&gt;
{{Vorlage:Löschen|Ersetzt durch neue Version im Artikel WordClock24h}}&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:WC24h18x16_Office_2003.zip&amp;diff=86095</id>
		<title>Datei:WC24h18x16 Office 2003.zip</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:WC24h18x16_Office_2003.zip&amp;diff=86095"/>
		<updated>2014-12-06T14:53:26Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Ersetzt durch neue Version im Artikel WordClock24h&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Update, Fehlerbehebung &amp;quot;HALB&amp;quot;, &amp;quot;NACH&amp;quot;. Enthält Office 2003-Dateien WC24h18x16.xls und WC24h18x16.mdb&lt;br /&gt;
{{Vorlage:Löschen|Ersetzt durch neue Version im Artikel WordClock24h}}&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:WC24h18x16.zip&amp;diff=86094</id>
		<title>Datei:WC24h18x16.zip</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:WC24h18x16.zip&amp;diff=86094"/>
		<updated>2014-12-06T14:53:01Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Ersetzt durch neue Version im Artikel WordClock24h&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;WC24h_18x16.xlsx, WC24h_18x16.accdb&lt;br /&gt;
{{Vorlage:Löschen|Ersetzt durch neue Version im Artikel WordClock24h}}&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:WC24h16X16mdb.zip&amp;diff=86093</id>
		<title>Datei:WC24h16X16mdb.zip</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:WC24h16X16mdb.zip&amp;diff=86093"/>
		<updated>2014-12-06T14:52:42Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Ersetzt durch neue Version im Artikel WordClock24h&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;WC24h 16x16 Matrix Tabellen als Access mdb Datenbank im 2002/2003 Format&lt;br /&gt;
{{Vorlage:Löschen|Ersetzt durch neue Version im Artikel WordClock24h}}&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:WC24h18x16mdb.zip&amp;diff=86092</id>
		<title>Datei:WC24h18x16mdb.zip</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:WC24h18x16mdb.zip&amp;diff=86092"/>
		<updated>2014-12-06T14:51:59Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Ersetzt durch neue Version im Artikel WordClock24h&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;WC24h Tabellen für die 18x16 Matrix als Access mdb Datenbank im 2002/2003 Format&lt;br /&gt;
{{Vorlage:Löschen|Ersetzt durch neue Version im Artikel WordClock24h}}&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86091</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86091"/>
		<updated>2014-12-06T14:28:25Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Verifikation, Validierung, Code-Generator */ Formulierung&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4-Discovery-Board oder alternativ Arduino mega1284p, ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
* 288 WS2812-LEDs auf Stripes (18x16 Matrix, 60Stk. pro Meter)&lt;br /&gt;
* I²C-RTC DS3231&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* TSOP für die Bedienung/Konfiguration mittels IR-Fernbedienung ([[IRMP]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Software-Komponenten ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Software-Module für STM32F4-Discovery:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Tools zur Pflege/Erstellung der Wort-Tabellen (tables.h usw.)&lt;br /&gt;
&lt;br /&gt;
* Ansteuerung der WS2812-Stripes per DMA&lt;br /&gt;
&lt;br /&gt;
* Benutzer-Interaktion mittels IRMP (Anlernen, Farbe &amp;amp; Uhrzeit stellen usw.)&lt;br /&gt;
&lt;br /&gt;
* Debugging-Monitor mit MCURSES (insb. Display Front, Logging usw.)&lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung der DS3231 &lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung eines I2C-EEPROMS zur Speicherung der Einstellungen&lt;br /&gt;
&lt;br /&gt;
* Anpassung der Helligkeit an die Umgebung mittels LDR oder I²C Ambient-Light-Sensor&lt;br /&gt;
&lt;br /&gt;
* Anbindung von diversen DCF77-Modulen&lt;br /&gt;
&lt;br /&gt;
* Anbindung eines WLAN-Moduls ESP8266&lt;br /&gt;
&lt;br /&gt;
* Zugriff auf NTP-Server via WLAN&lt;br /&gt;
&lt;br /&gt;
== Mechanik ==&lt;br /&gt;
&lt;br /&gt;
* Gehäuse (sofern man nicht den 50x50 Ribba-Rahmen nehmen möchte);&lt;br /&gt;
&lt;br /&gt;
* Grundplatte für LED-Matrix inkl. Verkabelung&lt;br /&gt;
&lt;br /&gt;
* gefräste MDF-Platte zur optischen Abgrenzung der LEDs mit Neodym-Magneten zur Frontplattenbefestigung (sofern man keinen Ribba-Rahmen verwenden möchte)&lt;br /&gt;
&lt;br /&gt;
* Platzierung von Platinen, LDR, Buchse für PC-Anschluss, ggf. Lautsprecher;&lt;br /&gt;
&lt;br /&gt;
* Dimmbare, färbige Hintergrundbeleuchtung mit LED-Stripes?&lt;br /&gt;
&lt;br /&gt;
* Stromversorgung, Zuleitungen und Befestigung: Drahtseile zum Abhängen von der Decke? Netzteil in der Deckenbefestigung?&lt;br /&gt;
&lt;br /&gt;
* Verdrahtungsplan&lt;br /&gt;
&lt;br /&gt;
* Frontplatte&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM MINUTEN NACH HH UHR (12) NACHTS&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH UHR (24)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12) NACHTS&lt;br /&gt;
  9. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12) NACHTS&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL VOR) HH UHR (12)&lt;br /&gt;
 12. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL VOR) HH UHR (12) NACHTS&lt;br /&gt;
 13. COUNTDOUWN MM MINUTEN VOR MITTERNACHT (für Silvester)&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung um Modi mit anderen Wortkombinationen ist jederzeit möglich.&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation, Validierung, Code-Generator ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up in C#.net, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Der aktuelle Stand&#039;&#039;&#039; der Steuer-Tabellen kann auch online anhand von exemplarischen Uhrzeiten überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Auf diesen &#039;&#039;&#039;statischen&#039;&#039;&#039; HTML-Seiten gibt es für jeden Modus 60 Exemplarische Uhrzeiten:&lt;br /&gt;
  00:00, 01:01, 02:02, …, 23:23, 00:24, 01:25, 02:26, …, 11:59&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_uclock_de.png|miniatur|Interaktive WordClock24h]] Hier kann man sich &#039;&#039;&#039;interaktiv&#039;&#039;&#039; durch die Uhrzeiten klicken:&lt;br /&gt;
&lt;br /&gt;
* [http://uclock.de/ uclock.de]&lt;br /&gt;
&lt;br /&gt;
Der Stand des Frontplatten-Layouts ist hier jedoch (noch) Ende November.&lt;br /&gt;
&lt;br /&gt;
Im Mock-up in C#.net ist auch ein &#039;&#039;&#039;Code-Generator&#039;&#039;&#039; integriert. Für µCs mit Von-Neumann-Architektur und Havard-Architektur werden unterschiedliche Dialekte benötigt, z.B. mit &amp;quot;progmem&amp;quot; für einige gcc-Toolketten.&lt;br /&gt;
&lt;br /&gt;
* [https://gist.github.com/TorstenC/aec0724be4afcd1d7545 Codegenerator-Funktion] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/c45751a699af50fe9e64 tables.h (Von-Neumann)] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/620741027bf23899012a display.h (Von-Neumann)] bei GitHub&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2010.zip]] 18x16 Matrix, MS Office 2007/2010-Dateien, Update 04.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 04.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohr_&amp;amp;_Positionierschablone_30x30cm.zip]]  Bohr- und Positionierungsschablone für 18 x 16 Matrix (16,67mm x 18,75mm Raster)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86090</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86090"/>
		<updated>2014-12-06T14:19:15Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Verifikation und Validierung */ Code-Generator ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4-Discovery-Board oder alternativ Arduino mega1284p, ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
* 288 WS2812-LEDs auf Stripes (18x16 Matrix, 60Stk. pro Meter)&lt;br /&gt;
* I²C-RTC DS3231&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* TSOP für die Bedienung/Konfiguration mittels IR-Fernbedienung ([[IRMP]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Software-Komponenten ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Software-Module für STM32F4-Discovery:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Tools zur Pflege/Erstellung der Wort-Tabellen (tables.h usw.)&lt;br /&gt;
&lt;br /&gt;
* Ansteuerung der WS2812-Stripes per DMA&lt;br /&gt;
&lt;br /&gt;
* Benutzer-Interaktion mittels IRMP (Anlernen, Farbe &amp;amp; Uhrzeit stellen usw.)&lt;br /&gt;
&lt;br /&gt;
* Debugging-Monitor mit MCURSES (insb. Display Front, Logging usw.)&lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung der DS3231 &lt;br /&gt;
&lt;br /&gt;
* I²C-Routinen zur Ansteuerung eines I2C-EEPROMS zur Speicherung der Einstellungen&lt;br /&gt;
&lt;br /&gt;
* Anpassung der Helligkeit an die Umgebung mittels LDR oder I²C Ambient-Light-Sensor&lt;br /&gt;
&lt;br /&gt;
* Anbindung von diversen DCF77-Modulen&lt;br /&gt;
&lt;br /&gt;
* Anbindung eines WLAN-Moduls ESP8266&lt;br /&gt;
&lt;br /&gt;
* Zugriff auf NTP-Server via WLAN&lt;br /&gt;
&lt;br /&gt;
== Mechanik ==&lt;br /&gt;
&lt;br /&gt;
* Gehäuse (sofern man nicht den 50x50 Ribba-Rahmen nehmen möchte);&lt;br /&gt;
&lt;br /&gt;
* Grundplatte für LED-Matrix inkl. Verkabelung&lt;br /&gt;
&lt;br /&gt;
* gefräste MDF-Platte zur optischen Abgrenzung der LEDs mit Neodym-Magneten zur Frontplattenbefestigung (sofern man keinen Ribba-Rahmen verwenden möchte)&lt;br /&gt;
&lt;br /&gt;
* Platzierung von Platinen, LDR, Buchse für PC-Anschluss, ggf. Lautsprecher;&lt;br /&gt;
&lt;br /&gt;
* Dimmbare, färbige Hintergrundbeleuchtung mit LED-Stripes?&lt;br /&gt;
&lt;br /&gt;
* Stromversorgung, Zuleitungen und Befestigung: Drahtseile zum Abhängen von der Decke? Netzteil in der Deckenbefestigung?&lt;br /&gt;
&lt;br /&gt;
* Verdrahtungsplan&lt;br /&gt;
&lt;br /&gt;
* Frontplatte&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM MINUTEN NACH HH UHR (12) NACHTS&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH UHR (24)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12) NACHTS&lt;br /&gt;
  9. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12) NACHTS&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL VOR) HH UHR (12)&lt;br /&gt;
 12. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL VOR) HH UHR (12) NACHTS&lt;br /&gt;
 13. COUNTDOUWN MM MINUTEN VOR MITTERNACHT (für Silvester)&lt;br /&gt;
&lt;br /&gt;
Eine Erweiterung um Modi mit anderen Wortkombinationen ist jederzeit möglich.&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation, Validierung, Code-Generator ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up in C#.net, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
Der aktuelle Stand der Steuer-Tabellen kann auch online anhand von exemplarischen Uhrzeiten überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Auf diesen &#039;&#039;&#039;statischen&#039;&#039;&#039; HTML-Seiten gibt es für jeden Modus 60 Exemplarische Uhrzeiten:&lt;br /&gt;
  00:00, 01:01, 02:02, …, 23:23, 00:24, 01:25, 02:26, …, 11:59&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_uclock_de.png|miniatur|Interaktive WordClock24h]] Hier kann man sich &#039;&#039;&#039;interaktiv&#039;&#039;&#039; durch die Uhrzeiten klicken:&lt;br /&gt;
&lt;br /&gt;
* [http://uclock.de/ uclock.de]&lt;br /&gt;
&lt;br /&gt;
Der Stand des Frontplatten-Layouts ist hier jedoch (noch) Ende November.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
Im Mock-up in C#.net ist auch ein &#039;&#039;&#039;Code-Generator&#039;&#039;&#039; integriert. Für µCs mit Von-Neumann-Architektur und Havard-Architektur werden unterschiedliche Dialekte benötigt, z.B. mit &amp;quot;progmem&amp;quot; für einige gcc-Toolketten.&lt;br /&gt;
&lt;br /&gt;
* [https://gist.github.com/TorstenC/aec0724be4afcd1d7545 Codegenerator-Funktion] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/c45751a699af50fe9e64 tables.h (Von-Neumann)] bei GitHub&lt;br /&gt;
* [https://gist.github.com/TorstenC/620741027bf23899012a display.h (Von-Neumann)] bei GitHub&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2010.zip]] 18x16 Matrix, MS Office 2007/2010-Dateien, Update 04.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h_18x16_V2_Office_2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 04.12.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohr_&amp;amp;_Positionierschablone_30x30cm.zip]]  Bohr- und Positionierungsschablone für 18 x 16 Matrix (16,67mm x 18,75mm Raster)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86021</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86021"/>
		<updated>2014-12-01T06:34:25Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Wörter und Wortkombinationen */ Verifikation und Validierung in separates Kapitel geschoben&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4 Board     (alternativ)&lt;br /&gt;
* Arduino mega1284p (alternativ) -&amp;gt; ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
*&lt;br /&gt;
* 288 WS2812-LEDS (18x16 Matrix)&lt;br /&gt;
* I²C-RTC (eher DS3231 weil genauer aber komptibel mit den klassischen DS1307)&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* Bedienung/Konfiguration mittels IR-Fernbedienung (IRMP)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM NACH HH (12h)&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH (12h)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH HH UHR (12h)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH HH UHR (12h) NACHTS&lt;br /&gt;
  9. ES IST MM (VIERTEL NACH, HALB, VIERTEL) HH (12h)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h)&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 12. ES IST MM (VIERTEL NACH, HALB, DREIVIERTEL) HH (12h)&lt;br /&gt;
 13. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h)&lt;br /&gt;
 14. ES IST MM MINUTEN NACH/VOR (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 15. ES IST MM MINUTEN NACH/AUF (VIERTEL, HALB, VIERTEL VOR) HH (12h)&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Verifikation und Validierung ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle oben genannten Modi mit einer Simulation (Mock-up, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
Der aktuelle Stand der Steuer-Tabellen kann auch online überprüft werden.&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Verifikation&#039;&#039;&#039;: Sind die Formulierungen und Wort-Anordnungen wie gewünscht?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Validierung&#039;&#039;&#039;: Sind die Steuer-Tabellen fehlerfrei?&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16.zip]]             18x16 Matrix, MS Office 2007/2010-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16 Office 2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohr_&amp;amp;_Positionierschablone_30x30cm.zip]]  Bohr- und Positionierungsschablone für 18 x 16 Matrix (16,67mm x 18,75mm Raster)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86019</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86019"/>
		<updated>2014-11-30T22:24:19Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Wörter und Wortkombinationen */ überprüf-Seiten auf Github ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4 Board     (alternativ)&lt;br /&gt;
* Arduino mega1284p (alternativ) -&amp;gt; ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
*&lt;br /&gt;
* 288 WS2812-LEDS (18x16 Matrix)&lt;br /&gt;
* I²C-RTC (eher DS3231 weil genauer aber komptibel mit den klassischen DS1307)&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* Bedienung/Konfiguration mittels IR-Fernbedienung (IRMP)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle unten genannten Modi mit einer Simulation (Mock-up, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
Der aktuelle Stand der Steuer-Tabellen kann auch online überprüft werden:&lt;br /&gt;
&lt;br /&gt;
* [https://rawgit.com/TorstenC/94bc7ebb091784a2a1ad/raw/WC24h_16x16_Test.html WC24h_16x16_Test.html] auf GitHub&lt;br /&gt;
* [https://rawgit.com/TorstenC/1a59b9c73730eb8e144d/raw/WC24h_18x16_Test.html WC24h_18x16_Test.html] auf GitHub&lt;br /&gt;
&lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM NACH HH (12h)&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH (12h)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH HH UHR (12h)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH HH UHR (12h) NACHTS&lt;br /&gt;
  9. ES IST MM (VIERTEL NACH, HALB, VIERTEL) HH (12h)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h)&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 12. ES IST MM (VIERTEL NACH, HALB, DREIVIERTEL) HH (12h)&lt;br /&gt;
 13. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h)&lt;br /&gt;
 14. ES IST MM MINUTEN NACH/VOR (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 15. ES IST MM MINUTEN NACH/AUF (VIERTEL, HALB, VIERTEL VOR) HH (12h)&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16.zip]]             18x16 Matrix, MS Office 2007/2010-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16 Office 2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohr_&amp;amp;_Positionierschablone_30x30cm.zip]]  Bohr- und Positionierungsschablone für 18 x 16 Matrix (16,67mm x 18,75mm Raster)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86006</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86006"/>
		<updated>2014-11-28T23:47:21Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Wörter und Wortkombinationen */ DMU ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4 Board     (alternativ)&lt;br /&gt;
* Arduino mega1284p (alternativ) -&amp;gt; ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
*&lt;br /&gt;
* 288 WS2812-LEDS (18x16 Matrix)&lt;br /&gt;
* I²C-RTC (eher DS3231 weil genauer aber komptibel mit den klassischen DS1307)&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* Bedienung/Konfiguration mittels IR-Fernbedienung (IRMP)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
 &lt;br /&gt;
[[Datei:WC24h_Mock-up.jpeg|miniatur|Mock-up]] Bevor Frontplatten erstellt werden, erfolgt eine Prüfung der Buchstabenanordnung und der Tabellen für alle unten genannten Modi mit einer Simulation (Mock-up, siehe Bild).&lt;br /&gt;
&lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM NACH HH (12h)&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH (12h)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH HH UHR (12h)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH HH UHR (12h) NACHTS&lt;br /&gt;
  9. ES IST MM (VIERTEL NACH, HALB, VIERTEL) HH (12h)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h)&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 12. ES IST MM (VIERTEL NACH, HALB, DREIVIERTEL) HH (12h)&lt;br /&gt;
 13. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h)&lt;br /&gt;
 14. ES IST MM MINUTEN NACH/VOR (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 15. ES IST MM MINUTEN NACH/AUF (VIERTEL, HALB, VIERTEL VOR) HH (12h)&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16.zip]]             18x16 Matrix, MS Office 2007/2010-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16 Office 2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohr_&amp;amp;_Positionierschablone_30x30cm.zip]]  Bohr- und Positionierungsschablone für 18 x 16 Matrix (16,67mm x 18,75mm Raster)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:WC24h_Mock-up.jpeg&amp;diff=86005</id>
		<title>Datei:WC24h Mock-up.jpeg</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:WC24h_Mock-up.jpeg&amp;diff=86005"/>
		<updated>2014-11-28T23:40:54Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86004</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86004"/>
		<updated>2014-11-28T23:27:18Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Einleitung */ nur Formatierung&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Neu-Einsteiger, die diesen Artikel gelesen&#039;&#039;&#039; haben, stellen Ihre Fragen gern im Thread &amp;quot;&#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4 Board     (alternativ)&lt;br /&gt;
* Arduino mega1284p (alternativ) -&amp;gt; ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
*&lt;br /&gt;
* 288 WS2812-LEDS (18x16 Matrix)&lt;br /&gt;
* I²C-RTC (eher DS3231 weil genauer aber komptibel mit den klassischen DS1307)&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* Bedienung/Konfiguration mittels IR-Fernbedienung (IRMP)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
&lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM NACH HH (12h)&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH (12h)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH HH UHR (12h)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH HH UHR (12h) NACHTS&lt;br /&gt;
  9. ES IST MM (VIERTEL NACH, HALB, VIERTEL) HH (12h)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h)&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 12. ES IST MM (VIERTEL NACH, HALB, DREIVIERTEL) HH (12h)&lt;br /&gt;
 13. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h)&lt;br /&gt;
 14. ES IST MM MINUTEN NACH/VOR (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 15. ES IST MM MINUTEN NACH/AUF (VIERTEL, HALB, VIERTEL VOR) HH (12h)&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16.zip]]             18x16 Matrix, MS Office 2007/2010-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16 Office 2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohr_&amp;amp;_Positionierschablone_30x30cm.zip]]  Bohr- und Positionierungsschablone für 18 x 16 Matrix (16,67mm x 18,75mm Raster)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86003</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=86003"/>
		<updated>2014-11-28T23:08:57Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Kapitel &amp;quot;Einleitung&amp;quot; um die Teil-Bearbeitung des Wikis zu erleichtern&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue &amp;quot;WordClock&amp;quot; bzw. &amp;quot;WortUhr&amp;quot; mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Für Diskussionen der &amp;quot;Insider&amp;quot; gibt es den Thread &#039;&#039;&#039;[http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&#039;&#039;&#039;. Neu-Einsteiger, die diesen Artikel gelesen haben, stellen Ihre Fragen gern im Thread &#039;&#039;&#039;[http://www.mikrocontroller.net/topic/351181 WortUhr/WordClock: Minutengenau, 24h, RGB für Neu-Einsteiger]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p&lt;br /&gt;
 &lt;br /&gt;
[https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg jar hat erst mal 6 Platinen bestellt]&lt;br /&gt;
&lt;br /&gt;
[http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg andere Möglichkeit]&lt;br /&gt;
&lt;br /&gt;
oder kleiner als mega328p&lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921 Arduino-PRO-MINI-ATMEGA328] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/fur-Arduino-FT232RL-FTDI-USB-zu-TTL-Serien-Konverter-Adapter-Modul-5V-3-3V-1-PCS-/371182540239 brauchen Programmieradapter] &lt;br /&gt;
&lt;br /&gt;
[http://www.ebay.de/itm/1X-Mini-USB-Nano-V3-0-ATmega328P-5V-16M-Mikro-Controller-Board-fur-Arduino-NEU-/271678545637 oder ohne Programmieradapter]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4 Board     (alternativ)&lt;br /&gt;
* Arduino mega1284p (alternativ) -&amp;gt; ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
*&lt;br /&gt;
* 288 WS2812-LEDS (18x16 Matrix)&lt;br /&gt;
* I²C-RTC (eher DS3231 weil genauer aber komptibel mit den klassischen DS1307)&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* Bedienung/Konfiguration mittels IR-Fernbedienung (IRMP)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
&lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM NACH HH (12h)&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH (12h)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH HH UHR (12h)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH HH UHR (12h) NACHTS&lt;br /&gt;
  9. ES IST MM (VIERTEL NACH, HALB, VIERTEL) HH (12h)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h)&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 12. ES IST MM (VIERTEL NACH, HALB, DREIVIERTEL) HH (12h)&lt;br /&gt;
 13. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h)&lt;br /&gt;
 14. ES IST MM MINUTEN NACH/VOR (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 15. ES IST MM MINUTEN NACH/AUF (VIERTEL, HALB, VIERTEL VOR) HH (12h)&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16.zip]]             18x16 Matrix, MS Office 2007/2010-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16 Office 2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohr_&amp;amp;_Positionierschablone_30x30cm.zip]]  Bohr- und Positionierungsschablone für 18 x 16 Matrix (16,67mm x 18,75mm Raster)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=85996</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=85996"/>
		<updated>2014-11-28T22:11:18Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Friendly name für URL&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue WordClock mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
Thread: [http://www.mikrocontroller.net/topic/349206 Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?]&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
oder Arduino/Atmel als 1284p &lt;br /&gt;
[http://Platinen%20bestellt https://raw.githubusercontent.com/JChristensen/mini1284/master/mighty%20mini%201284p.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://andere%20Möglichkeit http://www.geeky-gadgets.com/wp-content/uploads/2014/08/Ardunio-Board.jpg]&lt;br /&gt;
&lt;br /&gt;
oder &lt;br /&gt;
&lt;br /&gt;
[http://m328p http://www.ebay.de/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/281513156921] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
* STM32F4 Board     (alternativ)&lt;br /&gt;
* Arduino mega1284p (alternativ) -&amp;gt; ggffs. abgespeckt m328p als Arduino nanoV3 oder mini/micro PRO mit m328p  &lt;br /&gt;
*&lt;br /&gt;
* 288 WS2812-LEDS (18x16 Matrix)&lt;br /&gt;
* I²C-RTC (eher DS3231 weil genauer aber komptibel mit den klassischen DS1307)&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* Bedienung/Konfiguration mittels IR-Fernbedienung (IRMP)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
&lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM NACH HH (12h)&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH (12h)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH HH UHR (12h)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH HH UHR (12h) NACHTS&lt;br /&gt;
  9. ES IST MM (VIERTEL NACH, HALB, VIERTEL) HH (12h)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h)&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 12. ES IST MM (VIERTEL NACH, HALB, DREIVIERTEL) HH (12h)&lt;br /&gt;
 13. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h)&lt;br /&gt;
 14. ES IST MM MINUTEN NACH/VOR (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 15. ES IST MM MINUTEN NACH/AUF (VIERTEL, HALB, VIERTEL VOR) HH (12h)&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
* [[Datei:WC24h16x16.zip]]             16x16 Matrix, MS Office 2007/2010-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16 Office 2003.zip]] 16x16 Matrix, MS Office 2002/2003-Dateien, Update 28.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16.zip]]             18x16 Matrix, MS Office 2007/2010-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16 Office 2003.zip]] 18x16 Matrix, MS Office 2002/2003-Dateien, Update 27.11.2014&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h16x16_Bohr_&amp;amp;_Positionierschablone_32x32cm.zip]]  Bohr- und Positionierungsschablone für 16 x 16 Matrix (20mm x 20mm Raster)&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h18x16_Bohr_&amp;amp;_Positionierschablone_30x30cm.zip]]  Bohr- und Positionierungsschablone für 18 x 16 Matrix (16,67mm x 18,75mm Raster)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:WC24h.zip&amp;diff=85933</id>
		<title>Datei:WC24h.zip</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:WC24h.zip&amp;diff=85933"/>
		<updated>2014-11-26T17:31:20Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Dateiname geändert, Weiterleitung ginge auch.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Löschen}} &#039;&#039;Ersetzt durch WC24h18x16.zip&#039;&#039; --[[Benutzer:Torsten c|Torsten c]] ([[Benutzer Diskussion:Torsten c|Diskussion]]) 18:31, 26. Nov. 2014 (CET)&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=85918</id>
		<title>WordClock24h</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=WordClock24h&amp;diff=85918"/>
		<updated>2014-11-25T09:25:36Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* LEDs */ Unterkapitel erzeugt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Es geht um eine minutengenaue WordClock mit 24-Stunden-Modus.&lt;br /&gt;
&lt;br /&gt;
Thread: http://www.mikrocontroller.net/topic/349206&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel wird schrittweise ausgebaut und soll zur Zeit nur zur Sammlung von Ideen dienen.&lt;br /&gt;
&lt;br /&gt;
Bisherige Layout-Vorschläge:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-001.png|miniatur|Druckversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237179/Qlock_Pi_Arial_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
und dasselbe mit Stegen für Fräsungen in Holz/Edelmetall:&lt;br /&gt;
&lt;br /&gt;
[[Datei:Wc24h-002.png|miniatur|Fräsversion]]&lt;br /&gt;
&lt;br /&gt;
   http://www.mikrocontroller.net/attachment/237180/Qlock_Pi_Stencil_Allround_450_x_450.pdf&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
Bei der 18 x 16 Matrix (Standardversion mit allen Texten) werden insgesamt 288 LEDs benötigt, bei der 16 x 16 Matrix (abgespeckte Version mit weniger Texten) insgesamt 256 LEDs. Vorzugsweise sollen WS2812 oder WS2812B zum Einsatz kommen. Um Lötarbeit zu sparen, sollen entweder fertige LED-Matrizen (gibt es bei eBay) oder LED-Stripes verwendet werden. Vorzugsweise werden für die 18 x 16 Matrix WS2812B RGB-LED-Stripes mit 60 LEDs/lfm, für die 16 x 16 Matrix 2 Stück 16 x 8 WS2812B RGB-LED-Matrizen (LED-Abstand horizontal und vertikal jeweils 20mm) verwendet. &lt;br /&gt;
&lt;br /&gt;
=== 18 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Da die Buchstaben höher als breit ist, sieht es besser aus, wenn der Buchstabenabstand in der Waagerechten geringer ist als in der Höhe. Dies kann man mit einer 18x16-Matrix erreichen - bei quadratischem Umfang der kompletten Matrix.&lt;br /&gt;
&lt;br /&gt;
Wenn man Stripes verwendet, welche 60 LEDs/m haben, dann ist die Breite aller 18 Buchstaben exakt 30cm. Bei 16 Zeilen kommt man auf eine Komplett-Höhe bei einem senkrechten Buchstaben-Abstand von 30/16 = 1,875cm.&lt;br /&gt;
&lt;br /&gt;
Also: Abstand in der Breite: 1,667cm, in der Höhe 1,875cm. Dann besteht bei einer 45cm x 45cm großen Frontplatte ein einheitlicher Rand von je 7,5cm. Das Schriftbild ist durch den geringeren waagerechten Buchstabenabstand dann leichter lesbar.&lt;br /&gt;
&lt;br /&gt;
Die WS2812-LEDs werden dabei folgendermaßen verdrahtet:&lt;br /&gt;
&lt;br /&gt;
  1  2  3  4  ...                              18&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
                                                  |&lt;br /&gt;
  36                                       20  19 |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O---&lt;br /&gt;
  |&lt;br /&gt;
  |&lt;br /&gt;
  O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--O--&lt;br /&gt;
  37 38 ....&lt;br /&gt;
&lt;br /&gt;
Das heißt, dass jeder zweite Streifen &amp;quot;auf dem Kopf&amp;quot; steht.&lt;br /&gt;
Die LEDs müssen sowohl in der Horizontalen als auch in der Vertikalen einen Abstand von jeweils 2cm haben. Damit kommt man dann auf ein Quadrat mit den Maßen 32cm x 32cm. Bei einer Frontplatte von 45cm x 45cm verbleibt dann jeweils ein schwarzer Rand von 6,5cm auf jeder Seite.&lt;br /&gt;
&lt;br /&gt;
=== 16 x 16 Matrix ===&lt;br /&gt;
&lt;br /&gt;
Bei der 16 x 16 Matrix kommen 2 Stück 16 x 8 LED-Matrizen mit einem horizontalen und vertikalen Abstand der LEDs von jeweils 20mm zum Einsatz. Dementsprechend betragen die Außenabmessungen der Matrix 32cm x 32cm. Bei einer 45cm großen Frontplatte bleibt rundherum ein 6,5 cm freier Rand bestehen.&lt;br /&gt;
&lt;br /&gt;
Die 16x8 LED-Matrizen sind ebenfalls mit WS2812B RGB-LEDs bestückt, die Ansteuerung erfolgt wie bei den Stripes seriell.&lt;br /&gt;
&lt;br /&gt;
== Frontplatten ==&lt;br /&gt;
&lt;br /&gt;
Es sind sowohl gefräste Holz/Edelstahl-Frontplatten als auch im Siebdruck hergestellte Acrylglasplatten vorgesehen. &lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/user/show/ukw &#039;&#039;&#039;ukw&#039;&#039;&#039;] hat sich bereit erklärt, analog zur 10x11-WordClock-[http://www.mikrocontroller.net/articles/Word_Clock#Sammelbestellung_.28Plexiglas.29 &#039;&#039;&#039;Sammelbestellung Plexiglas&#039;&#039;&#039;] eine Sammelbestellung für die WordClock24h anzubieten. Die Kosten pro bedruckter Platte belaufen sich auf voraussichtlich 38 EUR. Dabei wird eine extra Farbschicht als Diffusor verwendet.&lt;br /&gt;
&lt;br /&gt;
== Elektronik ==&lt;br /&gt;
&lt;br /&gt;
Als Mikrocontroller ist ein STM32 vorgesehen. Mit dem STM32F4-Discovery-Board hätte man für wenig Geld (ca. 17 EUR) ein leistungsfähiges System. Es wird aber auch noch nach kleineren Alternativen (wie zum Beispiel STM32F103C8T6) gesucht...&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* STM32F4 Board&lt;br /&gt;
* 288 WS2812-LEDS (18x16 Matrix)&lt;br /&gt;
* I²C-RTC&lt;br /&gt;
* LDR zur automatischen Helligkeitssteuerung&lt;br /&gt;
* Bedienung/Konfiguration mittels IR-Fernbedienung (IRMP)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Optionale Komponenten:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Anschlussmöglichkeit eines DCF77-Moduls (optional)&lt;br /&gt;
* Anschluss eines WLAN-Modules (ESP8266), darüber Zugriff auf NTP-Server&lt;br /&gt;
* Bedienung/Konfiguration mittels Android-App bei WLAN-Konnektivität (s.o.)&lt;br /&gt;
&lt;br /&gt;
== Wörter und Wortkombinationen ==&lt;br /&gt;
&lt;br /&gt;
Die WordCLock24h stellt die Zeit in Form von Wörtern und Wortkombinationen dar. Dabei sind per Konfiguration verschiedene Darstellungsformen im 12h- und im 24h-Modus auswählbar. Die Auswahl der Darstellungsform sowie der jeweils angezeigten Wörter erfolgt über Tabellen (Arrays), welche untereinander nach Art einer Baumstruktur hierarchisch verknüpft sind.&lt;br /&gt;
&lt;br /&gt;
Die Inhalte und Verknüpfungen der Tabellen können beispielhaft aus der Access Datenbank WC24h.accdb entnommen werden. Die Datenbank enthält auch ein Formular frm_Anzeigestrings, mit welchem man eine gewünschte Darstellungsform auswählen und die 1440 Wortkombinationen eines 24-Stunden-Tages (24 Std. x 60 Min.) in Listenform anzeigen kann.&lt;br /&gt;
&lt;br /&gt;
Über die Tabelle tbl_modes der obersten Hierarchieebene können folgende Darstellungsformen ausgewählt werden:&lt;br /&gt;
&lt;br /&gt;
  1. ES IST HH UHR MM (12h)&lt;br /&gt;
  2. ES IST HH UHR MM (24h)&lt;br /&gt;
  3. ES IST HH UHR UND MM MINUTEN (12h)&lt;br /&gt;
  4. ES IST HH UHR UND MM MINUTEN (24h)&lt;br /&gt;
  5. ES IST MM NACH HH (12h)&lt;br /&gt;
  6. ES IST MM MINUTEN NACH HH (12h)&lt;br /&gt;
  7. ES IST MM MINUTEN NACH HH UHR (12h)&lt;br /&gt;
  8. ES IST MM MINUTEN NACH HH UHR (12h) NACHTS&lt;br /&gt;
  9. ES IST MM (VIERTEL NACH, HALB, VIERTEL) HH (12h)&lt;br /&gt;
 10. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h)&lt;br /&gt;
 11. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, VIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 12. ES IST MM (VIERTEL NACH, HALB, DREIVIERTEL) HH (12h)&lt;br /&gt;
 13. ES IST MM MINUTEN NACH (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h)&lt;br /&gt;
 14. ES IST MM MINUTEN NACH/VOR (VIERTEL NACH, HALB, DREIVIERTEL) HH UHR (12h) NACHTS&lt;br /&gt;
 15. ES IST MM MINUTEN NACH/AUF (VIERTEL, HALB, VIERTEL VOR) HH (12h)&lt;br /&gt;
&lt;br /&gt;
Die Tabelle tbl_modes greift auf die Datensätze der Tabellen tbl_hours und tbl_minutes zurück, in welchen die Referenz-Indizes für die jeweils für die Stunden und Minuten zu verwendenden Wortkombinationen enthalten sind.&lt;br /&gt;
&lt;br /&gt;
Diese Referenz-Indizes beziehen sich ihrerseits auf die Indizes der Tabelle tbl_words der untersten Hierarchieebene, in welcher die Position und Anzahl der für die Darstellung der jeweiligen Wörter einzuschaltenden LEDs festgehalten ist.&lt;br /&gt;
&lt;br /&gt;
Aus dieser Tabelle (Array) werden nacheinander die Bitmuster für die Wörter der anzuzeigenden Uhrzeit ausgelesen und seriell in die Schieberegister der Leuchtdioden eingespeist.&lt;br /&gt;
&lt;br /&gt;
Die zip-Datei WC24h.zip enthält die MS Access 2010 - Datenbank WC24h.accdb sowie die Excel-Datei WC24h.xlsx, in welcher ein Entwurf der Frontplatte mit Positionsnummern der LEDs sowie eine Tabelle mit den LED-Positionen der Wörter für Matrix- und für serielle Ansteuerung enthalten sind.&lt;br /&gt;
&lt;br /&gt;
== Downloads ==&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h.zip]] WC24h.xlsx, WC24h.accdb Wortdateien, Wortreferenzen&lt;br /&gt;
&lt;br /&gt;
* [[Datei:WC24h Frontplatte Futura Lt 18x16 45x45cm.zip]] Frontplatte &amp;quot;Futura Light&amp;quot; 18x16 45cm x 45cm pdf-Datei&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=STM32F103C8T6_Boards&amp;diff=85112</id>
		<title>STM32F103C8T6 Boards</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=STM32F103C8T6_Boards&amp;diff=85112"/>
		<updated>2014-10-07T21:10:41Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Tabellenfehler korrigiert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hauptsächlich aus China gibt es preiswerte &#039;&#039;&#039;STM32F103C8T6 Boards&#039;&#039;&#039; in 600 mil und 1300 mil Breite.&lt;br /&gt;
&lt;br /&gt;
==Pinbelegung==&lt;br /&gt;
[[Datei:1300mil STM32F103C8T6.png|miniatur|1300mil Board]]&lt;br /&gt;
Nachfolgend die Pinbelegung beider Versionen:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|Pin&lt;br /&gt;
|Name&lt;br /&gt;
|600 mil&lt;br /&gt;
|1300 mil&lt;br /&gt;
|Type&lt;br /&gt;
|POR-Fct&lt;br /&gt;
|Default&lt;br /&gt;
|Remap&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|VBAT&lt;br /&gt;
|1&lt;br /&gt;
|5&lt;br /&gt;
|S&lt;br /&gt;
|VBAT&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PC13-TAMPER- RTC(5)&lt;br /&gt;
|2&lt;br /&gt;
|6&lt;br /&gt;
|I/O&lt;br /&gt;
|PC13(6)&lt;br /&gt;
|TAMPER-RTC&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|PC14-OSC32_IN(5)&lt;br /&gt;
|3&lt;br /&gt;
|7&lt;br /&gt;
|I/O&lt;br /&gt;
|PC14(6)&lt;br /&gt;
|OSC32_IN&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|PC15- OSC32_OUT(5)&lt;br /&gt;
|4&lt;br /&gt;
|8&lt;br /&gt;
|I/O&lt;br /&gt;
|PC15(6)&lt;br /&gt;
|OSC32_OUT&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|OSC_IN&lt;br /&gt;
| -&lt;br /&gt;
|9&lt;br /&gt;
|I&lt;br /&gt;
|OSC_IN&lt;br /&gt;
|&lt;br /&gt;
|PD0(7)&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|OSC_OUT&lt;br /&gt;
| -&lt;br /&gt;
|10&lt;br /&gt;
|O&lt;br /&gt;
|OSC_OUT&lt;br /&gt;
|&lt;br /&gt;
|PD1(7)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|NRST&lt;br /&gt;
| -&lt;br /&gt;
| -&lt;br /&gt;
|I/O&lt;br /&gt;
|NRST&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|VSSA&lt;br /&gt;
|(19)&lt;br /&gt;
|3&lt;br /&gt;
|S&lt;br /&gt;
|VSSA&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|VDDA&lt;br /&gt;
|38&lt;br /&gt;
|2&lt;br /&gt;
|S&lt;br /&gt;
|VDDA&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|PA0-WKUP&lt;br /&gt;
|5&lt;br /&gt;
|11&lt;br /&gt;
|I/O&lt;br /&gt;
|PA0&lt;br /&gt;
|WKUP/ USART2_CTS(9)/ ADC12_IN0/ TIM2_CH1_ ETR(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|PA1&lt;br /&gt;
|6&lt;br /&gt;
|12&lt;br /&gt;
|I/O&lt;br /&gt;
|PA1&lt;br /&gt;
|USART2_RTS(9)/ ADC12_IN1/ TIM2_CH2(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|PA2&lt;br /&gt;
|7&lt;br /&gt;
|13&lt;br /&gt;
|I/O&lt;br /&gt;
|PA2&lt;br /&gt;
|USART2_TX(9)/ ADC12_IN2/ TIM2_CH3(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|PA3&lt;br /&gt;
|8&lt;br /&gt;
|14&lt;br /&gt;
|I/O&lt;br /&gt;
|PA3&lt;br /&gt;
|USART2_RX(9)/ ADC12_IN3/ TIM2_CH4(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|PA4&lt;br /&gt;
|9&lt;br /&gt;
|15&lt;br /&gt;
|I/O&lt;br /&gt;
|PA4&lt;br /&gt;
|SPI1_NSS(9)/ USART2_CK(9)/ ADC12_IN4&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|PA5&lt;br /&gt;
|10&lt;br /&gt;
|16&lt;br /&gt;
|I/O&lt;br /&gt;
|PA5&lt;br /&gt;
|SPI1_SCK(9)/ ADC12_IN5&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|PA6&lt;br /&gt;
|11&lt;br /&gt;
|17&lt;br /&gt;
|I/O&lt;br /&gt;
|PA6&lt;br /&gt;
|SPI1_MISO(9)/ ADC12_IN6/ TIM3_CH1(9)&lt;br /&gt;
|TIM1_BKIN&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|PA7&lt;br /&gt;
|12&lt;br /&gt;
|18&lt;br /&gt;
|I/O&lt;br /&gt;
|PA7&lt;br /&gt;
|SPI1_MOSI(9)/ ADC12_IN7/ TIM3_CH2(9)&lt;br /&gt;
|TIM1_CH1N&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|PB0&lt;br /&gt;
|13&lt;br /&gt;
|19&lt;br /&gt;
|I/O&lt;br /&gt;
|PB0&lt;br /&gt;
|ADC12_IN8/ TIM3_CH3(9)&lt;br /&gt;
|TIM1_CH2N&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|PB1&lt;br /&gt;
|14&lt;br /&gt;
|20&lt;br /&gt;
|I/O&lt;br /&gt;
|PB1&lt;br /&gt;
|ADC12_IN9/ TIM3_CH4(9)&lt;br /&gt;
|TIM1_CH3N&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|PB2&lt;br /&gt;
| -&lt;br /&gt;
|21&lt;br /&gt;
|I/O&lt;br /&gt;
|PB2/BOOT1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|PB10&lt;br /&gt;
|15&lt;br /&gt;
|22&lt;br /&gt;
|I/O&lt;br /&gt;
|PB10&lt;br /&gt;
|I2C2_SCL/ USART3_TX(9)&lt;br /&gt;
|TIM2_CH3&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|PB11&lt;br /&gt;
|16&lt;br /&gt;
|23&lt;br /&gt;
|I/O&lt;br /&gt;
|PB11&lt;br /&gt;
|I2C2_SDA/ USART3_RX(9)&lt;br /&gt;
|TIM2_CH4&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|VSS_1&lt;br /&gt;
|19&lt;br /&gt;
|4&lt;br /&gt;
|S&lt;br /&gt;
|VSS_1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|VDD_1&lt;br /&gt;
|(20)&lt;br /&gt;
|(2) &lt;br /&gt;
|S&lt;br /&gt;
|VDD_1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|25&lt;br /&gt;
|PB12&lt;br /&gt;
|21&lt;br /&gt;
|24&lt;br /&gt;
|I/O&lt;br /&gt;
|PB12&lt;br /&gt;
|SPI2_NSS/ I2C2_SMBAl/ USART3_CK(9)/ TIM1_BKIN(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|26&lt;br /&gt;
|PB13&lt;br /&gt;
|22&lt;br /&gt;
|25&lt;br /&gt;
|I/O&lt;br /&gt;
|PB13&lt;br /&gt;
|SPI2_SCK/ USART3_CTS(9)/ TIM1_CH1N (9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|27&lt;br /&gt;
|PB14&lt;br /&gt;
|23&lt;br /&gt;
|26&lt;br /&gt;
|I/O&lt;br /&gt;
|PB14&lt;br /&gt;
|SPI2_MISO/ USART3_RTS(9) TIM1_CH2N (9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|28&lt;br /&gt;
|PB15&lt;br /&gt;
|24&lt;br /&gt;
|27&lt;br /&gt;
|I/O&lt;br /&gt;
|PB15&lt;br /&gt;
|SPI2_MOSI/ TIM1_CH3N(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|29&lt;br /&gt;
|PA8&lt;br /&gt;
|25&lt;br /&gt;
|28&lt;br /&gt;
|I/O&lt;br /&gt;
|PA8&lt;br /&gt;
|USART1_CK/ TIM1_CH1(9)/ MCO&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|30&lt;br /&gt;
|PA9&lt;br /&gt;
|26&lt;br /&gt;
|29&lt;br /&gt;
|I/O&lt;br /&gt;
|PA9&lt;br /&gt;
|USART1_TX(9)/ TIM1_CH2(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|31&lt;br /&gt;
|PA10&lt;br /&gt;
|27&lt;br /&gt;
|30&lt;br /&gt;
|I/O&lt;br /&gt;
|PA10&lt;br /&gt;
|USART1_RX(9)/ TIM1_CH3(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|32&lt;br /&gt;
|PA11&lt;br /&gt;
|28&lt;br /&gt;
|31&lt;br /&gt;
|I/O&lt;br /&gt;
|PA11&lt;br /&gt;
|USART1_CTS/ CANRX(9)/ USBDM/ TIM1_CH4(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|PA12&lt;br /&gt;
| -&lt;br /&gt;
|32&lt;br /&gt;
|I/O&lt;br /&gt;
|PA12&lt;br /&gt;
|USART1_RTS/ CANTX(9) /USBDP TIM1_ETR(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|34&lt;br /&gt;
|PA13&lt;br /&gt;
|29&lt;br /&gt;
|33&lt;br /&gt;
|I/O&lt;br /&gt;
|JTMS/SWDIO&lt;br /&gt;
|&lt;br /&gt;
|PA13&lt;br /&gt;
|-&lt;br /&gt;
|35&lt;br /&gt;
|VSS_2&lt;br /&gt;
|14&lt;br /&gt;
|4&lt;br /&gt;
|S&lt;br /&gt;
|VSS_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|36&lt;br /&gt;
|VDD_2&lt;br /&gt;
|20&lt;br /&gt;
|(2) &lt;br /&gt;
|S&lt;br /&gt;
|VDD_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|37&lt;br /&gt;
|PA14&lt;br /&gt;
| -&lt;br /&gt;
|34&lt;br /&gt;
|I/O&lt;br /&gt;
|JTCK/SWCLK&lt;br /&gt;
|&lt;br /&gt;
|PA14&lt;br /&gt;
|-&lt;br /&gt;
|38&lt;br /&gt;
|PA15&lt;br /&gt;
|30&lt;br /&gt;
|35&lt;br /&gt;
|&lt;br /&gt;
|JTDI&lt;br /&gt;
|&lt;br /&gt;
|TIM2_CH1_ ETR/ PA15 /SPI1_NSS&lt;br /&gt;
|-&lt;br /&gt;
|39&lt;br /&gt;
|PB3&lt;br /&gt;
|31&lt;br /&gt;
|36&lt;br /&gt;
|I/O&lt;br /&gt;
|JTDO&lt;br /&gt;
|&lt;br /&gt;
|TIM2_CH2 / PB3 TRACESWO SPI1_SCK&lt;br /&gt;
|-&lt;br /&gt;
|40&lt;br /&gt;
|PB4&lt;br /&gt;
|32&lt;br /&gt;
|37&lt;br /&gt;
|I/O&lt;br /&gt;
|JNTRST&lt;br /&gt;
|&lt;br /&gt;
|TIM3_CH1/ PB4/ SPI1_MISO&lt;br /&gt;
|-&lt;br /&gt;
|41&lt;br /&gt;
|PB5&lt;br /&gt;
|33&lt;br /&gt;
|38&lt;br /&gt;
|I/O&lt;br /&gt;
|PB5&lt;br /&gt;
|I2C1_SMBAl&lt;br /&gt;
|TIM3_CH2 / SPI1_MOSI&lt;br /&gt;
|-&lt;br /&gt;
|42&lt;br /&gt;
|PB6&lt;br /&gt;
|34&lt;br /&gt;
|39&lt;br /&gt;
|I/O&lt;br /&gt;
|PB6&lt;br /&gt;
|I2C1_SCL(9)/ TIM4_CH1(9)&lt;br /&gt;
|USART1_TX&lt;br /&gt;
|-&lt;br /&gt;
|43&lt;br /&gt;
|PB7&lt;br /&gt;
|35&lt;br /&gt;
|40&lt;br /&gt;
|I/O&lt;br /&gt;
|PB7&lt;br /&gt;
|I2C1_SDA(9)/ TIM4_CH2(9)&lt;br /&gt;
|USART1_RX&lt;br /&gt;
|-&lt;br /&gt;
|44&lt;br /&gt;
|BOOT0&lt;br /&gt;
| -&lt;br /&gt;
| -&lt;br /&gt;
|I&lt;br /&gt;
|BOOT0&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|45&lt;br /&gt;
|PB8&lt;br /&gt;
|36&lt;br /&gt;
|41&lt;br /&gt;
|I/O&lt;br /&gt;
|PB8&lt;br /&gt;
|TIM4_CH3(9)&lt;br /&gt;
|I2C1_SCL / CANRX&lt;br /&gt;
|-&lt;br /&gt;
|46&lt;br /&gt;
|PB9&lt;br /&gt;
|37&lt;br /&gt;
|42&lt;br /&gt;
|I/O&lt;br /&gt;
|PB9&lt;br /&gt;
|TIM4_CH4(9)&lt;br /&gt;
|I2C1_SDA/ CANTX&lt;br /&gt;
|-&lt;br /&gt;
|47&lt;br /&gt;
|VSS_3&lt;br /&gt;
|39&lt;br /&gt;
|4&lt;br /&gt;
|S&lt;br /&gt;
|VSS_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|48&lt;br /&gt;
|VDD_3&lt;br /&gt;
|(20)&lt;br /&gt;
|(2) &lt;br /&gt;
|S&lt;br /&gt;
|VDD_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:ARM-Boards]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=STM32&amp;diff=85111</id>
		<title>STM32</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=STM32&amp;diff=85111"/>
		<updated>2014-10-07T20:57:36Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Evaluation Boards */ Kategorie:ARM-Boards ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;STM32 ist eine Mikrocontroller-Familie von [http://www.st.com/mcu/inchtml-pages-stm32.html ST] mit einer 32-Bit [http://www.arm.com/products/processors/cortex-m/index.php ARM Cortex-M0/M3/M4] CPU. Diese Architektur ist speziell für den Einsatz in Microcontrollern neu entwickelt und löst damit die bisherigen ARM7-basierten Controller weitestgehend ab. Den STM32 gibt es von ST in unzähligen Varianten mit variabler Peripherie und verschiedenen Gehäusegrößen und -formen. Durch die geringe Chipfläche des Cores ist es ST möglich, eine 32 Bit-CPU für weniger als 1&amp;amp;nbsp;€ anzubieten.&lt;br /&gt;
&lt;br /&gt;
[[Bild:stm32F103xc.png|thumb|right|340px|Blockdiagramm STM32F103xC/D/E]]&lt;br /&gt;
&lt;br /&gt;
== STM32-Familien ==&lt;br /&gt;
&lt;br /&gt;
Bisher gibt es sieben STM32-Familien:&lt;br /&gt;
* [http://www.st.com/internet/mcu/subclass/1588.jsp STM32F0]&lt;br /&gt;
** Cortex M0&lt;br /&gt;
** Mikrocontroller zum Einstieg&lt;br /&gt;
** Bis 48MHz&lt;br /&gt;
* [http://www.st.com/internet/mcu/subclass/1169.jsp STM32F1]&lt;br /&gt;
** Cortex M3&lt;br /&gt;
** Bis 72MHz&lt;br /&gt;
**Verschiedene Unterfamilien:&lt;br /&gt;
*** Connectivity line&lt;br /&gt;
*** Performance line&lt;br /&gt;
*** USB Access line&lt;br /&gt;
*** Access Line&lt;br /&gt;
*** Value line&lt;br /&gt;
* [http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1575 STM32F2]&lt;br /&gt;
** Cortex M3&lt;br /&gt;
** Bis 120MHz&lt;br /&gt;
** Wie die STM32F1 Serie, Camera-Interface, 32-Bit Timer, Crypto-Engine...&lt;br /&gt;
* [http://www.st.com/internet/mcu/subclass/1605.jsp STM32F3]&lt;br /&gt;
** Cortex M4F&lt;br /&gt;
** DSP und FPU&lt;br /&gt;
** Bis 72MHz&lt;br /&gt;
** Fast 12-bit 5 MSPS and precise 16-bit sigma-delta ADCs&lt;br /&gt;
** Touch sensing controller (TSC)&lt;br /&gt;
* [http://www.st.com/internet/mcu/subclass/1521.jsp STM32F4]&lt;br /&gt;
** Cortex M4F&lt;br /&gt;
** DSP und FPU&lt;br /&gt;
** Bis 180MHz&lt;br /&gt;
** Bis zu 2MB Flash&lt;br /&gt;
* [http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1295 STM32L1]&lt;br /&gt;
** Cortex M3&lt;br /&gt;
** Low Power &lt;br /&gt;
** mit LCD Treiber&lt;br /&gt;
** Bis 32MHz&lt;br /&gt;
* [http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1581 STM32W]&lt;br /&gt;
** Cortex M3&lt;br /&gt;
** BIS 24MHz&lt;br /&gt;
** RF-MCU &lt;br /&gt;
[http://www.st.com/internet/mcu/class/1734.jsp Hier eine Übersicht zum Auswählen eines STM32Fxxx]&lt;br /&gt;
&lt;br /&gt;
===Features===&lt;br /&gt;
* Cortex-M0 / Cortex-M3 / Cortex-M4F Kern (mit FPU)&lt;br /&gt;
* 16KB ... 2MB  [[Flash-ROM]]&lt;br /&gt;
*  4KB ... 256KB [[Speicher#SRAM|SRAM]]&lt;br /&gt;
* 2KB ... 16KB [[Speicher#EEPROM|EEPROM]] (STM32L)&lt;br /&gt;
* SDRAM-Controller bei den [http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1577/LN1806 STM32F42xxx und STM32F43xxx], bis 512 MByte externer SDRAM addressierbar&lt;br /&gt;
* 512 one-time programmable Bytes(STM32F2/4)&lt;br /&gt;
* [[IC-Gehäuseformen | Gehäuse]] 20 ... 216 Pins als TSSOP, QFN, LQFP und BGA&lt;br /&gt;
* Derzeit sind über &#039;&#039;&#039;370&#039;&#039;&#039; [http://www.st.com/web/en/catalog/mmc/FM141/SC1169 STM32 Derivate/Varianten verfügbar]&lt;br /&gt;
* Bis 72MHz CPU-Takt, bis 120MHz beim STM32F2xx, bis 168/180 MHz beim STM32F4xx, wobei eine spezielle prefetch-hardware bis 120/168 MHz eine Geschwindigkeit erzielen soll, die 0 Wait-States entspricht. Der CPU-Takt wird über einen Multiplikator aus dem internen RC-Takt oder einem externen Quarz-Takt abgeleitet.&lt;br /&gt;
* Externes Businterface (nur bei Gehäusen ab 100 Pin und nur bei STM32F4, STM32F2 und STM32F1 Performance line)&lt;br /&gt;
* LCD Treiber für 8x40 Punkte (nicht beim STM32F2xx)&lt;br /&gt;
* TFT Treiber bei STM32F429 / STM32F439&lt;br /&gt;
* Spannungsbereich 1,65 ... 3,6V, nur eine Betriebsspannung nötig&lt;br /&gt;
* Temperaturbereich bis 125 °C&lt;br /&gt;
* Bis zu 168 IOs, viele davon [[Pegelwandler|5V-tolerant]]&lt;br /&gt;
* Interner, kalibrierter RC-Oszillator mit 8MHz (16MHz bei STM32F2/F4xx)&lt;br /&gt;
* Externer Quarz&lt;br /&gt;
* Real Time Clock mit eigenem Quarz und separater Stromversorgung&lt;br /&gt;
* Bis zu 16 [[Timer]], je Timer bis zu 4 IC/OC/PWM Ausgänge. Davon 2x Motion Control Timer (bei STM32F103xF/G), (bis zu 32 PWM Ausgänge)&lt;br /&gt;
* Systick Counter&lt;br /&gt;
* Bis zu 3 12-Bit [[AD-Wandler]] mit insgesamt 24 AD-Eingängen, integrierter [[Temperatursensor]], Referenzspannung Vrefint und VBatt Spannungsmessung (STM32F4xx)&lt;br /&gt;
* Bis zu 2 12-Bit [[DA-Wandler]] (bis zu 3 beim STM32F3xx)&lt;br /&gt;
* Bis zu 2 [[DMA]] Controller mit bis zu 12 Kanälen (16 beim STM32F2/4xx)&lt;br /&gt;
* Bis zu 2x [[I2C|I²C]]&lt;br /&gt;
* Bis zu 5x [[UART|USART]] mit LIN, IrDA und Modem Control (bis zu 8 beim STM32F2/F4xx)&lt;br /&gt;
* Bis zu 3x [[SPI]] (bis zu 6 beim STM32F4xx)&lt;br /&gt;
* Bis zu 2x [[I2S|I²S]]&lt;br /&gt;
* Bis zu 2x [[CAN#STMicroelectronics STM32 (Cortex M3/M4)|CAN]]&lt;br /&gt;
* Hardware [[CRC]] Unit, bei der STM32F3xx Serie mit einem einstellbaren Polynom &lt;br /&gt;
* Unique device ID register (96 Bits)&lt;br /&gt;
* RNG - Random Number Generator (STM32F2/4xx)&lt;br /&gt;
* Cryptographic Processor (CRYP) (STM32F2/4xx)&lt;br /&gt;
* Hash Processor (HASH) (STM32F2/4xx)&lt;br /&gt;
* Kamera-Interface (DCMI) (STM32F2/4xx)&lt;br /&gt;
* [[USB]] 2.0 Full Speed / OTG&lt;br /&gt;
* [[USB]] 2.0 Hi Speed OTG mit extra PHY-Chip (STM32F2/4xx)&lt;br /&gt;
* SDIO Interface (z.B. SD-Card Reader)&lt;br /&gt;
* Ethernet&lt;br /&gt;
* Watchdog mit Window-Mode&lt;br /&gt;
* Jedes Peripheriemodul ist separat einschaltbar, wodurch sich erheblich [[Ultra low power|Strom sparen]] lässt&lt;br /&gt;
* [[JTAG]] und SWD (Serial Wire Debug) Interface&lt;br /&gt;
* Bis zu 6 Hardware-Breakpoints für Debuggen&lt;br /&gt;
* und vieles mehr . . .&lt;br /&gt;
&lt;br /&gt;
== Struktur der Dokumentation: ==&lt;br /&gt;
Die Dokumentation der STM32 ist im Vergleich zur [[AVR]]-Familie umfangreicher und komplexer. Sie teilt sich in mehrere Dokumente auf.&lt;br /&gt;
Als Beispiel der Dokumentation soll stellvertretend der [http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1031/LN1565/PF164486 STM32F103RC] genannt werden. Die Seite von ST beinhaltet alle nötigen Informationen passend zu diesem Prozessor.&lt;br /&gt;
&lt;br /&gt;
Diese Dokumente von ST beschreiben den Controller:&lt;br /&gt;
&lt;br /&gt;
* Im [http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00191185.pdf STM32F103xC/D/E Datasheet] sind die speziellen Eigenschaften einer bestimmten Modellreihe beschrieben und die exakten Daten und Pinouts aufgeführt, sowie die Zuordnung Chipname - Flash/RAM-Größe. Die Peripheriemodule werden nur aufgeführt, nicht detailliert beschrieben.&lt;br /&gt;
* Im [http://www.st.com/st-web-ui/static/active/en/resource/technical/document/reference_manual/CD00171190.pdf Reference Manual (RM0008)] sind alle Peripheriemodule der jeweiligen STM32-Controllerfamilie im Detail beschrieben.&lt;br /&gt;
* Das [http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0403c/index.html ARMv7M Architecture Reference Manual] beschreibt detailliert den Prozessorkern, wie das Exception Model, die CPU Instruktionen inklusive Encoding, etc.&lt;br /&gt;
* Das [http://www.st.com/st-web-ui/static/active/en/resource/technical/document/programming_manual/CD00228163.pdf STM32 Cortex-M3 Programming Manual] ist eine Zusammenfassung des ARMv7M Architecture Reference Manual bezogen auf die STM32.&lt;br /&gt;
* Wer nicht die ST Firmware-Library verwendet, der benötigt zusätzlich das [http://www.st.com/st-web-ui/static/active/en/resource/technical/document/programming_manual/CD00283419.pdf Flash Programming Manual] für die Betriebsart des Flash-ROMs, d.h. die frequenzabhängige Konfiguration der Waitstates.&lt;br /&gt;
&lt;br /&gt;
Zusätzlich sollten auch die [http://www.st.com/st-web-ui/static/active/en/resource/technical/document/errata_sheet/CD00197763.pdf Errata Sheets] beachtet werden. Empfohlen sei auch die Appnote &amp;quot;[http://www.st.com/web/en/resource/technical/document/application_note/CD00164185.pdf AN2586 Getting started with STM32F10xxx hardware development]&amp;quot;.&lt;br /&gt;
Die jeweiligen Dokumentations-PDFs sind auf der Produktseite von ST eines jeden Mikrocontrollers verlinkt.&lt;br /&gt;
&lt;br /&gt;
== Hardware Zugriffs-Libraries ==&lt;br /&gt;
=== CMSIS ===&lt;br /&gt;
&lt;br /&gt;
Die CMSIS (ARM® &#039;&#039;&#039;C&#039;&#039;&#039;ortex™ &#039;&#039;&#039;M&#039;&#039;&#039;icrocontroller &#039;&#039;&#039;S&#039;&#039;&#039;oftware &#039;&#039;&#039;I&#039;&#039;&#039;nterface &#039;&#039;&#039;S&#039;&#039;&#039;tandard) ist eine Library von ARM für den Zugriff auf die herstellerübergreifenden Funktionen des ARM-Cores. Hierzu gehört bei den Cortex-M4F-Cores auch die DSP und Floating-Point Funktionalität. Weiterhin existieren eine Zahl von Helferfunktionen für den NVIC, den Sys-Tick-Counter, sowie eine SystemInit-Funktion, welche sich um die PLL kümmert. &lt;br /&gt;
&lt;br /&gt;
Im Rahmen des CMSIS-Standards ([http://www.onARM.com www.onARM.com]) wurden die Headerdateien standardisiert, der Zugriff auf die Register erfolgt per &#039;&#039;&#039;Peripheral-&amp;gt;Register&#039;&#039;&#039;. Die CMSIS C-Dateien bzw. Header enthalten auch Anpassungen für die verschiedenen Compiler. Die Portierung eines Real-Time-Betriebsystems sollte unter Verwendung der CMSIS, für Chips der verschiedenen Hersteller, stark vereinfacht möglich sein (z.B. einheitliche Adressen für Core-Hardware/Sys-Tick-Counter).&lt;br /&gt;
&lt;br /&gt;
Die CMSIS ist im Download der ‎STM32 Standard Peripheral Library enthalten. Die Compiler-Hersteller liefern eine jeweils zur ihrer Tool-Version passende bzw. geprüfte Library (incl. CMSIS) aus. Diese Libs können, gegenüber den Downloads beim Chip-Hersteller, auch ältere Version beinhalten.&lt;br /&gt;
&lt;br /&gt;
=== ‎STM32 Standard Peripheral Library ===&lt;br /&gt;
&lt;br /&gt;
ST bietet für jede Controller-Familie eine umfangreiche zur CMSIS passende Peripherie-Bibliothek. Alle Funktionen um die Peripherie zu benutzen sind gekapselt in einfache Strukturen und Funktionsaufrufe. Somit muss man sich nicht selbst um die Peripherie-Register kümmern. Diese Library und ihre Dokumentation setzen das grundlegende Verständnis der Funktion des jeweiligen Peripheriemoduls voraus, wie es die o.a. Referenz und diverse Appnotes vermitteln. Die Library beinhaltet außerdem für fast jede Peripherie mehrere Beispiele.&lt;br /&gt;
Für die USB Schnittstelle gibt es noch eine extra Library, genauso wie für Ethernet.&lt;br /&gt;
&lt;br /&gt;
Auf der &amp;quot;Design Resources&amp;quot; Seite der Produktseite von ST eines jeden STM32 Mikrocontrollers kann die Library für den jeweiligen Controller heruntergeladen werden, z.B. [http://www.st.com/web/en/catalog/tools/PF257890 hier für den o.g. STM32F103RC].&lt;br /&gt;
&lt;br /&gt;
Library für STM32F4xx: [http://www.st.com/web/en/catalog/tools/PF257901# STSW-STM32065 STM32F4 DSP and standard peripherals library]&lt;br /&gt;
&lt;br /&gt;
== Programmierung ==&lt;br /&gt;
Zur Programmierung der STM32 gibt es verschiedene Möglichkeiten, sowohl kommerzielle proprietäre als auch mit Freier Software.&lt;br /&gt;
&lt;br /&gt;
Der GCC (in seinen verschiedenen Binärdistributionen) ist der einzige ARM Compiler der [http://de.wikipedia.org/wiki/C%2B%2B11 C++11] unterstützt.&lt;br /&gt;
&lt;br /&gt;
=== Freie Software/Freeware ===&lt;br /&gt;
==== Selber zusammenstellen ====&lt;br /&gt;
Man nehme...:&lt;br /&gt;
* Eine Entwicklungsumgebung nach Wahl:&lt;br /&gt;
** [http://www.eclipse.org Eclipse] mit [http://www.eclipse.org/cdt/ C/C++ Development Tooling] und [http://gnuarmeclipse.livius.net/blog/ GNU ARM Plug-in] (Bei Verwendung vom GCC-ARM-Embedded als Toolchain &amp;quot;Sourcery G++ Lite&amp;quot; auswählen, dieser sieht für eclipse gleich aus) (Linux, Windows)&lt;br /&gt;
** [http://netbeans.org/ Netbeans] mit [http://plugins.netbeans.org/plugin/37426/gdbserver GDBserver-Plugin] (Linux, Windows)&lt;br /&gt;
** [http://www.kdevelop.org/ KDevelop] (Linux)&lt;br /&gt;
** [http://www.geany.org/ Geany] (Linux, Windows)&lt;br /&gt;
** Oder ein einfacher Texteditor&lt;br /&gt;
* Einen C,C++ Compiler:&lt;br /&gt;
** Eine der [[ARM_GCC#GCC_Bin.C3.A4rdistributionen|GCC-Binärdistributionen]], siehe auch [[#GCC|GCC]] (je nach Distribution Linux, Windows)&lt;br /&gt;
* Programmiersoftware zum Flashen des Target:&lt;br /&gt;
** [http://openocd.sourceforge.net/ OpenOCD] unterstützt viele Debug/Programmier-Adapter (Linux, Windows)&lt;br /&gt;
** [https://github.com/texane/stlink Texane stlink] funktioniert gut mit den ST-Link Adaptern wie sie zB. auf den STM32 Discovery Boards zu finden sind (Linux)&lt;br /&gt;
** Turtelizer2 oder andere JTAG Programmieradapter&lt;br /&gt;
** Bei Verwendung eines Segger J-Link, den [http://www.segger.com/admin/uploads/productDocs/UM08005_JLinkGDBServer.pdf Segger GDB-Server] in Verbindung mit dem beim GCC mitgelieferten GDB (Linux, Windows)&lt;br /&gt;
&lt;br /&gt;
==== Komplette IDE&#039;s ====&lt;br /&gt;
* [http://www.codesourcery.com/sgpp/lite_edition.html Codesourcery Lite Edition]&lt;br /&gt;
* [http://www.coocox.org/ Coocox Eclipse IDE] kostenlose IDE für STM32F0 / F1 / F4 Hilfreiche Infos gibt es im [http://www.mikrocontroller.net/topic/214719?goto=new#2228482 hier] und [http://www.mikrocontroller.net/topic/214719?goto=new#2229943 hier] Forum, Artikel: [[STM32 CooCox Installation]] &lt;br /&gt;
* [http://emide.org/ emIDE] kostenlose IDE die mit dem Segger J-LINK funktioniert.&lt;br /&gt;
* [http://www.emblocks.org EmBlocks] kostenlose IDE, Code::Blocks basiert, unterstützt STM32 L1/F0/F1/F2/F3/F4/W, integrierter Compiler (ARM-GCC), integrierter GDB Debugger, Jlink/ST-Link, System view (Peripherie Register anzeigen) beim Debuggen, Project Wizard (Eigene Wizards können mit Squirrel geschreiben werden), Basiert auf Code::Blocks, [http://www.mikrocontroller.net/articles/STM32_-_Einstieg_mit_Em::Blocks STM32 - Einstieg mit Em::Blocks]&lt;br /&gt;
* [http://cms.seng.de/service-support/downloads/ Entwicklungsumgebung GNU/Linux] für STM32F1 mit OpenOCD und Olimex ARM-USB-OCD-H, Bedienung über Eclipse IDE oder Kommandozeile.&lt;br /&gt;
&lt;br /&gt;
==== Andere Programmiersprachen ====&lt;br /&gt;
&lt;br /&gt;
* [http://mecrisp.sourceforge.net Mecrisp-Stellaris], eine native Forth-Implementation für ARM Cortex M0/M3/M4. Es werden bereits mehrere STM32 Targets unterstützt und neue Portierungen sind herzlich willkommen. Auch Chips von TI und Freescale sind im aktuellen Paket enthalten.&lt;br /&gt;
&lt;br /&gt;
=== Kommerzielle Umgebungen ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.keil.com/arm/mdk.asp Keil µVision] (Demo max. 32KB Code): Die sehr komfortable µVison IDE ist neben dem ARM Compiler per Menue auch für einen beliebigen GNU-Compiler konfigurierbar. Damit besteht das 32k-Limit nur noch für den integrierten Debugger / Simulator. µVison selbst kann kostenlos mit dem MDK-Evaluationkit heruntergeladen werden. [https://www.keil.com/arm/demo/eval/arm.htm#DOWNLOAD download]&lt;br /&gt;
* [http://www.iar.com/en/Products/IAR-Embedded-Workbench/ IAR-Embedded-Workbench] (Demo max. 32KB Code) [http://supp.iar.com/Download/SW/?item=EWARM-EVAL download]&lt;br /&gt;
* [http://www.isystem.com/download/winideaopen winIDEAOpen] Keine Code Limitierung, GCC und Testwerkzeug beinhaltet. Läuft mit dem iTag50 Adapter, Segger J-Link und dem ST-Link&lt;br /&gt;
* [http://www.raisonance.com Raisonance Ride7] (GCC Compiler, kostenlose Version auf Debugging von max. 32KB Code limitiert, keine Limitierung beim Complilieren)&lt;br /&gt;
* [http://www.atollic.com Atollic] (Lite Version (bis V2.3.0) ohne Code-Limit, auf GCC basierend. Die neueste Version ab V3 hat fast keine Beschränkungen mehr außer jetzt einen Code-Limit von 32kB. Außerdem werden jetzt die meisten ARM Familien unterstützt. )&lt;br /&gt;
* [http://www.rowley.co.uk/arm/ Rowley Crossworks] (Demo 30 Tage unbeschränkt, 150$ für nichtkommerzielle Nutzung, auf GCC basierend)&lt;br /&gt;
* [http://www.code-red-tech.com Code Red] (GCC basierend)&lt;br /&gt;
* [http://www.sisy.de/index.php?id=17&amp;amp;no_cache=1 SiSy ARM oder SiSy Micrcontroller++] (Demo verfügbar keine Gößenbegrenzung, basiert auf GNU-Compiler, grafische Programmierung mit UML möglich, integrierter Debugger)&lt;br /&gt;
* [http://www.comsytec.eu/epsdebugger.php EPS Debugger Plugin, für STM32 Development mit Code::Blocks]&lt;br /&gt;
* [http://www.mikroe.com MikroE bietet neben Pascal und Basic auch C mit kompletter Oberfläche mit Compiler etc. pp relativ günstig]&lt;br /&gt;
&lt;br /&gt;
=== Tutorials für diverse Tool-Kombinationen ===&lt;br /&gt;
[[STM32 Eclipse Installation|Windows,Linux, Eclipse + Yagarto/CodeSourcery + OpenOCD/ST-Link]]&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
** Eclipse&lt;br /&gt;
*** [http://www.mikrocontroller.net/topic/216554 Windows, Eclipse, codesourcery, st-link ]&lt;br /&gt;
*** [http://www.firefly-power.de/ARM/debugging.html Eclipse Plugin &amp;quot;GDB Hardware Debugging&amp;quot; mit OpenOCD]&lt;br /&gt;
** Code::Blocks&lt;br /&gt;
*** [http://www.mikrocontroller.net/topic/265600 Windows, Code::Blocks, STM32F4]&lt;br /&gt;
** STM32 mit EmBlocks&lt;br /&gt;
*** [http://www.emblocks.org/web/downloads-main Download EmBlocks]&lt;br /&gt;
*** [https://www.youtube.com/watch?v=coHPJylnzC8 Video STM32 Project Wizzard in EmBlocks]&lt;br /&gt;
** Atollic TrueSTUDIO&lt;br /&gt;
*** [[STM32 LEDBlinken AtollicTrueStudio|Atollic TrueSTUDIO Installation + Demo]]&lt;br /&gt;
** MDK-ARM Lite mit Einstellungen für STM32F0/F4-Discovery Board&lt;br /&gt;
*** [https://www.keil.com/demo/eval/arm.htm KEIL MDK-ARM Download]&lt;br /&gt;
*** [https://www.youtube.com/watch?v=RXOOxby5nns&amp;amp;list=PL6-W3FoUyb48WFI5PQv3SDJj2G1t2FonV&amp;amp;index=1 Installations Video STM32F4 Discovery Board]&lt;br /&gt;
*** [https://www.youtube.com/watch?annotation_id=annotation_203294&amp;amp;feature=iv&amp;amp;index=4&amp;amp;list=PL6-W3FoUyb48WFI5PQv3SDJj2G1t2FonV&amp;amp;src_vid=sN4gDZ7H8gw&amp;amp;v=BeZcQjXxk9A Einstellungen STM32F0 Discovery Board Video]&lt;br /&gt;
** SiSy ARM, STM32&lt;br /&gt;
*** Download: [http://www.sisy.de/index.php?id=59 SiSy DEMO] kein Begrenzung der Codegröße&lt;br /&gt;
*** [http://www.youtube.com/watch?v=84Y3jYLWYpo Videobeispiel]&lt;br /&gt;
** Microsoft Visual Studio&lt;br /&gt;
*** [http://visualgdb.com/tutorials/arm/stm32/f4_discovery/ &amp;quot;STM32F4-Discovery tutorial with Visual Studio&amp;quot;]&lt;br /&gt;
* Ubuntu&lt;br /&gt;
** [http://cms.seng.de/service-support/downloads/ Installing a toolchain for Cortex-M3/STM32 on GNU/Linux] - How-to manual, für STM32F1 unter GNU/Linux mit OpenOCD und Olimex ARM-USB-OCD-H. Integrierte Make files, Linker Skripte, Startup-Code, diverse Tools und Demo-Projekt/Programm. Einbindung in Eclipse IDE oder Bedienung über Kommandozeile.&lt;br /&gt;
** [http://fun-tech.se/stm32/index.php Ubuntu, Selbstcompilierter GCC, STM32/Cortex-M3]&lt;br /&gt;
** [http://thetoolchain.com The ToolChain] - Automatisch installierende Entwicklungsumgebung mit eigenen und externen Treibern, Unterstützt QtCreator als IDE, Flexibel erweiterbar über Shellskripte&lt;br /&gt;
&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/214719 Tipps für Installation mit Eclipse]&lt;br /&gt;
&lt;br /&gt;
===Programmieradapter===&lt;br /&gt;
* [http://www.segger.com/jlink-model-overview.html SEGGER J-LINK / J-TRACE] für u.a. alle ARM7/9/11, Cortex-M0/M1/M3/M4/A5/A8/A9/R4 als [http://www.segger.com/cms/j-link-edu.html NonComercial] J-LINK-EDU für ca. 60,- zu haben, läuft in µVision, IAR, GDB (Linux &amp;amp; Windows über einen eigenen [http://www.segger.com/admin/uploads/productDocs/UM08005_JLinkGDBServer.pdf GDB-Server]), Keil, ...&lt;br /&gt;
* Keil [http://www.keil.com/ulinkme/ ULINK-ME], [http://www.keil.com/arm/ulink2/ ULINK2], [http://www.keil.com/arm/ulinkpro/ ULINK pro]&lt;br /&gt;
* [http://www.st.com/internet/evalboard/product/219866.jsp ST-LINK], [http://www.st.com/internet/evalboard/product/251168.jsp ST-LINK/V2]&lt;br /&gt;
* Jedes STM32 Discovery board hat einen ST-Link für Programmierung/Debugging per SWD on-board, welcher auch für eigene STM32 Target Hardware benutzt werden kann (ca. 12,- bis 19,-€, je nach Typ).&lt;br /&gt;
* [http://www.raisonance.com/~rlink-debugger-programmer__microcontrollers__tool~tool__T018:4cn9ziz4bnx6.html Raisonance RLink]&lt;br /&gt;
* [http://www.amontec.com Amontec] (Achtung: keine Reaktion auf Bestellung, Telefon, Email...)&lt;br /&gt;
* [http://www.hjtag.com H-JTAG] Personal Edition für ca. 60,- zu haben, läuft mit ADS, SDT, IAR, Vision und RVDS &lt;br /&gt;
* [http://www.isystem.com/products/itag iTag] für 50.- bei Amazon zu bestellen, oder als Eigenbau version (offenes Design) läuft mit der freien winIDEAiTag version (siehe oben)&lt;br /&gt;
&lt;br /&gt;
In der Regel haben die [[JTAG]] Adapter einen 20-Poligen Stecker, den man direkt auf die Demo-Boards, die auch einen 20-Poligen [[JTAG]]-Anschluss haben, einstecken kann. Die Pinbelegung ist genormt, siehe Artikel [[JTAG]]. Die Discovery-Boards haben keinen seperaten JTAG-Stecker, aber zumindest für das STM32F4 Discovery kann man sich leicht einen Adapter Pinheader-&amp;gt;JTAG Stecker selber bauen.&lt;br /&gt;
&lt;br /&gt;
Andere [[JTAG]] Adapter wie z.B. der ULink von Keil funktionieren nur mit dem Keil Compiler.&lt;br /&gt;
&lt;br /&gt;
===Programmieradapter Open-Source===&lt;br /&gt;
&lt;br /&gt;
* [https://www.olimex.com/Products/ARM/JTAG/ARM-JTAG-COOCOX/ ARM-JTAG-COOCOX], CoLinkEX Nachbau von Olimex, unterstützt JTAG sowie SWD&lt;br /&gt;
** [http://www.coocox.org/colinkEx.htm unterstützte uC]&lt;br /&gt;
** unterstütze IDEs: [http://www.keil.com/arm/mdk.asp Keil MDK-ARM 4.03] oder neuer, [http://www.iar.com/en/Products/IAR-Embedded-Workbench/ IAR Embedded Workbench 5.xx] oder neuer sowie die [http://www.coocox.org/CooCox_CoIDE.htm CooCox CoIDE]&lt;br /&gt;
* [https://www.olimex.com/Products/ARM/JTAG/ Olimex] ARM-USB-OCD (ca. 60.-, hat zusätzlich einen Spannungsausgen und einen COM Port)&lt;br /&gt;
* [http://www.oocdlink.com/ OOCDLink]&lt;br /&gt;
* [https://github.com/texane/stlink Stlink]&lt;br /&gt;
* [http://www.randomprojects.org/wiki/Floss-JTAG FLOSS-JTAG]&lt;br /&gt;
* [http://capitanio.org/mlink/ Linux Demo Code für die Discovery&#039;s ST-Link Programmierung]&lt;br /&gt;
&lt;br /&gt;
Der Controller hat auch einen fest eingebauten Boot-Lader. Damit läßt er sich auch über eine gewöhnliche serielle Schnittstelle programmieren, ohne dass man einen JTAG-Adapter benötigt. Dies erfordert ggf. entsprechende Konfiguration über die BOOTx-Pins und/oder die Option-Bytes, und ein Programm wie [https://code.google.com/p/stm32flash/ stm32flash].&lt;br /&gt;
&lt;br /&gt;
=== Demo-Projekte ===&lt;br /&gt;
&lt;br /&gt;
* Einführung in die GPIO Programmierung der STM32F10x und STM32F30x Prozessoren am Beispiel des STM32F3 Discovery Boards und Vergleich zur AVR IO Registerstruktur [http://www.mikrocontroller.net/topic/300472#new]&lt;br /&gt;
* [[prog_bsp_timer_1_timer2|Programmbeispiel für die Verwendung von Timer2 zusammen mit dem Interrupt]]&lt;br /&gt;
* [http://www.firefly-power.de/ARM/printf.html Printf() debugging mit minimalem Aufwand]&lt;br /&gt;
* [[STM32_BLDC_Control_with_HALL_Sensor|Programmbeispiel für BLDC Motoransteuerung (Timer 1) mit HALLSensor (Timer 3)]]&lt;br /&gt;
* [[Cortex_M3_OCM3U]]&lt;br /&gt;
* Martin Thomas hat ein umfangreiches Projekt erstellt, in der die Eclipse Einstellungen enthalten sind:&lt;br /&gt;
** [http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/arm_memcards/index.html &amp;quot;ChaN&#039;s FAT-Module with STM32 SPI&amp;quot;]&lt;br /&gt;
* [[STM32 USB-FS-Device Lib]]&lt;br /&gt;
* Modellbau-Sender auf STM32-Basis mit vielen Treibern [http://www.rcos.eu www.rcos.eu]&lt;br /&gt;
* Ausführliches [https://github.com/jkerdels/stm32edu Einstiegs-Tutorial] in Codeform für das [http://www.st.com/internet/evalboard/product/252419.jsp STM32F4 discovery board]&lt;br /&gt;
* [http://www.redacom.ch/keillab/ Schweizer Gondelbahnsteuerung über Webserver auf ETT STM32F ARM KIT Board in Keil RTOS] mit Webcam&lt;br /&gt;
* Die [http://ethernut.svn.sourceforge.net/viewvc/ethernut/trunk/ Ethernut SVN Version] unterstützt inzwischen viele STM32 Typen, viele Devices und einige STM32 Demoboards&lt;br /&gt;
* [http://mikrocontroller.bplaced.net/wordpress/?page_id=744 Uwe Becker&#039;s Libraries für den STM32F4]&lt;br /&gt;
* [http://mikrocontroller.bplaced.net/wordpress/?page_id=3290 Uwe Becker&#039;s STM32F429 Discovery Board Oszilloskop], hier der [http://www.mikrocontroller.net/topic/319831#new Thread]&lt;br /&gt;
* [http://mikrocontroller.bplaced.net/wordpress/?page_id=3424 Uwe Becker&#039;s STM32F429 Discovery Board ZX-Spectrum Emulator]&lt;br /&gt;
&lt;br /&gt;
== Debug- und Trace-Interface (CoreSight™ Debug and Trace Technologie)==&lt;br /&gt;
&lt;br /&gt;
Übersicht über beide Funktionalitäten und den Schnittstellen:&lt;br /&gt;
http://www.keil.com/support/man/docs/ulink2/ulink2_cs_core_sight.htm&lt;br /&gt;
&lt;br /&gt;
Die Coresight-Debug-Architektur ermöglicht ein nicht-invasives Debugging, d.h. es können während des Betriebes (meistens) ohne Beeinflussung des Prozessors Daten vom Speicher gelesen und in selbigen geschrieben werden.&lt;br /&gt;
&lt;br /&gt;
=== Debugger Funktionen ===&lt;br /&gt;
&lt;br /&gt;
Der Debugger-Teil besitzt drei Funktionen:&lt;br /&gt;
* Run Control: z.B. Programm-Start, Stopp und Einzel-Schritte.&lt;br /&gt;
* (Program) Break Points: Ein Programm hält an, wenn der Programm Counter eine bestimmte Programm-Adresse erreicht.&lt;br /&gt;
** Die maximale Anzahl der gleichzeitig möglichen Break Points ist begrenzt (z.B. 6 bei einem STM32).&lt;br /&gt;
** Die Anzahl der Break Points ist nahezu unbegrenzt, wenn ein Debugger über den Memory Access (s.u.) sogenannte Flash Break Points unterstützt. Dabei wird ein geladenes Programm im Flash umprogrammiert, um den Debugger anzuhalten. Diese Funktionalität ist meistens ein kostenpflichtiges Zusatz-Feature des Debugger-Herstellers. &lt;br /&gt;
** Beinhaltet keine Data Watch Funktionalität, welche im Trace-Teil (DWT) realisiert wird.&lt;br /&gt;
* Memory Access: Lesen und Schreiben von Speicheradressen. &lt;br /&gt;
** Diese Funktionalität beinhaltet keine direkte Flash-Programmierung. Der Programmiervorgang für einen Flash ist herstellerspezifisch und muss von dem verwendeten Debugger unterstützt werden.&lt;br /&gt;
&lt;br /&gt;
=== Trace Funktionen ===&lt;br /&gt;
Die Trace-Funktionalität wird in drei Funktionen aufgeteilt:&lt;br /&gt;
* ETM (Embedded Trace Macrocell): Optional, nicht jede CPU besitzt diese Hardware (Kostenfaktor, Austattung).&lt;br /&gt;
* ITM (Instrumentation Trace Macrocell): Über diesen Kanal kann ein vereinfachtes Trace des Core ermöglicht werden, sowie &amp;quot;printf-ähnlich&amp;quot; Daten über den ITM Channel 0 geschickt und im Debugger ausgegeben werden.&lt;br /&gt;
* DWT (Data Watchpoint &amp;amp; Trace Unit): &lt;br /&gt;
** Data Watch: 4 Access-Break-Points ( z.B. der Debugger bleibt stehen, wenn das Programm auf einen Speicher zugreift oder der Wert einer Variablen einen bestimmten Wert annimmt). &lt;br /&gt;
** Trace Unit: Programmverlauf (durch Lesen des Program Counters) und Interrupt Aufrufe verfolgen, sowie Zeitmessungen.&lt;br /&gt;
&lt;br /&gt;
Einige der Trace-Funktionalitäten können über die JTAG-Schnittstelle angesprochen werden. Die schnelle Trace-Funktionalität (mit 4 bit Parallel-Port) steht nur mit der erweiterten DEBUG + ETM Schnittstelle zur Verfügung. Im Gegensatz zum Debugger-Teil (Run Control, Break Points und Memory Access) werden Trace-Funktionen nicht von allen Debuggern unterstützt. Debugger mit der vollen Trace-Funktionalität kosten deutlich mehr.&lt;br /&gt;
&lt;br /&gt;
* Beispiele für Trace-Port-Aktivierungen für verschiedene Hersteller: http://www.keil.com/support/man/docs/jlink/jlink_capture_tracedata.htm&lt;br /&gt;
&lt;br /&gt;
Die Aktivierung des parallelen Trace-Ports erfordert, je nach CPU Hersteller, zusätzliche Debugger-Makros für die Aktivierung und Port-Freischaltung. Zusätzlich sind die Schnittstellenauswahl und Einstellung (Frequenzen) im Entwicklungs-Tool (IDE) wichtig, um erfolgreich den Programm-Verlauf &amp;quot;tracen&amp;quot; zu können.&lt;br /&gt;
&lt;br /&gt;
=== Debug und Trace-Schnittstellen ===&lt;br /&gt;
Als Debug Interface stehen zwei Varianten zur Auswahl:&lt;br /&gt;
* [[JTAG]]: Dafür sind mindestens 6 Steuerleitungen nötig. Unterstützt Device Chaining: Mehrere verbundene Geräte können mit einem Debugger/Programmer gleichzeitig angesteuert werden.&lt;br /&gt;
* SWD (Serial Wire Debug): Hier mindestens 2  Steuerleitungen (3 mit SWO, zzgl GND und 3,3V). Die SWD Schnittstelle ist in der Regel schneller und kann auch Funktionen aus dem Trace-Teil beinhalten (z.B. ITM, dafür wird der SWO-Pin benötigt). Device Chaining ist mit dieser Schnittstelle nicht möglich.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Standard-JTAG Steckerbelegungen: &lt;br /&gt;
http://www.keil.com/support/man/docs/ulink2/ulink2_hw_connectors.htm&lt;br /&gt;
&lt;br /&gt;
=== Der 10polige JTAG-Stecker von mmvisual ===&lt;br /&gt;
mmvisual hat mit dieser Steckerbelegung die Standard JTAG Schnittstelle erweitert:&lt;br /&gt;
&lt;br /&gt;
Ich habe diesen Part in den Artikel [http://www.mikrocontroller.net/articles/JTAG#Der_10-polige_JTAG_Stecker_von_mmvisual JTAG] verschoben.&lt;br /&gt;
Hinzu gekommen ist die Adapterplatine 10-Polig auf Standard JTAG 20 Polig mit TTL/V24 Wandler. [http://www.mikrocontroller.net/articles/JTAG#Die_Adapterplatine Siehe hier.]&lt;br /&gt;
&lt;br /&gt;
== Hardware-Beschaltung ==&lt;br /&gt;
&lt;br /&gt;
Der STM32 benötigt für den Betrieb nur (Minimalbeschaltung):&lt;br /&gt;
&lt;br /&gt;
* VCC 2..3,3V (je nach Typ)&lt;br /&gt;
* AVCC 2..3,3V (sehr wichtig, der STM32 lässt sich ohne diese Spannung nicht programmieren)&lt;br /&gt;
* GND&lt;br /&gt;
* Reset Pin 100nF nach GND (ein Pull-Up Widerstand von ca. 40k ist intern vorhanden)&lt;br /&gt;
* [[#Bootmodi|Boot-Pins]]&lt;br /&gt;
&lt;br /&gt;
ansonsten nur ein paar einzelne Cs 100nF an VCC/GND.&lt;br /&gt;
&lt;br /&gt;
Um Programmieren zu können wird entweder noch die serielle Schnittstelle (Programmieren über den vorprogrammierten Bootloader) oder JTAG oder die SWD Schnittstelle benötigt.&lt;br /&gt;
&lt;br /&gt;
=== Bootmodi ===&lt;br /&gt;
Unterschiedliche Bootmodi lassen sich mittels der PINs BOOT0 und BOOT1 auswählen . Siehe Application Note [https://my.st.com/public/STe2ecommunities/mcu/Lists/cortex_mx_stm32/Attachments/18225/AN2606.pdf AN2606]. Ausser F1 besitzen neuere Familien ein SYSCFG_MEMR Register. In dieses Register kann man die gewünschten Boot0/1 Werte schreiben und nach einem Core-Reset (!= System_Reset) startet der Prozessor im gewünschten Mode. Eine Neu- bzw. Deinitialisierung der Peripherie empfiehlt sich! &lt;br /&gt;
&lt;br /&gt;
==== Boot from FLASH ====&lt;br /&gt;
Startadresse wird von 0x08000004 geladen&lt;br /&gt;
 BOOT0 Lo&lt;br /&gt;
 BOOT1 X &lt;br /&gt;
&lt;br /&gt;
==== Boot from SRAM ====&lt;br /&gt;
PC Startadresse wird an 0x200001E0 direkt angesprungen.&lt;br /&gt;
 BOOT0 Hi&lt;br /&gt;
 BOOT1 Hi&lt;br /&gt;
Da der interne FLASH der stm32f1x laut Datenblatt nur für 1000 Schreibvorgänge ausgelegt ist, kann mittels BOOT0 (High) und BOOT1 (High) auch aus dem zuvor mit dem Debugger (JTAG/SWD) beschriebenen SRAM booten. &lt;br /&gt;
Hierbei gilt zu beachten:&lt;br /&gt;
 VTOR auf die NVIC Tabelle im SRAM vor dem auslösen des ersten Interrupts remappen.&lt;br /&gt;
&lt;br /&gt;
 Um ein vergleichbares Startverhalten zum FLASH zu erreichen, empfiehlt es sich,&lt;br /&gt;
 0xF1E0F85F an 0x200001E0 zu schreiben. Diese implizite Ausführung von &amp;quot;ldr.w pc,&lt;br /&gt;
 [pc, #-0x01E0]&amp;quot; beim Start erzwingt ein laden der Startadresse von 0x20000004.&lt;br /&gt;
&lt;br /&gt;
==== Boot from SYSMEM (RS232, CAN und USB) ====&lt;br /&gt;
PC Startadresse wird von 0x1FFFF004 geladen&lt;br /&gt;
 BOOT0 Hi&lt;br /&gt;
 BOOT1 Lo&lt;br /&gt;
&lt;br /&gt;
Ab F2 gibt es auch ein SYSCFG_MEMRMR Register. Schreibt man hier den Wert für &amp;quot;System Flash&amp;quot; und macht einen Corereset (keinen Systemreset), so landet ,man auch im Bootloader, unabhängig von dem wert der Boot Pins.&lt;br /&gt;
&lt;br /&gt;
Auch ohne JTAG lässt sich ein STM32 programmieren (Bootloader-Aktivierung). Dabei stehen, je nach CPU-Typ, verschiedene Möglichkeiten zur Verfügung:&lt;br /&gt;
* RS-232 (bisher alle STMs)&lt;br /&gt;
* USB (alle USB fähigen CPUs &amp;gt; F103)&lt;br /&gt;
* CAN (wie USB nur in bestimmten MCUs)&lt;br /&gt;
&lt;br /&gt;
3 zusätzliche Verbindungen müssen auf dem Board gepatcht werden. Für einen Test geht es auch mit Tastern für RESET und BOOT0.&amp;lt;br&amp;gt;&lt;br /&gt;
RESET=RTS (L-aktiv)&amp;lt;br&amp;gt;&lt;br /&gt;
BOOT0=DTR (H-aktiv)&amp;lt;br&amp;gt;&lt;br /&gt;
BOOT1=LOW&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Details sind hier im Forum: [http://www.mikrocontroller.net/topic/141711 STM32 Programmiertool]&lt;br /&gt;
&lt;br /&gt;
Tools für den Download über den STM32-Bootloader:&lt;br /&gt;
* [http://www.st.com/web/en/catalog/tools/PF257525 STSW-MCU005 STM32 and STM8 Flash loader demonstrator]&lt;br /&gt;
* [https://code.google.com/p/stm32flash/ stm32flash] - Open source flash program (RS-232)&lt;br /&gt;
* [http://dfu-util.gnumonks.org/ dfu-util] - Open source flash program (USB)&lt;br /&gt;
&lt;br /&gt;
== Bewertung ==&lt;br /&gt;
=== Vorteile ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vorteile gegenüber ARM7:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Interrupt-Controller jetzt Teil des Prozessors (als Core Peripheral), die Vector Table ist jetzt eine echte Vektortabelle, keine Sprungliste wie bei ARM7. Durch Automatismen zwischen Core und NVIC (auto register save r0..r3, lr, sp, pc) bei Interrupt Entry wird eine deutlich schnellere Ausführungszeit bei Interrupts erreicht. Der Interrupt Code muss sich nicht mehr selbst um die Sicherung der o.g. Register kümmern und eine besondere Konfiguration der Handler im Compiler entfällt. Sind vor Beendigung einer ISR (d.h. Rücksprung zum User Code) weitere Interrupts pending, so werden diese ausgeführt, ohne dass eine komplette pop-push-sequenz der Register notwendig ist. Schön beschrieben ist es hier im [http://www.hitex.com/fileadmin/pdf/insiders-guides/stm32/isg-stm32-v18d-scr.pdf Insider&#039;s Guide] unter 2.4.5 / Seite 20.&lt;br /&gt;
* Thumb-2 Befehlssatz, deutlich schneller als Thumb-1 und ebenso kompakt&lt;br /&gt;
* Weniger Pins für Debugging benötigt durch SWD&lt;br /&gt;
* Mehr Hardware Breakpoints machen debuggen einfacher&lt;br /&gt;
* Software ist einfacher weil die Umschaltung zwischen ARM Mode und Thumb Mode wegfällt&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vorteile gegenüber LPC1700 und LPC1300:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Flexiblere Gehäuseformen mit mehr Peripherie bei kleinen Gehäusen&lt;br /&gt;
* FW-Lib für alle STM32 gleich, alle AppNotes/Demos beziehen sich auf diese eine FW-Lib was die Entwicklung der eigenen Applikation sehr beschleunigt.&lt;br /&gt;
* Genauerer und flexiblerer ADC, insbesondere gegenüber LPC1300&lt;br /&gt;
* Flexiblere Varianten der Peripherie &amp;gt;&amp;gt; bei weniger einen deutlichen Preisvorteil&lt;br /&gt;
* ab 0,85 EUR (Stand 2010) Allerdings gibts den LPC1100 mit Cortex-M0 schon ab 0,65 $!&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vorteile gegenüber SAM3/4:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Fast alle Pins sind 5-Volt tolerant.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vorteile gegenüber anderen &amp;quot;Kleinen&amp;quot; wie z.B. PIC, Atmel usw.&#039;&#039;&#039;&lt;br /&gt;
* nahezu gleicher Preis bei Hobby Anwendungen&lt;br /&gt;
* 32 Bit ohne Umwege in Assembler rechenbar&lt;br /&gt;
* Schnelle direkte Offset-Adressierung ermöglich effizienten Zugriff auf Stack-Variablen, lokal gespeicherte Flash-Konstanten, struct/Array-Elemente&lt;br /&gt;
* Einfache einheitliche Adressierung des gesamten Adressraums, d.h. Pointer auf Peripherieregister, RAM &amp;amp; Flash können exakt gleich behandelt werden, keinerlei Banking/Umschalt-Mechanismen erforderlich auch bei großem Flash/RAM&lt;br /&gt;
* Interrupt-Prioritäten und Prioritätsgruppen&lt;br /&gt;
* Effiziente Pointerarithmetik da Registerbreite=Adressbreite&lt;br /&gt;
* bessere Peripherie wie USB, Ethernet, Vielzahl an Timern&lt;br /&gt;
* der ARM-Core hat eine höhere Taktfrequenz und kann gleichzeitig mehr in weniger Takten berechnen&lt;br /&gt;
* Hardware-Division, bei einigen FPU zur effizienten float-Berechnung&lt;br /&gt;
* Mit größerem Flash/RAM verfügbar&lt;br /&gt;
* Code kann direkt aus dem RAM ausgeführt werden, Speicherschutz und privilegierter Ausführungsmodus können &amp;quot;Kernel&amp;quot;- vor &amp;quot;Anwendungs&amp;quot;-Code schützen, somit wird das dynamische Nachladen von Anwendungen aus externem Speicher effizient &amp;amp; sicher möglich&lt;br /&gt;
* ... und weitere 1000 Punkte ...&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Links&#039;&#039;&#039;&lt;br /&gt;
* [http://www.arm.com/files/pdf/ARM_Microcontroller_Code_Size_%28full%29.pdf Code Size Analyse zwischen verschiedenen µC]&lt;br /&gt;
&lt;br /&gt;
=== Nachteile ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Nachteil gegenüber LPC1700:&#039;&#039;&#039;&lt;br /&gt;
* STM32F1xx: nur 72 MHz statt 100 MHz (LPC1759: 120 MHz) Taktfrequenz; STM32F2xx hat diesen Nachteil nicht (ebenfalls 120MHz, STM32F4xx mit 180MHz)&lt;br /&gt;
* Der LPC1700 besitzt deutlich mehr Mechanismen, um die Auswirkung der Waitstates des Flash-ROMs auf Code- und Datenzugriffe zu reduzieren und das bedeutet mehr Performance bei gleicher Taktfrequenz. Beim STM32F2 entfällt dieser Nachteil wohl aufgrund des ART Accelerators. &lt;br /&gt;
* Alle LPC1xxx haben 32 Bit Timer. Bei den STM32 haben das nur die STM32F2xx (2 Stück)&lt;br /&gt;
* I2S Einheit von ST hat keinen FIFO und im 24/32Bit Modus müssen 2x16Bit Halbwörter übertragen werden. Wobei allgemein bei neuen ARM Prozessoren die vorhandenen DMA-Kanäle (basierend auf eigenen BUS-Kanälen und Speicherzugriffen) FIFO in beliebiger Größe bedeutet. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Nachteil für Hobby-Anwender&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nicht direkt &amp;quot;Steckbrettauglich&amp;quot;, da kein DIL Gehäuse verfügbar. Der ebay-Shop dipmicro führt jedoch sehr günstige Lötadapter für Umsetzung von LQFP48 auf DIP48. QFP64 in 0.5mm Pinabstand und nicht 0.8mm wie AVR. Von NXP gibt es Cortex-M0 µC im DIL Gehäuse.&lt;br /&gt;
&lt;br /&gt;
* Viel Peripherie, Clocks müssen alle richtig eingestellt werden, ggf. Anpassung des Startup Codes usw.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Errata, Tipps und Tricks ==&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
* AD-Wandler PA0: Im Errata steht, dass hier Fehler in der Wandlung entstehen könnten, also einen anderen Pin verwenden.&lt;br /&gt;
* CAN-Bus PD0/PD1: Remap geht erst ab der 100-Pin-Version. Steht im RM0008 unter 9.3.3.: &amp;quot;CAN1 alternate function remapping&amp;quot;. Alle Infos von RM0008 9.3.x sind interessant&lt;br /&gt;
* CAN und USB sind bei der F1 Serie nur bei der &amp;quot;◦Connectivity-Line&amp;quot; gleichzeitig nutzbar. Siehe Datenblätter.&lt;br /&gt;
* Mit internem RC-Oszillator kann die CPU mit maximal 64MHz betrieben werden. Mit einem externen Quarz sind dann 72MHz möglich.&lt;br /&gt;
* Für USB Betrieb muss die CPU mit 48MHz oder 72MHz betrieben werden (bei STM32F1xx).&lt;br /&gt;
* Der Idle Interrupt vom Usart wird zwar ausgelöst, aber nicht vom entsprechenden Statusflag angezeigt&lt;br /&gt;
* Der DMA fängt beim aktivieren immer von vorn an zu zählen, auch wenn er nur kurz angehalten wurde&lt;br /&gt;
* STM32F2xx hat kein Flash Size Register, bei STM32F4xx ist zwar ein flash Size Register beschrieben, kollidiert aber in der Adresse mit einem anderen Register&lt;br /&gt;
* Derivate mit internem EEPROM und nur einer Speicherbank haben das &amp;quot;Feature&amp;quot; bei write/erase des Data-Flashes (EEPROM) einen kompletten stall der code execution zu verursachen (inkl. ISR&#039;s, DMA). Desgleichen bei write/erase des internen Flash (ISP-routinen, EEPROM-Emulation).&lt;br /&gt;
* Der I2C hat diverse Fehler, welche im Errata des jeweiligen Modells (z.B. [http://www.st.com/st-web-ui/static/active/en/resource/technical/document/errata_sheet/CD00238166.pdf STM32F105xx and STM32F107xx Errata sheet] ) zu finden sind. Workarounds hierzu finden sich in der Application Note [http://www.st.com/st-web-ui/static/active/en/resource/technical/document/application_note/CD00209826.pdf AN2824]. Am Besten benutzt man jedoch die I2C Communication peripheral application library (CPAL) von ST ([http://www.st.com/web/catalog/tools/FM147/CL1794/SC961/SS1743/PF258336 STSW-STM32127])&lt;br /&gt;
* [http://blog.frankvh.com/category/stm32/ weitere undokummentierte Features]&lt;br /&gt;
* Interrupt-Flags in Statusregistern der diversen Peripherals wie der Timer müssen zu &#039;&#039;&#039;Beginn&#039;&#039;&#039; (bzw. möglichst weit vor dem Return) der ISR zurückgesetzt werden, da die ISR sonst eventuell 2x ausgeführt wird ([http://www.mikrocontroller.net/topic/312393#new Siehe Forum]).&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
==== GCC ====&lt;br /&gt;
Um den GCC direkt zu verwenden (zB. mit selbstgebautem makefile), falls man das nicht von einer Entwicklungsumgebung machen lässt, siehe zunächst [[ARM GCC]]. STM32-spezifisches ist:&lt;br /&gt;
* Wird die [[#.E2.80.8ESTM32_Standard_Peripheral_Library|STM32 Standard Peripheral Library]] und ein Quarz verwendet, so muss noch per Präprozessor-Definition die Frequenz des Quarzes angegeben werden mittels z.B. -DHSE_VALUE=8000000 für 8MHz (wie auf dem STM32F4 Discovery).&lt;br /&gt;
&lt;br /&gt;
===== Startupcode &amp;amp; Linkerscript =====&lt;br /&gt;
* Damit der compilierte Code an den richtigen Stellen im Controller landet (d.h. dem Flash) muss man dem Linker ein Linkerscript mitgeben. Dies geht per &amp;quot;-T &#039;&#039;pfad_zum_linkerscript.ld&#039;&#039;&amp;quot; an den Linker-Befehl. Im Archiv der [[#.E2.80.8ESTM32_Standard_Peripheral_Library|STM32 Standard Peripheral Library]] befindet sich ein Beispiel-Linkerscript für die Atollic TrueSTUDIO IDE, dieses kann direkt mit dem GCC verwendet werden. Beispielsweise für den STM32F4 befindet sich das Script im Pfad &amp;quot;/STM32F4xx_DSP_StdPeriph_Lib_V1.1.0/Project/STM32F4xx_StdPeriph_Templates/TrueSTUDIO/STM324x7I_EVAL/stm32_flash.ld&amp;quot; des Archives.&lt;br /&gt;
* Damit beim Starten die richtigen Initialisierungen vorgenommen werden (wie globale Variablen und bei C++ Konstruktoren globaler Objekt-Instanzen) muss als erstes ein Startupcode laufen, der dann die main()-Funktion aufruft. Der Startupcode ist meistens in Assembler geschrieben, C-Code ist aber auch möglich. Im Archiv der [[#.E2.80.8ESTM32_Standard_Peripheral_Library|STM32 Standard Peripheral Library]] befindet sich ein Beispiel-Startupcode für die Atollic TrueSTUDIO IDE, dieser kann direkt mit dem GCC verwendet werden. Beispielsweise für den STM32F4 befindet sich der Code in Assemblerform im Pfad &amp;quot;/STM32F4xx_DSP_StdPeriph_Lib_V1.1.0/Libraries/CMSIS/Device/ST/STM32F4xx/Source/Templates/TrueSTUDIO/startup_stm32f40xx.s&amp;quot; des Archives. Der Assemblercode kann per arm-none-eabi-as (Flags s.o.) assemblisiert werden, die resultierende .o -Datei normal mitgelinkt.&lt;br /&gt;
&lt;br /&gt;
Zusammen bieten die beiden Dateien der Anwendung ein Standard-C-Interface, d.h. man kann wie gewohnt globale Variablen verwenden und seinen Code in die main()-Funktion schreiben.&lt;br /&gt;
&lt;br /&gt;
=== Tipps für Umsteiger von Atmel/PIC/8051 ===&lt;br /&gt;
* Prozessortakt hat unterschiedliche Taktquellen und eine PLL.&lt;br /&gt;
* Alle Peripheriemodule haben einen extra Clock, den man aktivieren muss.&lt;br /&gt;
* Wenn man z.B. einen UART benutzen möchte, so muss man den Clock vom UART, Alternate Function IO (AFIO) und dem GPIO-Port aktivieren.&lt;br /&gt;
* Ansonsten hat man nahezu doppelt so viele Möglichkeiten in den Peripheriemodulen.&lt;br /&gt;
* Interrupt-Flags müssen in der ISR selber gelöscht werden&lt;br /&gt;
* Forum zu [http://www.mikrocontroller.net/topic/175888 Interrupts vs. Events]&lt;br /&gt;
&lt;br /&gt;
=== Errata vom STM32F4xx die nicht im Errata von ST stehen ===&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/267439#2788478 Aktivieren von DMA], wenn mehr als 3 DMA Kanäle aktiviert werden, kann es sein dass die nicht alle korrekt bedient werden. Auch klappt der DMA mit dem FSMC nicht immer zuverlässig. [https://my.st.com/public/STe2ecommunities/mcu/Lists/cortex_mx_stm32/Flat.aspx?RootFolder=%2Fpublic%2FSTe2ecommunities%2Fmcu%2FLists%2Fcortex_mx_stm32%2FWarning%20limit%20simultaneous%20DMAs%20to%202&amp;amp;FolderCTID=0x01200200770978C69A1141439FE559EB459D7580009C4E14902C3CDE46A77F0FFD06506F5B&amp;amp;currentviews=811 siehe hier] [http://blog.frankvh.com/2012/01/13/stm32f2xx-stm32f4xx-dma-maximum-transactions/ und hier]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/260637#2700761 Nerviger Bug in &amp;quot;stm32f4xx.h&amp;quot;] Änderung Struktur GPIO_TypeDef&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/261690#2714754 Batterie wird leer gezogen], nur bei manchen Chips mit Rev. A&lt;br /&gt;
* [http://www.efton.sk/STM32/STM32F4xx_doc_errors.txt Liste von Dokumentations-Fehlern]&lt;br /&gt;
&lt;br /&gt;
== Bezugsquellen ==&lt;br /&gt;
&lt;br /&gt;
=== Controller ===&lt;br /&gt;
&lt;br /&gt;
Versand Europaweit im endasmedia.ch Shop&lt;br /&gt;
* STM32F105 Controller für 2.50€ [http://shop.endasmedia.ch/index.php?id_product=8&amp;amp;controller=product&amp;amp;id_lang=1 shop.endasmedia.ch]&lt;br /&gt;
&lt;br /&gt;
Versandhäuser für Privatpersonen&lt;br /&gt;
* [http://www.reichelt.de/STM-Controller/2/index.html?;ACTION=2;LA=2;GROUPID=2950; Reichelt]&lt;br /&gt;
* [http://darisusgmbh.de/shop/index.php?cat=c2692_ARM-Cortex.html Darisus]&lt;br /&gt;
* [http://www.hbe-shop.de HBE (Farnell Programm für Private)] &lt;br /&gt;
* [http://www.sander-electronic.de/be00069.html Sander]&lt;br /&gt;
* [http://www.tme.eu/de/katalog/index.phtml#cleanParameters%3D1%26search%3DSTM32F10%26bf_szukaj%3D+ TME] &lt;br /&gt;
* [http://teske-electronics.de/index.php?cPath=3_9_53 Teske electronics]&lt;br /&gt;
* [http://de.rs-online.com/web/c/halbleiter/prozessoren-und-mikrocontroller/mikrocontroller/?sort-by=default&amp;amp;sort-order=default&amp;amp;applied-dimensions=4294417325&amp;amp;lastAttributeSelectedBlock=4294425895 RS-Online]&lt;br /&gt;
&lt;br /&gt;
Gewerblich liefern natürlich viele wie EBV, Mouser, Farnell, Digikey usw...&lt;br /&gt;
&lt;br /&gt;
=== Evaluation Boards ===&lt;br /&gt;
* Siehe [[:Kategorie:ARM-Boards]]&lt;br /&gt;
* [http://shop.embedded-projects.net/index.php?module=artikel&amp;amp;action=gruppe&amp;amp;id=14 Im Shop von Embedded Projects]&lt;br /&gt;
* [http://www.watterott.com/de/Boards-Kits/ARM/ARM-Cortex-M3 Cortex M3 bei Watterott]&lt;br /&gt;
* [http://www.raisonance.com/~primer-starter-kits__microcontrollers__tool~tool__T018:4enfvamuxbtp.html Primer und Primer2 von Raisonance]&lt;br /&gt;
* [http://www.sander-electronic.de/es0028.html Sander Electronic]&lt;br /&gt;
* [http://www.mikrocontroller.net/articles/MP32F103-Stick:_Ein_Mini-Mikrocontroller-Board_mit_USB_und_bis_zu_4MB_Datenspeicher Artikel im Wiki, ARM mit USB und 4MB Speicher]&lt;br /&gt;
* [http://www.futurlec.com/STM32_Development_Board.shtml Futurlec Evalboard, ebenso Header-Board]&lt;br /&gt;
* [http://www.propox.com/products/t_174.html Propox, Header-Boards für 103R und 103V sowie Trägerplatine dafür]&lt;br /&gt;
* [http://www.mikrocontroller.net/articles/Cortex_M3_OCM3U Cortex M3 Artikel im Wiki]&lt;br /&gt;
* [http://olimex.com/dev/index.html STM32 bei Olimex]&lt;br /&gt;
* [http://de.farnell.com/jsp/displayProduct.jsp?sku=1824325&amp;amp;action=view&amp;amp;CMP=GRHS-1000962 STM32Discovery bei Farnell] Mikrocontroller Board (STM32F100RBT6B) mit onboard USB-Programming Interface für ca. 12,50€&lt;br /&gt;
* [http://www.de.rs-online.com/web/p/products/7458434/ STM32Discovery bei RS-Components] 12,65 € +MwSt.&lt;br /&gt;
* [http://www.segor.de/#Q=STM32 VL DISCOVERY] STM32 Discovery bei Segor&lt;br /&gt;
* [http://www.watterott.com/de/STM32F4Discovery STM32F4DISCOVERY] STM32F4 Cortex M4 Controller mit JTAG-Debugger auf der Platine bei Watterott für 16,66EUR.&lt;br /&gt;
* [http://www.conrad.de/ce/de/product/443910/ STM32F4 Discovery Kit bei Conrad] 17,11 €&lt;br /&gt;
* [http://www.mcu-raisonance.com/~open4-development-platform__microcontrollers__tool~tool__T018:g65gu6ghg2n.html/ Open 4 oder auch genannt Evo-Primer]&lt;br /&gt;
* [http://www.wayengineer.com/index.php?main_page=index&amp;amp;cPath=50_66&amp;amp;page=1&amp;amp;sort=3a WayEngineer]&lt;br /&gt;
* [http://thinkembedded.ch/ST-STMicroelectronics:::24.html Im Thinkembedded Shop] in der Schweiz / DiscoveryF4, div. ETT und Olimex Boarde ab 20,18 CHF / 16,15 EUR (inkl. MwSt.) zzgl. Versandkosten&lt;br /&gt;
* [http://shop.myavr.de/ARM-Produktlinie/STM32F4-Discovery.htm?sp=article.sp.php&amp;amp;artID=200072 Im myAVR Shop] DiscoveryF4 mit möglichem Zubehör 16,45 EUR (inkl. MwSt.) zzgl. Versandkosten&lt;br /&gt;
* [http://www.keil.com/boards/cortexm.asp Keil/ARM Demoboards]&lt;br /&gt;
* [http://www.phytec.de Phytec]&lt;br /&gt;
* [http://shop.myavr.de/index.php?sp=artlist_kat.sp.php&amp;amp;katID=37 verschiedene ARM Produkte und Erweiterungen bei myAVR]&lt;br /&gt;
* [http://re.reworld.eu/de/produkte/s64dil-405/index.htm S64DIL-405 STM32Fxxx ARM Cortex M3 Mikrocontrollermodul mit USB-Schnittstelle, Steckbretttauglich] (Leerplatine eignet sich auch für STM32F1xx Prozessoren.)&lt;br /&gt;
* [http://www.amazon.de/STM32F4-DISCOVERY-STM32F429-Cortex-M4-Development/dp/B00HGG0KHY STM32F429 DISCOVERY Cortex M4 mit 2,4&amp;quot; Touch-TFT, 3-Achs Sensor, 64 MBit SDRAM ab ~25 EUR bei Amazon, Ebay u.a.]&lt;br /&gt;
&lt;br /&gt;
== Weblinks, Foren, Communities, Tutorials ==&lt;br /&gt;
* [http://www.mikrocontroller.net/articles/STM32_-_Einstieg_mit_Em::Blocks STM32 - Einstieg mit Em::Blocks Tutorial]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/173753 Diskussion zum Artikel]&lt;br /&gt;
* [http://www.mikrocontroller.net/forum/mikrocontroller-elektronik?filter=ARM*+STM32*+Cortex* Suche im Forum]&lt;br /&gt;
* [[STM32 für Einsteiger]]&lt;br /&gt;
* [[STM32 CooCox Installation]]&lt;br /&gt;
* [https://my.st.com/public/STe2ecommunities/mcu/Lists/ARM%20CortexM3%20STM32/AllItems.aspx Forum auf der ST Homepage] &lt;br /&gt;
* [http://www.stm32circle.com/hom/index.php STM32 Community] &lt;br /&gt;
*[http://joe-c.de/pages/posts/einstieg_mikrocontroller_stm32f103_101.php Einstieg:  STM32board mit Kamera (deutsch)] &lt;br /&gt;
* [http://www.ebv.com/fileadmin/products/Press_Print/Brochures/Product_Brochures/EBV_Cortex%20Collection_V2.pdf Übersicht der Cortex Prozessoren und deren Hersteller (nicht nur ST, von EBV)]&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/258652 Tutorial]&lt;br /&gt;
* [http://diller-technologies.de/stm32_wide.html STM32 Tutorial in Deutsch von Diller Technologies]&lt;br /&gt;
* [http://mySTM32.de STM32 C und C++ Tutorial in Deutsch ]&lt;br /&gt;
* [http://mikrocontroller.bplaced.net STM32F4 Quellcode-Librarys und CooCox-Projekte in Deutsch ]&lt;br /&gt;
* [http://myugl.de Tutorial für Grafik-Librarys und SiSy-Projekte in Deutsch ]&lt;br /&gt;
* [http://www.st.com/web/en/catalog/tools/FM147/CL1794/SC961/SS1533/PF251717 MicroXplorer MCU graphical configuration tool ]&lt;br /&gt;
* [http://www.harerod.de/CoreMark_STM32.pdf Testbericht über CoreMark 1.0 auf Cortex-M3/M4 mit verschiedenen Compiler- und MCU-Einstellungen]&lt;br /&gt;
* [http://klaus4.blogspot.com/2014/05/stm32f4-discovery-mit-opensource.html STM32-Toolchain mit Eclipse CDT 4.3, GnuArmEclipse, OpenOCD 0.8.0, Gnu Arm GCC 4.8, STM32CubeMX]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Kategorie:ARM]]&lt;br /&gt;
[[Kategorie:STM32]]&lt;br /&gt;
[[Kategorie:Mikrocontroller]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=STM32F103C8T6_Boards&amp;diff=85110</id>
		<title>STM32F103C8T6 Boards</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=STM32F103C8T6_Boards&amp;diff=85110"/>
		<updated>2014-10-07T20:49:42Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Bild ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hauptsächlich aus China gibt es preiswerte &#039;&#039;&#039;STM32F103C8T6 Boards&#039;&#039;&#039; in 600 mil und 1300 mil Breite.&lt;br /&gt;
&lt;br /&gt;
==Pinbelegung==&lt;br /&gt;
[[Datei:1300mil STM32F103C8T6.png|miniatur|1300mil Board]]&lt;br /&gt;
Nachfolgend die Pinbelegung beider Versionen:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|µC-Pin&lt;br /&gt;
|Name&lt;br /&gt;
|600 mil&lt;br /&gt;
|1300 mil&lt;br /&gt;
|Type&lt;br /&gt;
|POR-Fct&lt;br /&gt;
|Default&lt;br /&gt;
|Remap&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|VBAT&lt;br /&gt;
|1&lt;br /&gt;
|5&lt;br /&gt;
|S&lt;br /&gt;
|VBAT&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PC13-TAMPER- RTC(5)&lt;br /&gt;
|2&lt;br /&gt;
|6&lt;br /&gt;
|I/O&lt;br /&gt;
|PC13(6)&lt;br /&gt;
|TAMPER-RTC&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|PC14-OSC32_IN(5)&lt;br /&gt;
|3&lt;br /&gt;
|7&lt;br /&gt;
|I/O&lt;br /&gt;
|PC14(6)&lt;br /&gt;
|OSC32_IN&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|PC15- OSC32_OUT(5)&lt;br /&gt;
|4&lt;br /&gt;
|8&lt;br /&gt;
|I/O&lt;br /&gt;
|PC15(6)&lt;br /&gt;
|OSC32_OUT&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|OSC_IN&lt;br /&gt;
|&lt;br /&gt;
|9&lt;br /&gt;
|I&lt;br /&gt;
|OSC_IN&lt;br /&gt;
|&lt;br /&gt;
|PD0(7)&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|OSC_OUT&lt;br /&gt;
|&lt;br /&gt;
|10&lt;br /&gt;
|O&lt;br /&gt;
|OSC_OUT&lt;br /&gt;
|&lt;br /&gt;
|PD1(7)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|NRST&lt;br /&gt;
|&lt;br /&gt;
|- (?)&lt;br /&gt;
|I/O&lt;br /&gt;
|NRST&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|VSSA&lt;br /&gt;
|&lt;br /&gt;
|3&lt;br /&gt;
|S&lt;br /&gt;
|VSSA&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|VDDA&lt;br /&gt;
|&lt;br /&gt;
|2&lt;br /&gt;
|S&lt;br /&gt;
|VDDA&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|PA0-WKUP&lt;br /&gt;
|5&lt;br /&gt;
|11&lt;br /&gt;
|I/O&lt;br /&gt;
|PA0&lt;br /&gt;
|WKUP/ USART2_CTS(9)/ ADC12_IN0/ TIM2_CH1_ ETR(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|PA1&lt;br /&gt;
|6&lt;br /&gt;
|12&lt;br /&gt;
|I/O&lt;br /&gt;
|PA1&lt;br /&gt;
|USART2_RTS(9)/ ADC12_IN1/ TIM2_CH2(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|PA2&lt;br /&gt;
|7&lt;br /&gt;
|13&lt;br /&gt;
|I/O&lt;br /&gt;
|PA2&lt;br /&gt;
|USART2_TX(9)/ ADC12_IN2/ TIM2_CH3(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|PA3&lt;br /&gt;
|8&lt;br /&gt;
|14&lt;br /&gt;
|I/O&lt;br /&gt;
|PA3&lt;br /&gt;
|USART2_RX(9)/ ADC12_IN3/ TIM2_CH4(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|PA4&lt;br /&gt;
|9&lt;br /&gt;
|15&lt;br /&gt;
|I/O&lt;br /&gt;
|PA4&lt;br /&gt;
|SPI1_NSS(9)/ USART2_CK(9)/ ADC12_IN4&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|PA5&lt;br /&gt;
|10&lt;br /&gt;
|16&lt;br /&gt;
|I/O&lt;br /&gt;
|PA5&lt;br /&gt;
|SPI1_SCK(9)/ ADC12_IN5&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|PA6&lt;br /&gt;
|11&lt;br /&gt;
|17&lt;br /&gt;
|I/O&lt;br /&gt;
|PA6&lt;br /&gt;
|SPI1_MISO(9)/ ADC12_IN6/ TIM3_CH1(9)&lt;br /&gt;
|TIM1_BKIN&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|PA7&lt;br /&gt;
|12&lt;br /&gt;
|18&lt;br /&gt;
|I/O&lt;br /&gt;
|PA7&lt;br /&gt;
|SPI1_MOSI(9)/ ADC12_IN7/ TIM3_CH2(9)&lt;br /&gt;
|TIM1_CH1N&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|PB0&lt;br /&gt;
|13&lt;br /&gt;
|19&lt;br /&gt;
|I/O&lt;br /&gt;
|PB0&lt;br /&gt;
|ADC12_IN8/ TIM3_CH3(9)&lt;br /&gt;
|TIM1_CH2N&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|PB1&lt;br /&gt;
|14&lt;br /&gt;
|20&lt;br /&gt;
|I/O&lt;br /&gt;
|PB1&lt;br /&gt;
|ADC12_IN9/ TIM3_CH4(9)&lt;br /&gt;
|TIM1_CH3N&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|PB2&lt;br /&gt;
|&lt;br /&gt;
|21&lt;br /&gt;
|I/O&lt;br /&gt;
|PB2/BOOT1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|PB10&lt;br /&gt;
|15&lt;br /&gt;
|22&lt;br /&gt;
|I/O&lt;br /&gt;
|PB10&lt;br /&gt;
|I2C2_SCL/ USART3_TX(9)&lt;br /&gt;
|TIM2_CH3&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|PB11&lt;br /&gt;
|16&lt;br /&gt;
|23&lt;br /&gt;
|I/O&lt;br /&gt;
|PB11&lt;br /&gt;
|I2C2_SDA/ USART3_RX(9)&lt;br /&gt;
|TIM2_CH4&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|VSS_1&lt;br /&gt;
|&lt;br /&gt;
|4&lt;br /&gt;
|S&lt;br /&gt;
|VSS_1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|VDD_1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VDD_1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|25&lt;br /&gt;
|PB12&lt;br /&gt;
|21&lt;br /&gt;
|24&lt;br /&gt;
|I/O&lt;br /&gt;
|PB12&lt;br /&gt;
|SPI2_NSS/ I2C2_SMBAl/ USART3_CK(9)/ TIM1_BKIN(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|26&lt;br /&gt;
|PB13&lt;br /&gt;
|22&lt;br /&gt;
|25&lt;br /&gt;
|I/O&lt;br /&gt;
|PB13&lt;br /&gt;
|SPI2_SCK/ USART3_CTS(9)/ TIM1_CH1N (9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|27&lt;br /&gt;
|PB14&lt;br /&gt;
|23&lt;br /&gt;
|26&lt;br /&gt;
|I/O&lt;br /&gt;
|PB14&lt;br /&gt;
|SPI2_MISO/ USART3_RTS(9) TIM1_CH2N (9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|28&lt;br /&gt;
|PB15&lt;br /&gt;
|24&lt;br /&gt;
|27&lt;br /&gt;
|I/O&lt;br /&gt;
|PB15&lt;br /&gt;
|SPI2_MOSI/ TIM1_CH3N(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|29&lt;br /&gt;
|PA8&lt;br /&gt;
|25&lt;br /&gt;
|28&lt;br /&gt;
|I/O&lt;br /&gt;
|PA8&lt;br /&gt;
|USART1_CK/ TIM1_CH1(9)/ MCO&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|30&lt;br /&gt;
|PA9&lt;br /&gt;
|26&lt;br /&gt;
|29&lt;br /&gt;
|I/O&lt;br /&gt;
|PA9&lt;br /&gt;
|USART1_TX(9)/ TIM1_CH2(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|31&lt;br /&gt;
|PA10&lt;br /&gt;
|27&lt;br /&gt;
|30&lt;br /&gt;
|I/O&lt;br /&gt;
|PA10&lt;br /&gt;
|USART1_RX(9)/ TIM1_CH3(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|32&lt;br /&gt;
|PA11&lt;br /&gt;
|28&lt;br /&gt;
|31&lt;br /&gt;
|I/O&lt;br /&gt;
|PA11&lt;br /&gt;
|USART1_CTS/ CANRX(9)/ USBDM/ TIM1_CH4(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|PA12&lt;br /&gt;
|&lt;br /&gt;
|32&lt;br /&gt;
|I/O&lt;br /&gt;
|PA12&lt;br /&gt;
|USART1_RTS/ CANTX(9) /USBDP TIM1_ETR(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|34&lt;br /&gt;
|PA13&lt;br /&gt;
|29&lt;br /&gt;
|33&lt;br /&gt;
|I/O&lt;br /&gt;
|JTMS/SWDIO&lt;br /&gt;
|&lt;br /&gt;
|PA13&lt;br /&gt;
|-&lt;br /&gt;
|35&lt;br /&gt;
|VSS_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VSS_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|36&lt;br /&gt;
|VDD_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VDD_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|37&lt;br /&gt;
|PA14&lt;br /&gt;
|&lt;br /&gt;
|34&lt;br /&gt;
|I/O&lt;br /&gt;
|JTCK/SWCLK&lt;br /&gt;
|&lt;br /&gt;
|PA14&lt;br /&gt;
|-&lt;br /&gt;
|38&lt;br /&gt;
|PA15&lt;br /&gt;
|30&lt;br /&gt;
|35&lt;br /&gt;
|&lt;br /&gt;
|JTDI&lt;br /&gt;
|&lt;br /&gt;
|TIM2_CH1_ ETR/ PA15 /SPI1_NSS&lt;br /&gt;
|-&lt;br /&gt;
|39&lt;br /&gt;
|PB3&lt;br /&gt;
|31&lt;br /&gt;
|36&lt;br /&gt;
|I/O&lt;br /&gt;
|JTDO&lt;br /&gt;
|&lt;br /&gt;
|TIM2_CH2 / PB3 TRACESWO SPI1_SCK&lt;br /&gt;
|-&lt;br /&gt;
|40&lt;br /&gt;
|PB4&lt;br /&gt;
|32&lt;br /&gt;
|37&lt;br /&gt;
|I/O&lt;br /&gt;
|JNTRST&lt;br /&gt;
|&lt;br /&gt;
|TIM3_CH1/ PB4/ SPI1_MISO&lt;br /&gt;
|-&lt;br /&gt;
|41&lt;br /&gt;
|PB5&lt;br /&gt;
|33&lt;br /&gt;
|38&lt;br /&gt;
|I/O&lt;br /&gt;
|PB5&lt;br /&gt;
|I2C1_SMBAl&lt;br /&gt;
|TIM3_CH2 / SPI1_MOSI&lt;br /&gt;
|-&lt;br /&gt;
|42&lt;br /&gt;
|PB6&lt;br /&gt;
|34&lt;br /&gt;
|39&lt;br /&gt;
|I/O&lt;br /&gt;
|PB6&lt;br /&gt;
|I2C1_SCL(9)/ TIM4_CH1(9)&lt;br /&gt;
|USART1_TX&lt;br /&gt;
|-&lt;br /&gt;
|43&lt;br /&gt;
|PB7&lt;br /&gt;
|35&lt;br /&gt;
|40&lt;br /&gt;
|I/O&lt;br /&gt;
|PB7&lt;br /&gt;
|I2C1_SDA(9)/ TIM4_CH2(9)&lt;br /&gt;
|USART1_RX&lt;br /&gt;
|-&lt;br /&gt;
|44&lt;br /&gt;
|BOOT0&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|I&lt;br /&gt;
|BOOT0&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|45&lt;br /&gt;
|PB8&lt;br /&gt;
|36&lt;br /&gt;
|41&lt;br /&gt;
|I/O&lt;br /&gt;
|PB8&lt;br /&gt;
|TIM4_CH3(9)&lt;br /&gt;
|I2C1_SCL / CANRX&lt;br /&gt;
|-&lt;br /&gt;
|46&lt;br /&gt;
|PB9&lt;br /&gt;
|37&lt;br /&gt;
|42&lt;br /&gt;
|I/O&lt;br /&gt;
|PB9&lt;br /&gt;
|TIM4_CH4(9)&lt;br /&gt;
|I2C1_SDA/ CANTX&lt;br /&gt;
|-&lt;br /&gt;
|47&lt;br /&gt;
|VSS_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VSS_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|48&lt;br /&gt;
|VDD_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VDD_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:ARM-Boards]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Datei:1300mil_STM32F103C8T6.png&amp;diff=85109</id>
		<title>Datei:1300mil STM32F103C8T6.png</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Datei:1300mil_STM32F103C8T6.png&amp;diff=85109"/>
		<updated>2014-10-07T20:46:59Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=STM32F103C8T6_Boards&amp;diff=85108</id>
		<title>STM32F103C8T6 Boards</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=STM32F103C8T6_Boards&amp;diff=85108"/>
		<updated>2014-10-07T20:26:33Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Stub angelegt, Details folgen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hauptsächlich aus China gibt es preiswerte &#039;&#039;&#039;STM32F103C8T6 Boards&#039;&#039;&#039; in 600 mil und 1300 mil Breite.&lt;br /&gt;
&lt;br /&gt;
==Pinbelegung==&lt;br /&gt;
&lt;br /&gt;
Nachfolgend die Pinbelegung beider Versionen:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|µC-Pin&lt;br /&gt;
|Name&lt;br /&gt;
|600 mil&lt;br /&gt;
|1300 mil&lt;br /&gt;
|Type&lt;br /&gt;
|POR-Fct&lt;br /&gt;
|Default&lt;br /&gt;
|Remap&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|VBAT&lt;br /&gt;
|1&lt;br /&gt;
|5&lt;br /&gt;
|S&lt;br /&gt;
|VBAT&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PC13-TAMPER- RTC(5)&lt;br /&gt;
|2&lt;br /&gt;
|6&lt;br /&gt;
|I/O&lt;br /&gt;
|PC13(6)&lt;br /&gt;
|TAMPER-RTC&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|PC14-OSC32_IN(5)&lt;br /&gt;
|3&lt;br /&gt;
|7&lt;br /&gt;
|I/O&lt;br /&gt;
|PC14(6)&lt;br /&gt;
|OSC32_IN&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|PC15- OSC32_OUT(5)&lt;br /&gt;
|4&lt;br /&gt;
|8&lt;br /&gt;
|I/O&lt;br /&gt;
|PC15(6)&lt;br /&gt;
|OSC32_OUT&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|OSC_IN&lt;br /&gt;
|&lt;br /&gt;
|9&lt;br /&gt;
|I&lt;br /&gt;
|OSC_IN&lt;br /&gt;
|&lt;br /&gt;
|PD0(7)&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|OSC_OUT&lt;br /&gt;
|&lt;br /&gt;
|10&lt;br /&gt;
|O&lt;br /&gt;
|OSC_OUT&lt;br /&gt;
|&lt;br /&gt;
|PD1(7)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|NRST&lt;br /&gt;
|&lt;br /&gt;
|- (?)&lt;br /&gt;
|I/O&lt;br /&gt;
|NRST&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|VSSA&lt;br /&gt;
|&lt;br /&gt;
|3&lt;br /&gt;
|S&lt;br /&gt;
|VSSA&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|VDDA&lt;br /&gt;
|&lt;br /&gt;
|2&lt;br /&gt;
|S&lt;br /&gt;
|VDDA&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|PA0-WKUP&lt;br /&gt;
|5&lt;br /&gt;
|11&lt;br /&gt;
|I/O&lt;br /&gt;
|PA0&lt;br /&gt;
|WKUP/ USART2_CTS(9)/ ADC12_IN0/ TIM2_CH1_ ETR(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|PA1&lt;br /&gt;
|6&lt;br /&gt;
|12&lt;br /&gt;
|I/O&lt;br /&gt;
|PA1&lt;br /&gt;
|USART2_RTS(9)/ ADC12_IN1/ TIM2_CH2(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|PA2&lt;br /&gt;
|7&lt;br /&gt;
|13&lt;br /&gt;
|I/O&lt;br /&gt;
|PA2&lt;br /&gt;
|USART2_TX(9)/ ADC12_IN2/ TIM2_CH3(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|PA3&lt;br /&gt;
|8&lt;br /&gt;
|14&lt;br /&gt;
|I/O&lt;br /&gt;
|PA3&lt;br /&gt;
|USART2_RX(9)/ ADC12_IN3/ TIM2_CH4(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|PA4&lt;br /&gt;
|9&lt;br /&gt;
|15&lt;br /&gt;
|I/O&lt;br /&gt;
|PA4&lt;br /&gt;
|SPI1_NSS(9)/ USART2_CK(9)/ ADC12_IN4&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|PA5&lt;br /&gt;
|10&lt;br /&gt;
|16&lt;br /&gt;
|I/O&lt;br /&gt;
|PA5&lt;br /&gt;
|SPI1_SCK(9)/ ADC12_IN5&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|PA6&lt;br /&gt;
|11&lt;br /&gt;
|17&lt;br /&gt;
|I/O&lt;br /&gt;
|PA6&lt;br /&gt;
|SPI1_MISO(9)/ ADC12_IN6/ TIM3_CH1(9)&lt;br /&gt;
|TIM1_BKIN&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|PA7&lt;br /&gt;
|12&lt;br /&gt;
|18&lt;br /&gt;
|I/O&lt;br /&gt;
|PA7&lt;br /&gt;
|SPI1_MOSI(9)/ ADC12_IN7/ TIM3_CH2(9)&lt;br /&gt;
|TIM1_CH1N&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|PB0&lt;br /&gt;
|13&lt;br /&gt;
|19&lt;br /&gt;
|I/O&lt;br /&gt;
|PB0&lt;br /&gt;
|ADC12_IN8/ TIM3_CH3(9)&lt;br /&gt;
|TIM1_CH2N&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|PB1&lt;br /&gt;
|14&lt;br /&gt;
|20&lt;br /&gt;
|I/O&lt;br /&gt;
|PB1&lt;br /&gt;
|ADC12_IN9/ TIM3_CH4(9)&lt;br /&gt;
|TIM1_CH3N&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|PB2&lt;br /&gt;
|&lt;br /&gt;
|21&lt;br /&gt;
|I/O&lt;br /&gt;
|PB2/BOOT1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|PB10&lt;br /&gt;
|15&lt;br /&gt;
|22&lt;br /&gt;
|I/O&lt;br /&gt;
|PB10&lt;br /&gt;
|I2C2_SCL/ USART3_TX(9)&lt;br /&gt;
|TIM2_CH3&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|PB11&lt;br /&gt;
|16&lt;br /&gt;
|23&lt;br /&gt;
|I/O&lt;br /&gt;
|PB11&lt;br /&gt;
|I2C2_SDA/ USART3_RX(9)&lt;br /&gt;
|TIM2_CH4&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|VSS_1&lt;br /&gt;
|&lt;br /&gt;
|4&lt;br /&gt;
|S&lt;br /&gt;
|VSS_1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|VDD_1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VDD_1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|25&lt;br /&gt;
|PB12&lt;br /&gt;
|21&lt;br /&gt;
|24&lt;br /&gt;
|I/O&lt;br /&gt;
|PB12&lt;br /&gt;
|SPI2_NSS/ I2C2_SMBAl/ USART3_CK(9)/ TIM1_BKIN(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|26&lt;br /&gt;
|PB13&lt;br /&gt;
|22&lt;br /&gt;
|25&lt;br /&gt;
|I/O&lt;br /&gt;
|PB13&lt;br /&gt;
|SPI2_SCK/ USART3_CTS(9)/ TIM1_CH1N (9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|27&lt;br /&gt;
|PB14&lt;br /&gt;
|23&lt;br /&gt;
|26&lt;br /&gt;
|I/O&lt;br /&gt;
|PB14&lt;br /&gt;
|SPI2_MISO/ USART3_RTS(9) TIM1_CH2N (9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|28&lt;br /&gt;
|PB15&lt;br /&gt;
|24&lt;br /&gt;
|27&lt;br /&gt;
|I/O&lt;br /&gt;
|PB15&lt;br /&gt;
|SPI2_MOSI/ TIM1_CH3N(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|29&lt;br /&gt;
|PA8&lt;br /&gt;
|25&lt;br /&gt;
|28&lt;br /&gt;
|I/O&lt;br /&gt;
|PA8&lt;br /&gt;
|USART1_CK/ TIM1_CH1(9)/ MCO&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|30&lt;br /&gt;
|PA9&lt;br /&gt;
|26&lt;br /&gt;
|29&lt;br /&gt;
|I/O&lt;br /&gt;
|PA9&lt;br /&gt;
|USART1_TX(9)/ TIM1_CH2(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|31&lt;br /&gt;
|PA10&lt;br /&gt;
|27&lt;br /&gt;
|30&lt;br /&gt;
|I/O&lt;br /&gt;
|PA10&lt;br /&gt;
|USART1_RX(9)/ TIM1_CH3(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|32&lt;br /&gt;
|PA11&lt;br /&gt;
|28&lt;br /&gt;
|31&lt;br /&gt;
|I/O&lt;br /&gt;
|PA11&lt;br /&gt;
|USART1_CTS/ CANRX(9)/ USBDM/ TIM1_CH4(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|PA12&lt;br /&gt;
|&lt;br /&gt;
|32&lt;br /&gt;
|I/O&lt;br /&gt;
|PA12&lt;br /&gt;
|USART1_RTS/ CANTX(9) /USBDP TIM1_ETR(9)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|34&lt;br /&gt;
|PA13&lt;br /&gt;
|29&lt;br /&gt;
|33&lt;br /&gt;
|I/O&lt;br /&gt;
|JTMS/SWDIO&lt;br /&gt;
|&lt;br /&gt;
|PA13&lt;br /&gt;
|-&lt;br /&gt;
|35&lt;br /&gt;
|VSS_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VSS_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|36&lt;br /&gt;
|VDD_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VDD_2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|37&lt;br /&gt;
|PA14&lt;br /&gt;
|&lt;br /&gt;
|34&lt;br /&gt;
|I/O&lt;br /&gt;
|JTCK/SWCLK&lt;br /&gt;
|&lt;br /&gt;
|PA14&lt;br /&gt;
|-&lt;br /&gt;
|38&lt;br /&gt;
|PA15&lt;br /&gt;
|30&lt;br /&gt;
|35&lt;br /&gt;
|&lt;br /&gt;
|JTDI&lt;br /&gt;
|&lt;br /&gt;
|TIM2_CH1_ ETR/ PA15 /SPI1_NSS&lt;br /&gt;
|-&lt;br /&gt;
|39&lt;br /&gt;
|PB3&lt;br /&gt;
|31&lt;br /&gt;
|36&lt;br /&gt;
|I/O&lt;br /&gt;
|JTDO&lt;br /&gt;
|&lt;br /&gt;
|TIM2_CH2 / PB3 TRACESWO SPI1_SCK&lt;br /&gt;
|-&lt;br /&gt;
|40&lt;br /&gt;
|PB4&lt;br /&gt;
|32&lt;br /&gt;
|37&lt;br /&gt;
|I/O&lt;br /&gt;
|JNTRST&lt;br /&gt;
|&lt;br /&gt;
|TIM3_CH1/ PB4/ SPI1_MISO&lt;br /&gt;
|-&lt;br /&gt;
|41&lt;br /&gt;
|PB5&lt;br /&gt;
|33&lt;br /&gt;
|38&lt;br /&gt;
|I/O&lt;br /&gt;
|PB5&lt;br /&gt;
|I2C1_SMBAl&lt;br /&gt;
|TIM3_CH2 / SPI1_MOSI&lt;br /&gt;
|-&lt;br /&gt;
|42&lt;br /&gt;
|PB6&lt;br /&gt;
|34&lt;br /&gt;
|39&lt;br /&gt;
|I/O&lt;br /&gt;
|PB6&lt;br /&gt;
|I2C1_SCL(9)/ TIM4_CH1(9)&lt;br /&gt;
|USART1_TX&lt;br /&gt;
|-&lt;br /&gt;
|43&lt;br /&gt;
|PB7&lt;br /&gt;
|35&lt;br /&gt;
|40&lt;br /&gt;
|I/O&lt;br /&gt;
|PB7&lt;br /&gt;
|I2C1_SDA(9)/ TIM4_CH2(9)&lt;br /&gt;
|USART1_RX&lt;br /&gt;
|-&lt;br /&gt;
|44&lt;br /&gt;
|BOOT0&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|I&lt;br /&gt;
|BOOT0&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|45&lt;br /&gt;
|PB8&lt;br /&gt;
|36&lt;br /&gt;
|41&lt;br /&gt;
|I/O&lt;br /&gt;
|PB8&lt;br /&gt;
|TIM4_CH3(9)&lt;br /&gt;
|I2C1_SCL / CANRX&lt;br /&gt;
|-&lt;br /&gt;
|46&lt;br /&gt;
|PB9&lt;br /&gt;
|37&lt;br /&gt;
|42&lt;br /&gt;
|I/O&lt;br /&gt;
|PB9&lt;br /&gt;
|TIM4_CH4(9)&lt;br /&gt;
|I2C1_SDA/ CANTX&lt;br /&gt;
|-&lt;br /&gt;
|47&lt;br /&gt;
|VSS_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VSS_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|48&lt;br /&gt;
|VDD_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|S&lt;br /&gt;
|VDD_3&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:ARM-Boards]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Pegelwandler&amp;diff=85006</id>
		<title>Pegelwandler</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Pegelwandler&amp;diff=85006"/>
		<updated>2014-09-24T19:15:56Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* 3,3 V ⇒ 5 V */ Typo: HCs können funktionieren, HCTs sowieso.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Vorwort ==&lt;br /&gt;
&lt;br /&gt;
Dies ist die erste aufgeräumte Version. Sicher nicht die letzte.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mikrocontroller.net/forum/read-1-375051.html &amp;quot;Stein des Anstosses&amp;quot;]&lt;br /&gt;
* [http://www.mikrocontroller.net/forum/list-1-1.html?filter=pegelwand*+levelsh*&amp;amp;x=0&amp;amp;y=0 Suche in den Forenartikel]&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Pegelwandeln (engl. level shifting) wird oft notwendig, wenn Systeme mit unterschiedlicher Ausgangs- und Eingangsspannungen (z.&amp;amp;nbsp;B. Versorgungs- oder Logikspannungen) miteinander verbunden werden sollen. Das vielleicht bekannteste Beispiel ist die Umsetzung von 0V/5V [[TTL]] Logikpegeln auf die -12V/12V Pegel einer seriellen [[RS232]] Schnittstelle. Die Probleme beim Pegelwandeln können sein:&lt;br /&gt;
&lt;br /&gt;
# Überlastung einer oder beider Seiten, bis hin zur Zerstörung&lt;br /&gt;
# Inkompatible Logikpegel und daraus resultierendes Nichtfunktionieren der Schaltung, oder noch schlimmer, sporadische Fehlfunktionen&lt;br /&gt;
# Verzögerungen der Signale durch die Pegelwandlung und daraus resultierende maximale Signalfrequenzen&lt;br /&gt;
&lt;br /&gt;
=== Überlastung ===&lt;br /&gt;
&lt;br /&gt;
Das Erzeugen von verschiedenen Versorgungsspannungen ist ziemlich einfach, aber man muss sicher gehen, daß man die Signalpegel der Bauteile auf Toleranz überprüft. Wenn z.B. ein 5V Bauteil ein Signal an ein 3V Bauteil schickt, können beide Bauteile beschädigt werden. Vor allem für neue ICs ist es ein Problem mit &amp;quot;hohen&amp;quot; Spannungen wie 5V zu arbeiten. Auf Grund der immer kleineren Schaltkreisstrukturen (der aktuelle Pentium wird mit 22nm Technologie hergestellt!) werden auch die Abstände und Schichtdicken immer geringer. Das reduziert natürlich auch die Spannungs- und Stromfestigkeit der Transistoren auf dem IC. Neue ICs vertragen deshalb meist nur noch 3.3V, teilweise sogar weniger! Die Überlastung erfolgt durch zu hohe Spannung und dadurch mehr oder weniger langsame Zerstörung des ICs.&lt;br /&gt;
&lt;br /&gt;
=== Schutzdioden ===&lt;br /&gt;
&lt;br /&gt;
Hauptursache Nummer zwei für Überlastung von ICs mit verschiedenen Betriebsspannungen sind die in nahezu allen ICs integrierten Schutzdioden. Deren Aufgabe ist es in Normalfall, elektrostatische Entladungen auf eine sichere, niedrige Spannung zu begrenzen. Die Entladungen geschehen durch unsachgemässe Handhabung und Transport von ICs, z.&amp;amp;nbsp;B. wenn jemand über einen Kunstfaserteppich läuft, sich dabei elektrostatisch auflädt und einen IC anfasst, oder wenn Bauteile in einem Gerät eingebaut sind und der Anwender berührt offen liegende Kontakte (RS232 Eingang, USB-Stick, PCI-Steckkarten beim Einbau etc.). Auch elektrostatische Entladungen / EMV können Ursache zu hoher Pegel auf den Leitungen sein.&lt;br /&gt;
&lt;br /&gt;
Die Schutzdioden beginnen, Strom zu leiten, wenn die Eingangsspannung ca. 300 mV - 600 mV über U&amp;lt;sub&amp;gt;CC&amp;lt;/sub&amp;gt; ansteigt oder entsprechend unter GND absinkt. Im Normalbetrieb sollten die Schutzdioden keinen Strom leiten. Manchmal kann man sie aber zur Spannungsbegrenzung missbrauchen, siehe [[#STEP-DOWN:_5V_-.3E_3.3V | Spannungsherabsetzung mit Vorwiderstand]].&lt;br /&gt;
&lt;br /&gt;
Besonderes Augenmerk ist hierbei auf die optimale Dimensionierung des R zu legen, um sicherzustellen, dass kein zu hoher Strom über die Schutzdioden abgeführt werden muss. Je nach Chip-Type und Ausgang halten diese zwsichen 100 µA und 10 mA aus.&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_schutzdioden.png]]&lt;br /&gt;
&lt;br /&gt;
=== 5-V-tolerante Eingänge ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;5-Volt-tolerant&amp;lt;/i&amp;gt; bedeutet, dass 3-Volt-Bausteine ohne Probleme von einem 5-Volt-Baustein angesteuert werden dürfen.&lt;br /&gt;
&lt;br /&gt;
Viele Bauteile mit einer Betriebsspannung von 3 V verfügen über 5-V-tolerante Eingänge. Man sollte aber grundsätzlich im Datenblatt dies nachschauen, bevor die Schaltung aufgebaut wird. Sind sie es nicht, so ist ein &amp;lt;b&amp;gt;Pegelwandler&amp;lt;/b&amp;gt; auf den Verbindungsleitungen zwischen den Bauteilen notwendig. Ein Pegelwandler kann eine einfache Zener-Diode mit einem Widerstand sein, es kann aber auch ein eigens dafür vorgesehener IC sein. Sind die Signalwege bidirektional, so wird man meist die Lösung mit einem eigenen IC bevorzugen.&lt;br /&gt;
&lt;br /&gt;
Bei geringen Geschwindigkeitsanforderungen und erlaubten flachflankigen Signalen (bei Zähl- und Takteingängen ist dazu Schmitt-Trigger-Verhalten erforderlich) genügt ein Serienwiderstand (Richtwert 10 kΩ) in Verbindung mit der Eingangsschutzbeschaltung. Bei allen derartigen „passiven Pegelkonvertern“ muss die Logikschaltschwelle durchfahren werden. Bei heutzutage üblichen treibenden CMOS-Ausgangsstufen ist das kein Problem.&lt;br /&gt;
&lt;br /&gt;
Ob ein Bauteil 5-V-tolerant ist und unter welchen Betriebsbedingungen das gilt, steht im Datenblatt des betreffenden Bauteils vom betreffenden Hersteller. Wenn es auf diese Eigenschaft ankommt, lieber genau bei Lieferanten nachsehen, von welchem Hersteller die Bauteile kommen.&lt;br /&gt;
&lt;br /&gt;
==== Beispiele ====&lt;br /&gt;
&lt;br /&gt;
[[AVR]]s sind generell &#039;&#039;&#039;nicht&#039;&#039;&#039; 5-V-tolerant, wenn sie mit 3,3 V betrieben werden! Die absolute obere Grenze für Eingangsspannungen liegt bei U&amp;lt;sub&amp;gt;CC&amp;lt;/sub&amp;gt; + 0,5 V. Zu finden in den elektrischen Spezifikationen im Datenblatt.&lt;br /&gt;
&lt;br /&gt;
Die GPIO-Pins des Raspberry Pi sind ebenfalls &#039;&#039;&#039;nicht&#039;&#039;&#039; 5-V-tolerant!&lt;br /&gt;
&lt;br /&gt;
Vorsicht bei:&lt;br /&gt;
&lt;br /&gt;
* 74&#039;&#039;&#039;LVX&#039;&#039;&#039;xxxx und 74&#039;&#039;&#039;LCX&#039;&#039;&#039;xxxx (245, 244, 240 ...) an Vcc = 3,3 V.&amp;lt;br&amp;gt;&amp;lt;font color=FF0000&amp;gt;Achtung&amp;lt;/font&amp;gt;: Nicht alle 74LVX sind für 5 V -&amp;gt; 3,3 V geeignet, da jeder Hersteller die ICs anders baut!&lt;br /&gt;
* SN74LVC07AD&lt;br /&gt;
* SN74LV1T04 (auch geeignet zur umgekehrten Konvertierung (3,3V-&amp;gt;5V))&lt;br /&gt;
&lt;br /&gt;
=== Kompatibilität von Logikpegeln ===&lt;br /&gt;
&lt;br /&gt;
Siehe auch http://www.interfacebus.com/Design_Translation.html&lt;br /&gt;
&lt;br /&gt;
Verschiedene Mikroprozessoren haben eigene elektrische Kenndaten für HIGH- und LOW-Pegel, die abhängig von der Versorgungsspannung sind, z.&amp;amp;nbsp;B. der [[R8C]]:&lt;br /&gt;
&lt;br /&gt;
* HIGH größer 0,8 * U&amp;lt;sub&amp;gt;CC&amp;lt;/sub&amp;gt;&lt;br /&gt;
* LOW kleiner 0,2 * U&amp;lt;sub&amp;gt;CC&amp;lt;/sub&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Man muss die Spannungen der Aus- und Eingänge vergleichen. Wenn es um ein Hobbyprojekt geht, kann man einfach messen. Wenn es um eine kommerzielle Anwendung geht, die man verkaufen will, sollte man besser die Spezifikationen der ICs studieren.&lt;br /&gt;
&lt;br /&gt;
== UNIDIREKTIONAL ==&lt;br /&gt;
&lt;br /&gt;
=== 1,8 V ⇒ 5 V ===&lt;br /&gt;
&lt;br /&gt;
* Die besondere Eigenschaft der alten TTL Schaltkreise, nämlich dass Strom bei LOW &#039;&#039;&#039;aus&#039;&#039;&#039; dem Eingang in den treibenden Ausgang fließt kann man sich zunutze machen, wie die nachfolgende Schaltung zeigt. In dieser wird der HIGH-Pegel des 1,8-V-Signals durch eine Schottkydiode um ca. 0,3 V auf 2,1 V erhöht. Damit ist man fast offiziell im HIGH-Bereich für TTL (Schaltschwelle 1,4 V, HIGH &amp;gt; 2,0 V). Der LOW-Pegel wird auf ca. 0,3 V erhöht, was voll den TTL-Richtlinien entspricht. Als Schaltkreisfamilie &#039;&#039;&#039;muss&#039;&#039;&#039; ein [[74xx|TTL-Typ]] eingesetzt werdem, also LS, F, AS oder ähnlich. CMOS-Typen wie HC, LVC etc. funktionieren &#039;&#039;&#039;nicht&#039;&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_LS.png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=FF0000&amp;gt;Achtung&amp;lt;/font&amp;gt;: Diese Schaltung entspricht bei HIGH ungefähr einem offenen TTL-Eingang, was zwar meistens funktioniert, aber etwas störempfindlich sein kann. Davon wurde in der TTL-Ära stets abgeraten. Zudem ist der Pegelwechsel LOW nach HIGH durch den niedrigen Strom eher langsam. Man kann das jedoch mit einem Pullup-Widerstand absichern. Dann sind auch Gatter der 74HCT-Reihe einsetzbar.&lt;br /&gt;
&lt;br /&gt;
=== 3,3 V ⇒ 5 V ===&lt;br /&gt;
&lt;br /&gt;
Diese Konversion ist mit Abstand die häufigste. Dabei kann man getrost 3,3 V (früher) und 3 V (moderner) gleich setzen.&lt;br /&gt;
&lt;br /&gt;
* 3,3-V-Pegel werden bei TTL kompatiblen Eingängen richtig erkannt (Schaltschwelle 1,4 V). Es ist kein Pegelwandler erforderlich. Direkte Verbindung. Einer der großen Vorteile klassischer TTL-Technik!&lt;br /&gt;
&lt;br /&gt;
* 5-V-CMOS Eingänge haben typisch eine minimale Eingangsspannug für HIGH (&amp;lt;math&amp;gt;V_{IH}&amp;lt;/math&amp;gt;) von 0.6 * U&amp;lt;sub&amp;gt;CC&amp;lt;/sub&amp;gt; = 0.6 * 5 V = 3 V. Das kann ein 3,3-V-CMOS-Ausgang direkt treiben, allerdings kann sich das Zeitverhalten dadurch etwas ändern, weil der HIGH Pegel später erkannt wird. Vorsicht! Viele 5-V-CMOS-ICs wollen für HIGH offiziell mindestens 0,7 * U&amp;lt;sub&amp;gt;CC&amp;lt;/sub&amp;gt; = 3,5 V oder manche auch 0,8 * U&amp;lt;sub&amp;gt;CC&amp;lt;/sub&amp;gt; = 4,0V! Das geht dann offiziell nicht mehr mit einem 3,3-V-Ausgang! Für Hobbyzwecke kann man das aber ggf. probieren.&lt;br /&gt;
Zu beachten ist, dass der nicht ganz nach High durchgesteuerte Eingang Querstrom von der Speisespannung ziehen kann. Das kann für batteriebetriebene Geräte oder USB-konformes Standby durchaus ausschlaggebend sein.&lt;br /&gt;
&lt;br /&gt;
* 3,3-V-[[Ausgangsstufen_Logik-ICs | Open Collector]] nach 5 V (TTL oder CMOS): Einfach einen Pull-Up Widerstand hinzufügen und gut. Allerdings verbraucht der Pull-Up-Widerstand bei LOW auf jeden Fall Strom und begrenzt bei HIGH den maximalen Gate-Umladestrom. Die Schaltgeschwindigkeit von LOW nach HIGH wird durch die Größe des Pull-Ups bestimmt. Je nach Geschwindigkeitsanforderungen kann der in Mikrocontrollern meistens zuschaltbare innere Widerstand dazu benutzt werden. Zudem kann dieser, bei bekannt LOW bleibendem Eingangspegel, zur Reduktion der Stromaufnahme abgeschaltet werden. Bipolare TTL-Schaltkreise benötigen in der Bastelschaltung keinen Pull-Up (liefern Strom); bei Schaltungen mit erhöhter Zuverlässigkeit ist dennoch ein externer Pull-Up angeraten (Richtwert 4,7 kΩ).&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_oc_3-5.png]]&lt;br /&gt;
&lt;br /&gt;
* 3,3 V auf echte 5 V (CMOS) geht am einfachsten mit einem Baustein der HCT-Familie (NICHT HC!). Diese haben TTL-kompatible Eingänge und echte CMOS-Ausgänge&lt;br /&gt;
&lt;br /&gt;
* Man kann einen Komparator &amp;lt;small&amp;gt;in nichtinvertierender Schaltung&amp;lt;/small&amp;gt; benutzen (LM339/393). Allerdings ist diese Lösung relativ langsam, abhängig vom verwendeten Komparator. Komparatoren bieten eine freie Wahl des Eingangsspannungsbereichs und sind deshalb eine gute Wahl bei &#039;&#039;variabler&#039;&#039; Speisespannung der Treiberseite.&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_comp_3-5.png]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bauteile&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 74HCTxxx (245, 244, 240 ...) (HCs können funktionieren, ist aber eigtl. ungeeignet, da bei 5V Versorgung und höheren Temperaturen V(input,high)=3,2V)&lt;br /&gt;
* 74HCT125: OE Pins auf Masse und dann das Signal einfach anschließen. &lt;br /&gt;
* SN74LVC07AD &lt;br /&gt;
* SN74LV1T04 (auch geeignet zur umgekehrten Konvertierung (5V-&amp;gt;3,3V))&lt;br /&gt;
* 74V1T126 (single Gatter, V(input,high)=2V)&lt;br /&gt;
&lt;br /&gt;
=== 5 V ⇒ 9..15(..30) V ===&lt;br /&gt;
&lt;br /&gt;
* Am einfachsten geht das mit einem (geeigneten!) Open-Collector-Ausgang, einfach einen Pull-Up hinzufügen (an die hohe Spannung) und fertig. Ein 74&#039;&#039;xx&#039;&#039;03 geht hier nicht! Auch kann man nicht einen Push-Pull-Ausgang eines Mikrocontrollers dafür verwenden, indem man den Ausgang bei HIGH zum Eingang macht.&lt;br /&gt;
Hintergrund sind parasitäre Dioden zwischen Ausgang und Speisespannung.&lt;br /&gt;
Alle (geeigneten) Treiberausgänge haben eine maximal erlaubte Kollektorspannung, die zu beachten ist. Mehr Freiheit hat man bei der Verwendung von Einzeltransistoren, wobei eine gewisse Lücke von 30 V bis 200 V von Bipolartransistoren dominiert wird; für kleinere oder größere Spannungen gibt es preiswerte MOSFETs. (Die Lücke entsteht durch den geringen Bedarf des Weltmarktes an diesen Kollektorspannungen.)&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_oc_5-12.png]]&lt;br /&gt;
&lt;br /&gt;
* Man kann einen Komparator benutzen. Allerdings ist diese Lösung relativ langsam, abhängig vom verwendeten Komparator. Wenn nur zwei Signale gewandelt werden müssen bietet sich der LM393 an, ein Doppelkomparator mit Open-Collector-Ausgang, mit dem man auf einen beliebigen Pegel ausgeben kann. Der LM339 (man beachte den unauffälligen Zahlendreher) ist ein Vierfachkomparator mit den gleichen Eigenschaften. Wenn wenig Platz vorhanden ist, dann ist der TL311 im winzigen SOT-23 Gehäuse sehr empfehlenswert. Bei jedem Komparator kann auch einfach eine Invertierung gemacht werden, einfach die Eingänge + und - vertauschen. Diese Komparatoren eignen sich bis ca. 1 MHz.&lt;br /&gt;
&lt;br /&gt;
* [http://www.elektronik-kompendium.de/sites/praxis/bausatz_pegelwandler-mit-transistoren.htm Pegelwandler mit Transistor, invertierend]&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_trans_inv.png]]&lt;br /&gt;
&lt;br /&gt;
* Pegelwandler mit Transistor, nicht invertierend&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_trans_ni.png]]&lt;br /&gt;
&lt;br /&gt;
Die Idee ist einfach. Wenn der Ausgang des 5-V-Gatters auf HIGH ist dann ist der Transistor ausgeschaltet, der Pull-Up-Widerstand R7 zieht den Ausgang auf + 12 V. Ist der Ausgang des 5-V-Gatters auf LOW ist, dann ist er vollkommen durchgesteuert und der Ausgang nahe 0 V (je nach Typ ca. 300 mV). Der Vorteil ist hier erhöhte Störsicherheit im Gegensatz zur einfachen Ansteuerung der Basis über einen Vorwiderstand. Außerdem wird dadurch nicht die Logik invertiert. Nachteilig ist der geringe Strom, der bei HIGH zur Verfügung steht (typisch 100 µA). Diese Schaltung ist die seltene Anwendung einer Basisschaltung für digitale Signale. Der Vorteil der Basisschaltung ist die höhere Grenzfrequenz durch die herabgesetzte Wirksamkeit der (störenden) Miller-Kapazität.&lt;br /&gt;
&lt;br /&gt;
* Wenn mehr Geschwindigkeit, Ausgangsstrom und weniger Stromverbrauch nötig ist, dann muss ein spezieller Baustein her, wie z.&amp;amp;nbsp;B.&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;&lt;br /&gt;
** [[Mosfet-Übersicht#Mosfet-Treiber|MOSFET-Treiber]] z.B. ICL7667&lt;br /&gt;
** [[H-Brücken Übersicht | Motortreiber]] ICs: (z.&amp;amp;nbsp;B. L293, L298, UCC27325 und deren Verwandte), wenns nicht zu schnell ist (einige Dutzend kHz)&lt;br /&gt;
** CD40109, bei Reichelt verfügbar&lt;br /&gt;
** HEF4104, 4fach LOW-HIGH-Pegelwandler mit normalen und invertierten Augängen sowie Tristate. Um ggf. sicherzustellen, dass wie im Datenblatt beschrieben immer U&amp;lt;sub&amp;gt;DDI&amp;lt;/sub&amp;gt; &amp;lt;= U&amp;lt;sub&amp;gt;DDO&amp;lt;/sub&amp;gt; ist, kann man einfach eine Diode von U&amp;lt;sub&amp;gt;DDO&amp;lt;/sub&amp;gt; nach U&amp;lt;sub&amp;gt;DDI&amp;lt;/sub&amp;gt; schalten (z.&amp;amp;nbsp;B. Schottky SB120, aber auch 1N4148 &amp;amp; Co. sollte problemlos funktionieren)&lt;br /&gt;
** CMOS 4504, 6fach LOW-HIGH/HIGH-LOW 3-20V Pegelwandler, TTL/CMOS (umschaltbar) =&amp;gt; CMOS, kein Reihenfolge von U&amp;lt;sub&amp;gt;CC&amp;lt;/sub&amp;gt;/U&amp;lt;sub&amp;gt;EE&amp;lt;/sub&amp;gt; erforderlich (Bezugsquelle: CSD)&lt;br /&gt;
** MAX232, der braucht nur 5 V Versorgungsspannung. Allerdings ist der Ausgangswiderstand relativ hoch (ca. 300 Ω) und man kann nur ca. 5 mA Ausgangstrom liefern. Die Ausgangsspannung beträgt maximal 10 V.&lt;br /&gt;
&lt;br /&gt;
=== 5 V ⇒ 3,3 V ===&lt;br /&gt;
&lt;br /&gt;
Ob 3,3 V (klassisch) oder 3 V (modern) ist bei dieser Betrachtung nahezu egal.&lt;br /&gt;
&lt;br /&gt;
* Zuerst sollte man prüfen, ob die Eingänge 5-V-tolerant sind. Dann kann man die ICs direkt verbinden. Sehr schnell und billig!&lt;br /&gt;
&lt;br /&gt;
* Wenn die Eingänge nicht 5-V-tolerant sind und es trotzdem schnell sein soll, muss ein Gatter aus der LVC- oder AHC-Familie dazwischen geschaltet werden, also eines mit 5-V-Toleranz. Bei 3 V Betriebsspannung kann man problemlos 5 V an den Eingang anlegen. Der Baustein 74HC4050 erlaubt per Definition eine Pegelwandlung bis etwa 15 V (siehe Datenblatt). Beide Anordungen verbrauchen auch sehr wenig Ruhestrom.&lt;br /&gt;
&lt;br /&gt;
: &#039;&#039;&#039;Bauteile&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
:* 74LVC245A (&#039;A&#039; ist wichtig, I/Os 5V-tolerant)&lt;br /&gt;
:* 74LVC245DW &lt;br /&gt;
:* 74LVT245 &lt;br /&gt;
:* 74LVXxxx (245, 244, 240 ...) an Vcc=3,3V. Achtung: Nicht alle 74LVX sind für 5V -&amp;gt; 3,3V geeignet, da jeder Hersteller die ICs anders baut!&lt;br /&gt;
:** 74LVX04 &lt;br /&gt;
:** 74LVX244 (Fairchild)&lt;br /&gt;
:** 74LVX245 (nicht von Reichelt, nicht 5V tolerant)&lt;br /&gt;
:** bei TI heissen die 74LVX... nur 74LV...&lt;br /&gt;
&lt;br /&gt;
:* 74HC4050 (bis 15 V Step-Down-Pegelwandlung laut Datenblatt, bei Reichelt in DIP und SO erhältlich)&lt;br /&gt;
:* MAX3373/MAX3375&lt;br /&gt;
:* NC7SZ08 oder andere aus derselben Serie. CMOS-Logik mit 5-V-toleranten Eingängen, recht flott und braucht dank SOT-23 auch wenig Platz auf der Platine&lt;br /&gt;
&lt;br /&gt;
* 5 V Open Collector auf 3,3-V-Eingang. Einfach einen Pull-Up hinzufügen (Pull-Up liegt auf 3,3 V). Nachteilig ist der relativ hohe Stromverbrauch bei LOW, die begrenzte Geschwindigkeit bei hochohmigen Pull-Ups und der relativ geringe Ausgangsstrom bei HIGH (abhängig vom Pull-Up).&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_oc_5-3.png]]&lt;br /&gt;
&lt;br /&gt;
* Spannungsteiler mit 680 Ω und 1 kΩ. Der Nachteil dieser Lösung ist der relativ hohe Stromverbrauch (~3mA), der relativ geringe Ausgangsstrom (mehr als 200..300 µA sollte man da nicht rausziehen) und die relativ geringe Geschwindigkeit (ca. 10 MHz).&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_st_5-3.png]]&lt;br /&gt;
&lt;br /&gt;
* 1 kΩ Vorwiderstand. Dadurch wird der Strom vom 5-V-Ausgang in die 3,3-V-Versorgung durch die internen Schutzdioden auf ca. 1 mA begrenzt. Diese Lösung ist auch relativ langsam (ca. 5MHz). Ggf. kann man den Vorwiderstand auf 100 Ω reduzieren, das erhöht dann wieder die Geschwindigkeit. Aufpassen, einige ICs vertragen nur 1 mA oder weniger durch die Schutzdioden! Ausserdem muss man aufpassen, das jetzt von der 5-V-Seite Strom in die 3,3-V-Versorgung eingespeist wird. Besonders in Schaltungen mit sehr niedrigem Stromverbrauch kann das zum Problem werden, wenn weniger Strom verbraucht wird als über die Vorwiderstände eingespeist wird. Dann nimmt es meist der Spannungsregler für 3,3 V übel wenn jemand „schiebt“, sprich, Strom einspeist. Denn die allermeisten Spannungsregler können nur Strom liefern (source), aber keinen Strom aufnehmen (sink). Es gibt 4-fach-Diodennetzwerke, die die internen Schutzdioden entlasten können (Schottkydioden mit kleinerer Flusspannung von ≈ 0,3 V als die internen Silizizumdioden mit ≈ 0,7 V), außerdem ist teilweise noch eine [[Diode#Z-Diode|Zenerdiode]] enthalten, die ggf. den überschüssig eingespeisten Strom aufnehmen kann.&lt;br /&gt;
&lt;br /&gt;
Alle Lösungen mit Vorwiderständen reduzieren die Flankensteilheit der Signale. Dies kann bei Takt- und Zähleingängen zu unerwünschten Schwingungen und damit Fehlzählungen führen. Derartig benutzte Eingänge sollten Schmitt-Trigger-Verhalten aufweisen.&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_vw_5-3.png]]&lt;br /&gt;
&lt;br /&gt;
Achtung: Mindestens für 74HC(T) Gatter ist dokumentiert (Philips 74HC/T High-Speed CMOS User Guide), dass auch schon geringer Strom durch die internen Schutzdioden zu einer unerwünschten Kopplung von Eingängen führen kann, d.h. der Strom fliesst zu einem anderen Eingang wieder hinaus. Sind also andere Eingänge ebenso hochohmig angeschlossen, kann dieser Querstrom zu Fehlfunktion führen.&lt;br /&gt;
&lt;br /&gt;
== BIDIREKTIONAL ==&lt;br /&gt;
&lt;br /&gt;
Für bidirektionale Busse gibt es spezielle Pegelwandler mit 2 Versorgungsspannungen. Allerdings brauchen die meist ein Signal zur Richtungsumschaltung. Auch muss man die Reihenfolge der Versorgungsspannungen beim Einschalten beachten. Aktive bidirektionale Pegelwandler OHNE Steuereingang zur Richtungsumschaltung sind mit Vorsicht zu genießen, denn die brauchen teilweise kurzzeitig einen relativ hohen Strom, um die Eingänge zu treiben.&lt;br /&gt;
&lt;br /&gt;
=== 5 V ⇔ 3,3 V ===&lt;br /&gt;
&lt;br /&gt;
* Wenn die 5-V-Seite TTL-kompatible Eingänge hat kann wieder der Spannungsteiler oder Vorwiderstand wie bei der unidirektionalen Anpassung verwendet werden (mit all seinen Vor- und Nachteilen).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bauteile&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* SN74CB3T3306&lt;br /&gt;
* SN74CBTD3861 (10 Bit,flow through, Betrieb mit 5 Volt)&lt;br /&gt;
* MAX1741 &lt;br /&gt;
* MAX3378E &lt;br /&gt;
* 74AHC126 s.u.&lt;br /&gt;
* ST2378 (bei CSD erhältlich, 3.5 eur, leider TSSOP)&lt;br /&gt;
* TXS0104E (TI: 4-BIT BIDIRECTIONAL VOLTAGE-LEVEL TRANSLATOR FOR OPEN-DRAIN AND PUSH-PULL APPLICATIONS)&lt;br /&gt;
* SN74LVC07A&lt;br /&gt;
* von Analog Devices die ADUM Serie&lt;br /&gt;
&lt;br /&gt;
=== 1,65 V ... 5,5 V ⇔ 1,65 V ... 5,5 V ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bauteile&#039;&#039;&#039;&lt;br /&gt;
* SN74LVC1T45&lt;br /&gt;
* SN74LVC2T45&lt;br /&gt;
* SN74LVC(H)8T245&lt;br /&gt;
* SN74LVC(H)16T245&lt;br /&gt;
&lt;br /&gt;
=== 1,2 V ... 3,6 V ⇔ 1,65V ... 5,5V ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bauteile&#039;&#039;&#039;&lt;br /&gt;
* TXB0101&lt;br /&gt;
* TXB0102&lt;br /&gt;
* TXB0104&lt;br /&gt;
* TXB0106&lt;br /&gt;
* TXB0108&lt;br /&gt;
&lt;br /&gt;
=== 1,2 V ... 3,6V ⇔ 1,2 V ... 3,6 V ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bauteile&#039;&#039;&#039;&lt;br /&gt;
* SN74AVC(H)1T45&lt;br /&gt;
* SN74AVC(H)2T45&lt;br /&gt;
* SN74AVC(H)4T245&lt;br /&gt;
* SN74AVC(H)8T245&lt;br /&gt;
* SN74AVC(H)16T245&lt;br /&gt;
* SN74AVC(H)20T245&lt;br /&gt;
* SN74AVC(H)24T245&lt;br /&gt;
* SN74AVC(H)32T245&lt;br /&gt;
&lt;br /&gt;
=== 1,5 V ... 3,6 V ⇔ 1,5 V ... 5,5 V ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bauteile&#039;&#039;&#039;&lt;br /&gt;
* 74LVC4245A&lt;br /&gt;
&lt;br /&gt;
== Mit galvanischer Trennung ==&lt;br /&gt;
&lt;br /&gt;
* [[Optokoppler]] (Langsam! Es gibt verschieden schnelle Koppler, aber über 1 MHz kommen sie kaum hinaus. Grundregel: Solche mit Fototransistoren sind am langsamsten, Richtwert 10 kHz, Fotodioden sind schneller, schnelle Optokoppler haben eine gesondert zu speisende Empfängerschaltung.)&lt;br /&gt;
&lt;br /&gt;
[[bild:pw_opto.png]]&lt;br /&gt;
&lt;br /&gt;
* GMR-Koppler von der Firma NVE &lt;br /&gt;
* iCoupler Technologie von der Firma Analog Devices&lt;br /&gt;
* [[Kapazitiver Koppler]] (schnell, begrenzter Potenzialversatz)&lt;br /&gt;
* Transformatorkopplung (nur für gleichspannungsfreie Wechselsignale geeignet; sehr schnell; Beispiel: Netzkarten)&lt;br /&gt;
&lt;br /&gt;
Lit.: &#039;&#039;Galvanische Trennung: Optokoppler, GMR-Koppler oder iCoupler?&#039;&#039;, Siegfried W. Best, Redaktion elektronik industrie, [http://www.elektronik-industrie.de/ei/11,2003/article/2f0082f824c.html elektronik industrie 11-2003, S. 22ff.]&lt;br /&gt;
&lt;br /&gt;
== Praktische Beispiele ==&lt;br /&gt;
&lt;br /&gt;
=== Einfaches RS232-Interface ===&lt;br /&gt;
&lt;br /&gt;
[http://web.archive.org/web/20050122013618/http://www.henrik-reimers.de/control/rs232interface.gif Erfolgreicher Einsatz bis 19200 Baud und bis zu 10 m Leitungslänge]&lt;br /&gt;
Beschränkungen:&lt;br /&gt;
&lt;br /&gt;
* ggf. Platzbedarf&lt;br /&gt;
* Geschwindigkeit s.o.&lt;br /&gt;
&lt;br /&gt;
Beispiel: http://www.hagtech.com/pdf/translator.pdf&lt;br /&gt;
&lt;br /&gt;
=== [[I2C]]-Bus: gemeinsam 3.3V und 5V ===&lt;br /&gt;
&lt;br /&gt;
* [[MSP430]] an 3,3V/5V: http://www-s.ti.com/sc/psheets/slaa148/slaa148.pdf&lt;br /&gt;
&lt;br /&gt;
* Philips [http://www.nxp.com/documents/data_sheet/PCA9515.pdf PCA9515]: I2C Puffer mit Pegelwandlung. Der PCA9515 ist ein I2C-Bus Repeater, welcher I2C Busse mit verschiedenen Spannungen isoliert. Verfügbar bei Reichelt und DigiKey.&lt;br /&gt;
&lt;br /&gt;
* [http://ics.nxp.com/support/documents/interface/pdf/an97055.pdf Philips AN97055 Bi-directional level shifter for I²C-bus and other systems]&lt;br /&gt;
&lt;br /&gt;
* Bevor man ein Philips I2C Chip auswählt sollte man prüfen ob er verfügbar ist und auch das verfügbare Gehäuse wählen. Man sollte auch überlegen ob ein Puffer wirklich gebraucht wird. Wenn man echte I2C ICs mit 5V betreibt, dann sind die Eingänge vom Typ Schmitt Trigger CMOS (z.&amp;amp;nbsp;B. PCF8574). Dann müssen 3.3V Pegel auf 5V umgesetzt werden. Wenn man jedoch SMBUS Ics verwendet (z.&amp;amp;nbsp;B. ADT7461, Silabs 8051) dann sind die Schwellspannungen TTL kompatibel und es ist keine Anpassung notwendig. Für neue Pegelwandler sollte man hier nachschauen. http://www.bus-buffer.com&lt;br /&gt;
&lt;br /&gt;
* [http://www.edn.com/article/CA193193.html &amp;quot;Two-transistor circuit replaces IC&amp;quot;]. Für diese Anwendung kann ENABLE direkt mit 3.3V verbunden werden. Es ist eigentlich nur dazu da, den ICs &amp;quot;hot-swappable&amp;quot; zu machen (kann unter Spannung gesteckt und getrennt werden). Es geht sogar mit nur einem [[Transistor]] [http://www.mikrocontroller.net/topic/92447 siehe Forum]. Man sollte beachten, daß die Schaltung sowohl für SCL als auch SDA benötigt wird. &lt;br /&gt;
* Noch einfachere Lösungen mit nur einem MOSFET und zwei Pull-Up Widerständen pro Leitung sind in den folgenden Links zu finden. &lt;br /&gt;
** http://www.nxp.com/documents/application_note/AN10441.pdf&lt;br /&gt;
** http://www.semiconductors.philips.com/acrobat_download/literature/9398/39340011.pdf (Kapitel 18), bei der Berechnung der erreichbaren Geschwindigkeit dürfen die parasitären Kapazitäten der FETs nicht ignoriert werden&lt;br /&gt;
&lt;br /&gt;
=== Auswählbare Pegel ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Frage:&#039;&#039;&#039;&lt;br /&gt;
Ein CMOS Logikpegel zwischen 1,8V, 2,5V und 3,3V (abhängig von der Anwendung) muss auf 5V CMOS Logikpegel gewandelt werden. Es geht nur um diese Richtung mit maximal 8MHz. Es gibt die Stromversorgung für alle Pegel. Ein normaler Komparator wie LM311 ist nicht möglich, da er beim Betrieb mit 5V Versorgunsspannung erst ab 1V zu schalten anfängt. Meine Idee ist die Verwendung eines High Speed OPVs mit R2R Eingang, z.&amp;amp;nbsp;B. LMH6645.&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;Antworten:&#039;&#039;&#039;&lt;br /&gt;
* Man könnte einen ultra-low threshold N-Kanal MOSFET nehmen und als Open Drain mit einem Pull-Up nach 5V betreiben, BSH103 könnte passen (Schwellspannung ~0,4V).&lt;br /&gt;
* High-Speed Single Supply Komparator wie z.&amp;amp;nbsp;B. [http://www-s.ti.com/sc/ds/tl712.pdf TL712] .&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Frage:&#039;&#039;&#039;&lt;br /&gt;
Ich suchen einen IC, welcher eine Pegelwandlung von 3,3V nach 1,8V, 2,0V oder 5V ermöglicht und während des Betriebs umgeschaltet werden kann.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Antworten:&#039;&#039;&#039;&lt;br /&gt;
* So ein IC ist der Linear [http://www.linear.com/pc/productDetail.jsp?navId=H0,C1,C1007,C1071,P1601 LTC1555L-1.8] . &lt;br /&gt;
&lt;br /&gt;
=== AVR SPI (SDC/MMC)===&lt;br /&gt;
&lt;br /&gt;
Für &#039;&#039;&#039;bidirektionalen Betrieb&#039;&#039;&#039; zwischen 5V-AVR und 3,3V-Geräten und anders herum gibt es den Level-Translator &#039;&#039;&#039;MAX3378E&#039;&#039;&#039; von Maxim.&lt;br /&gt;
&lt;br /&gt;
Wenn die Datenrichtung am SPI im Zielsystem festgelegt ist, reichen &#039;&#039;&#039;unidirektionale Bausteine&#039;&#039;&#039;:&lt;br /&gt;
* 3x von 5V nach 3,3V und 1x von 3,3V nach 5V: &#039;&#039;&#039;MAX3392E&#039;&#039;&#039;&lt;br /&gt;
* 1x von 5V nach 3,3V und 3x von 3,3V nach 5V: &#039;&#039;&#039;MAX3390E&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Zum Anschließen einer SDC/MMC an einen 5V-AVR eignen sich somit der MAX3978E und der MAX3392E. Beide sind u.A. im winzigen TSSOP-14-Gehäuse verfügbar, nehmen sehr wenig Energie auf und eignen sich auch für andere Spannungen. Mit 3,3 und 5V beträgt die garantierte Übertragungsrate 8Mbps.&lt;br /&gt;
&lt;br /&gt;
* [http://datasheets.maxim-ic.com/en/ds/MAX3372E-MAX3393E.pdf Datenblatt]&lt;br /&gt;
&lt;br /&gt;
Eine weitere Möglichkeit zum Übersetzen zwischen 3,3 und 5V liegt in der Verwendung des &#039;&#039;&#039;74LVC245&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
5V-AVR an eine MMC (ohne Level-Shifter-Baustein):&lt;br /&gt;
* [http://www.microsyl.com/index.php/2010/03/24/led-sign-with-mmc-memory-card/ Projektseite] &lt;br /&gt;
* [http://www.microsyl.com/projects/ledsign/ledsign1.pdf Schaltplan]&lt;br /&gt;
&lt;br /&gt;
=== Mikrocontroller ⇔ Parallelport ([[ISP]]-Dongle, [[JTAG]] Wiggler, ...) ===&lt;br /&gt;
&lt;br /&gt;
Dieser Schaltplan funktioniert auch bei 3,3 V wenn man einen 74&amp;lt;B&amp;gt;HC&amp;lt;/B&amp;gt;244 anstatt eines 74&amp;lt;B&amp;gt;LS&amp;lt;/B&amp;gt;244 verwendet: [http://www.epanorama.net/circuits/parallel_output.html Parallel port interfacing made easy: Simple circuits and programs to show how to use PC parallel port output capabilities].&lt;br /&gt;
&lt;br /&gt;
=== Doppeltes Leitungspaar RX/TX 5V/3,3V ===&lt;br /&gt;
&lt;br /&gt;
Der [http://www.hackaday.com/2008/06/19/sparkfuns-logic-level-converter/ SparkFun&#039;s Logic Level Converter] ist eine Baugruppe mit MOSFETs [http://www.fairchildsemi.com/pf/BS/BSS138.html BSS138] für die Pegelwandlung von 5V auf 3,3V. 5V/2,8V und 5V/1,8V sind ebenfalls machbar.&lt;br /&gt;
&lt;br /&gt;
=== Steuerleitung zwischen Mikrocontroller und FPGA ===&lt;br /&gt;
&lt;br /&gt;
Oftmals werden PLDs oder FPGAs per Microcontroller-Platine angesteuert. Ältere Typen laufen meist als 5V oder sitzen in 5V-kompatiblen Platinen. Sollen moderne FPGAs angesteuert werden, trifft man fast immer auf 3,3-V-Typen, bzw. muss sogar 2,5-V- / 1,8-V-Bänke beschalten, wenn nur noch dort Pins frei sind.&lt;br /&gt;
&lt;br /&gt;
==== Mikrocontroller ⇒ FPGA ====&lt;br /&gt;
&lt;br /&gt;
Die 5 V sind also im Extremfall auf 1,8 V herabzusetzen, was bei einem maximal zulässigen Diodenstrom von 3 mA (Beispiel Xilinx) einen Mindestwiderstand von ca. 1 kΩ erfordert. Die resultierende maximale Schaltfrequenz liegt dann bei einem typischen FPGA-Eingang bei etwa &amp;lt; 500 kHz. Soll der Eingang aus Belastungsgründen nicht mit mehr als 0,3 mA belastet werden, müsste der Widerstand auf 10 kΩ steigen, wodurch die Frequenz auf 1/10 sinkt. Zudem ist der Eingang dann störempfindlicher. Daher ist es besser, man schaltet dem Eingang eine zusätzliche Z-Diode bei und dimensioniert den Vorwiderstand so, dass die Strombelastbarkeit des Mikrocontrollers ausgelastet wird.&lt;br /&gt;
&lt;br /&gt;
Eine weitere Möglichkeit ist es, die Spannung mit einer Diode in Vorwärtsrichtung herabzusetzen. Dann muss jedoch der Vorwiderstand noch exakter toleriert werden und auch Abweichungen der Spannung (Welligkeit) berücksichtigt werden.&lt;br /&gt;
&lt;br /&gt;
==== FPGA ⇒ Mikrocontroller ====&lt;br /&gt;
&lt;br /&gt;
Umgekehrt ist es oft nötig, dass Bausteine einen fremden Chip treiben müssen, dessen Eingang bereits mit einem Pull-Up versehen ist. Über diesen wird dann stets ein Strom in die Schutzdiode eingeprägt, auch wenn der Ausgang auf HIGH geht. Soll z. B. von einem PLD oder einem FPGA aus eine Mikrocontrollerplatine bedient werden, die über einen Pull-Up von 1 kΩ verfügt, würden immer ca. 1 mA in die Schutzdiode eingeprägt. Hier kann eine Seriendiode helfen, die Spannung genügend herabzusetzen, um den Ausgang zu schützen und dennoch die Funktion zu erhalten. Dann steuert ein LOW-Ausgang den Eingang auf geschätzte 1V, was aber meistens für das Erkennen von LOW noch sicher reicht.&lt;br /&gt;
&lt;br /&gt;
== Bauteile ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;74ALVC164245&#039;&#039;&#039; - &#039;&#039;16bit dual supply translating transceiver&#039;&#039;. Eine Seite von 1.5V bis 3.6V, die andere von 1.5 bis 5.5V.&lt;br /&gt;
* &#039;&#039;&#039;74LVX573&#039;&#039;&#039; (unidirektional, Latch, nicht alle Hersteller bauen diesen 5V tolerant!)&lt;br /&gt;
* &#039;&#039;&#039;74LVX245&#039;&#039;&#039; (bidirektional, nicht alle Hersteller bauen diesen 5V tolerant!)&lt;br /&gt;
* &#039;&#039;&#039;74LVX125&#039;&#039;&#039; - &#039;&#039;Low Voltage Quad Buffer with 3-STATE Outputs&#039;&#039;. http://www.fairchildsemi.com/pf/74/74LVX125.html&lt;br /&gt;
* &#039;&#039;&#039;SN74LVC2T45&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;SN74LVC8T245&#039;&#039;&#039; - &#039;&#039;8-Bit Dual-Supply Bus Transceiver with Configurable Voltage Translation and Three-State Outputs&#039;&#039;. http://focus.ti.com/docs/prod/folders/print/sn74lvc8t245.html&lt;br /&gt;
* &#039;&#039;&#039;74LCX244MSA&#039;&#039;&#039; von Fairchild.&lt;br /&gt;
* &#039;&#039;&#039;MAX3377&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;MAX3000&#039;&#039;&#039; 8-Kanal bidirektioneler Pegelwandler ohne Richtungsumschaltung&lt;br /&gt;
* &#039;&#039;&#039;ADG3308&#039;&#039;&#039; 8-Kanal bi-dir. Pegelwandler ohne Richtungsumschaltung, 1,15V..5,5V, 50MBps (hohe Umschaltströme beachten)&lt;br /&gt;
&lt;br /&gt;
Vierfachdioden im kleinen 6-poligen SMD-Gehäuse:&lt;br /&gt;
* http://www.st.com/stonline/products/literature/ds/12635/dsilc6-4xx.pdf&lt;br /&gt;
* http://www.st.com/stonline/products/literature/ds/11599.pdf&lt;br /&gt;
* http://www.st.com/stonline/products/literature/ds/6477/dalc208.pdf&lt;br /&gt;
* [http://www.diodes.com/datasheets/ds30195.pdf QSBT40, vierfach Schottky Terminator für Datenleitungen]&lt;br /&gt;
* [http://www.littlefuse.com/data/en/Data_Sheets/SP724Lead_Free.pdf SP724, Siliziumschutzarray]&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [http://www.mikrocontroller.net/topic/307702#3316500 Forumsbeitrag]: Entkopplung von FT232 und AVR&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
&lt;br /&gt;
* Holmes D., [http://delphys.net/d.holmes/hardware/levelshift.html Bi-directional level-shift with MOSFETs]&lt;br /&gt;
* Gaurang Kavaiya, [http://www.edn.com/design/analog/4318916/Don-t-pay-for-level-translators-in-systems-using-multiple-power-supply-voltages Don’t pay for level translators in systems using multiple power-supply voltages], EDN, MAY 25, 2006, 81-86&lt;br /&gt;
* [http://www.elektronik-kompendium.de/public/schaerer/scf3_lc.htm Einfacher Pegelwandler im ELKO]&lt;br /&gt;
* [http://www.prog-link.com/dcf77/dcf77-17.html Pegelwandler für DFC77 Module]&lt;br /&gt;
* [http://elektronik.kai-uwe-schmidt.de/index.php?page=mp3_blueschaltung Pegelwandler für [[I2C]] Bus in einem MP3 Player]&lt;br /&gt;
* [http://www.mikrocontroller.net/attachment.php/256452/levelshifter.pdf Application Note von Philips, I2C Pegelwandler]&lt;br /&gt;
* [http://www.semiconductors.philips.com/acrobat_download/literature/9398/39340011.pdf I2C Spezifikation]  &lt;br /&gt;
* [http://www.mikrocontroller.net/forum/read-1-234277.html#new Forumsbeitrag zum Thema 1,8V-5V Pegelwandler] &lt;br /&gt;
* [http://www.st.com/stonline/products/literature/ds/5186/74lcx16245.pdf 74LCX16245, 16 Bit Pegelwandler]&lt;br /&gt;
* [http://www.standardics.nxp.com/products/lvc/buffers/ LVC Logikfamilie]&lt;br /&gt;
* [http://www.standardics.nxp.com/products/lvc/transceivers/ LVC Tranceiver]&lt;br /&gt;
* [http://www.microchip.com/stellent/groups/techpub_sg/documents/devicedoc/en026368.pdf 3V Tips ‘n Tricks] (PDF) von Microchip&lt;br /&gt;
* [http://www.ti.com/lit/an/slaa148/slaa148.pdf Interfacing the 3-V MSP430 to 5-V Circuits] (PDF) von Texas Instruments&lt;br /&gt;
&lt;br /&gt;
[[Category:Bauteile]]&lt;br /&gt;
[[Kategorie:Datenübertragung]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=STM32F4-Discovery&amp;diff=84818</id>
		<title>STM32F4-Discovery</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=STM32F4-Discovery&amp;diff=84818"/>
		<updated>2014-09-10T13:00:09Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Kategorie:ARM-Boards&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieser Wiki-Artikel soll den Einstieg in die Prozessorfamilie STM32 von [http://www.st.com STMicroelectronics] erleichtern. Der Artikel begleitet dich von der Installation der benötigten Software bis hin zum flashen des Beispiels in den Prozessor.&amp;lt;br/&amp;gt;&lt;br /&gt;
Da es für Windows schon einiges im Internet zu finden gibt, wird die Installation der Toolchain für Linux beschrieben. Die verwendeten Tools sind allerdings als Quelltext oder als Windows-Installation verfügbar, somit lassen sich die meisten Schritte auch auf Windows-Betriebssystemen nachvollziehen.&lt;br /&gt;
== Hardware ==&lt;br /&gt;
Das in diesem Artikel verwendete Board [http://www.st.com/internet/evalboard/product/252419.jsp STM32F4-Discovery] lässt sich z.B. bei [http://www.watterott.com/de/STM32F4Discovery Watterott] oder in der Schweiz bei  [http://thinkembedded.ch/ARM/STM32F4-DISCOVERY-Single-Board::153.html Thinkembedded] bestellen.&lt;br /&gt;
Es lassen sich auch andere Boards verwenden, allerdings müssen die Beispiele dem Schaltplan entsprechend angepasst werden.&lt;br /&gt;
&lt;br /&gt;
=Software=&lt;br /&gt;
== Installation Linux ==&lt;br /&gt;
Um das Dateisystem möglicht sauber zu halten installiere ich hier sämtliche Software in das Unterverzeichnis /opt welches für solche Installationen vorgesehen ist. Damit auf dieses Verzeichnis schreibend zugegriffen werden darf sind root-Rechte erforderlich. Ich werde vor den Befehlen immer den Prompt schreiben damit zu erkennen ist welche Rechte notwendig sind.&lt;br /&gt;
&lt;br /&gt;
Es ist natürlich auch möglich alles in sein Heimat-Verzeichnis zu schreiben, hier kommt man dann grössten Teils ohne root-Rechte aus. Das muss aber jeder für sich selbst entscheiden wie er es mag.&lt;br /&gt;
&lt;br /&gt;
Nicht alle Linux-Distributionen sind gleich, ich arbeite hier mit einem (fast) frischem Lubuntu 11.10. Der grösste Teil sollte also mit Ubuntu und Debian-Systemen funktionieren. Für andere Distributionen kann man den entsprechenden Abschnitt editieren oder auf der [[Diskussion:STM32F4-Discovery]] zu diesem Artikel vermerken.&lt;br /&gt;
&lt;br /&gt;
==== Auswahl der Toolchain ====&lt;br /&gt;
&lt;br /&gt;
Die unten beschriebene &amp;quot;lite-edition&amp;quot; der Sourcery CodeBench Toolchain funktioniert zwar prinzipiell, bietet aber keine optimale Unterstützung der FPU des Cortex-M4F, weil die C-Bibliothek nicht entsprechend gebaut wurde. Damit wird recht ordentlich Geschwindigkeit und Speicher verschenkt. Weitere Informationen im Abschnitt &amp;quot;Compiler&amp;quot; im Artikel [[ARM]].&lt;br /&gt;
&lt;br /&gt;
==== Sourcery CodeBench Lite Edition for ARM EABI ====&lt;br /&gt;
[[Datei:Sup_processors.jpg|thumb|left]]&lt;br /&gt;
Als erstes benötigen wir die Toolchain mit Compiler &amp;amp; Linker. Hier verwenden wir die [http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/ Sourcery Codebench von Mentor]. In der Auswahlbox &amp;quot;Supported Prozessors&amp;quot; wählt man in der Rubrik &amp;quot;ARM processors&amp;quot; den Punkt &amp;quot;Download the EABI Release &amp;gt;&amp;quot; aus.&lt;br /&gt;
&lt;br /&gt;
Leider muss man sich registrieren. Nach der Registrierung erhält man einen Link per E-Mail zur Downloadseite. Man wählt das &amp;quot;Recommended Release&amp;quot; aus und lädt dort die Datei &amp;quot;IA32 GNU/Linux TAR&amp;quot; herunter.&lt;br /&gt;
&lt;br /&gt;
* [https://sourcery.mentor.com/sgpp/lite/arm/portal/package9740/public/arm-none-eabi/arm-2011.09-69-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 Direktlink Linux] &lt;br /&gt;
* [https://sourcery.mentor.com/sgpp/lite/arm/portal/package9741/public/arm-none-eabi/arm-2011.09-69-arm-none-eabi-i686-mingw32.tar.bz2 Direktlink Windows (Mingw)]&lt;br /&gt;
* [https://sourcery.mentor.com/GNUToolchain/package10388/public/arm-none-eabi/arm-2012.03-56-arm-none-eabi.exe Direktlink Windows (Exe)]&lt;br /&gt;
&lt;br /&gt;
Die Datei muss einfach nur an einem beliebigem Ort entpackt werden und die Umgebungsvariable PATH erweitert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@linux:/home/user/Downloads# mkdir /opt/CodeSourcery&lt;br /&gt;
root@linux:/home/user/Downloads# cd /opt/CodeSourcery&lt;br /&gt;
root@linux:/opt/CodeSourcery# tar xvf /home/user/Downloads/arm-2011.09-69-arm-none-eabi-i686-pc-linux-gnu.tar.bz2&lt;br /&gt;
root@linux:/opt/CodeSourcery# ls&lt;br /&gt;
arm-2011.09&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anpassen der Umgebungsvariable PATH. Die Anpassung ermöglicht es Eclipse den Compiler im Dateisystem zu finden ohne den absoluten Pfad anzugeben.&amp;lt;br /&amp;gt;&lt;br /&gt;
Es gibt verschiedene Orte wo sich die Variable anpassen lässt. Auf meinem System habe ich die Datei /etc/environment angepasst.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@linux:/opt/CodeSourcery# echo PATH=\&amp;quot;$PATH:/opt/CodeSourcery/arm-2011.09/bin\&amp;quot; &amp;gt;&amp;gt; /etc/environment&lt;br /&gt;
root@linux:/opt/CodeSourcery# source /etc/environment&lt;br /&gt;
root@linux:/opt/CodeSourcery# arm-none-eabi-gcc --version&lt;br /&gt;
arm-none-eabi-gcc (Sourcery CodeBench Lite 2011.09-69) 4.6.1&lt;br /&gt;
Copyright (C) 2011 Free Software Foundation, Inc.&lt;br /&gt;
This is free software; see the source for copying conditions.  There is NO&lt;br /&gt;
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wer gerne mit der Konsole &amp;amp; vi/emacs arbeitet kann sofort zum Abschnitt stlink springen, für die Klickibunti-Fraktion folgt jetzt die Installation der IDE.&lt;br /&gt;
&lt;br /&gt;
==== Eclipse IDE ====&lt;br /&gt;
Nach der Installation der Toolchain folgt jetzt die IDE hier habe ich mich für Eclipse entschieden. Zunächst sucht man sich auf [http://www.eclipse.org/downloads/ eclipse.org] aus einen der vielen Pakete das für sich passende raus. Das sinnvollste an dieser Stelle ist &amp;quot;Eclipse IDE for C/C++ Developers&amp;quot;. Wer aber vor hat die IDE nicht nur für C/C++ zu verwenden ist mit &amp;quot;Eclipse Classic&amp;quot; vielleicht besser bedient.&lt;br /&gt;
&lt;br /&gt;
Ich werde hier Eclipse Classic 3.7.1 verwenden und zeigen wie das CDT (C/C++ Development Tooling) installiert wird.&lt;br /&gt;
Um Eclipse zu &amp;quot;installieren&amp;quot; muss das Archiv nur an einem Ort seiner Wahl entpackt werden.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@linux:/home/user/Downloads# cd /opt&lt;br /&gt;
root@linux:/opt# tar xvf /home/user/Downloads/eclipse-SDK-3.7.1-linux-gtk.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Die IDE lässt sich nun wie folgt starten:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
user@linux:~$ /opt/eclipse/eclipse&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Wie ein Starter angelegt wird liest du am besten im Handbuch/Wiki zu deiner Distribution nach.&lt;br /&gt;
&lt;br /&gt;
Als nächstes folgt die Installation der benötigten Plugins. Der Abschnitt &amp;quot;CDT  (C/C++ Development Tooling)&amp;quot; kann übersprungen werden, wenn man das Eclipse-Paket &amp;quot;Eclipse IDE for C/C++ Developers&amp;quot; installiert hat.&lt;br /&gt;
===== CDT  (C/C++ Development Tooling) =====&lt;br /&gt;
Zum installieren des CDT wird zuerst die IDE gestartet. Im Hauptfenster wählt man dann den Menüpunkt &#039;&#039;&#039;Help &amp;gt; Install New Software...&#039;&#039;&#039; es erscheint ein neuer Dialog. Das Eingabefeld &#039;&#039;&#039;Work with:&#039;&#039;&#039; wird mit &#039;&#039;&#039;http://download.eclipse.org/tools/cdt/releases/indigo&#039;&#039;&#039; ausgefüllt und mit der &#039;&#039;&#039;Return-Taste&#039;&#039;&#039; abgeschickt.&lt;br /&gt;
&lt;br /&gt;
Im unteren Teil des Dialogs werden nun die verfügbaren Plugins aufgelistet, benötigt wird das Plugins &#039;&#039;&#039;C/C++ Development Tools&#039;&#039;&#039; aus der Rubrik &#039;&#039;&#039;CDT Main Features&#039;&#039;&#039; und &#039;&#039;&#039;C/C++ GDB Hardware Debugging&#039;&#039;&#039; aus der Rubrik &#039;&#039;&#039;CDT Optional Features&#039;&#039;&#039;. Einfach ein Haken vor den Plugins machen und auf &#039;&#039;&#039;Next&#039;&#039;&#039; klicken. Es erscheint eine Zusammenfassung und eine Seite weiter die Lizenz, die man sich durchlesen sollte und dann bestenfalls bestätigt. Mit einem klick auf &#039;&#039;&#039;Finish&#039;&#039;&#039; wird das Plugin heruntergeladen und installiert.&lt;br /&gt;
&lt;br /&gt;
Nach der Installation des Plugins sollte Eclipse neu gestartet werden. Auf der Willkommen-Seite ist nun ein Punkt C/C++ Development zusehen bzw. lässt sich im Menü per &#039;&#039;&#039;File &amp;gt; New &amp;gt; Project...&#039;&#039;&#039; ein C oder C++ Projekt anlegen.&lt;br /&gt;
&lt;br /&gt;
===== GNU ARM Eclipse Plug-in =====&lt;br /&gt;
Mit der jetzigen Installation ist es bereits möglich einfache C/C++ Projekte zu erstellen und Makefiles zu importieren. Jetzt fehlt noch das Bindeglied zwischen der Toolchain und Eclipse. Dazu gibt es das [http://sourceforge.net/projects/gnuarmeclipse/ GNU ARM Eclipse Plug-in]. Mit dem Plugin kann man nun die Konfiguration des Compilers und Linkers in Eclipse erledigen was sonst in einem Makefile geschieht.&lt;br /&gt;
&lt;br /&gt;
Die Installation des Plugins funktioniert genauso wie die Installation des CDT, nur mit anderer Quelle. Hier die Kurzfassung:&lt;br /&gt;
# &#039;&#039;&#039;Help &amp;gt; Install New Software...&#039;&#039;&#039;&lt;br /&gt;
# &#039;&#039;&#039;Work with:&#039;&#039;&#039; mit http://gnuarmeclipse.sourceforge.net/updates ausfüllen und mit &#039;&#039;&#039;Return-Taste&#039;&#039;&#039; bestätigen.&lt;br /&gt;
# Einen Haken vor CDT GNU Cross Development Tools machen und &#039;&#039;&#039;Next&#039;&#039;&#039; drücken.&lt;br /&gt;
# Es erscheint eine Zusammenfassung mit &#039;&#039;&#039;Next&#039;&#039;&#039; zu nächsten Seite.&lt;br /&gt;
# Lizenzvereinbarung lesen und akzeptieren Installation mit klick auf &#039;&#039;&#039;Finish&#039;&#039;&#039; starten.&lt;br /&gt;
# Es erscheint noch eine Warnung, dass die Dateien nicht signiert sind. Diesen bitte mit &#039;&#039;&#039;OK&#039;&#039;&#039; bestätigen.&lt;br /&gt;
#  Eclipse neu starten.&lt;br /&gt;
&lt;br /&gt;
Beim erstellen eines neuen C oder C++ Projekts kann nun die Toolchain ARM Linux GCC (Sourcery G++ Lite) gewählt werden.&lt;br /&gt;
Bevor mit den Beispielen begonnen werden kann muss noch die Frage geklärt werden wie die Daten auf den Chip kommen.&lt;br /&gt;
==== stlink ====&lt;br /&gt;
Das Entwicklungsboard STM32F4-Discovery von ST kann über USB per STLinkV2 programmiert werden. Für Linux gibt es da den [https://github.com/texane/stlink &amp;quot;stm32 discovery line linux programmer&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
Die Tools liegen als Quelltext vor und müssen zuerst kompiliert werden. Dann mal los! Solltest du mit deinem Linux noch nie ein Programm kompiliert haben siehe am besten erst in dem Handbuch/Wiki zu deiner Distribution nach was du benötigst (Ubuntu benötigt z.B. die Pakete build-essential und git).&lt;br /&gt;
&lt;br /&gt;
Als erstes die Quelltexte laden&lt;br /&gt;
&amp;lt;pre&amp;gt;user@linux:~/src$ git clone git://github.com/texane/stlink.git&amp;lt;/pre&amp;gt;&lt;br /&gt;
Um die Tools nun kompilieren zu können werden noch die Quelltexte der libusb 1.0 benötigt. Bei einem Ubuntu-System ist dies das Paket libusb-1.0.0-dev (Lubuntu 11.10).Bei einem Debian-System könnte auch folgendes Paket autogen fehlen.&amp;lt;br /&amp;gt;&lt;br /&gt;
Jetzt kann der Quelltext kompiliert werden.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
user@linux:~/src$ cd stlink&lt;br /&gt;
user@linux:~/src/stlink$ ./autogen.sh&lt;br /&gt;
user@linux:~/src/stlink$ ./configure&lt;br /&gt;
user@linux:~/src/stlink$ make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Wenn das ganze fehlerfrei durch gelaufen ist, kann man den ganzen Ordner, oder alternativ auch nur ./flash/flash und ./gdbserver/st-util, kopieren und per Umgebungsvariable PATH verfügbar machen.&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Achtung&#039;&#039;&#039;: &amp;lt;u&amp;gt;Im folgendem Block benenne ich flash in st-flash um, weil ich flash nicht besonders passend finde wenn man es per Umgebungsvariable verfügbar macht.&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@linux:~# mkdir /opt/stlink&lt;br /&gt;
root@linux:~# cd /opt/stlink&lt;br /&gt;
root@linux:/opt/stlink# cp /home/user/src/stlink/flash/flash ./st-flash&lt;br /&gt;
root@linux:/opt/stlink# cp /home/user/src/stlink/gdbserver/st-util .&lt;br /&gt;
root@linux:/opt/stlink# echo PATH=\&amp;quot;$PATH:/opt/stlink\&amp;quot; &amp;gt;&amp;gt; /etc/environment&lt;br /&gt;
root@linux:/opt/stlink# source /etc/environment&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Nun brauchen die beiden Tools noch Schreibrechte für das USB-Gerät.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@linux:~# cp /home/user/src/stlink/49-stlinkv*.rules /etc/udev/rules.d&lt;br /&gt;
root@linux:~# udevadm control --reload-rules&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Wird nun das STM32F4-Discovery an den PC gesteckt wird ein neues Device erzeugt, bei mir war das &#039;&#039;&#039;/dev/stlinkv2_2&#039;&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;Für Boards mit STLink v1 solltest du dir einmal die README zu stlink durchlesen.&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sollte das soweit alles geklappt haben, ist das jetzt der perfekte Zeitpunkt um ein Backup der Firmware zu machen.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
user@linux:~$ st-flash read ~/STM32F4-Discovery.bin 0x8000000 0x100000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mit folgendem Befehl kann die Datei  wieder zurück geschrieben werden.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
user@linux:~$ st-flash write ~/STM32F4-Discovery.bin 0x8000000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== stlink in Eclipse einbinden ====&lt;br /&gt;
Als nächstes wird der GDB-Server in Eclipse integriert. Man wählt aus dem Hauptmenu &#039;&#039;&#039;Run &amp;gt; External Tools &amp;gt; External Tools Configurations...&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Ein Klick mit der rechten Maustaste auf &#039;&#039;&#039;Program&#039;&#039;&#039; und &#039;&#039;&#039;New&#039;&#039;&#039; auswählen.&lt;br /&gt;
Als Name &#039;&#039;&#039;ST-Link&#039;&#039;&#039; eintragen.&lt;br /&gt;
Auf der Registerkarte &#039;&#039;&#039;Main&#039;&#039;&#039; unter Location: &#039;&#039;&#039;/opt/stlink/st-util&#039;&#039;&#039; und bei Working Directory: &#039;&#039;&#039;${workspace_loc}${project_path}&#039;&#039;&#039; eintragen.&lt;br /&gt;
Auf der Registerkarte &#039;&#039;&#039;Build&#039;&#039;&#039; wird der Haken vor &#039;&#039;&#039;Build before Launch&#039;&#039;&#039; raus genommen.&lt;br /&gt;
Auf der Registerkarte &#039;&#039;&#039;Common&#039;&#039;&#039; einen Haken vor &#039;&#039;&#039;External Tools&#039;&#039;&#039; im Feld &#039;&#039;&#039;Display in Favorites menu&#039;&#039;&#039; machen.&lt;br /&gt;
Ein Klick auf &#039;&#039;&#039;Apply&#039;&#039;&#039; und den Dialog mit einem Klick auf &#039;&#039;&#039;Close&#039;&#039;&#039; schließen.&lt;br /&gt;
&lt;br /&gt;
==Installation Windows==&lt;br /&gt;
===Keil MDK-ARM Lite===&lt;br /&gt;
Unter Windows kann man unteranderem auch die Keil MDK-ARM Lite&lt;br /&gt;
IDE benutzen.&lt;br /&gt;
*[https://www.youtube.com/watch?v=RXOOxby5nnsa Video Anleitung STM32F4-Discovery mit MDK-ARM]&lt;br /&gt;
* [https://www.keil.com/demo/eval/arm.htm KEIL MDK-ARM Download]&lt;br /&gt;
===Eclipse===&lt;br /&gt;
siehe Artikel [[STM32 Eclipse Installation]]&lt;br /&gt;
=== AtollicTrueStudio ===&lt;br /&gt;
siehe Artikel [[STM32 LEDBlinken AtollicTrueStudio]]&lt;br /&gt;
&lt;br /&gt;
== Beispiel-Projekte ==&lt;br /&gt;
=== Vorbereitungen ===&lt;br /&gt;
==== Standard Peripherals Library ====&lt;br /&gt;
Bevor jetzt der erste Quelltext in den Editor gehackt wird, kann man sich das Leben etwas leichter machen. STMicroelectronics stellt für seine Microprozessoren Bibliotheken bereit, die einem eine ganze Menge Arbeit abnimmt.&lt;br /&gt;
&lt;br /&gt;
Die Rede ist von der &amp;quot;Standard Peripherals Library&amp;quot;, diese lässt sich auf der Seite von [http://www.st.com STMicroelectronics] herunter laden. Der Weg dorthin ist dank einer wunderschön gestalteten Homepage etwas steinig.&amp;lt;br /&amp;gt;&lt;br /&gt;
Auf der Hauptseite wählt man zuerst in der Rubrik &#039;&#039;&#039;Products&#039;&#039;&#039; die Kategorie &#039;&#039;&#039;Micros &amp;amp; Memories&#039;&#039;&#039; und danach &#039;&#039;&#039;Mikrocontrollers&#039;&#039;&#039;. Als nächstes wird auf die Registerkarte &#039;&#039;&#039;Resources&#039;&#039;&#039; gewechselt. Im Bereich &#039;&#039;&#039;Software Resources&#039;&#039;&#039; wird der Punkt &#039;&#039;&#039;Firmware&#039;&#039;&#039; ausgewählt. Es öffnet sich ein neues Browserfenster/-tab mit einer Liste von Dateien. Im oberen Bereich gibt es ein Suchfeld. Hier kann nach den &amp;quot;standard peripherals library&amp;quot; gesucht werde&lt;br /&gt;
Für das STM32F4-Discovery benötigen wir die Datei [http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/stm32f4_dsp_stdperiph_lib.zip STM32F4 DSP and standard peripherals library]&lt;br /&gt;
&lt;br /&gt;
[[http://www.st.com/web/catalog/tools/FM147/CL1794/SC961/SS1743/PF257901 Direkter Link zur Std Lib]]&lt;br /&gt;
&lt;br /&gt;
Die Datei kann an einen beliebigen Ort entpackt werden.&lt;br /&gt;
&lt;br /&gt;
==== Neues Projekt anlegen ====&lt;br /&gt;
Jetzt kann mit der Programmierarbeit begonnen werden. Falls noch nicht geschehen kann nun die IDE gestartet werden, im Terminal geht das bei meiner Installation mit:&lt;br /&gt;
&amp;lt;pre&amp;gt;user@linux:~$ /opt/eclipse/eclipse&amp;lt;/pre&amp;gt;&lt;br /&gt;
Nun wird ein neues Projekt geöffnet folgende Schritte sind nötig:&lt;br /&gt;
# File &amp;gt; New &amp;gt; Project...&lt;br /&gt;
# C/C++ &amp;gt; C Project; Next&lt;br /&gt;
# ARM Cross Target Application &amp;gt; Empty Project&lt;br /&gt;
# Toolchains = ARM Linux GCC (Sourcery G++ Lite)&lt;br /&gt;
# Project name = (Hier den Projektnamen eingeben); Finish&lt;br /&gt;
# Eventuell wird nach der C/C++ Perspective gefragt, diesen Dialog mit &#039;&#039;&#039;Yes&#039;&#039;&#039; beantworten.&lt;br /&gt;
Auf der linken Seite im &#039;&#039;&#039;Project Explorer&#039;&#039;&#039; siehst du nun das neue Projekt, sobald du die Baumstruktur öffnest sollte bereits ein Ordner &#039;&#039;&#039;Includes&#039;&#039;&#039; vorhanden sein, dort gibt es bereits 3 Einträge:&lt;br /&gt;
* &#039;&#039;&#039;/opt/CodeSourcery/arm-2011.09/arm-none-eabi/include&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;/opt/CodeSourcery/arm-2011.09/lib/gcc/arm-none-eabi/4.6.1/include&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;/opt/CodeSourcery/arm-2011.09/lib/gcc/arm-none-eabi/4.6.1/include-fixed&#039;&#039;&#039;&lt;br /&gt;
Wenn diese Einträge &amp;lt;u&amp;gt;nicht&amp;lt;/u&amp;gt; vorhanden sind, ist bis hierhin etwas schief gegangen. Vermutlich wurde die Umgebungsvariable PATH nicht korrekt gesetzt.&lt;br /&gt;
&lt;br /&gt;
Wenn bis hierhin alles geklappt hat können nun die weiteren Einstellungen vorgenommen werden. Zuerst werden die Header-Datei der Standard Peripherals Library hinzu gefügt.&lt;br /&gt;
# Project &amp;gt; Properties&lt;br /&gt;
# C/C++ General &amp;gt; Paths and Symbols&lt;br /&gt;
# Configuration = [All configurations]&lt;br /&gt;
# Reiter Includes, Languages = GNU C&lt;br /&gt;
Hier werden nun die Pfade zu den Header-Dateien der Standard Peripherals Library eingetragen. Ich habe das von ST heruntergeladene Archiv nach /home/user/eclipse/STM32/ entpackt. daraus ergeben sich für mich folgende Pfade die eingetragen werden müssen:&lt;br /&gt;
* /home/user/eclipse/STM32/STM32F4xx StdPeriphLib V1.0.0/Libraries/CMSIS/Include&lt;br /&gt;
* /home/user/eclipse/STM32/STM32F4xx StdPeriphLib V1.0.0/Libraries/CMSIS/Device/ST/STM32F4xx/Include&lt;br /&gt;
* /home/user/eclipse/STM32/STM32F4xx StdPeriphLib V1.0.0/Libraries/STM32F4xx_StdPeriph_Driver/inc&lt;br /&gt;
* /${ProjDirPath}&lt;br /&gt;
Als nächstes werden die Quellcode-Dateien der Standard Peripherals Library hinzugefügt.&lt;br /&gt;
# Reiter Source Location&lt;br /&gt;
# Link Folder..., Folder Name = StdPeriph&lt;br /&gt;
# Link to folder in the filesystem aktivieren&lt;br /&gt;
# Browse..., Verzeichniss = /user/eclipse/STM32/STM32F4xx StdPeriphLib V1.0.0/Libraries/STM32F4xx_StdPeriph_Driver/src&lt;br /&gt;
Jetzt noch 3 Symbole anlegen:&lt;br /&gt;
# Reiter Symbols, Languages = GNU C&lt;br /&gt;
# Add..., Name: = USE_STDPERIPH_DRIVER &amp;gt; OK&lt;br /&gt;
# Add..., Name: = USE_STM32_DISCOVERY &amp;gt; OK&lt;br /&gt;
# Add..., Name: = HSE_VALUE Value: = 8000000 &amp;gt; OK&lt;br /&gt;
&lt;br /&gt;
Damit durch den Indexer auch alle Header-Files der Standard-Libs berücksichtigt&lt;br /&gt;
werden ist die Konfiguration des Indexers noch anzupassen:&lt;br /&gt;
# Project &amp;gt; Properties&lt;br /&gt;
# C/C++ General &amp;gt; Indexer&lt;br /&gt;
# Folgende Optionen (Checkboxen) wählen:&lt;br /&gt;
## Enable project specific settings&lt;br /&gt;
## Store settings with project&lt;br /&gt;
## Enable indexer&lt;br /&gt;
## Index source files not included in the build&lt;br /&gt;
## Index unused headers&lt;br /&gt;
## Index source and header files opened in editor&lt;br /&gt;
## Allow heuristic resolution of includes&lt;br /&gt;
&lt;br /&gt;
Nun noch ein Linker-Script aktivieren.&lt;br /&gt;
# C/C++ Build &amp;gt; Settings&lt;br /&gt;
# Configuration = [All configurations]&lt;br /&gt;
# ARM Sourcery Linux GCC Linker &amp;gt; General&lt;br /&gt;
# Script File  (-T) = /${ProjDirPath}/stm32_flash.ld&lt;br /&gt;
Als letztes noch das Ausgabeformat auf Binary einstellen.&lt;br /&gt;
# ARM Sourcery Linux GNU Create Flash Image &amp;gt; Output&lt;br /&gt;
# Output file format (-O) = binary&lt;br /&gt;
Der Dialog kann nun mit &#039;&#039;&#039;OK&#039;&#039;&#039; geschlossen werden.&lt;br /&gt;
&lt;br /&gt;
Jetzt müssen noch 3 Dateien ins Projekt kopiert werden.&lt;br /&gt;
* /home/user/eclipse/STM32/STM32F4xx StdPeriphLib V1.0.0/Project/STM32F4xx_StdPeriph_Templates/TrueSTUDIO/STM324xG_EVAL/stm32_flash.ld&lt;br /&gt;
* /home/user/eclipse/STM32/STM32F4xx StdPeriphLib V1.0.0/Libraries/CMSIS/Device/ST/STM32F4xx/Source/Templates/system_stm32f4xx.c&lt;br /&gt;
* /home/user/eclipse/STM32/STM32F4xx StdPeriphLib V1.0.0/Libraries/CMSIS/Device/ST/STM32F4xx/Source/Templates/TrueSTUDIO/startup_stm32f4xx.s&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Die Dateiendung der Datei startup_stm32f4xx.s muss noch in ein großes S geändert werden. Ausserdem muss in der Datei folgende Anweisung auskommentiert werden.&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/* Call static constructors */&lt;br /&gt;
//    bl __libc_init_array &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis zur Ausgabedatei&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
Die kompilierte Datei befindet sich im Ordner Debug oder Release im Projektverzeichniss. Die Datei  besitzt den Namen des Prejekts und endet auf .hex. Die Endung ist zwar hex beinhaltet aber trotzdem ein Binary.&lt;br /&gt;
&lt;br /&gt;
Jetzt kann mit der Programmierung begonnen werden.&lt;br /&gt;
&lt;br /&gt;
==== Debugging mit GDB ====&lt;br /&gt;
Dieser Abschnitt zeigt wie der GDB-Server von stlink in Eclipse verwendet wird.&lt;br /&gt;
&lt;br /&gt;
Bei geöffnetem Projekt klickt man im Hauptmenü auf &#039;&#039;&#039;Run &amp;gt; Debug Configurations...&#039;&#039;&#039;. In der Liste links klickt man mit der Rechten Maustaste auf &#039;&#039;&#039;GDB Hardware Debugging&#039;&#039;&#039; und wählt &#039;&#039;&#039;New&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Bei Name trägt man den Namen der Konfiguration ein z.B. STM32F4-Discovery ST-Link. Die Datei für &#039;&#039;&#039;C/C++ Application:&#039;&#039;&#039; wählt man am besten aus, indem man auf &#039;&#039;&#039;Search Project...&#039;&#039;&#039; klickt. Das Eingabefeld &#039;&#039;&#039;Project:&#039;&#039;&#039; sollte bereits ausgefüllt sein.&lt;br /&gt;
Auf der Registerkarte &#039;&#039;&#039;Debugger&#039;&#039;&#039; wird in das Eingabefeld &#039;&#039;&#039;GDB-Command:&#039;&#039;&#039; &#039;&#039;&#039;arm-none-eabi-gdb&#039;&#039;&#039; eingetragen. In das Feld &#039;&#039;&#039;Port Number:&#039;&#039;&#039; wird 4242 eingetragen. Abschließend wird auf die Registerkarte Common gewechselt. Hier wird ein Haken vor &#039;&#039;&#039;Debug&#039;&#039;&#039; im Feld &#039;&#039;&#039;Display in Favorites menu&#039;&#039;&#039; gemacht.&lt;br /&gt;
Ein Klick auf &#039;&#039;&#039;Apply&#039;&#039;&#039; und &#039;&#039;&#039;Close&#039;&#039;&#039; schließt die Konfiguration ab.&lt;br /&gt;
&lt;br /&gt;
Um ein Projekt zu debuggen wählt man zuerst aus dem Hauptmenu &#039;&#039;&#039;Run &amp;gt; External Tools &amp;gt; ST-Link&#039;&#039;&#039; dadurch wird der GDB-Server gestartet.&lt;br /&gt;
&lt;br /&gt;
Sollte man die Meldung erhalten &amp;lt;u&amp;gt;Variable References empty selection: ${project_path}&amp;lt;/u&amp;gt; hilft es einmal in eine Projektdatei oder den Projekt-Explorer zu klicken.&lt;br /&gt;
&lt;br /&gt;
Danach wählt man aus dem Hauptmenü &#039;&#039;&#039;Run &amp;gt; Debug Configurations...&#039;&#039;&#039;, in der Liste links wählt man die angelegte Configuration unter &#039;&#039;&#039;GDB Hardware Debugging&#039;&#039;&#039; aus und klickt auf Debug. Eclipse möchte nun in die Debug-Perspektive wchseln, das sollte mit &#039;&#039;&#039;Yes&#039;&#039;&#039; beantworten werden.&lt;br /&gt;
&lt;br /&gt;
Das Programm wird in den Mikrocontroller geladen und nach dem Flashvorgang direkt gestoppt. Mit F8 kann die Ausführung wieder gestartet werden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis: Ausführung des GDB bleibt bei 85% stehen&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
In diesem Fall sollte geprüft werden, ob sich &amp;quot;arm-none-eabi-gdb&amp;quot; auf der Kommandozeile ohne Fehler ausführen lässt. Teilweise fehlen u.U. (32-Bit) Bibliotheken.&lt;br /&gt;
&lt;br /&gt;
=== Beispiel: Blinky ===&lt;br /&gt;
Hier ein Beispiel welches die 4 LEDs um den MEMS-Sensor herum leuchten lässt.&lt;br /&gt;
&lt;br /&gt;
main.c&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;stm32f4xx.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
GPIO_InitTypeDef  GPIO_InitStructure;&lt;br /&gt;
&lt;br /&gt;
void Delay(__IO uint32_t nCount) {&lt;br /&gt;
  while(nCount--) {&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int main(void) {&lt;br /&gt;
  /* GPIOD Periph clock enable */&lt;br /&gt;
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD, ENABLE);&lt;br /&gt;
&lt;br /&gt;
  /* Configure PD12, 13, 14 and PD15 in output pushpull mode */&lt;br /&gt;
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15;&lt;br /&gt;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;&lt;br /&gt;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;&lt;br /&gt;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;&lt;br /&gt;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;&lt;br /&gt;
  GPIO_Init(GPIOD, &amp;amp;GPIO_InitStructure);&lt;br /&gt;
&lt;br /&gt;
  while (1) {&lt;br /&gt;
    /* Set PD12 Green */&lt;br /&gt;
    GPIOD-&amp;gt;BSRRL = GPIO_Pin_12;&lt;br /&gt;
    /* Reset PD13 Orange, PD14 Red, PD15 Blue */&lt;br /&gt;
    GPIOD-&amp;gt;BSRRH = GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15;&lt;br /&gt;
    Delay(10000000L);&lt;br /&gt;
&lt;br /&gt;
    /* Set PD13 Orange */&lt;br /&gt;
    GPIOD-&amp;gt;BSRRL = GPIO_Pin_13;&lt;br /&gt;
    /* Reset PD12 Green, PD14 Red, PD15 Blue */&lt;br /&gt;
    GPIOD-&amp;gt;BSRRH = GPIO_Pin_12 | GPIO_Pin_14 | GPIO_Pin_15;&lt;br /&gt;
    Delay(10000000L);&lt;br /&gt;
&lt;br /&gt;
    /* Set PD14 Red */&lt;br /&gt;
    GPIOD-&amp;gt;BSRRL = GPIO_Pin_14;&lt;br /&gt;
    /* Reset PD12 Green, PD13 Orange, PD15 Blue */&lt;br /&gt;
    GPIOD-&amp;gt;BSRRH = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_15;&lt;br /&gt;
    Delay(10000000L);&lt;br /&gt;
&lt;br /&gt;
    /* Set PD15 Blue */&lt;br /&gt;
    GPIOD-&amp;gt;BSRRL = GPIO_Pin_15;&lt;br /&gt;
    /* Reset PD12 Green, PD13 Orange, PD14 Red */&lt;br /&gt;
    GPIOD-&amp;gt;BSRRH = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14;&lt;br /&gt;
    Delay(10000000L);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
stm32f4xx_conf.h&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#ifndef __STM32F4xx_CONF_H&lt;br /&gt;
#define __STM32F4xx_CONF_H&lt;br /&gt;
&lt;br /&gt;
/* Includes ------------------------------------------------------------------*/&lt;br /&gt;
/* Uncomment the line below to enable peripheral header file inclusion */&lt;br /&gt;
// #include &amp;quot;stm32f4xx_adc.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_can.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_crc.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_cryp.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_dac.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_dbgmcu.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_dcmi.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_dma.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_exti.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_flash.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_fsmc.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_hash.h&amp;quot;&lt;br /&gt;
#include &amp;quot;stm32f4xx_gpio.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_i2c.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_iwdg.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_pwr.h&amp;quot;&lt;br /&gt;
#include &amp;quot;stm32f4xx_rcc.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_rng.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_rtc.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_sdio.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_spi.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_syscfg.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_tim.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_usart.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;stm32f4xx_wwdg.h&amp;quot;&lt;br /&gt;
// #include &amp;quot;misc.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#ifdef  USE_FULL_ASSERT&lt;br /&gt;
  #define assert_param(expr) ((expr) ? (void)0 : assert_failed((uint8_t *)__FILE__, __LINE__))&lt;br /&gt;
  void assert_failed(uint8_t* file, uint32_t line);&lt;br /&gt;
#else&lt;br /&gt;
  #define assert_param(expr) ((void)0)&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
[[Kategorie:STM32]] [[Kategorie:ARM-Boards]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=NRF24L01_Tutorial&amp;diff=82715</id>
		<title>NRF24L01 Tutorial</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=NRF24L01_Tutorial&amp;diff=82715"/>
		<updated>2014-04-18T17:39:43Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Einzelnachweise */ Leerzeile ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Das Tutorial soll den Einstieg, eine Funkstrecke mit dem &lt;br /&gt;
[http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P nRF24L01+] aufzubauen, erleichtern.&lt;br /&gt;
&lt;br /&gt;
Beim nRF24L01+ handelt es sich um einen single Chip Transceiver von Nordic Semiconductor. Dieser Chip kann also sowohl als Sender (TX) als auch als Empfänger (RX) arbeiten und bietet eine Reihe von sehr praktischen Features wie Ultra Low Power (nur 900nA in Power Down Modus), 6 Data Pipes beim Betrieb als MultiCeiver, Enhanced Shockburst (dazu später mehr), Automatic Packet Handling, 5V tolerante Eingänge, SPI Schnittstelle und noch einiges mehr. &lt;br /&gt;
&lt;br /&gt;
Um mit dem nRF24L01+ eine Funkstrecke zu realisieren braucht man nicht mehr als einen µC sowie ein nRF24L01+ Funkmodul. Das ganze natürlich zwei mal. &lt;br /&gt;
In dem Tutorial wird der AVR Atmega8 verwendet sowie nRF24L01+ Module die sehr günstig über das Internet (Ebay derzeit unter 2€) in verschiedenen Ausführungen bezogen werden können. Für Testaufbauten reichen einfache Steckbretter um die Hardware aufzubauen. &lt;br /&gt;
Bei der Hand sollte unbedingt das Datenblatt des nRF24L01+ sein und natürlich das Datenblatt des jeweils verwendeten µC. Das Datenblatt des nRF24L01+ kann von Nordic Semiconductor runtergeladen werden: &lt;br /&gt;
&lt;br /&gt;
[http://www.nordicsemi.com/kor/nordic/download_resource/8765/2/8827113 nRF24L01 Datenblatt]&lt;br /&gt;
&lt;br /&gt;
Vieles in diesem Tutorial basiert auf der Vorarbeit von Stefan Engelke und Brennan Ball denen mein Dank dafür gilt.&lt;br /&gt;
&lt;br /&gt;
== Das nRF24L01+ Modul ==&lt;br /&gt;
Ein Funkmodul mit dem nRF24L01+ hat zumindest 8 Anschlüsse: &lt;br /&gt;
[[Datei:Foto_nrf24L01+Modul.jpg|miniatur|rechts|Handelsübliche nRF24L01+ Module]]&lt;br /&gt;
Vcc, GND, IRQ, CE, und die vier SPI bezogenen Anschlüsse CSN, SCK, MISO, und MOSI.&lt;br /&gt;
&lt;br /&gt;
Je nach Datenblatt des verwendeten Moduls ist die Spannung zu wählen, manche Module verfügen über eigene Spannungsregler, der nRF24L01+ selbst verträgt Spannungen von 1,9V bis 3,6V. Auf dem von mir verwendeten Modul befindet sich kein weiterer Spannungsregler somit muß man aufpassen den Chip nicht durch Überspannung zu ruinieren. Als Spannung habe ich 3,3V verwendet. &lt;br /&gt;
&lt;br /&gt;
Die Anschlüsse SCK, MISO, und MOSI werden mit den entsprechenden Pins des µC verbunden. Der CSN (chip select not) Pin ist active low und normalerweise auf high-Level gehalten. Wenn CSN low geschaltet wird beginnt der nRF24L01+ am SPI Port zu horchen oder anders gesagt, jedes Kommando an den Chip wird mit einem high to low schalten von CSN eingeleitet. Im Falle des Atmega8 werden SCK mit SCK, MISO mit MISO und MOSI mit MOSI verbunden. Für den CSN wurde Pin PB1 gewählt. &lt;br /&gt;
[[Datei:Stromlaufplan.png|miniatur|rechts|Stromlaufplan für den Anschluß an einen ATmega8]]&lt;br /&gt;
Was uns noch bleibt ist CE und IRQ. CE wird im RX und TX Modus verwendet für die Datenübertragung. In dem Beispiel an Pin PB0 angeschlossen. IRQ ist der Interrupt-Pin des Funkmoduls und ist active-low. Es gibt drei interne Interrupts im nRF24L01+ die den IRQ Pin low schalten wobei man sämtliche Interrupts ausmaskieren kann wenn man möchte. Am Atmega8 wurde IRQ mit Pin PD2 (INT0) verbunden um auf die externen Interrupts reagieren zu können.&lt;br /&gt;
&lt;br /&gt;
== Die SPI-Routine ==&lt;br /&gt;
Als SPI-Routine habe ich die Routine von Stefan Engelke unverändert übernommen die er dankenswerter Weise zur allgemeinen Verwendung zur Verfügung gestellt hat. [http://www.tinkerer.eu/AVRLib/SPI siehe Tinkerer.eu]&lt;br /&gt;
&lt;br /&gt;
spi.h&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#ifndef _SPI_H_&lt;br /&gt;
#define _SPI_H_&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
extern void spi_init();&lt;br /&gt;
extern void spi_transfer_sync (uint8_t * dataout, uint8_t * datain, uint8_t len);&lt;br /&gt;
extern void spi_transmit_sync (uint8_t * dataout, uint8_t len);&lt;br /&gt;
extern uint8_t spi_fast_shift (uint8_t data);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
spi.c&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;spi.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define PORT_SPI    PORTB&lt;br /&gt;
#define DDR_SPI     DDRB&lt;br /&gt;
#define DD_MISO     DDB4&lt;br /&gt;
#define DD_MOSI     DDB3&lt;br /&gt;
#define DD_SS       DDB2&lt;br /&gt;
#define DD_SCK      DDB5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void spi_init()&lt;br /&gt;
// Initialize pins for spi communication&lt;br /&gt;
{&lt;br /&gt;
    DDR_SPI &amp;amp;= ~((1&amp;lt;&amp;lt;DD_MOSI)|(1&amp;lt;&amp;lt;DD_MISO)|(1&amp;lt;&amp;lt;DD_SS)|(1&amp;lt;&amp;lt;DD_SCK));&lt;br /&gt;
    // Define the following pins as output&lt;br /&gt;
    DDR_SPI |= ((1&amp;lt;&amp;lt;DD_MOSI)|(1&amp;lt;&amp;lt;DD_SS)|(1&amp;lt;&amp;lt;DD_SCK));&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
    SPCR = ((1&amp;lt;&amp;lt;SPE)|               // SPI Enable&lt;br /&gt;
            (0&amp;lt;&amp;lt;SPIE)|              // SPI Interrupt Enable&lt;br /&gt;
            (0&amp;lt;&amp;lt;DORD)|              // Data Order (0:MSB first / 1:LSB first)&lt;br /&gt;
            (1&amp;lt;&amp;lt;MSTR)|              // Master/Slave select   &lt;br /&gt;
            (0&amp;lt;&amp;lt;SPR1)|(1&amp;lt;&amp;lt;SPR0)|    // SPI Clock Rate&lt;br /&gt;
            (0&amp;lt;&amp;lt;CPOL)|              // Clock Polarity (0:SCK low / 1:SCK hi when idle)&lt;br /&gt;
            (0&amp;lt;&amp;lt;CPHA));             // Clock Phase (0:leading / 1:trailing edge sampling)&lt;br /&gt;
&lt;br /&gt;
    SPSR = (1&amp;lt;&amp;lt;SPI2X);              // Double Clock Rate&lt;br /&gt;
    &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void spi_transfer_sync (uint8_t * dataout, uint8_t * datain, uint8_t len)&lt;br /&gt;
// Shift full array through target device&lt;br /&gt;
{&lt;br /&gt;
       uint8_t i;      &lt;br /&gt;
       for (i = 0; i &amp;lt; len; i++) {&lt;br /&gt;
             SPDR = dataout[i];&lt;br /&gt;
             while((SPSR &amp;amp; (1&amp;lt;&amp;lt;SPIF))==0);&lt;br /&gt;
             datain[i] = SPDR;&lt;br /&gt;
       }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void spi_transmit_sync (uint8_t * dataout, uint8_t len)&lt;br /&gt;
// Shift full array to target device without receiving any byte&lt;br /&gt;
{&lt;br /&gt;
       uint8_t i;      &lt;br /&gt;
       for (i = 0; i &amp;lt; len; i++) {&lt;br /&gt;
             SPDR = dataout[i];&lt;br /&gt;
             while((SPSR &amp;amp; (1&amp;lt;&amp;lt;SPIF))==0);&lt;br /&gt;
       }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
uint8_t spi_fast_shift (uint8_t data)&lt;br /&gt;
// Clocks only one byte to target device and returns the received one&lt;br /&gt;
{&lt;br /&gt;
    SPDR = data;&lt;br /&gt;
    while((SPSR &amp;amp; (1&amp;lt;&amp;lt;SPIF))==0);&lt;br /&gt;
    return SPDR;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Der SPI Befehlssatz ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Command name !! Command word (binary) !! # Data bytes !! Operation&lt;br /&gt;
|-&lt;br /&gt;
| R_REGISTER || 000A AAAA || 1 to 5 &amp;lt;br /&amp;gt; LSByte first || Read command and STATUS registers. AAAAA = 5 bit Register Map Address&lt;br /&gt;
|-&lt;br /&gt;
| W_REGISTER || 001A AAAA || 1 to 5 &amp;lt;br /&amp;gt; LSByte first || Write command and status registers. AAAAA = 5 bit Register Map Address &amp;lt;br /&amp;gt; Executable in power down or standby modes only.&lt;br /&gt;
|-&lt;br /&gt;
| R_RX_PAYLOAD || 0110 0001 || 1 to 32 &amp;lt;br /&amp;gt; LSByte first || Read RX-payload: 1 – 32 bytes. A read operation always starts at byte 0. Payload is deleted from FIFO after it is read. Used in RX mode.&lt;br /&gt;
|-&lt;br /&gt;
| W_TX_PAYLOAD || 1010 0000 || 1 to 32 &amp;lt;br /&amp;gt; LSByte first || Write TX-payload: 1 – 32 bytes. A write operation always starts at byte 0 used in TX payload.&lt;br /&gt;
|-&lt;br /&gt;
| FLUSH_TX || 1110 0001 || 0 || Flush TX FIFO, used in TX mode&lt;br /&gt;
|-&lt;br /&gt;
| FLUSH_RX || 1110 0010 || 0 || Flush RX FIFO, used in RX mode &amp;lt;br /&amp;gt; Should not be executed during transmission of acknowledge, that is, acknowledge package will not be completed.&lt;br /&gt;
|-&lt;br /&gt;
| REUSE_TX_PL || 1110 0011 || 0 || Used for a PTX device&lt;br /&gt;
Reuse last transmitted payload. &amp;lt;br /&amp;gt; TX payload reuse is active until W_TX_PAYLOAD or FLUSH TX is executed. TX payload reuse must not be activated or deactivated during package transmission.&lt;br /&gt;
|-&lt;br /&gt;
| R_RX_PL_WID* || 0110 0000 || 1 || Read RX payload width for the top R_RX_PAYLOAD in the RX FIFO. &amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt; Flush RX FIFO if the read value is larger than 32 bytes.&lt;br /&gt;
|-&lt;br /&gt;
| W_ACK_PAYLOAD* || 1010 1PPP || 1 to 32 &amp;lt;br /&amp;gt; LSByte first || Used in RX mode. &amp;lt;br /&amp;gt; Write Payload to be transmitted together with ACK packet on PIPE PPP. (PPP valid in the range from 000 to 101). Maximum three ACK packet payloads can be pending. Payloads with same PPP are handled using first in - first out principle. Write payload: 1– 32 bytes. A write operation always starts at byte 0.&lt;br /&gt;
|-&lt;br /&gt;
| W_TX_PAYLOAD_NOACK* || 1011 0000 || 1 to 32 &amp;lt;br /&amp;gt;LSByte first || Used in TX mode. Disables AUTOACK on this specific packet.&lt;br /&gt;
|-&lt;br /&gt;
| NOP || 1111 1111 || 0 || No Operation. Might be used to read the STATUS register&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;*&amp;lt;/b&amp;gt;=The bits in the FEATURE register shown in Table 28. on page 63 have to be set.&lt;br /&gt;
&lt;br /&gt;
Zu finden natürlich auch im Datasheet auf Seite 51. &lt;br /&gt;
&lt;br /&gt;
Es gibt ein paar Dinge die zu beachten sind. Bevor die Kommunikation mit dem Chip begonnen wird muß der CSN Pin high sein. Zum Start der Kommunikation wird der CSN Pin auf Low geschaltet und muß auch Low bleiben während der gesamten Dauer der Kommunikation. &lt;br /&gt;
&lt;br /&gt;
Dann wird der Befehl gesendet. Wenn man Daten vom nRF24L01+ empfangen möchte muß für jedes Byte an Daten auch ein Byte gesendet werden. Wenn man nur seine eigenen Daten an den Chip senden möchte kümmert man sich nicht weiter darum was der Chip zurücksendet. Auf jeden Fall wird parallel zu den Daten die man schickt der STATUS des Chips zurückgegeben. Ist die Unterhaltung (mit dem nRF24L01+ - es geht noch nicht um die Funkstrecke) abgeschlossen, wird CSN wieder auf High geschaltet. &lt;br /&gt;
&lt;br /&gt;
Als Beispiel: Wir wollen den R_REGISTER Befehl senden um den Inhalt des Registers TX_ADDR zu lesen. Das TX_ADDR Register enthält maximal 5 Bytes an Daten/Information. Als erstes CSN auf Low. Dann &amp;quot;0001 0000&amp;quot; an den Chip senden. Das weist den nRF24L01+ an das Register TX_ADDR auszugeben. Dann werden fünf Dummy-Bytes gesendet und für jedes Dummy-Byte erhält man ein Byte aus dem TX_ADDR Register zurück. (Der Inhalt der Dummy-Bytes ist ganz egal) Danach CSN wieder auf High. Insgesamt erhält man vom Chip sechs Bytes: Egal welches Command Byte man sendet antwortet der Chip mit dem STATUS-Register.&lt;br /&gt;
&lt;br /&gt;
Mit dem R_REGISTER können also alle Registerinhalte gelesen werden die zwischen 1 Byte und 5 Byte groß sind. &lt;br /&gt;
&lt;br /&gt;
Mit dem W_REGISTER können wir beliebig unsere Werte in die Register schreiben. Das Prinzip ist das gleiche, es wird der Befehl 001AAAAA gesendet wobei AAAAA für die Adresse des Registers steht. Danach werden - je nach Register - bis zu fünf Bytes an Daten gesendet die in das Register geschrieben werden sollen. &lt;br /&gt;
&lt;br /&gt;
R_RX_PAYLOAD ist einer der beiden Befehle die mit dem FIFO zu tun haben. R_RX_PAYLOAD liest den Inhalt des FIFO sollten Daten empfangen werden. Der Empfang von Daten wird mit dem RX_DR Interrupt angezeigt. Bei diesem Befehl ist das Vorgehen ein wenig anders. Wenn man Daten per Funkstrecke empfängt ist CE high. Sobald man ein Paket empfangen hat muß man CE low schalten um den Empfang auszuschalten und danach kann R_RX_PAYLOAD ausgeführt werden. Gefolgt von so vielen Dummy-Bytes wie Payload definiert wurde. Gelesene Pakete werden automatisch aus dem FIFO gelöscht. Sollten weitere Pakete im FIFO warten sollten die auch gleich gelesen werden. Sobald der FIFO leer ist wird der RX_DR Interrupt gelöscht und CE wieder auf High geschaltet. Der FIFO kann maximal 3 Pakete (PAYLOADS) halten. Ein Paket ist maximal 32 Bytes groß. &lt;br /&gt;
&lt;br /&gt;
Der zweite dieser Befehle ist W_TX_PAYLOAD. Er wird verwendet wenn man sich im TX-Modus befindet und Daten senden möchte. Im TX-Modus ist CE low. Nachdem man den Befehl gesendet hat werden so viele Bytes ins FIFO geladen wie man für den Empfänger auch defniniert hat. D. h. Payload Größe muß beim Sender und Empfänger gleich groß sein solange man das FEATURE-Register nicht verwendet. Nachdem die Daten in den FIFO geladen wurden muß man den CE Pin toggeln (mind. 10µs high) damit die Daten gesendet werden. Man kann auch zuerst drei Pakete in den FIFO laden und dann erst wegschicken. &lt;br /&gt;
&lt;br /&gt;
FLUSH_TX und FLUSH_RX löschen die Daten im TX_FIFO bzw. RX_FIFO. &lt;br /&gt;
&lt;br /&gt;
NOP kann sehr gut dafür verwendet werden das STATUS Register zu lesen da es - wie der Name schon sagt - sonst nichts tut.&lt;br /&gt;
&lt;br /&gt;
== Die nRF24L01+ Register ==&lt;br /&gt;
&lt;br /&gt;
Hier ist es nötig das Datenblatt ab Seite 57 zur Hand zu nehmen da die Menge an Registern das Tutorial sprengen würde, würden alle hier besprochen. &lt;br /&gt;
&lt;br /&gt;
Mit Hilfe der Register wird das Modul per SPI konfiguriert und auch kontrolliert. Die meisten Register sind 1Byte groß, in vielen Registern werden aber nicht alle Bytes verwendet. Eine Ausnahme bilden die Register RX_ADDR_P0, RX_ADDR_P1 sowie TX_ADDR die jeweils bis zu 5 Byte groß sind. (Abhängig von der Konfiguration). Die drei 32Byte großen Register werden mit eigenen SPI Befehlen gesteuert. Sie dienen dazu die Datenpakete in den nRF24L01+ zu schreiben bzw. empfangene auszulesen. &lt;br /&gt;
&lt;br /&gt;
Innerhalb der Register belegen die Informationen eine unterschiedliche Anzahl an Bits. Als Beispiel das STATUS Register. Bit 1 bis 3 geben hier zum Beispiel Auskunft über die verwendete Pipe. Während alle anderen Informationen nur 1 Bit groß sind in dem Register. Es muß also immer entsprechend maskiert werden um die gewünschten Infos zu lesen oder auch zu schreiben.&lt;br /&gt;
&lt;br /&gt;
== Die ersten Schritte ==&lt;br /&gt;
&lt;br /&gt;
So, nach dem kurzen theoretischen Überblick ist es an der Zeit die ersten Schritte zu wagen. Sollte es noch nicht der Fall sein sollten spätestens jetzt die beiden nRF24L01+ Module mit dem µC verkabelt sein. Der ATmega8 sollte für dieses Beispiel mit mind. 8Mhz laufen, ob externer Quarz oder interner Takt ist dabei egal. Nochmals zur Erinnerung: Das nRF-Modul darf mit maximal 3,6V betrieben werden, die Eingänge verkraften aber 5V Signale solange die Versorgungsspannung zwischen 2,7V und 3,3V liegt. Werft sicherheitshalber einen Blick ins Datenblatt betreffend dieser Dinge.&lt;br /&gt;
&lt;br /&gt;
In der Vergangenheit gab es bei Arduino-Boards Fälle, in denen eine Spitzenspannung von mehr als 3,3V zu sehen war. Bei der Stromversorgung des Moduls direkt von einem Arduino-Board sollte daher ein 10µF Kondensator oder mehr parallel zu den VCC- und GND-Pins angeschlossen werden.&amp;lt;ref&amp;gt;[//forum.hobbycomponents.com/viewtopic.php?f=39&amp;amp;t=1317 Thread im &#039;&#039;Support forum for Hobby Components products&#039;&#039;] (abgerufen am 18. April 2014)&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Worüber man sich auch Gedanken machen muß ist, wie man die Funktion bzw. die Daten die man hin und her schickt, visualisiert. Ohne Visualisierung kann es natürlich auch funktionieren doch für das Tutorial wollen wir sicher sehen ob, und wenn ja, welche Daten hin und hergeschickt werden oder auch mal einen Registerinhalt anzeigen. In welcher Form das passiert bleibt jedem selbst überlassen. Man kann die Daten auf einem LCD ausgeben oder auch per UART an den PC liefern lassen. Hier sollte jeder das wählen womit er am Besten zurecht kommt. Theoretisch könnte man auch das Auslangen mit LEDs finden und sich die Registerinhalte oder Datenpakete mittels 8 LEDs anzeigen lassen. Allerdings wäre das nicht sehr komfortabel. &lt;br /&gt;
&lt;br /&gt;
=== Konfigurieren des nRF24L01+ ===&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir das Modul mal initialisieren bzw. die verwendeten Anschlüsse des µC einrichten. Am besten packen wir das ganze in eine Routine die ziemlich zeitig beim Start des µC aufgerufen wird. Weiter unten findet sich dann die Header-Datei die hier verwendet wird.&lt;br /&gt;
&lt;br /&gt;
Als erstes setzen wir die beiden verwendeten Pins als Ausgänge und schalten sie in den default-Status.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_init() &lt;br /&gt;
{&lt;br /&gt;
    DDRB |= ((1&amp;lt;&amp;lt;CSN)|(1&amp;lt;&amp;lt;CE));&lt;br /&gt;
    wl_module_CE_lo;&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dann werden die beiden (eigentlich reicht INT0) externen Interrupteingänge des ATmega8 auf fallende Flanke gestellt und der Interrupt für INT0 aktiviert. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
    MCUCR = ((1&amp;lt;&amp;lt;ISC11)|(0&amp;lt;&amp;lt;ISC10)|(1&amp;lt;&amp;lt;ISC01)|(0&amp;lt;&amp;lt;ISC00));&lt;br /&gt;
    GICR  = ((0&amp;lt;&amp;lt;INT1)|(1&amp;lt;&amp;lt;INT0));					&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
und zum Schluß noch SPI (siehe oben unter SPI) initialisiert:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;	    &lt;br /&gt;
    spi_init();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anbei noch die Header-Datei für das Modul: &lt;br /&gt;
[[Datei:wl_module.h]] (aus irgendeinem Grund forciert das Wiki hier große Anfangsbuchstaben, die Datei sollte als &amp;quot;wl_module.h&amp;quot; abgespeichert werden.)&lt;br /&gt;
&lt;br /&gt;
In dieser Header-Datei werden die wesentlichen Zuordnungen und Einstellungen getroffen wie Pin-Definitionen, Größe des Payloads, Interruptmaskierung für das Modul, CRC-Größe, etc. Außderdem die public functions deklariert. Im Moment noch nicht schrecken, es sind eine ganze Reihe von Funktionen die in einer wl_module.c Datei zusammengefaßt sind. Aufmerksame Leser werden feststellen, daß auch obige Funktion, die wl_module_init() dort erstellt wurde. &lt;br /&gt;
&lt;br /&gt;
In dem Projekt wird noch eine weitere Header-Datei für das Modul verwendet in dem die Mnemonics des Moduls abgebildet sind. Doch dazu gleich. &lt;br /&gt;
&lt;br /&gt;
=== Grundsätzliche Konfiguration ===&lt;br /&gt;
&lt;br /&gt;
Konfigurieren läßt sich eine ganze Menge beim nRF24L01+. Aber wir haben das Glück, daß es auch funktioniert wenn man wenig konfiguriert und die Standardwerte eingestellt läßt. &lt;br /&gt;
&lt;br /&gt;
Für unsere ersten Tests stellen wir nur das notwendigste ein. Um uns die Arbeit mit den vielen Registern zu erleichtern ist es jetzt Zeit die schon angesprochene Header-Datei vorzustellen und in weiterer Folge einzubinden. &lt;br /&gt;
&lt;br /&gt;
[[Datei:NRF24L01.h]]&lt;br /&gt;
&lt;br /&gt;
In dieser Header-Datei finden wir alle Mnemonics um auf die entsprechenden Befehle, Register und Registerinhalte zuzugreifen. Ja, es ist eine ziemlich lange Liste aber davon nicht schrecken lassen. &lt;br /&gt;
&lt;br /&gt;
Gut, dann setzen wir mal die ersten Werte im nRF24L01+. Als erstes wollen wir den Funkkanal einstellen. Dazu haben wir im wl_module.h schon wl_module_CH definiert. Ein Blick ins Datenblatt verrät uns, daß wir das Kommando W_REGISTER brauchen und der Kanal im Register RF_CH eingestellt wird. Die grundsätzliche Funktionsweise der Kommandos wurde schon weiter oben erklärt doch wie setzen wir das jetzt um? &lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns dazu einer Funktion die genau ein Byte in ein gewähltes Register schreibt. reg ist das gewählte Register und value der Wert der geschrieben werden soll. Mit dieser Funktion können wir schon fast alle Register des Moduls beschreiben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_config_register(uint8_t reg, uint8_t value)&lt;br /&gt;
// Clocks only one byte into the given wl-module register&lt;br /&gt;
{&lt;br /&gt;
    wl_module_CSN_lo;&lt;br /&gt;
    spi_fast_shift(W_REGISTER | (REGISTER_MASK &amp;amp; reg));&lt;br /&gt;
    spi_fast_shift(value);&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um den Kanal zu setzen wird &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
// Set RF channel&lt;br /&gt;
    wl_module_config_register(RF_CH,wl_module_CH);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
aufgerufen.&lt;br /&gt;
&lt;br /&gt;
Fein, damit ist es uns ein leichtes den Payload zu konfigurieren. Der Payload sind die Anzahl an Bytes die auf einmal übertragen werden. Der Sender muß (solange nicht die dynamic payload length aktiviert ist) genau so viele Bytes senden wie am Empfänger als Payload-Länge eingestellt ist. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
// Set length of incoming payload &lt;br /&gt;
wl_module_config_register(RX_PW_P0, wl_module_PAYLOAD);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für die ersten Tests werden wir uns um keine Pipes kümmern daher reicht es erstmal wenn wir nur den Payload für die Pipe0 festlegen.&lt;br /&gt;
&lt;br /&gt;
Ich mag das Augenmerk auf folgende Zeile in der wl_config.h legen: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#define wl_module_CONFIG		( (1&amp;lt;&amp;lt;MASK_RX_DR) | (1&amp;lt;&amp;lt;EN_CRC) | (0&amp;lt;&amp;lt;CRCO) )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der Zeile wird einiges für das CONFIG Register eingestellt. Im CONFIG Register können etwa die drei Interrupts maskiert werden, es wird eingestellt ob CRC verwendet wird und ob CRC aus einem oder zwei Bytes besteht. Und dann gibt es noch zwei ganz wesentliche Dinge darin. Einerseits PWR_UP und dann auch noch PRIM_RX. PRIM_RX legt fest ob sich das Modul im TX oder im RX Modus befindet. &lt;br /&gt;
&lt;br /&gt;
Über&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
// Defines for setting the wl_module registers for transmitting or receiving mode&lt;br /&gt;
#define TX_POWERUP wl_module_config_register(CONFIG, wl_module_CONFIG | ( (1&amp;lt;&amp;lt;PWR_UP) | (0&amp;lt;&amp;lt;PRIM_RX) ) )&lt;br /&gt;
#define RX_POWERUP wl_module_config_register(CONFIG, wl_module_CONFIG | ( (1&amp;lt;&amp;lt;PWR_UP) | (1&amp;lt;&amp;lt;PRIM_RX) ) )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
können wir das Modul entweder im TX oder RX Modus aktivieren. &lt;br /&gt;
&lt;br /&gt;
Fürs erste können wir die restlichen Register so lassen wie eingestellt.&lt;br /&gt;
&lt;br /&gt;
Wie schaut es jetzt aus wenn wir ein Register beschreiben wollen das mehr als ein Byte an Daten enthält? Als Paradebeispiel ist dafür natürlich das schreiben des Payloads in den TX-FIFO geeignet da wir hier bis zu 32 Bytes schreiben. &lt;br /&gt;
&lt;br /&gt;
Aber auch andere Register brauchen mehr als 1 Byte, so zum Beispiel die Adressregister die bis zu 5 Bytes breit sind. &lt;br /&gt;
&lt;br /&gt;
Auch dafür können wir uns einer kleinen aber feinen Routine bedienen: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_write_register(uint8_t reg, uint8_t * value, uint8_t len) &lt;br /&gt;
// Writes an array of bytes into inte the wl-module registers.&lt;br /&gt;
{&lt;br /&gt;
    wl_module_CSN_lo;&lt;br /&gt;
    spi_fast_shift(W_REGISTER | (REGISTER_MASK &amp;amp; reg));&lt;br /&gt;
    spi_transmit_sync(value,len);&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An die Routine übergeben wird das Register das beschrieben werden soll, ein Zeiger auf das Array mit den Daten und die Größe dieses Arrays.&lt;br /&gt;
&lt;br /&gt;
=== Register wieder auslesen ===&lt;br /&gt;
&lt;br /&gt;
Eine Frage die sich sehr bald stellen wird: Wie lese ich Register wieder aus? Sei es um die Einstellungen zu  kontrollieren oder auf Bits die darin automatisch gesetzt werden zu reagieren. &lt;br /&gt;
&lt;br /&gt;
Wie wir wissen reagiert der nRF24L01+ auf jeden Befehl den wir schicken automatisch und parallel auf unseren Befehl mit der Antwort des STATUS Registers. Das STATUS Register ist ein wichtiges weil es einiges an wesentlichen Informationen enthält auf die wir reagieren müssen. So werden alle drei Interrupts in dem Register durch setzen eines entsprechenden Bits abgebildet. Dieses Bit muß durch schreiben einer 1 auch wieder gelöscht werden. Es läßt sich außerdem die Pipe auslesen die die Daten gesendet hat sowie, auch ganz wichtig, das TX_FULL Flag auslesen. Dieses Flag wird gesetzt wenn der Sende-Fifo voll ist. &lt;br /&gt;
&lt;br /&gt;
Um den Status auszulesen und sonst nix weiter zu machen können wir eine kleine Funktion einsetzen: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
//return the value of the status register&lt;br /&gt;
extern uint8_t wl_module_get_status()&lt;br /&gt;
{&lt;br /&gt;
	return wl_module_get_one_byte(NOP);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aber nicht vergessen, egal was wir an den nRF24L01+ schicken, er antwortet jedes mal mit dem Inhalt des Status-Registers. Das können wir uns später zu  nutze machen.&lt;br /&gt;
&lt;br /&gt;
In dem Beispiel wird die Funktion wl_module_get_one_byte() verwendet: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern uint8_t wl_module_get_one_byte(uint8_t command)&lt;br /&gt;
{&lt;br /&gt;
uint8_t status;&lt;br /&gt;
&lt;br /&gt;
wl_module_CSN_lo;&lt;br /&gt;
status = spi_fast_shift(command);&lt;br /&gt;
wl_module_CSN_hi;&lt;br /&gt;
&lt;br /&gt;
return status;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Genau betrachtet liefert die Funktion wl_module_get_one_byte() schon den Inhalt des Status Registers. Nachdem die Funktion aber die Grundlage für den Zugriff auf einzelne Teile des Status-Registers ist die in weiteren Funktionen verwendet wird wurde für die bessere Übersichtlichkeit eine eigene Status-Abfrage Funktion implementiert.&lt;br /&gt;
&lt;br /&gt;
Wenn andere Inhalte als der Status abgefragt werden sollen etwa der Inhalt des FIFO wo ja unsere empfangenen Daten liegen bedienen wir uns einer weiteren Funktion. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_read_register(uint8_t reg, uint8_t * value, uint8_t len)&lt;br /&gt;
// Reads an array of bytes from the given start position in the wl-module registers.&lt;br /&gt;
{&lt;br /&gt;
    wl_module_CSN_lo;&lt;br /&gt;
    spi_fast_shift(R_REGISTER | (REGISTER_MASK &amp;amp; reg));&lt;br /&gt;
    spi_transfer_sync(value,value,len);&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Funktion leistet uns für einige weitere Funktionen die darauf zugreifen gute Dienste. Wollen wir als Beispiel den gewählten Funkkanal auslesen so können wir das mit dieser Funktion: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
//returns the current RF channel in RF_CH register&lt;br /&gt;
extern uint8_t wl_module_get_rf_ch()&lt;br /&gt;
{&lt;br /&gt;
	uint8_t data;&lt;br /&gt;
	&lt;br /&gt;
	wl_module_read_register(RF_CH, &amp;amp;data, 1);&lt;br /&gt;
	&lt;br /&gt;
	return data;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wie man sieht greift die Funktion wl_module_get_rf_ch() auf die Funktion wl_module_read_register zu, übergibt die notwendigen Parameter und liefert uns dann das Byte zurück das in RF_CH gespeichert ist.&lt;br /&gt;
&lt;br /&gt;
=== Erster praktischer Test ===&lt;br /&gt;
&lt;br /&gt;
So, genug der Grundlagen, schauen wir uns einen ersten praktischen Test mit den Modulen an.&lt;br /&gt;
&lt;br /&gt;
Der Aufbau ist verdrahtet und mit den richtigen Spannungen versorgt, der µC läuft mit mind. 8 MHz (niedrigere Frequenzen gehen auch aber wurden von mir nicht getestet, achtet auf den passenden SPI-Vorteiler), als Optimierungsmethode ist -Os eingestellt und dem Compiler wurde auch die richtige Frequenz mitgeteilt. &lt;br /&gt;
&lt;br /&gt;
Als erstes werden wir beim Sender einen Zähler hochzählen und die Zahlen an den Empfänger übermitteln. Dadurch sehen wir, ob die Funkstrecke funktioniert. Welche Bytes tatsächlich übertragen werden ist schlußendlich egal. &lt;br /&gt;
&lt;br /&gt;
==== Der Sender ====&lt;br /&gt;
&lt;br /&gt;
Hier die kurze Main-Routine für den Sender, verwendete Funktionen werden im Anschluß besprochen. Nach belieben könnt ihr an freie Pins noch LED anschließen um bestimmte Ereignisse optisch zu überwachen. Im Code selbst wird darauf verzichtet. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * nRF24L01_Tutorial_Sender.c&lt;br /&gt;
 *&lt;br /&gt;
 * Created: 06.01.2012 20:15:04&lt;br /&gt;
 *  Author: Ernst Buchmann&lt;br /&gt;
 */ &lt;br /&gt;
&lt;br /&gt;
#ifndef F_CPU				//Define F_CPU if not done &lt;br /&gt;
#define F_CPU 8000000UL&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
#include &amp;lt;util/delay.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;quot;spi.h&amp;quot;&lt;br /&gt;
#include &amp;quot;wl_module.h&amp;quot;&lt;br /&gt;
#include &amp;quot;nRF24L01.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
volatile uint8_t timercounter;&lt;br /&gt;
&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
	uint8_t payload[wl_module_PAYLOAD];		//Array for Payload&lt;br /&gt;
	uint8_t maincounter =0;&lt;br /&gt;
	uint8_t k;&lt;br /&gt;
	&lt;br /&gt;
	wl_module_init();	//initialise nRF24L01+ Module&lt;br /&gt;
	_delay_ms(50);		//wait for nRF24L01+ Module&lt;br /&gt;
	sei();&lt;br /&gt;
	&lt;br /&gt;
	wl_module_tx_config(wl_module_TX_NR_0);		//Config Module&lt;br /&gt;
		&lt;br /&gt;
	//Timer aktivieren ATMEGA8&lt;br /&gt;
	#if defined(__AVR_ATmega8__)&lt;br /&gt;
	TCCR0 |= ( (1&amp;lt;&amp;lt;CS02) | (1&amp;lt;&amp;lt;CS00));		//Prescaler auf 1024 ATMEGA8&lt;br /&gt;
	TIMSK |= ( (1&amp;lt;&amp;lt;TOIE0));					//enable TOVF ATMEGA8&lt;br /&gt;
	#endif // __AVR_ATmega8__&lt;br /&gt;
	&lt;br /&gt;
	//Timer aktivieren ATMEGA88A&lt;br /&gt;
	#if defined(__AVR_ATmega88A__)&lt;br /&gt;
	TCCR0B |= ( (1&amp;lt;&amp;lt;CS02) | (1&amp;lt;&amp;lt;CS00));&lt;br /&gt;
	TIMSK0 |= ( (1&amp;lt;&amp;lt;TOIE0));&lt;br /&gt;
	#endif // __AVR_ATmega88A__&lt;br /&gt;
		&lt;br /&gt;
    while(1)&lt;br /&gt;
    {&lt;br /&gt;
		if (timercounter &amp;gt;= 30)			//30 entspricht ~1 Sekunde bei 8MHz&lt;br /&gt;
			{&lt;br /&gt;
				timercounter = 0;&lt;br /&gt;
			&lt;br /&gt;
				&lt;br /&gt;
				for (k=0; k&amp;lt;=wl_module_PAYLOAD-1; k++)&lt;br /&gt;
				{&lt;br /&gt;
					payload[k] = k;&lt;br /&gt;
				}&lt;br /&gt;
			&lt;br /&gt;
				payload[0] = maincounter;&lt;br /&gt;
				payload[1] = maincounter+1;				&lt;br /&gt;
			&lt;br /&gt;
				wl_module_send(payload,wl_module_PAYLOAD);&lt;br /&gt;
				&lt;br /&gt;
				maincounter++;&lt;br /&gt;
				if (maincounter &amp;gt;250)&lt;br /&gt;
				{&lt;br /&gt;
					maincounter = 0; &lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
ISR(TIMER0_OVF_vect)&lt;br /&gt;
{&lt;br /&gt;
	timercounter++;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//Unterscheidung je nach verwendeten µC&lt;br /&gt;
#if defined(__AVR_ATmega8__)&lt;br /&gt;
ISR(INT0_vect)&lt;br /&gt;
#endif // __AVR_ATmega8__&lt;br /&gt;
#if defined(__AVR_ATmega88A__)&lt;br /&gt;
ISR(INT0_vect)&lt;br /&gt;
#endif // __AVR_ATmega88A__&lt;br /&gt;
#if defined(__AVR_ATmega168__)&lt;br /&gt;
ISR(PCINT2_vect) &lt;br /&gt;
#endif // __AVR_ATmega168__  &lt;br /&gt;
// Interrupt handler &lt;br /&gt;
{&lt;br /&gt;
    uint8_t status;   &lt;br /&gt;
    &lt;br /&gt;
        // Read wl_module status &lt;br /&gt;
        wl_module_CSN_lo;                               // Pull down chip select&lt;br /&gt;
        status = spi_fast_shift(NOP);					// Read status register&lt;br /&gt;
        wl_module_CSN_hi;                               // Pull up chip select&lt;br /&gt;
		&lt;br /&gt;
		&lt;br /&gt;
		if (status &amp;amp; (1&amp;lt;&amp;lt;TX_DS))							// IRQ: Package has been sent&lt;br /&gt;
		{&lt;br /&gt;
			wl_module_config_register(STATUS, (1&amp;lt;&amp;lt;TX_DS));	//Clear Interrupt Bit&lt;br /&gt;
			PTX=0;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (status &amp;amp; (1&amp;lt;&amp;lt;MAX_RT))							// IRQ: Package has not been sent, send again&lt;br /&gt;
		{&lt;br /&gt;
			wl_module_config_register(STATUS, (1&amp;lt;&amp;lt;MAX_RT));	// Clear Interrupt Bit&lt;br /&gt;
			wl_module_CE_hi;								// Start transmission&lt;br /&gt;
			_delay_us(10);								&lt;br /&gt;
			wl_module_CE_lo;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (status &amp;amp; (1&amp;lt;&amp;lt;TX_FULL))							//TX_FIFO Full &amp;lt;-- this is not an IRQ&lt;br /&gt;
		{&lt;br /&gt;
			wl_module_CSN_lo;                               // Pull down chip select&lt;br /&gt;
			spi_fast_shift(FLUSH_TX);						// Flush TX-FIFO&lt;br /&gt;
			wl_module_CSN_hi;                               // Pull up chip select&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, Teile wie Timer oder Timerinterrupt sollten bekannt sein. Schauen wir uns die Funktionen an die aufgerufen werden. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_init();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
ist die bereits bekannte Initialisierungsfunktion wie oben besprochen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_tx_config(wl_module_TX_NR_0);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Müssen wir uns genauer ansehen. In dieser Funktion werden alle wesentlichen Register eingestellt die wir brauchen um das Modul als Sender zu nutzen. Alle verwendeten Funktionen sollten in einer wl_module.c Datei zusammengefasst werden. Obwohl wir es in diesem Beispiel noch nicht nutzen übergeben wir an wl_module_tx_config als Argument die Pipe auf der der Sender senden soll. Das Argument wird dazu  verwendet die entsprechende Adresse für den Sender festzulegen. Diese Routine ist also schon dafür eingerichtet um später einen Multi-Ceiver Betrieb mit 6 Sendern zu ermöglichen. (Beim Empfänger weiter unten wird eine einfache Konfigurationsroutine verwendet mit der kein Multi-Ceiver Betrieb möglich ist!)&lt;br /&gt;
&lt;br /&gt;
Die Variable PTX wird als globale Variable definiert und dazu verwendet um festzustellen ob gerade gesendet wird. Wird gesendet wird sie im Code auf 1 geschaltet, sonst auf 0. &lt;br /&gt;
&lt;br /&gt;
Zum Schluß wird mittels TX_POWERUP (siehe oben) das Modul als Sender aktiviert. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern void wl_module_tx_config(uint8_t tx_nr) &lt;br /&gt;
{&lt;br /&gt;
    uint8_t tx_addr[5];&lt;br /&gt;
	&lt;br /&gt;
    // Set RF channel&lt;br /&gt;
    wl_module_config_register(RF_CH,wl_module_CH);&lt;br /&gt;
    // Set data speed &amp;amp; Output Power configured in wl_module.h&lt;br /&gt;
    wl_module_config_register(RF_SETUP,wl_module_RF_SETUP);&lt;br /&gt;
    //Config the CONFIG Register (Mask IRQ, CRC, etc)&lt;br /&gt;
    wl_module_config_register(CONFIG, wl_module_CONFIG);&lt;br /&gt;
    &lt;br /&gt;
    wl_module_config_register(SETUP_RETR,(SETUP_RETR_ARD_750 | SETUP_RETR_ARC_15));&lt;br /&gt;
	&lt;br /&gt;
	//set the TX address for the pipe with the same number as the iteration&lt;br /&gt;
			switch(tx_nr)			&lt;br /&gt;
			{&lt;br /&gt;
				case 0: //setup TX address as default RX address for pipe 0 (E7:E7:E7:E7:E7)&lt;br /&gt;
					tx_addr[0] = tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P0_B0_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 1: //setup TX address as default RX address for pipe 1 (C2:C2:C2:C2:C2)&lt;br /&gt;
					tx_addr[0] = tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 2: //setup TX address as default RX address for pipe 2 (C2:C2:C2:C2:C3)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P2_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 3: //setup TX address as default RX address for pipe 3 (C2:C2:C2:C2:C4)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P3_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 4: //setup TX address as default RX address for pipe 4 (C2:C2:C2:C2:C5)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P4_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 5: //setup TX address as default RX address for pipe 5 (C2:C2:C2:C2:C6)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P5_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
			}&lt;br /&gt;
	&lt;br /&gt;
	PTX =0;&lt;br /&gt;
	TX_POWERUP;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der Main-Routine wird ein Timer dazu verwendet ca. jede Sekunde einen Zähler (maincounter) hinauf zu zählen (bis max. 250) und im Array payload wird das erste Element mit dem Wert des maincounters belegt. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
payload[0] = maincounter;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Die Schleife dient nur dazu das Array mit irgendwelchen Werten zu belegen die am Empfänger auch abgerufen werden können um damit zu &amp;quot;spielen&amp;quot;. Dann wird die Funktion aufgerufen die das Array ins Modul überträgt und die Sendung der Daten beginnt. &lt;br /&gt;
&lt;br /&gt;
wl_module_send(payload,wl_module_PAYLOAD); kümmert sich darum. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_send(uint8_t * value, uint8_t len) &lt;br /&gt;
// Sends a data package to the default address. Be sure to send the correct&lt;br /&gt;
// amount of bytes as configured as payload on the receiver.&lt;br /&gt;
{&lt;br /&gt;
    while (PTX) {}                  // Wait until last paket is send&lt;br /&gt;
&lt;br /&gt;
    wl_module_CE_lo;&lt;br /&gt;
&lt;br /&gt;
    PTX = 1;							// Set to transmitter mode&lt;br /&gt;
    TX_POWERUP;							// Power up&lt;br /&gt;
    &lt;br /&gt;
    wl_module_CSN_lo;                   // Pull down chip select&lt;br /&gt;
    spi_fast_shift( FLUSH_TX );			// Write cmd to flush tx fifo&lt;br /&gt;
    wl_module_CSN_hi;                   // Pull up chip select&lt;br /&gt;
    &lt;br /&gt;
    wl_module_CSN_lo;                   // Pull down chip select&lt;br /&gt;
    spi_fast_shift( W_TX_PAYLOAD );		// Write cmd to write payload&lt;br /&gt;
    spi_transmit_sync(value,len);		// Write payload&lt;br /&gt;
    wl_module_CSN_hi;                   // Pull up chip select&lt;br /&gt;
    &lt;br /&gt;
    wl_module_CE_hi;                    // Start transmission&lt;br /&gt;
	_delay_us(10);						// Grünes Modul funktioniert nicht mit 10µs delay&lt;br /&gt;
	wl_module_CE_lo;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zum Schluß werfen wir noch einen Blick auf die Interrupt-Routine ISR(INT0_vect). Wir wissen, daß es drei Zustände gibt die einen Interrupt auslösen können: RX_DR der Auftritt wenn neue Daten empfangen wurden, TX_DS der Auftritt wenn Daten gesendet wurden und MAX_RT der Auftritt wenn die maximale Anzahl an Sendungswiederholungen ohne Erfolg stattgefunden haben. Sobald einer der Zustände auftritt wird auch das passende Bit im STATUS-Register gesetzt. Um das Bit zu löschen muß eine 1 geschrieben werden. Jeder dieser drei Zustände kann ausmaskiert werden und löst dann keinen Interrupt aus. Man kann so entweder per Interrupt-Routine auf ein Ereignis reagieren oder aber auch mittels polling auf das interessierende Bit auf ein Ereignis reagieren. &lt;br /&gt;
&lt;br /&gt;
In der ISR(INT0_vect) wird zum Beispiel auf TX_DS reagiert und auf MAX_RT. Soblad das Paket gesendet wurde wird TX_DS wieder zurückgesetzt und die Variable PTX auf 0 gesetzt. MAX_RT wird genutzt um die Daten noch einmal zu senden. Der TX-FIFO Speicher wird ja nicht gelöscht wenn eine Datenübertragung fehlgeschlagen hat.&lt;br /&gt;
&lt;br /&gt;
==== Der Empfänger ====&lt;br /&gt;
&lt;br /&gt;
So, ein nRF24L01+ Modul sollte mal funken. Um das zu kontrollieren brauchen wir jetzt unser zweites nRF24L01+ Modul mit dem wir die Daten empfangen. Ich verwende in dem Beispiel eine LCD-Anzeige um die Daten anzuzeigen auf das aber nicht weiter eingegangen wird. Wie die Daten angezeigt werden ist jedem selbst überlassen, genau so gut kann man mittels UART die Daten am PC anzeigen lassen oder was immer Euch zur Verfügung steht. Auch beim Empfänger nicht darauf vergessen die üblichen Stolpersteine wie -Os, µC-Frequenz etc. einzustellen. &lt;br /&gt;
&lt;br /&gt;
Wie schon angekündigt können empfangene Daten mittels Polling abgefragt werden oder über IRQ. In dem Beispiel wird mittels Polling kontrolliert ob neue Daten angekommen sind. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * nRF24L01_Tutorial_RX.c&lt;br /&gt;
 *&lt;br /&gt;
 * Created: 06.01.2012 22:51:57&lt;br /&gt;
 *  Author: Ernst Buchmann&lt;br /&gt;
 */ &lt;br /&gt;
&lt;br /&gt;
#ifndef F_CPU				//define F_CPU if not done &lt;br /&gt;
#define F_CPU 20000000UL&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
#include &amp;lt;util/delay.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;string.h&amp;gt;&lt;br /&gt;
#include &amp;quot;spi.h&amp;quot;&lt;br /&gt;
#include &amp;quot;lcd-routines.h&amp;quot;&lt;br /&gt;
#include &amp;quot;wl_module.h&amp;quot;&lt;br /&gt;
#include &amp;quot;nRF24L01.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//Variablen&lt;br /&gt;
volatile uint8_t PTX;			//Global Variable&lt;br /&gt;
char itoabuffer[20];&lt;br /&gt;
&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
	uint8_t payload[wl_module_PAYLOAD];		//holds the payload&lt;br /&gt;
	uint8_t nRF_status;						//STATUS information of nRF24L01+&lt;br /&gt;
	uint8_t zaehler = 0;&lt;br /&gt;
	&lt;br /&gt;
	lcd_init();&lt;br /&gt;
	lcd_clear();&lt;br /&gt;
	wl_module_init();		//Init nRF Module&lt;br /&gt;
	_delay_ms(50);			//wait for Module&lt;br /&gt;
	sei();					//activate Interrupts&lt;br /&gt;
	wl_module_config();		//config nRF as RX Module, simple Version&lt;br /&gt;
	&lt;br /&gt;
    while(1)&lt;br /&gt;
    {&lt;br /&gt;
		while (!wl_module_data_ready());			//waits for RX_DR Flag in STATUS&lt;br /&gt;
		nRF_status = wl_module_get_data(payload);	//reads the incoming Data to Array payload&lt;br /&gt;
		zaehler = payload[0];&lt;br /&gt;
		lcd_clear();&lt;br /&gt;
		lcd_home();&lt;br /&gt;
		itoa(zaehler, itoabuffer, 10);				//conversion into String&lt;br /&gt;
		lcd_string(itoabuffer);&lt;br /&gt;
		&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das ist die ziemlich kurze main-Routine zum Abfragen der Daten die im Empfänger angekommen sind. Geübten Augen wird sofort auffallen, daß die Abfrage über Polling in diesem Beispiel den µC solange in einer while-Schleife fest hält bis neue Daten angekommen sind. Das ist natürlich nicht praktikabel wenn der µC noch andere Dinge zu erledigen hätte. Für ein erstes Übungsbeispiel wo der Fokus nur darauf liegt die Funkstrecke einzurichten soll uns das nicht stören. Schauen wir und das Programm im Detail an: &lt;br /&gt;
&lt;br /&gt;
Achtung: F_CPU an die eigenen Gegebenheiten anpassen!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_init();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
kennen wir schon von den Sender Einstellungen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_config&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
Konfiguriert das nRF Modul mit den wesentlichen Registerinhalten und stellt das Modul auf Empfang. Es wurde hier absichtlich sehr kurz gehalten und nur die wesentlichsten Einstellungen getroffen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_config() &lt;br /&gt;
// Sets the important registers in the wl-module and powers the module&lt;br /&gt;
// in receiving mode&lt;br /&gt;
{&lt;br /&gt;
    // Set RF channel&lt;br /&gt;
    wl_module_config_register(RF_CH,wl_module_CH);&lt;br /&gt;
	// Set data speed &amp;amp; Output Power configured in wl_module.h&lt;br /&gt;
	wl_module_config_register(RF_SETUP,wl_module_RF_SETUP);&lt;br /&gt;
	// Set length of incoming payload &lt;br /&gt;
    wl_module_config_register(RX_PW_P0, wl_module_PAYLOAD);&lt;br /&gt;
	&lt;br /&gt;
    // Start receiver &lt;br /&gt;
    PTX = 0;        // Start in receiving mode&lt;br /&gt;
    RX_POWERUP;     // Power up in receiving mode&lt;br /&gt;
    wl_module_CE_hi;     // Listening for pakets&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Wie man sieht wurde hier nur die Payload-Größe für Pipe0 eingestellt und keine weiteren Empfangsadressen gesetzt. Das funktioniert weil beim Sender zwar Adressen konfiguriert wurden aber die Default-Adressen verwendet wurden. Man könnte sich für dieses Beispiel die Definition der Adressen beim Sender sparen und auch dort eine sehr verkürzte Konfiguration verwenden. Als Empfangskanal und -Geschwindigkeit müssen natürlich die gleichen Werte verwendet werden wie beim Sender. Auch die Payload-Größe muß im Empfänger zu  der Anzahl an Bytes passen die der Sender schickt. &lt;br /&gt;
&lt;br /&gt;
In dieser Zeile while (!wl_module_data_ready()); prüft das Programm ob im Empfangsmodul Daten angekommen sind die ausgelesen werden können und bleibt solange in dieser while-Schleife bis RX_DR gesetzt wurde. &lt;br /&gt;
&lt;br /&gt;
Diese Funktion macht nichts weiter als das STATUS Register auszulesen und den Wert von RX_DR zurück zu geben: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern uint8_t wl_module_data_ready() &lt;br /&gt;
// Checks if data is available for reading&lt;br /&gt;
{&lt;br /&gt;
    if (PTX) return 0;&lt;br /&gt;
    uint8_t status;&lt;br /&gt;
    // Read wl_module status &lt;br /&gt;
    wl_module_CSN_lo;                                // Pull down chip select&lt;br /&gt;
    status = spi_fast_shift(NOP);               // Read status register&lt;br /&gt;
    wl_module_CSN_hi;                                // Pull up chip select&lt;br /&gt;
    return status &amp;amp; (1&amp;lt;&amp;lt;RX_DR);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sobald RX_DR 1 ist und damit anzeigt, daß Daten angekommen sind wird die while Schleife verlassen und &amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;nRF_status = wl_module_get_data(payload);&amp;lt;/syntaxhighlight&amp;gt; ausgeführt. &lt;br /&gt;
&lt;br /&gt;
Diese Funktion liest den Inhalt des RX-FIFO Speichers aus und gibt den Inhalt des STATUS Registers zurück. Anschließend wird noch das RX_DR Bit gelöscht um den nächsten Datenempfang detektieren zu können: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern uint8_t wl_module_get_data(uint8_t * data) &lt;br /&gt;
// Reads wl_module_PAYLOAD bytes into data array&lt;br /&gt;
{&lt;br /&gt;
	uint8_t status;&lt;br /&gt;
    wl_module_CSN_lo;                               // Pull down chip select&lt;br /&gt;
    status = spi_fast_shift( R_RX_PAYLOAD );            // Send cmd to read rx payload&lt;br /&gt;
    spi_transfer_sync(data,data,wl_module_PAYLOAD); // Read payload&lt;br /&gt;
    wl_module_CSN_hi;                               // Pull up chip select&lt;br /&gt;
    wl_module_config_register(STATUS,(1&amp;lt;&amp;lt;RX_DR));   // Reset status register&lt;br /&gt;
	return status;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Rest der main-Routine kümmert sich dann nur noch um die Ausgabe der Daten.&lt;br /&gt;
&lt;br /&gt;
Zum Schluß noch eine kleine Aufgabe: &lt;br /&gt;
Warum wird beim Empfänger keine Interruptfunktion ISR(INT0_vect) verwendet? Und löst  RX_DR überhaupt einen Interrupt aus?&lt;br /&gt;
&lt;br /&gt;
== Beispieldateien ==&lt;br /&gt;
&lt;br /&gt;
Hier finden sich die Dateien die in diesem Beispiel verwendet wurden: &lt;br /&gt;
&lt;br /&gt;
[[Datei: nrf24L01_Tutorial.zip]]&lt;br /&gt;
&lt;br /&gt;
In wl_module.c finden sich alle Routinen die im Tutorial verwendet wurden und auch noch viel, viel mehr. Es sind alle Routinen vorhanden um sehr schnell einen Multi-Ceiver mit 6 Data-Pipes aufzubauen oder verschiedene interessante Daten auszulesen. Das Prinzip sollte nach diesem Tutorial, so hoffe ich, klar sein um diese Routinen zu durchschauen und selbst anzuwenden oder anzupassen.&lt;br /&gt;
&lt;br /&gt;
== Zusammenfassung ==&lt;br /&gt;
&lt;br /&gt;
Noch ein paar wesentliche Punkte zu den Funkmodulen und ersten Schritten hier im Tutorial: &lt;br /&gt;
&lt;br /&gt;
1. Achtung mit der Spannung, die Module vertragen wirklich keine höhere Spannung als im Datenblatt angegeben wie ich leider feststellen durfte. &lt;br /&gt;
&lt;br /&gt;
2. Wie schon angesprochen eignet sich die Polling-Variante im Empfänger-Beispiel nur bedingt für die Umsetzung in eigenen Projekten da sie den µC bis zum nächsten Dateneingang lahm legt. Und sollten keine Daten kommen, dann ist der µC in dieser Zeile ad infinitum gefangen. &lt;br /&gt;
&lt;br /&gt;
3. Es kann sein, wenn die Daten sehr schnell kommen, daß man ein RX_DR versäumt. Der FIFO hat ja Platz für 3xPayload. Man sollte also durchaus auch abfragen ob noch weitere Daten im FIFO vorhanden sind. Insbesondere wenn mit Multi-Ceivern gearbeitet wird. &lt;br /&gt;
&lt;br /&gt;
4. Für kurze Distanzen funktioniert die Datenübertragung mit 2Mbps sehr gut. Wenn längere Distanzen überwunden werden sollen, dann sollte man auf 250kbps zurückgehen, das erhöht die Empfindlichkeit des Empfängers. Der Sender sollte mit maximaler Leistung senden. Außerdem sollte der Payload nur so groß sein wie auch wirklich benötigt. Je weniger Bytes übertragen werden desto größer die Chance auf erfolgreiche Datenübertragung. Bei Bedarf gibt es auch Module die den Anschluß einer externen Antenne ermöglichen. &lt;br /&gt;
&lt;br /&gt;
5. Man sollte die Möglichkeiten nutzen die Enhanced Shockburst bietet. Das TX_DS Bit wird dann nur gesetzt wenn auch wirklich ein ACK vom Empfänger eingetroffen ist. (Im Tutorial wird übrigens Enhanced Shockburst verwendet. Details dazu hätten aber das Tutorial gesprengt)&lt;br /&gt;
&lt;br /&gt;
6. Beim Multi-Ceiver Betrieb sollte für jeden Sender ein, sich von den anderen Sendern unterscheidendes, AUTO RETRANSMIT DELAY (ARD) eingestellt werden. Das erhöht die Chancen, daß sich die Sender nicht gegenseitig stören. &lt;br /&gt;
&lt;br /&gt;
7. Aufpassen beim AUTO RETRANSMIT DELAY wenn mit 250kpbs gesendet wird. Der Default-Wert von 250µS ist zu kurz um eine funktionierende Datenübertragung zu gewährleisten. Für Details siehe Datenblatt. &lt;br /&gt;
&lt;br /&gt;
Nachrichten an den Autor: [http://www.mikrocontroller.net/user/show/Puravida PuraVida]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Funk]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=NRF24L01_Tutorial&amp;diff=82714</id>
		<title>NRF24L01 Tutorial</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=NRF24L01_Tutorial&amp;diff=82714"/>
		<updated>2014-04-18T17:38:32Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Zusammenfassung */ Referenzfehler beseitigt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Das Tutorial soll den Einstieg, eine Funkstrecke mit dem &lt;br /&gt;
[http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P nRF24L01+] aufzubauen, erleichtern.&lt;br /&gt;
&lt;br /&gt;
Beim nRF24L01+ handelt es sich um einen single Chip Transceiver von Nordic Semiconductor. Dieser Chip kann also sowohl als Sender (TX) als auch als Empfänger (RX) arbeiten und bietet eine Reihe von sehr praktischen Features wie Ultra Low Power (nur 900nA in Power Down Modus), 6 Data Pipes beim Betrieb als MultiCeiver, Enhanced Shockburst (dazu später mehr), Automatic Packet Handling, 5V tolerante Eingänge, SPI Schnittstelle und noch einiges mehr. &lt;br /&gt;
&lt;br /&gt;
Um mit dem nRF24L01+ eine Funkstrecke zu realisieren braucht man nicht mehr als einen µC sowie ein nRF24L01+ Funkmodul. Das ganze natürlich zwei mal. &lt;br /&gt;
In dem Tutorial wird der AVR Atmega8 verwendet sowie nRF24L01+ Module die sehr günstig über das Internet (Ebay derzeit unter 2€) in verschiedenen Ausführungen bezogen werden können. Für Testaufbauten reichen einfache Steckbretter um die Hardware aufzubauen. &lt;br /&gt;
Bei der Hand sollte unbedingt das Datenblatt des nRF24L01+ sein und natürlich das Datenblatt des jeweils verwendeten µC. Das Datenblatt des nRF24L01+ kann von Nordic Semiconductor runtergeladen werden: &lt;br /&gt;
&lt;br /&gt;
[http://www.nordicsemi.com/kor/nordic/download_resource/8765/2/8827113 nRF24L01 Datenblatt]&lt;br /&gt;
&lt;br /&gt;
Vieles in diesem Tutorial basiert auf der Vorarbeit von Stefan Engelke und Brennan Ball denen mein Dank dafür gilt.&lt;br /&gt;
&lt;br /&gt;
== Das nRF24L01+ Modul ==&lt;br /&gt;
Ein Funkmodul mit dem nRF24L01+ hat zumindest 8 Anschlüsse: &lt;br /&gt;
[[Datei:Foto_nrf24L01+Modul.jpg|miniatur|rechts|Handelsübliche nRF24L01+ Module]]&lt;br /&gt;
Vcc, GND, IRQ, CE, und die vier SPI bezogenen Anschlüsse CSN, SCK, MISO, und MOSI.&lt;br /&gt;
&lt;br /&gt;
Je nach Datenblatt des verwendeten Moduls ist die Spannung zu wählen, manche Module verfügen über eigene Spannungsregler, der nRF24L01+ selbst verträgt Spannungen von 1,9V bis 3,6V. Auf dem von mir verwendeten Modul befindet sich kein weiterer Spannungsregler somit muß man aufpassen den Chip nicht durch Überspannung zu ruinieren. Als Spannung habe ich 3,3V verwendet. &lt;br /&gt;
&lt;br /&gt;
Die Anschlüsse SCK, MISO, und MOSI werden mit den entsprechenden Pins des µC verbunden. Der CSN (chip select not) Pin ist active low und normalerweise auf high-Level gehalten. Wenn CSN low geschaltet wird beginnt der nRF24L01+ am SPI Port zu horchen oder anders gesagt, jedes Kommando an den Chip wird mit einem high to low schalten von CSN eingeleitet. Im Falle des Atmega8 werden SCK mit SCK, MISO mit MISO und MOSI mit MOSI verbunden. Für den CSN wurde Pin PB1 gewählt. &lt;br /&gt;
[[Datei:Stromlaufplan.png|miniatur|rechts|Stromlaufplan für den Anschluß an einen ATmega8]]&lt;br /&gt;
Was uns noch bleibt ist CE und IRQ. CE wird im RX und TX Modus verwendet für die Datenübertragung. In dem Beispiel an Pin PB0 angeschlossen. IRQ ist der Interrupt-Pin des Funkmoduls und ist active-low. Es gibt drei interne Interrupts im nRF24L01+ die den IRQ Pin low schalten wobei man sämtliche Interrupts ausmaskieren kann wenn man möchte. Am Atmega8 wurde IRQ mit Pin PD2 (INT0) verbunden um auf die externen Interrupts reagieren zu können.&lt;br /&gt;
&lt;br /&gt;
== Die SPI-Routine ==&lt;br /&gt;
Als SPI-Routine habe ich die Routine von Stefan Engelke unverändert übernommen die er dankenswerter Weise zur allgemeinen Verwendung zur Verfügung gestellt hat. [http://www.tinkerer.eu/AVRLib/SPI siehe Tinkerer.eu]&lt;br /&gt;
&lt;br /&gt;
spi.h&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#ifndef _SPI_H_&lt;br /&gt;
#define _SPI_H_&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
extern void spi_init();&lt;br /&gt;
extern void spi_transfer_sync (uint8_t * dataout, uint8_t * datain, uint8_t len);&lt;br /&gt;
extern void spi_transmit_sync (uint8_t * dataout, uint8_t len);&lt;br /&gt;
extern uint8_t spi_fast_shift (uint8_t data);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
spi.c&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;spi.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define PORT_SPI    PORTB&lt;br /&gt;
#define DDR_SPI     DDRB&lt;br /&gt;
#define DD_MISO     DDB4&lt;br /&gt;
#define DD_MOSI     DDB3&lt;br /&gt;
#define DD_SS       DDB2&lt;br /&gt;
#define DD_SCK      DDB5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void spi_init()&lt;br /&gt;
// Initialize pins for spi communication&lt;br /&gt;
{&lt;br /&gt;
    DDR_SPI &amp;amp;= ~((1&amp;lt;&amp;lt;DD_MOSI)|(1&amp;lt;&amp;lt;DD_MISO)|(1&amp;lt;&amp;lt;DD_SS)|(1&amp;lt;&amp;lt;DD_SCK));&lt;br /&gt;
    // Define the following pins as output&lt;br /&gt;
    DDR_SPI |= ((1&amp;lt;&amp;lt;DD_MOSI)|(1&amp;lt;&amp;lt;DD_SS)|(1&amp;lt;&amp;lt;DD_SCK));&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
    SPCR = ((1&amp;lt;&amp;lt;SPE)|               // SPI Enable&lt;br /&gt;
            (0&amp;lt;&amp;lt;SPIE)|              // SPI Interrupt Enable&lt;br /&gt;
            (0&amp;lt;&amp;lt;DORD)|              // Data Order (0:MSB first / 1:LSB first)&lt;br /&gt;
            (1&amp;lt;&amp;lt;MSTR)|              // Master/Slave select   &lt;br /&gt;
            (0&amp;lt;&amp;lt;SPR1)|(1&amp;lt;&amp;lt;SPR0)|    // SPI Clock Rate&lt;br /&gt;
            (0&amp;lt;&amp;lt;CPOL)|              // Clock Polarity (0:SCK low / 1:SCK hi when idle)&lt;br /&gt;
            (0&amp;lt;&amp;lt;CPHA));             // Clock Phase (0:leading / 1:trailing edge sampling)&lt;br /&gt;
&lt;br /&gt;
    SPSR = (1&amp;lt;&amp;lt;SPI2X);              // Double Clock Rate&lt;br /&gt;
    &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void spi_transfer_sync (uint8_t * dataout, uint8_t * datain, uint8_t len)&lt;br /&gt;
// Shift full array through target device&lt;br /&gt;
{&lt;br /&gt;
       uint8_t i;      &lt;br /&gt;
       for (i = 0; i &amp;lt; len; i++) {&lt;br /&gt;
             SPDR = dataout[i];&lt;br /&gt;
             while((SPSR &amp;amp; (1&amp;lt;&amp;lt;SPIF))==0);&lt;br /&gt;
             datain[i] = SPDR;&lt;br /&gt;
       }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void spi_transmit_sync (uint8_t * dataout, uint8_t len)&lt;br /&gt;
// Shift full array to target device without receiving any byte&lt;br /&gt;
{&lt;br /&gt;
       uint8_t i;      &lt;br /&gt;
       for (i = 0; i &amp;lt; len; i++) {&lt;br /&gt;
             SPDR = dataout[i];&lt;br /&gt;
             while((SPSR &amp;amp; (1&amp;lt;&amp;lt;SPIF))==0);&lt;br /&gt;
       }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
uint8_t spi_fast_shift (uint8_t data)&lt;br /&gt;
// Clocks only one byte to target device and returns the received one&lt;br /&gt;
{&lt;br /&gt;
    SPDR = data;&lt;br /&gt;
    while((SPSR &amp;amp; (1&amp;lt;&amp;lt;SPIF))==0);&lt;br /&gt;
    return SPDR;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Der SPI Befehlssatz ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Command name !! Command word (binary) !! # Data bytes !! Operation&lt;br /&gt;
|-&lt;br /&gt;
| R_REGISTER || 000A AAAA || 1 to 5 &amp;lt;br /&amp;gt; LSByte first || Read command and STATUS registers. AAAAA = 5 bit Register Map Address&lt;br /&gt;
|-&lt;br /&gt;
| W_REGISTER || 001A AAAA || 1 to 5 &amp;lt;br /&amp;gt; LSByte first || Write command and status registers. AAAAA = 5 bit Register Map Address &amp;lt;br /&amp;gt; Executable in power down or standby modes only.&lt;br /&gt;
|-&lt;br /&gt;
| R_RX_PAYLOAD || 0110 0001 || 1 to 32 &amp;lt;br /&amp;gt; LSByte first || Read RX-payload: 1 – 32 bytes. A read operation always starts at byte 0. Payload is deleted from FIFO after it is read. Used in RX mode.&lt;br /&gt;
|-&lt;br /&gt;
| W_TX_PAYLOAD || 1010 0000 || 1 to 32 &amp;lt;br /&amp;gt; LSByte first || Write TX-payload: 1 – 32 bytes. A write operation always starts at byte 0 used in TX payload.&lt;br /&gt;
|-&lt;br /&gt;
| FLUSH_TX || 1110 0001 || 0 || Flush TX FIFO, used in TX mode&lt;br /&gt;
|-&lt;br /&gt;
| FLUSH_RX || 1110 0010 || 0 || Flush RX FIFO, used in RX mode &amp;lt;br /&amp;gt; Should not be executed during transmission of acknowledge, that is, acknowledge package will not be completed.&lt;br /&gt;
|-&lt;br /&gt;
| REUSE_TX_PL || 1110 0011 || 0 || Used for a PTX device&lt;br /&gt;
Reuse last transmitted payload. &amp;lt;br /&amp;gt; TX payload reuse is active until W_TX_PAYLOAD or FLUSH TX is executed. TX payload reuse must not be activated or deactivated during package transmission.&lt;br /&gt;
|-&lt;br /&gt;
| R_RX_PL_WID* || 0110 0000 || 1 || Read RX payload width for the top R_RX_PAYLOAD in the RX FIFO. &amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt; Flush RX FIFO if the read value is larger than 32 bytes.&lt;br /&gt;
|-&lt;br /&gt;
| W_ACK_PAYLOAD* || 1010 1PPP || 1 to 32 &amp;lt;br /&amp;gt; LSByte first || Used in RX mode. &amp;lt;br /&amp;gt; Write Payload to be transmitted together with ACK packet on PIPE PPP. (PPP valid in the range from 000 to 101). Maximum three ACK packet payloads can be pending. Payloads with same PPP are handled using first in - first out principle. Write payload: 1– 32 bytes. A write operation always starts at byte 0.&lt;br /&gt;
|-&lt;br /&gt;
| W_TX_PAYLOAD_NOACK* || 1011 0000 || 1 to 32 &amp;lt;br /&amp;gt;LSByte first || Used in TX mode. Disables AUTOACK on this specific packet.&lt;br /&gt;
|-&lt;br /&gt;
| NOP || 1111 1111 || 0 || No Operation. Might be used to read the STATUS register&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;*&amp;lt;/b&amp;gt;=The bits in the FEATURE register shown in Table 28. on page 63 have to be set.&lt;br /&gt;
&lt;br /&gt;
Zu finden natürlich auch im Datasheet auf Seite 51. &lt;br /&gt;
&lt;br /&gt;
Es gibt ein paar Dinge die zu beachten sind. Bevor die Kommunikation mit dem Chip begonnen wird muß der CSN Pin high sein. Zum Start der Kommunikation wird der CSN Pin auf Low geschaltet und muß auch Low bleiben während der gesamten Dauer der Kommunikation. &lt;br /&gt;
&lt;br /&gt;
Dann wird der Befehl gesendet. Wenn man Daten vom nRF24L01+ empfangen möchte muß für jedes Byte an Daten auch ein Byte gesendet werden. Wenn man nur seine eigenen Daten an den Chip senden möchte kümmert man sich nicht weiter darum was der Chip zurücksendet. Auf jeden Fall wird parallel zu den Daten die man schickt der STATUS des Chips zurückgegeben. Ist die Unterhaltung (mit dem nRF24L01+ - es geht noch nicht um die Funkstrecke) abgeschlossen, wird CSN wieder auf High geschaltet. &lt;br /&gt;
&lt;br /&gt;
Als Beispiel: Wir wollen den R_REGISTER Befehl senden um den Inhalt des Registers TX_ADDR zu lesen. Das TX_ADDR Register enthält maximal 5 Bytes an Daten/Information. Als erstes CSN auf Low. Dann &amp;quot;0001 0000&amp;quot; an den Chip senden. Das weist den nRF24L01+ an das Register TX_ADDR auszugeben. Dann werden fünf Dummy-Bytes gesendet und für jedes Dummy-Byte erhält man ein Byte aus dem TX_ADDR Register zurück. (Der Inhalt der Dummy-Bytes ist ganz egal) Danach CSN wieder auf High. Insgesamt erhält man vom Chip sechs Bytes: Egal welches Command Byte man sendet antwortet der Chip mit dem STATUS-Register.&lt;br /&gt;
&lt;br /&gt;
Mit dem R_REGISTER können also alle Registerinhalte gelesen werden die zwischen 1 Byte und 5 Byte groß sind. &lt;br /&gt;
&lt;br /&gt;
Mit dem W_REGISTER können wir beliebig unsere Werte in die Register schreiben. Das Prinzip ist das gleiche, es wird der Befehl 001AAAAA gesendet wobei AAAAA für die Adresse des Registers steht. Danach werden - je nach Register - bis zu fünf Bytes an Daten gesendet die in das Register geschrieben werden sollen. &lt;br /&gt;
&lt;br /&gt;
R_RX_PAYLOAD ist einer der beiden Befehle die mit dem FIFO zu tun haben. R_RX_PAYLOAD liest den Inhalt des FIFO sollten Daten empfangen werden. Der Empfang von Daten wird mit dem RX_DR Interrupt angezeigt. Bei diesem Befehl ist das Vorgehen ein wenig anders. Wenn man Daten per Funkstrecke empfängt ist CE high. Sobald man ein Paket empfangen hat muß man CE low schalten um den Empfang auszuschalten und danach kann R_RX_PAYLOAD ausgeführt werden. Gefolgt von so vielen Dummy-Bytes wie Payload definiert wurde. Gelesene Pakete werden automatisch aus dem FIFO gelöscht. Sollten weitere Pakete im FIFO warten sollten die auch gleich gelesen werden. Sobald der FIFO leer ist wird der RX_DR Interrupt gelöscht und CE wieder auf High geschaltet. Der FIFO kann maximal 3 Pakete (PAYLOADS) halten. Ein Paket ist maximal 32 Bytes groß. &lt;br /&gt;
&lt;br /&gt;
Der zweite dieser Befehle ist W_TX_PAYLOAD. Er wird verwendet wenn man sich im TX-Modus befindet und Daten senden möchte. Im TX-Modus ist CE low. Nachdem man den Befehl gesendet hat werden so viele Bytes ins FIFO geladen wie man für den Empfänger auch defniniert hat. D. h. Payload Größe muß beim Sender und Empfänger gleich groß sein solange man das FEATURE-Register nicht verwendet. Nachdem die Daten in den FIFO geladen wurden muß man den CE Pin toggeln (mind. 10µs high) damit die Daten gesendet werden. Man kann auch zuerst drei Pakete in den FIFO laden und dann erst wegschicken. &lt;br /&gt;
&lt;br /&gt;
FLUSH_TX und FLUSH_RX löschen die Daten im TX_FIFO bzw. RX_FIFO. &lt;br /&gt;
&lt;br /&gt;
NOP kann sehr gut dafür verwendet werden das STATUS Register zu lesen da es - wie der Name schon sagt - sonst nichts tut.&lt;br /&gt;
&lt;br /&gt;
== Die nRF24L01+ Register ==&lt;br /&gt;
&lt;br /&gt;
Hier ist es nötig das Datenblatt ab Seite 57 zur Hand zu nehmen da die Menge an Registern das Tutorial sprengen würde, würden alle hier besprochen. &lt;br /&gt;
&lt;br /&gt;
Mit Hilfe der Register wird das Modul per SPI konfiguriert und auch kontrolliert. Die meisten Register sind 1Byte groß, in vielen Registern werden aber nicht alle Bytes verwendet. Eine Ausnahme bilden die Register RX_ADDR_P0, RX_ADDR_P1 sowie TX_ADDR die jeweils bis zu 5 Byte groß sind. (Abhängig von der Konfiguration). Die drei 32Byte großen Register werden mit eigenen SPI Befehlen gesteuert. Sie dienen dazu die Datenpakete in den nRF24L01+ zu schreiben bzw. empfangene auszulesen. &lt;br /&gt;
&lt;br /&gt;
Innerhalb der Register belegen die Informationen eine unterschiedliche Anzahl an Bits. Als Beispiel das STATUS Register. Bit 1 bis 3 geben hier zum Beispiel Auskunft über die verwendete Pipe. Während alle anderen Informationen nur 1 Bit groß sind in dem Register. Es muß also immer entsprechend maskiert werden um die gewünschten Infos zu lesen oder auch zu schreiben.&lt;br /&gt;
&lt;br /&gt;
== Die ersten Schritte ==&lt;br /&gt;
&lt;br /&gt;
So, nach dem kurzen theoretischen Überblick ist es an der Zeit die ersten Schritte zu wagen. Sollte es noch nicht der Fall sein sollten spätestens jetzt die beiden nRF24L01+ Module mit dem µC verkabelt sein. Der ATmega8 sollte für dieses Beispiel mit mind. 8Mhz laufen, ob externer Quarz oder interner Takt ist dabei egal. Nochmals zur Erinnerung: Das nRF-Modul darf mit maximal 3,6V betrieben werden, die Eingänge verkraften aber 5V Signale solange die Versorgungsspannung zwischen 2,7V und 3,3V liegt. Werft sicherheitshalber einen Blick ins Datenblatt betreffend dieser Dinge.&lt;br /&gt;
&lt;br /&gt;
In der Vergangenheit gab es bei Arduino-Boards Fälle, in denen eine Spitzenspannung von mehr als 3,3V zu sehen war. Bei der Stromversorgung des Moduls direkt von einem Arduino-Board sollte daher ein 10µF Kondensator oder mehr parallel zu den VCC- und GND-Pins angeschlossen werden.&amp;lt;ref&amp;gt;[//forum.hobbycomponents.com/viewtopic.php?f=39&amp;amp;t=1317 Thread im &#039;&#039;Support forum for Hobby Components products&#039;&#039;] (abgerufen am 18. April 2014)&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Worüber man sich auch Gedanken machen muß ist, wie man die Funktion bzw. die Daten die man hin und her schickt, visualisiert. Ohne Visualisierung kann es natürlich auch funktionieren doch für das Tutorial wollen wir sicher sehen ob, und wenn ja, welche Daten hin und hergeschickt werden oder auch mal einen Registerinhalt anzeigen. In welcher Form das passiert bleibt jedem selbst überlassen. Man kann die Daten auf einem LCD ausgeben oder auch per UART an den PC liefern lassen. Hier sollte jeder das wählen womit er am Besten zurecht kommt. Theoretisch könnte man auch das Auslangen mit LEDs finden und sich die Registerinhalte oder Datenpakete mittels 8 LEDs anzeigen lassen. Allerdings wäre das nicht sehr komfortabel. &lt;br /&gt;
&lt;br /&gt;
=== Konfigurieren des nRF24L01+ ===&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir das Modul mal initialisieren bzw. die verwendeten Anschlüsse des µC einrichten. Am besten packen wir das ganze in eine Routine die ziemlich zeitig beim Start des µC aufgerufen wird. Weiter unten findet sich dann die Header-Datei die hier verwendet wird.&lt;br /&gt;
&lt;br /&gt;
Als erstes setzen wir die beiden verwendeten Pins als Ausgänge und schalten sie in den default-Status.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_init() &lt;br /&gt;
{&lt;br /&gt;
    DDRB |= ((1&amp;lt;&amp;lt;CSN)|(1&amp;lt;&amp;lt;CE));&lt;br /&gt;
    wl_module_CE_lo;&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dann werden die beiden (eigentlich reicht INT0) externen Interrupteingänge des ATmega8 auf fallende Flanke gestellt und der Interrupt für INT0 aktiviert. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
    MCUCR = ((1&amp;lt;&amp;lt;ISC11)|(0&amp;lt;&amp;lt;ISC10)|(1&amp;lt;&amp;lt;ISC01)|(0&amp;lt;&amp;lt;ISC00));&lt;br /&gt;
    GICR  = ((0&amp;lt;&amp;lt;INT1)|(1&amp;lt;&amp;lt;INT0));					&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
und zum Schluß noch SPI (siehe oben unter SPI) initialisiert:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;	    &lt;br /&gt;
    spi_init();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anbei noch die Header-Datei für das Modul: &lt;br /&gt;
[[Datei:wl_module.h]] (aus irgendeinem Grund forciert das Wiki hier große Anfangsbuchstaben, die Datei sollte als &amp;quot;wl_module.h&amp;quot; abgespeichert werden.)&lt;br /&gt;
&lt;br /&gt;
In dieser Header-Datei werden die wesentlichen Zuordnungen und Einstellungen getroffen wie Pin-Definitionen, Größe des Payloads, Interruptmaskierung für das Modul, CRC-Größe, etc. Außderdem die public functions deklariert. Im Moment noch nicht schrecken, es sind eine ganze Reihe von Funktionen die in einer wl_module.c Datei zusammengefaßt sind. Aufmerksame Leser werden feststellen, daß auch obige Funktion, die wl_module_init() dort erstellt wurde. &lt;br /&gt;
&lt;br /&gt;
In dem Projekt wird noch eine weitere Header-Datei für das Modul verwendet in dem die Mnemonics des Moduls abgebildet sind. Doch dazu gleich. &lt;br /&gt;
&lt;br /&gt;
=== Grundsätzliche Konfiguration ===&lt;br /&gt;
&lt;br /&gt;
Konfigurieren läßt sich eine ganze Menge beim nRF24L01+. Aber wir haben das Glück, daß es auch funktioniert wenn man wenig konfiguriert und die Standardwerte eingestellt läßt. &lt;br /&gt;
&lt;br /&gt;
Für unsere ersten Tests stellen wir nur das notwendigste ein. Um uns die Arbeit mit den vielen Registern zu erleichtern ist es jetzt Zeit die schon angesprochene Header-Datei vorzustellen und in weiterer Folge einzubinden. &lt;br /&gt;
&lt;br /&gt;
[[Datei:NRF24L01.h]]&lt;br /&gt;
&lt;br /&gt;
In dieser Header-Datei finden wir alle Mnemonics um auf die entsprechenden Befehle, Register und Registerinhalte zuzugreifen. Ja, es ist eine ziemlich lange Liste aber davon nicht schrecken lassen. &lt;br /&gt;
&lt;br /&gt;
Gut, dann setzen wir mal die ersten Werte im nRF24L01+. Als erstes wollen wir den Funkkanal einstellen. Dazu haben wir im wl_module.h schon wl_module_CH definiert. Ein Blick ins Datenblatt verrät uns, daß wir das Kommando W_REGISTER brauchen und der Kanal im Register RF_CH eingestellt wird. Die grundsätzliche Funktionsweise der Kommandos wurde schon weiter oben erklärt doch wie setzen wir das jetzt um? &lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns dazu einer Funktion die genau ein Byte in ein gewähltes Register schreibt. reg ist das gewählte Register und value der Wert der geschrieben werden soll. Mit dieser Funktion können wir schon fast alle Register des Moduls beschreiben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_config_register(uint8_t reg, uint8_t value)&lt;br /&gt;
// Clocks only one byte into the given wl-module register&lt;br /&gt;
{&lt;br /&gt;
    wl_module_CSN_lo;&lt;br /&gt;
    spi_fast_shift(W_REGISTER | (REGISTER_MASK &amp;amp; reg));&lt;br /&gt;
    spi_fast_shift(value);&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um den Kanal zu setzen wird &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
// Set RF channel&lt;br /&gt;
    wl_module_config_register(RF_CH,wl_module_CH);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
aufgerufen.&lt;br /&gt;
&lt;br /&gt;
Fein, damit ist es uns ein leichtes den Payload zu konfigurieren. Der Payload sind die Anzahl an Bytes die auf einmal übertragen werden. Der Sender muß (solange nicht die dynamic payload length aktiviert ist) genau so viele Bytes senden wie am Empfänger als Payload-Länge eingestellt ist. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
// Set length of incoming payload &lt;br /&gt;
wl_module_config_register(RX_PW_P0, wl_module_PAYLOAD);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für die ersten Tests werden wir uns um keine Pipes kümmern daher reicht es erstmal wenn wir nur den Payload für die Pipe0 festlegen.&lt;br /&gt;
&lt;br /&gt;
Ich mag das Augenmerk auf folgende Zeile in der wl_config.h legen: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#define wl_module_CONFIG		( (1&amp;lt;&amp;lt;MASK_RX_DR) | (1&amp;lt;&amp;lt;EN_CRC) | (0&amp;lt;&amp;lt;CRCO) )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der Zeile wird einiges für das CONFIG Register eingestellt. Im CONFIG Register können etwa die drei Interrupts maskiert werden, es wird eingestellt ob CRC verwendet wird und ob CRC aus einem oder zwei Bytes besteht. Und dann gibt es noch zwei ganz wesentliche Dinge darin. Einerseits PWR_UP und dann auch noch PRIM_RX. PRIM_RX legt fest ob sich das Modul im TX oder im RX Modus befindet. &lt;br /&gt;
&lt;br /&gt;
Über&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
// Defines for setting the wl_module registers for transmitting or receiving mode&lt;br /&gt;
#define TX_POWERUP wl_module_config_register(CONFIG, wl_module_CONFIG | ( (1&amp;lt;&amp;lt;PWR_UP) | (0&amp;lt;&amp;lt;PRIM_RX) ) )&lt;br /&gt;
#define RX_POWERUP wl_module_config_register(CONFIG, wl_module_CONFIG | ( (1&amp;lt;&amp;lt;PWR_UP) | (1&amp;lt;&amp;lt;PRIM_RX) ) )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
können wir das Modul entweder im TX oder RX Modus aktivieren. &lt;br /&gt;
&lt;br /&gt;
Fürs erste können wir die restlichen Register so lassen wie eingestellt.&lt;br /&gt;
&lt;br /&gt;
Wie schaut es jetzt aus wenn wir ein Register beschreiben wollen das mehr als ein Byte an Daten enthält? Als Paradebeispiel ist dafür natürlich das schreiben des Payloads in den TX-FIFO geeignet da wir hier bis zu 32 Bytes schreiben. &lt;br /&gt;
&lt;br /&gt;
Aber auch andere Register brauchen mehr als 1 Byte, so zum Beispiel die Adressregister die bis zu 5 Bytes breit sind. &lt;br /&gt;
&lt;br /&gt;
Auch dafür können wir uns einer kleinen aber feinen Routine bedienen: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_write_register(uint8_t reg, uint8_t * value, uint8_t len) &lt;br /&gt;
// Writes an array of bytes into inte the wl-module registers.&lt;br /&gt;
{&lt;br /&gt;
    wl_module_CSN_lo;&lt;br /&gt;
    spi_fast_shift(W_REGISTER | (REGISTER_MASK &amp;amp; reg));&lt;br /&gt;
    spi_transmit_sync(value,len);&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An die Routine übergeben wird das Register das beschrieben werden soll, ein Zeiger auf das Array mit den Daten und die Größe dieses Arrays.&lt;br /&gt;
&lt;br /&gt;
=== Register wieder auslesen ===&lt;br /&gt;
&lt;br /&gt;
Eine Frage die sich sehr bald stellen wird: Wie lese ich Register wieder aus? Sei es um die Einstellungen zu  kontrollieren oder auf Bits die darin automatisch gesetzt werden zu reagieren. &lt;br /&gt;
&lt;br /&gt;
Wie wir wissen reagiert der nRF24L01+ auf jeden Befehl den wir schicken automatisch und parallel auf unseren Befehl mit der Antwort des STATUS Registers. Das STATUS Register ist ein wichtiges weil es einiges an wesentlichen Informationen enthält auf die wir reagieren müssen. So werden alle drei Interrupts in dem Register durch setzen eines entsprechenden Bits abgebildet. Dieses Bit muß durch schreiben einer 1 auch wieder gelöscht werden. Es läßt sich außerdem die Pipe auslesen die die Daten gesendet hat sowie, auch ganz wichtig, das TX_FULL Flag auslesen. Dieses Flag wird gesetzt wenn der Sende-Fifo voll ist. &lt;br /&gt;
&lt;br /&gt;
Um den Status auszulesen und sonst nix weiter zu machen können wir eine kleine Funktion einsetzen: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
//return the value of the status register&lt;br /&gt;
extern uint8_t wl_module_get_status()&lt;br /&gt;
{&lt;br /&gt;
	return wl_module_get_one_byte(NOP);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aber nicht vergessen, egal was wir an den nRF24L01+ schicken, er antwortet jedes mal mit dem Inhalt des Status-Registers. Das können wir uns später zu  nutze machen.&lt;br /&gt;
&lt;br /&gt;
In dem Beispiel wird die Funktion wl_module_get_one_byte() verwendet: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern uint8_t wl_module_get_one_byte(uint8_t command)&lt;br /&gt;
{&lt;br /&gt;
uint8_t status;&lt;br /&gt;
&lt;br /&gt;
wl_module_CSN_lo;&lt;br /&gt;
status = spi_fast_shift(command);&lt;br /&gt;
wl_module_CSN_hi;&lt;br /&gt;
&lt;br /&gt;
return status;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Genau betrachtet liefert die Funktion wl_module_get_one_byte() schon den Inhalt des Status Registers. Nachdem die Funktion aber die Grundlage für den Zugriff auf einzelne Teile des Status-Registers ist die in weiteren Funktionen verwendet wird wurde für die bessere Übersichtlichkeit eine eigene Status-Abfrage Funktion implementiert.&lt;br /&gt;
&lt;br /&gt;
Wenn andere Inhalte als der Status abgefragt werden sollen etwa der Inhalt des FIFO wo ja unsere empfangenen Daten liegen bedienen wir uns einer weiteren Funktion. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_read_register(uint8_t reg, uint8_t * value, uint8_t len)&lt;br /&gt;
// Reads an array of bytes from the given start position in the wl-module registers.&lt;br /&gt;
{&lt;br /&gt;
    wl_module_CSN_lo;&lt;br /&gt;
    spi_fast_shift(R_REGISTER | (REGISTER_MASK &amp;amp; reg));&lt;br /&gt;
    spi_transfer_sync(value,value,len);&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Funktion leistet uns für einige weitere Funktionen die darauf zugreifen gute Dienste. Wollen wir als Beispiel den gewählten Funkkanal auslesen so können wir das mit dieser Funktion: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
//returns the current RF channel in RF_CH register&lt;br /&gt;
extern uint8_t wl_module_get_rf_ch()&lt;br /&gt;
{&lt;br /&gt;
	uint8_t data;&lt;br /&gt;
	&lt;br /&gt;
	wl_module_read_register(RF_CH, &amp;amp;data, 1);&lt;br /&gt;
	&lt;br /&gt;
	return data;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wie man sieht greift die Funktion wl_module_get_rf_ch() auf die Funktion wl_module_read_register zu, übergibt die notwendigen Parameter und liefert uns dann das Byte zurück das in RF_CH gespeichert ist.&lt;br /&gt;
&lt;br /&gt;
=== Erster praktischer Test ===&lt;br /&gt;
&lt;br /&gt;
So, genug der Grundlagen, schauen wir uns einen ersten praktischen Test mit den Modulen an.&lt;br /&gt;
&lt;br /&gt;
Der Aufbau ist verdrahtet und mit den richtigen Spannungen versorgt, der µC läuft mit mind. 8 MHz (niedrigere Frequenzen gehen auch aber wurden von mir nicht getestet, achtet auf den passenden SPI-Vorteiler), als Optimierungsmethode ist -Os eingestellt und dem Compiler wurde auch die richtige Frequenz mitgeteilt. &lt;br /&gt;
&lt;br /&gt;
Als erstes werden wir beim Sender einen Zähler hochzählen und die Zahlen an den Empfänger übermitteln. Dadurch sehen wir, ob die Funkstrecke funktioniert. Welche Bytes tatsächlich übertragen werden ist schlußendlich egal. &lt;br /&gt;
&lt;br /&gt;
==== Der Sender ====&lt;br /&gt;
&lt;br /&gt;
Hier die kurze Main-Routine für den Sender, verwendete Funktionen werden im Anschluß besprochen. Nach belieben könnt ihr an freie Pins noch LED anschließen um bestimmte Ereignisse optisch zu überwachen. Im Code selbst wird darauf verzichtet. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * nRF24L01_Tutorial_Sender.c&lt;br /&gt;
 *&lt;br /&gt;
 * Created: 06.01.2012 20:15:04&lt;br /&gt;
 *  Author: Ernst Buchmann&lt;br /&gt;
 */ &lt;br /&gt;
&lt;br /&gt;
#ifndef F_CPU				//Define F_CPU if not done &lt;br /&gt;
#define F_CPU 8000000UL&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
#include &amp;lt;util/delay.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;quot;spi.h&amp;quot;&lt;br /&gt;
#include &amp;quot;wl_module.h&amp;quot;&lt;br /&gt;
#include &amp;quot;nRF24L01.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
volatile uint8_t timercounter;&lt;br /&gt;
&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
	uint8_t payload[wl_module_PAYLOAD];		//Array for Payload&lt;br /&gt;
	uint8_t maincounter =0;&lt;br /&gt;
	uint8_t k;&lt;br /&gt;
	&lt;br /&gt;
	wl_module_init();	//initialise nRF24L01+ Module&lt;br /&gt;
	_delay_ms(50);		//wait for nRF24L01+ Module&lt;br /&gt;
	sei();&lt;br /&gt;
	&lt;br /&gt;
	wl_module_tx_config(wl_module_TX_NR_0);		//Config Module&lt;br /&gt;
		&lt;br /&gt;
	//Timer aktivieren ATMEGA8&lt;br /&gt;
	#if defined(__AVR_ATmega8__)&lt;br /&gt;
	TCCR0 |= ( (1&amp;lt;&amp;lt;CS02) | (1&amp;lt;&amp;lt;CS00));		//Prescaler auf 1024 ATMEGA8&lt;br /&gt;
	TIMSK |= ( (1&amp;lt;&amp;lt;TOIE0));					//enable TOVF ATMEGA8&lt;br /&gt;
	#endif // __AVR_ATmega8__&lt;br /&gt;
	&lt;br /&gt;
	//Timer aktivieren ATMEGA88A&lt;br /&gt;
	#if defined(__AVR_ATmega88A__)&lt;br /&gt;
	TCCR0B |= ( (1&amp;lt;&amp;lt;CS02) | (1&amp;lt;&amp;lt;CS00));&lt;br /&gt;
	TIMSK0 |= ( (1&amp;lt;&amp;lt;TOIE0));&lt;br /&gt;
	#endif // __AVR_ATmega88A__&lt;br /&gt;
		&lt;br /&gt;
    while(1)&lt;br /&gt;
    {&lt;br /&gt;
		if (timercounter &amp;gt;= 30)			//30 entspricht ~1 Sekunde bei 8MHz&lt;br /&gt;
			{&lt;br /&gt;
				timercounter = 0;&lt;br /&gt;
			&lt;br /&gt;
				&lt;br /&gt;
				for (k=0; k&amp;lt;=wl_module_PAYLOAD-1; k++)&lt;br /&gt;
				{&lt;br /&gt;
					payload[k] = k;&lt;br /&gt;
				}&lt;br /&gt;
			&lt;br /&gt;
				payload[0] = maincounter;&lt;br /&gt;
				payload[1] = maincounter+1;				&lt;br /&gt;
			&lt;br /&gt;
				wl_module_send(payload,wl_module_PAYLOAD);&lt;br /&gt;
				&lt;br /&gt;
				maincounter++;&lt;br /&gt;
				if (maincounter &amp;gt;250)&lt;br /&gt;
				{&lt;br /&gt;
					maincounter = 0; &lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
ISR(TIMER0_OVF_vect)&lt;br /&gt;
{&lt;br /&gt;
	timercounter++;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//Unterscheidung je nach verwendeten µC&lt;br /&gt;
#if defined(__AVR_ATmega8__)&lt;br /&gt;
ISR(INT0_vect)&lt;br /&gt;
#endif // __AVR_ATmega8__&lt;br /&gt;
#if defined(__AVR_ATmega88A__)&lt;br /&gt;
ISR(INT0_vect)&lt;br /&gt;
#endif // __AVR_ATmega88A__&lt;br /&gt;
#if defined(__AVR_ATmega168__)&lt;br /&gt;
ISR(PCINT2_vect) &lt;br /&gt;
#endif // __AVR_ATmega168__  &lt;br /&gt;
// Interrupt handler &lt;br /&gt;
{&lt;br /&gt;
    uint8_t status;   &lt;br /&gt;
    &lt;br /&gt;
        // Read wl_module status &lt;br /&gt;
        wl_module_CSN_lo;                               // Pull down chip select&lt;br /&gt;
        status = spi_fast_shift(NOP);					// Read status register&lt;br /&gt;
        wl_module_CSN_hi;                               // Pull up chip select&lt;br /&gt;
		&lt;br /&gt;
		&lt;br /&gt;
		if (status &amp;amp; (1&amp;lt;&amp;lt;TX_DS))							// IRQ: Package has been sent&lt;br /&gt;
		{&lt;br /&gt;
			wl_module_config_register(STATUS, (1&amp;lt;&amp;lt;TX_DS));	//Clear Interrupt Bit&lt;br /&gt;
			PTX=0;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (status &amp;amp; (1&amp;lt;&amp;lt;MAX_RT))							// IRQ: Package has not been sent, send again&lt;br /&gt;
		{&lt;br /&gt;
			wl_module_config_register(STATUS, (1&amp;lt;&amp;lt;MAX_RT));	// Clear Interrupt Bit&lt;br /&gt;
			wl_module_CE_hi;								// Start transmission&lt;br /&gt;
			_delay_us(10);								&lt;br /&gt;
			wl_module_CE_lo;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (status &amp;amp; (1&amp;lt;&amp;lt;TX_FULL))							//TX_FIFO Full &amp;lt;-- this is not an IRQ&lt;br /&gt;
		{&lt;br /&gt;
			wl_module_CSN_lo;                               // Pull down chip select&lt;br /&gt;
			spi_fast_shift(FLUSH_TX);						// Flush TX-FIFO&lt;br /&gt;
			wl_module_CSN_hi;                               // Pull up chip select&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, Teile wie Timer oder Timerinterrupt sollten bekannt sein. Schauen wir uns die Funktionen an die aufgerufen werden. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_init();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
ist die bereits bekannte Initialisierungsfunktion wie oben besprochen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_tx_config(wl_module_TX_NR_0);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Müssen wir uns genauer ansehen. In dieser Funktion werden alle wesentlichen Register eingestellt die wir brauchen um das Modul als Sender zu nutzen. Alle verwendeten Funktionen sollten in einer wl_module.c Datei zusammengefasst werden. Obwohl wir es in diesem Beispiel noch nicht nutzen übergeben wir an wl_module_tx_config als Argument die Pipe auf der der Sender senden soll. Das Argument wird dazu  verwendet die entsprechende Adresse für den Sender festzulegen. Diese Routine ist also schon dafür eingerichtet um später einen Multi-Ceiver Betrieb mit 6 Sendern zu ermöglichen. (Beim Empfänger weiter unten wird eine einfache Konfigurationsroutine verwendet mit der kein Multi-Ceiver Betrieb möglich ist!)&lt;br /&gt;
&lt;br /&gt;
Die Variable PTX wird als globale Variable definiert und dazu verwendet um festzustellen ob gerade gesendet wird. Wird gesendet wird sie im Code auf 1 geschaltet, sonst auf 0. &lt;br /&gt;
&lt;br /&gt;
Zum Schluß wird mittels TX_POWERUP (siehe oben) das Modul als Sender aktiviert. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern void wl_module_tx_config(uint8_t tx_nr) &lt;br /&gt;
{&lt;br /&gt;
    uint8_t tx_addr[5];&lt;br /&gt;
	&lt;br /&gt;
    // Set RF channel&lt;br /&gt;
    wl_module_config_register(RF_CH,wl_module_CH);&lt;br /&gt;
    // Set data speed &amp;amp; Output Power configured in wl_module.h&lt;br /&gt;
    wl_module_config_register(RF_SETUP,wl_module_RF_SETUP);&lt;br /&gt;
    //Config the CONFIG Register (Mask IRQ, CRC, etc)&lt;br /&gt;
    wl_module_config_register(CONFIG, wl_module_CONFIG);&lt;br /&gt;
    &lt;br /&gt;
    wl_module_config_register(SETUP_RETR,(SETUP_RETR_ARD_750 | SETUP_RETR_ARC_15));&lt;br /&gt;
	&lt;br /&gt;
	//set the TX address for the pipe with the same number as the iteration&lt;br /&gt;
			switch(tx_nr)			&lt;br /&gt;
			{&lt;br /&gt;
				case 0: //setup TX address as default RX address for pipe 0 (E7:E7:E7:E7:E7)&lt;br /&gt;
					tx_addr[0] = tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P0_B0_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 1: //setup TX address as default RX address for pipe 1 (C2:C2:C2:C2:C2)&lt;br /&gt;
					tx_addr[0] = tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 2: //setup TX address as default RX address for pipe 2 (C2:C2:C2:C2:C3)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P2_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 3: //setup TX address as default RX address for pipe 3 (C2:C2:C2:C2:C4)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P3_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 4: //setup TX address as default RX address for pipe 4 (C2:C2:C2:C2:C5)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P4_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 5: //setup TX address as default RX address for pipe 5 (C2:C2:C2:C2:C6)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P5_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
			}&lt;br /&gt;
	&lt;br /&gt;
	PTX =0;&lt;br /&gt;
	TX_POWERUP;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der Main-Routine wird ein Timer dazu verwendet ca. jede Sekunde einen Zähler (maincounter) hinauf zu zählen (bis max. 250) und im Array payload wird das erste Element mit dem Wert des maincounters belegt. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
payload[0] = maincounter;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Die Schleife dient nur dazu das Array mit irgendwelchen Werten zu belegen die am Empfänger auch abgerufen werden können um damit zu &amp;quot;spielen&amp;quot;. Dann wird die Funktion aufgerufen die das Array ins Modul überträgt und die Sendung der Daten beginnt. &lt;br /&gt;
&lt;br /&gt;
wl_module_send(payload,wl_module_PAYLOAD); kümmert sich darum. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_send(uint8_t * value, uint8_t len) &lt;br /&gt;
// Sends a data package to the default address. Be sure to send the correct&lt;br /&gt;
// amount of bytes as configured as payload on the receiver.&lt;br /&gt;
{&lt;br /&gt;
    while (PTX) {}                  // Wait until last paket is send&lt;br /&gt;
&lt;br /&gt;
    wl_module_CE_lo;&lt;br /&gt;
&lt;br /&gt;
    PTX = 1;							// Set to transmitter mode&lt;br /&gt;
    TX_POWERUP;							// Power up&lt;br /&gt;
    &lt;br /&gt;
    wl_module_CSN_lo;                   // Pull down chip select&lt;br /&gt;
    spi_fast_shift( FLUSH_TX );			// Write cmd to flush tx fifo&lt;br /&gt;
    wl_module_CSN_hi;                   // Pull up chip select&lt;br /&gt;
    &lt;br /&gt;
    wl_module_CSN_lo;                   // Pull down chip select&lt;br /&gt;
    spi_fast_shift( W_TX_PAYLOAD );		// Write cmd to write payload&lt;br /&gt;
    spi_transmit_sync(value,len);		// Write payload&lt;br /&gt;
    wl_module_CSN_hi;                   // Pull up chip select&lt;br /&gt;
    &lt;br /&gt;
    wl_module_CE_hi;                    // Start transmission&lt;br /&gt;
	_delay_us(10);						// Grünes Modul funktioniert nicht mit 10µs delay&lt;br /&gt;
	wl_module_CE_lo;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zum Schluß werfen wir noch einen Blick auf die Interrupt-Routine ISR(INT0_vect). Wir wissen, daß es drei Zustände gibt die einen Interrupt auslösen können: RX_DR der Auftritt wenn neue Daten empfangen wurden, TX_DS der Auftritt wenn Daten gesendet wurden und MAX_RT der Auftritt wenn die maximale Anzahl an Sendungswiederholungen ohne Erfolg stattgefunden haben. Sobald einer der Zustände auftritt wird auch das passende Bit im STATUS-Register gesetzt. Um das Bit zu löschen muß eine 1 geschrieben werden. Jeder dieser drei Zustände kann ausmaskiert werden und löst dann keinen Interrupt aus. Man kann so entweder per Interrupt-Routine auf ein Ereignis reagieren oder aber auch mittels polling auf das interessierende Bit auf ein Ereignis reagieren. &lt;br /&gt;
&lt;br /&gt;
In der ISR(INT0_vect) wird zum Beispiel auf TX_DS reagiert und auf MAX_RT. Soblad das Paket gesendet wurde wird TX_DS wieder zurückgesetzt und die Variable PTX auf 0 gesetzt. MAX_RT wird genutzt um die Daten noch einmal zu senden. Der TX-FIFO Speicher wird ja nicht gelöscht wenn eine Datenübertragung fehlgeschlagen hat.&lt;br /&gt;
&lt;br /&gt;
==== Der Empfänger ====&lt;br /&gt;
&lt;br /&gt;
So, ein nRF24L01+ Modul sollte mal funken. Um das zu kontrollieren brauchen wir jetzt unser zweites nRF24L01+ Modul mit dem wir die Daten empfangen. Ich verwende in dem Beispiel eine LCD-Anzeige um die Daten anzuzeigen auf das aber nicht weiter eingegangen wird. Wie die Daten angezeigt werden ist jedem selbst überlassen, genau so gut kann man mittels UART die Daten am PC anzeigen lassen oder was immer Euch zur Verfügung steht. Auch beim Empfänger nicht darauf vergessen die üblichen Stolpersteine wie -Os, µC-Frequenz etc. einzustellen. &lt;br /&gt;
&lt;br /&gt;
Wie schon angekündigt können empfangene Daten mittels Polling abgefragt werden oder über IRQ. In dem Beispiel wird mittels Polling kontrolliert ob neue Daten angekommen sind. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * nRF24L01_Tutorial_RX.c&lt;br /&gt;
 *&lt;br /&gt;
 * Created: 06.01.2012 22:51:57&lt;br /&gt;
 *  Author: Ernst Buchmann&lt;br /&gt;
 */ &lt;br /&gt;
&lt;br /&gt;
#ifndef F_CPU				//define F_CPU if not done &lt;br /&gt;
#define F_CPU 20000000UL&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
#include &amp;lt;util/delay.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;string.h&amp;gt;&lt;br /&gt;
#include &amp;quot;spi.h&amp;quot;&lt;br /&gt;
#include &amp;quot;lcd-routines.h&amp;quot;&lt;br /&gt;
#include &amp;quot;wl_module.h&amp;quot;&lt;br /&gt;
#include &amp;quot;nRF24L01.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//Variablen&lt;br /&gt;
volatile uint8_t PTX;			//Global Variable&lt;br /&gt;
char itoabuffer[20];&lt;br /&gt;
&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
	uint8_t payload[wl_module_PAYLOAD];		//holds the payload&lt;br /&gt;
	uint8_t nRF_status;						//STATUS information of nRF24L01+&lt;br /&gt;
	uint8_t zaehler = 0;&lt;br /&gt;
	&lt;br /&gt;
	lcd_init();&lt;br /&gt;
	lcd_clear();&lt;br /&gt;
	wl_module_init();		//Init nRF Module&lt;br /&gt;
	_delay_ms(50);			//wait for Module&lt;br /&gt;
	sei();					//activate Interrupts&lt;br /&gt;
	wl_module_config();		//config nRF as RX Module, simple Version&lt;br /&gt;
	&lt;br /&gt;
    while(1)&lt;br /&gt;
    {&lt;br /&gt;
		while (!wl_module_data_ready());			//waits for RX_DR Flag in STATUS&lt;br /&gt;
		nRF_status = wl_module_get_data(payload);	//reads the incoming Data to Array payload&lt;br /&gt;
		zaehler = payload[0];&lt;br /&gt;
		lcd_clear();&lt;br /&gt;
		lcd_home();&lt;br /&gt;
		itoa(zaehler, itoabuffer, 10);				//conversion into String&lt;br /&gt;
		lcd_string(itoabuffer);&lt;br /&gt;
		&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das ist die ziemlich kurze main-Routine zum Abfragen der Daten die im Empfänger angekommen sind. Geübten Augen wird sofort auffallen, daß die Abfrage über Polling in diesem Beispiel den µC solange in einer while-Schleife fest hält bis neue Daten angekommen sind. Das ist natürlich nicht praktikabel wenn der µC noch andere Dinge zu erledigen hätte. Für ein erstes Übungsbeispiel wo der Fokus nur darauf liegt die Funkstrecke einzurichten soll uns das nicht stören. Schauen wir und das Programm im Detail an: &lt;br /&gt;
&lt;br /&gt;
Achtung: F_CPU an die eigenen Gegebenheiten anpassen!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_init();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
kennen wir schon von den Sender Einstellungen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_config&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
Konfiguriert das nRF Modul mit den wesentlichen Registerinhalten und stellt das Modul auf Empfang. Es wurde hier absichtlich sehr kurz gehalten und nur die wesentlichsten Einstellungen getroffen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_config() &lt;br /&gt;
// Sets the important registers in the wl-module and powers the module&lt;br /&gt;
// in receiving mode&lt;br /&gt;
{&lt;br /&gt;
    // Set RF channel&lt;br /&gt;
    wl_module_config_register(RF_CH,wl_module_CH);&lt;br /&gt;
	// Set data speed &amp;amp; Output Power configured in wl_module.h&lt;br /&gt;
	wl_module_config_register(RF_SETUP,wl_module_RF_SETUP);&lt;br /&gt;
	// Set length of incoming payload &lt;br /&gt;
    wl_module_config_register(RX_PW_P0, wl_module_PAYLOAD);&lt;br /&gt;
	&lt;br /&gt;
    // Start receiver &lt;br /&gt;
    PTX = 0;        // Start in receiving mode&lt;br /&gt;
    RX_POWERUP;     // Power up in receiving mode&lt;br /&gt;
    wl_module_CE_hi;     // Listening for pakets&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Wie man sieht wurde hier nur die Payload-Größe für Pipe0 eingestellt und keine weiteren Empfangsadressen gesetzt. Das funktioniert weil beim Sender zwar Adressen konfiguriert wurden aber die Default-Adressen verwendet wurden. Man könnte sich für dieses Beispiel die Definition der Adressen beim Sender sparen und auch dort eine sehr verkürzte Konfiguration verwenden. Als Empfangskanal und -Geschwindigkeit müssen natürlich die gleichen Werte verwendet werden wie beim Sender. Auch die Payload-Größe muß im Empfänger zu  der Anzahl an Bytes passen die der Sender schickt. &lt;br /&gt;
&lt;br /&gt;
In dieser Zeile while (!wl_module_data_ready()); prüft das Programm ob im Empfangsmodul Daten angekommen sind die ausgelesen werden können und bleibt solange in dieser while-Schleife bis RX_DR gesetzt wurde. &lt;br /&gt;
&lt;br /&gt;
Diese Funktion macht nichts weiter als das STATUS Register auszulesen und den Wert von RX_DR zurück zu geben: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern uint8_t wl_module_data_ready() &lt;br /&gt;
// Checks if data is available for reading&lt;br /&gt;
{&lt;br /&gt;
    if (PTX) return 0;&lt;br /&gt;
    uint8_t status;&lt;br /&gt;
    // Read wl_module status &lt;br /&gt;
    wl_module_CSN_lo;                                // Pull down chip select&lt;br /&gt;
    status = spi_fast_shift(NOP);               // Read status register&lt;br /&gt;
    wl_module_CSN_hi;                                // Pull up chip select&lt;br /&gt;
    return status &amp;amp; (1&amp;lt;&amp;lt;RX_DR);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sobald RX_DR 1 ist und damit anzeigt, daß Daten angekommen sind wird die while Schleife verlassen und &amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;nRF_status = wl_module_get_data(payload);&amp;lt;/syntaxhighlight&amp;gt; ausgeführt. &lt;br /&gt;
&lt;br /&gt;
Diese Funktion liest den Inhalt des RX-FIFO Speichers aus und gibt den Inhalt des STATUS Registers zurück. Anschließend wird noch das RX_DR Bit gelöscht um den nächsten Datenempfang detektieren zu können: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern uint8_t wl_module_get_data(uint8_t * data) &lt;br /&gt;
// Reads wl_module_PAYLOAD bytes into data array&lt;br /&gt;
{&lt;br /&gt;
	uint8_t status;&lt;br /&gt;
    wl_module_CSN_lo;                               // Pull down chip select&lt;br /&gt;
    status = spi_fast_shift( R_RX_PAYLOAD );            // Send cmd to read rx payload&lt;br /&gt;
    spi_transfer_sync(data,data,wl_module_PAYLOAD); // Read payload&lt;br /&gt;
    wl_module_CSN_hi;                               // Pull up chip select&lt;br /&gt;
    wl_module_config_register(STATUS,(1&amp;lt;&amp;lt;RX_DR));   // Reset status register&lt;br /&gt;
	return status;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Rest der main-Routine kümmert sich dann nur noch um die Ausgabe der Daten.&lt;br /&gt;
&lt;br /&gt;
Zum Schluß noch eine kleine Aufgabe: &lt;br /&gt;
Warum wird beim Empfänger keine Interruptfunktion ISR(INT0_vect) verwendet? Und löst  RX_DR überhaupt einen Interrupt aus?&lt;br /&gt;
&lt;br /&gt;
== Beispieldateien ==&lt;br /&gt;
&lt;br /&gt;
Hier finden sich die Dateien die in diesem Beispiel verwendet wurden: &lt;br /&gt;
&lt;br /&gt;
[[Datei: nrf24L01_Tutorial.zip]]&lt;br /&gt;
&lt;br /&gt;
In wl_module.c finden sich alle Routinen die im Tutorial verwendet wurden und auch noch viel, viel mehr. Es sind alle Routinen vorhanden um sehr schnell einen Multi-Ceiver mit 6 Data-Pipes aufzubauen oder verschiedene interessante Daten auszulesen. Das Prinzip sollte nach diesem Tutorial, so hoffe ich, klar sein um diese Routinen zu durchschauen und selbst anzuwenden oder anzupassen.&lt;br /&gt;
&lt;br /&gt;
== Zusammenfassung ==&lt;br /&gt;
&lt;br /&gt;
Noch ein paar wesentliche Punkte zu den Funkmodulen und ersten Schritten hier im Tutorial: &lt;br /&gt;
&lt;br /&gt;
1. Achtung mit der Spannung, die Module vertragen wirklich keine höhere Spannung als im Datenblatt angegeben wie ich leider feststellen durfte. &lt;br /&gt;
&lt;br /&gt;
2. Wie schon angesprochen eignet sich die Polling-Variante im Empfänger-Beispiel nur bedingt für die Umsetzung in eigenen Projekten da sie den µC bis zum nächsten Dateneingang lahm legt. Und sollten keine Daten kommen, dann ist der µC in dieser Zeile ad infinitum gefangen. &lt;br /&gt;
&lt;br /&gt;
3. Es kann sein, wenn die Daten sehr schnell kommen, daß man ein RX_DR versäumt. Der FIFO hat ja Platz für 3xPayload. Man sollte also durchaus auch abfragen ob noch weitere Daten im FIFO vorhanden sind. Insbesondere wenn mit Multi-Ceivern gearbeitet wird. &lt;br /&gt;
&lt;br /&gt;
4. Für kurze Distanzen funktioniert die Datenübertragung mit 2Mbps sehr gut. Wenn längere Distanzen überwunden werden sollen, dann sollte man auf 250kbps zurückgehen, das erhöht die Empfindlichkeit des Empfängers. Der Sender sollte mit maximaler Leistung senden. Außerdem sollte der Payload nur so groß sein wie auch wirklich benötigt. Je weniger Bytes übertragen werden desto größer die Chance auf erfolgreiche Datenübertragung. Bei Bedarf gibt es auch Module die den Anschluß einer externen Antenne ermöglichen. &lt;br /&gt;
&lt;br /&gt;
5. Man sollte die Möglichkeiten nutzen die Enhanced Shockburst bietet. Das TX_DS Bit wird dann nur gesetzt wenn auch wirklich ein ACK vom Empfänger eingetroffen ist. (Im Tutorial wird übrigens Enhanced Shockburst verwendet. Details dazu hätten aber das Tutorial gesprengt)&lt;br /&gt;
&lt;br /&gt;
6. Beim Multi-Ceiver Betrieb sollte für jeden Sender ein, sich von den anderen Sendern unterscheidendes, AUTO RETRANSMIT DELAY (ARD) eingestellt werden. Das erhöht die Chancen, daß sich die Sender nicht gegenseitig stören. &lt;br /&gt;
&lt;br /&gt;
7. Aufpassen beim AUTO RETRANSMIT DELAY wenn mit 250kpbs gesendet wird. Der Default-Wert von 250µS ist zu kurz um eine funktionierende Datenübertragung zu gewährleisten. Für Details siehe Datenblatt. &lt;br /&gt;
&lt;br /&gt;
Nachrichten an den Autor: [http://www.mikrocontroller.net/user/show/Puravida PuraVida]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Funk]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=NRF24L01_Tutorial&amp;diff=82713</id>
		<title>NRF24L01 Tutorial</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=NRF24L01_Tutorial&amp;diff=82713"/>
		<updated>2014-04-18T17:36:47Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Die ersten Schritte */ Hinweis zu 10µF Kondensator&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Das Tutorial soll den Einstieg, eine Funkstrecke mit dem &lt;br /&gt;
[http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P nRF24L01+] aufzubauen, erleichtern.&lt;br /&gt;
&lt;br /&gt;
Beim nRF24L01+ handelt es sich um einen single Chip Transceiver von Nordic Semiconductor. Dieser Chip kann also sowohl als Sender (TX) als auch als Empfänger (RX) arbeiten und bietet eine Reihe von sehr praktischen Features wie Ultra Low Power (nur 900nA in Power Down Modus), 6 Data Pipes beim Betrieb als MultiCeiver, Enhanced Shockburst (dazu später mehr), Automatic Packet Handling, 5V tolerante Eingänge, SPI Schnittstelle und noch einiges mehr. &lt;br /&gt;
&lt;br /&gt;
Um mit dem nRF24L01+ eine Funkstrecke zu realisieren braucht man nicht mehr als einen µC sowie ein nRF24L01+ Funkmodul. Das ganze natürlich zwei mal. &lt;br /&gt;
In dem Tutorial wird der AVR Atmega8 verwendet sowie nRF24L01+ Module die sehr günstig über das Internet (Ebay derzeit unter 2€) in verschiedenen Ausführungen bezogen werden können. Für Testaufbauten reichen einfache Steckbretter um die Hardware aufzubauen. &lt;br /&gt;
Bei der Hand sollte unbedingt das Datenblatt des nRF24L01+ sein und natürlich das Datenblatt des jeweils verwendeten µC. Das Datenblatt des nRF24L01+ kann von Nordic Semiconductor runtergeladen werden: &lt;br /&gt;
&lt;br /&gt;
[http://www.nordicsemi.com/kor/nordic/download_resource/8765/2/8827113 nRF24L01 Datenblatt]&lt;br /&gt;
&lt;br /&gt;
Vieles in diesem Tutorial basiert auf der Vorarbeit von Stefan Engelke und Brennan Ball denen mein Dank dafür gilt.&lt;br /&gt;
&lt;br /&gt;
== Das nRF24L01+ Modul ==&lt;br /&gt;
Ein Funkmodul mit dem nRF24L01+ hat zumindest 8 Anschlüsse: &lt;br /&gt;
[[Datei:Foto_nrf24L01+Modul.jpg|miniatur|rechts|Handelsübliche nRF24L01+ Module]]&lt;br /&gt;
Vcc, GND, IRQ, CE, und die vier SPI bezogenen Anschlüsse CSN, SCK, MISO, und MOSI.&lt;br /&gt;
&lt;br /&gt;
Je nach Datenblatt des verwendeten Moduls ist die Spannung zu wählen, manche Module verfügen über eigene Spannungsregler, der nRF24L01+ selbst verträgt Spannungen von 1,9V bis 3,6V. Auf dem von mir verwendeten Modul befindet sich kein weiterer Spannungsregler somit muß man aufpassen den Chip nicht durch Überspannung zu ruinieren. Als Spannung habe ich 3,3V verwendet. &lt;br /&gt;
&lt;br /&gt;
Die Anschlüsse SCK, MISO, und MOSI werden mit den entsprechenden Pins des µC verbunden. Der CSN (chip select not) Pin ist active low und normalerweise auf high-Level gehalten. Wenn CSN low geschaltet wird beginnt der nRF24L01+ am SPI Port zu horchen oder anders gesagt, jedes Kommando an den Chip wird mit einem high to low schalten von CSN eingeleitet. Im Falle des Atmega8 werden SCK mit SCK, MISO mit MISO und MOSI mit MOSI verbunden. Für den CSN wurde Pin PB1 gewählt. &lt;br /&gt;
[[Datei:Stromlaufplan.png|miniatur|rechts|Stromlaufplan für den Anschluß an einen ATmega8]]&lt;br /&gt;
Was uns noch bleibt ist CE und IRQ. CE wird im RX und TX Modus verwendet für die Datenübertragung. In dem Beispiel an Pin PB0 angeschlossen. IRQ ist der Interrupt-Pin des Funkmoduls und ist active-low. Es gibt drei interne Interrupts im nRF24L01+ die den IRQ Pin low schalten wobei man sämtliche Interrupts ausmaskieren kann wenn man möchte. Am Atmega8 wurde IRQ mit Pin PD2 (INT0) verbunden um auf die externen Interrupts reagieren zu können.&lt;br /&gt;
&lt;br /&gt;
== Die SPI-Routine ==&lt;br /&gt;
Als SPI-Routine habe ich die Routine von Stefan Engelke unverändert übernommen die er dankenswerter Weise zur allgemeinen Verwendung zur Verfügung gestellt hat. [http://www.tinkerer.eu/AVRLib/SPI siehe Tinkerer.eu]&lt;br /&gt;
&lt;br /&gt;
spi.h&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#ifndef _SPI_H_&lt;br /&gt;
#define _SPI_H_&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
extern void spi_init();&lt;br /&gt;
extern void spi_transfer_sync (uint8_t * dataout, uint8_t * datain, uint8_t len);&lt;br /&gt;
extern void spi_transmit_sync (uint8_t * dataout, uint8_t len);&lt;br /&gt;
extern uint8_t spi_fast_shift (uint8_t data);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
spi.c&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;spi.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define PORT_SPI    PORTB&lt;br /&gt;
#define DDR_SPI     DDRB&lt;br /&gt;
#define DD_MISO     DDB4&lt;br /&gt;
#define DD_MOSI     DDB3&lt;br /&gt;
#define DD_SS       DDB2&lt;br /&gt;
#define DD_SCK      DDB5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void spi_init()&lt;br /&gt;
// Initialize pins for spi communication&lt;br /&gt;
{&lt;br /&gt;
    DDR_SPI &amp;amp;= ~((1&amp;lt;&amp;lt;DD_MOSI)|(1&amp;lt;&amp;lt;DD_MISO)|(1&amp;lt;&amp;lt;DD_SS)|(1&amp;lt;&amp;lt;DD_SCK));&lt;br /&gt;
    // Define the following pins as output&lt;br /&gt;
    DDR_SPI |= ((1&amp;lt;&amp;lt;DD_MOSI)|(1&amp;lt;&amp;lt;DD_SS)|(1&amp;lt;&amp;lt;DD_SCK));&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
    SPCR = ((1&amp;lt;&amp;lt;SPE)|               // SPI Enable&lt;br /&gt;
            (0&amp;lt;&amp;lt;SPIE)|              // SPI Interrupt Enable&lt;br /&gt;
            (0&amp;lt;&amp;lt;DORD)|              // Data Order (0:MSB first / 1:LSB first)&lt;br /&gt;
            (1&amp;lt;&amp;lt;MSTR)|              // Master/Slave select   &lt;br /&gt;
            (0&amp;lt;&amp;lt;SPR1)|(1&amp;lt;&amp;lt;SPR0)|    // SPI Clock Rate&lt;br /&gt;
            (0&amp;lt;&amp;lt;CPOL)|              // Clock Polarity (0:SCK low / 1:SCK hi when idle)&lt;br /&gt;
            (0&amp;lt;&amp;lt;CPHA));             // Clock Phase (0:leading / 1:trailing edge sampling)&lt;br /&gt;
&lt;br /&gt;
    SPSR = (1&amp;lt;&amp;lt;SPI2X);              // Double Clock Rate&lt;br /&gt;
    &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void spi_transfer_sync (uint8_t * dataout, uint8_t * datain, uint8_t len)&lt;br /&gt;
// Shift full array through target device&lt;br /&gt;
{&lt;br /&gt;
       uint8_t i;      &lt;br /&gt;
       for (i = 0; i &amp;lt; len; i++) {&lt;br /&gt;
             SPDR = dataout[i];&lt;br /&gt;
             while((SPSR &amp;amp; (1&amp;lt;&amp;lt;SPIF))==0);&lt;br /&gt;
             datain[i] = SPDR;&lt;br /&gt;
       }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void spi_transmit_sync (uint8_t * dataout, uint8_t len)&lt;br /&gt;
// Shift full array to target device without receiving any byte&lt;br /&gt;
{&lt;br /&gt;
       uint8_t i;      &lt;br /&gt;
       for (i = 0; i &amp;lt; len; i++) {&lt;br /&gt;
             SPDR = dataout[i];&lt;br /&gt;
             while((SPSR &amp;amp; (1&amp;lt;&amp;lt;SPIF))==0);&lt;br /&gt;
       }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
uint8_t spi_fast_shift (uint8_t data)&lt;br /&gt;
// Clocks only one byte to target device and returns the received one&lt;br /&gt;
{&lt;br /&gt;
    SPDR = data;&lt;br /&gt;
    while((SPSR &amp;amp; (1&amp;lt;&amp;lt;SPIF))==0);&lt;br /&gt;
    return SPDR;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Der SPI Befehlssatz ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Command name !! Command word (binary) !! # Data bytes !! Operation&lt;br /&gt;
|-&lt;br /&gt;
| R_REGISTER || 000A AAAA || 1 to 5 &amp;lt;br /&amp;gt; LSByte first || Read command and STATUS registers. AAAAA = 5 bit Register Map Address&lt;br /&gt;
|-&lt;br /&gt;
| W_REGISTER || 001A AAAA || 1 to 5 &amp;lt;br /&amp;gt; LSByte first || Write command and status registers. AAAAA = 5 bit Register Map Address &amp;lt;br /&amp;gt; Executable in power down or standby modes only.&lt;br /&gt;
|-&lt;br /&gt;
| R_RX_PAYLOAD || 0110 0001 || 1 to 32 &amp;lt;br /&amp;gt; LSByte first || Read RX-payload: 1 – 32 bytes. A read operation always starts at byte 0. Payload is deleted from FIFO after it is read. Used in RX mode.&lt;br /&gt;
|-&lt;br /&gt;
| W_TX_PAYLOAD || 1010 0000 || 1 to 32 &amp;lt;br /&amp;gt; LSByte first || Write TX-payload: 1 – 32 bytes. A write operation always starts at byte 0 used in TX payload.&lt;br /&gt;
|-&lt;br /&gt;
| FLUSH_TX || 1110 0001 || 0 || Flush TX FIFO, used in TX mode&lt;br /&gt;
|-&lt;br /&gt;
| FLUSH_RX || 1110 0010 || 0 || Flush RX FIFO, used in RX mode &amp;lt;br /&amp;gt; Should not be executed during transmission of acknowledge, that is, acknowledge package will not be completed.&lt;br /&gt;
|-&lt;br /&gt;
| REUSE_TX_PL || 1110 0011 || 0 || Used for a PTX device&lt;br /&gt;
Reuse last transmitted payload. &amp;lt;br /&amp;gt; TX payload reuse is active until W_TX_PAYLOAD or FLUSH TX is executed. TX payload reuse must not be activated or deactivated during package transmission.&lt;br /&gt;
|-&lt;br /&gt;
| R_RX_PL_WID* || 0110 0000 || 1 || Read RX payload width for the top R_RX_PAYLOAD in the RX FIFO. &amp;lt;br /&amp;gt; &amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt; Flush RX FIFO if the read value is larger than 32 bytes.&lt;br /&gt;
|-&lt;br /&gt;
| W_ACK_PAYLOAD* || 1010 1PPP || 1 to 32 &amp;lt;br /&amp;gt; LSByte first || Used in RX mode. &amp;lt;br /&amp;gt; Write Payload to be transmitted together with ACK packet on PIPE PPP. (PPP valid in the range from 000 to 101). Maximum three ACK packet payloads can be pending. Payloads with same PPP are handled using first in - first out principle. Write payload: 1– 32 bytes. A write operation always starts at byte 0.&lt;br /&gt;
|-&lt;br /&gt;
| W_TX_PAYLOAD_NOACK* || 1011 0000 || 1 to 32 &amp;lt;br /&amp;gt;LSByte first || Used in TX mode. Disables AUTOACK on this specific packet.&lt;br /&gt;
|-&lt;br /&gt;
| NOP || 1111 1111 || 0 || No Operation. Might be used to read the STATUS register&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;*&amp;lt;/b&amp;gt;=The bits in the FEATURE register shown in Table 28. on page 63 have to be set.&lt;br /&gt;
&lt;br /&gt;
Zu finden natürlich auch im Datasheet auf Seite 51. &lt;br /&gt;
&lt;br /&gt;
Es gibt ein paar Dinge die zu beachten sind. Bevor die Kommunikation mit dem Chip begonnen wird muß der CSN Pin high sein. Zum Start der Kommunikation wird der CSN Pin auf Low geschaltet und muß auch Low bleiben während der gesamten Dauer der Kommunikation. &lt;br /&gt;
&lt;br /&gt;
Dann wird der Befehl gesendet. Wenn man Daten vom nRF24L01+ empfangen möchte muß für jedes Byte an Daten auch ein Byte gesendet werden. Wenn man nur seine eigenen Daten an den Chip senden möchte kümmert man sich nicht weiter darum was der Chip zurücksendet. Auf jeden Fall wird parallel zu den Daten die man schickt der STATUS des Chips zurückgegeben. Ist die Unterhaltung (mit dem nRF24L01+ - es geht noch nicht um die Funkstrecke) abgeschlossen, wird CSN wieder auf High geschaltet. &lt;br /&gt;
&lt;br /&gt;
Als Beispiel: Wir wollen den R_REGISTER Befehl senden um den Inhalt des Registers TX_ADDR zu lesen. Das TX_ADDR Register enthält maximal 5 Bytes an Daten/Information. Als erstes CSN auf Low. Dann &amp;quot;0001 0000&amp;quot; an den Chip senden. Das weist den nRF24L01+ an das Register TX_ADDR auszugeben. Dann werden fünf Dummy-Bytes gesendet und für jedes Dummy-Byte erhält man ein Byte aus dem TX_ADDR Register zurück. (Der Inhalt der Dummy-Bytes ist ganz egal) Danach CSN wieder auf High. Insgesamt erhält man vom Chip sechs Bytes: Egal welches Command Byte man sendet antwortet der Chip mit dem STATUS-Register.&lt;br /&gt;
&lt;br /&gt;
Mit dem R_REGISTER können also alle Registerinhalte gelesen werden die zwischen 1 Byte und 5 Byte groß sind. &lt;br /&gt;
&lt;br /&gt;
Mit dem W_REGISTER können wir beliebig unsere Werte in die Register schreiben. Das Prinzip ist das gleiche, es wird der Befehl 001AAAAA gesendet wobei AAAAA für die Adresse des Registers steht. Danach werden - je nach Register - bis zu fünf Bytes an Daten gesendet die in das Register geschrieben werden sollen. &lt;br /&gt;
&lt;br /&gt;
R_RX_PAYLOAD ist einer der beiden Befehle die mit dem FIFO zu tun haben. R_RX_PAYLOAD liest den Inhalt des FIFO sollten Daten empfangen werden. Der Empfang von Daten wird mit dem RX_DR Interrupt angezeigt. Bei diesem Befehl ist das Vorgehen ein wenig anders. Wenn man Daten per Funkstrecke empfängt ist CE high. Sobald man ein Paket empfangen hat muß man CE low schalten um den Empfang auszuschalten und danach kann R_RX_PAYLOAD ausgeführt werden. Gefolgt von so vielen Dummy-Bytes wie Payload definiert wurde. Gelesene Pakete werden automatisch aus dem FIFO gelöscht. Sollten weitere Pakete im FIFO warten sollten die auch gleich gelesen werden. Sobald der FIFO leer ist wird der RX_DR Interrupt gelöscht und CE wieder auf High geschaltet. Der FIFO kann maximal 3 Pakete (PAYLOADS) halten. Ein Paket ist maximal 32 Bytes groß. &lt;br /&gt;
&lt;br /&gt;
Der zweite dieser Befehle ist W_TX_PAYLOAD. Er wird verwendet wenn man sich im TX-Modus befindet und Daten senden möchte. Im TX-Modus ist CE low. Nachdem man den Befehl gesendet hat werden so viele Bytes ins FIFO geladen wie man für den Empfänger auch defniniert hat. D. h. Payload Größe muß beim Sender und Empfänger gleich groß sein solange man das FEATURE-Register nicht verwendet. Nachdem die Daten in den FIFO geladen wurden muß man den CE Pin toggeln (mind. 10µs high) damit die Daten gesendet werden. Man kann auch zuerst drei Pakete in den FIFO laden und dann erst wegschicken. &lt;br /&gt;
&lt;br /&gt;
FLUSH_TX und FLUSH_RX löschen die Daten im TX_FIFO bzw. RX_FIFO. &lt;br /&gt;
&lt;br /&gt;
NOP kann sehr gut dafür verwendet werden das STATUS Register zu lesen da es - wie der Name schon sagt - sonst nichts tut.&lt;br /&gt;
&lt;br /&gt;
== Die nRF24L01+ Register ==&lt;br /&gt;
&lt;br /&gt;
Hier ist es nötig das Datenblatt ab Seite 57 zur Hand zu nehmen da die Menge an Registern das Tutorial sprengen würde, würden alle hier besprochen. &lt;br /&gt;
&lt;br /&gt;
Mit Hilfe der Register wird das Modul per SPI konfiguriert und auch kontrolliert. Die meisten Register sind 1Byte groß, in vielen Registern werden aber nicht alle Bytes verwendet. Eine Ausnahme bilden die Register RX_ADDR_P0, RX_ADDR_P1 sowie TX_ADDR die jeweils bis zu 5 Byte groß sind. (Abhängig von der Konfiguration). Die drei 32Byte großen Register werden mit eigenen SPI Befehlen gesteuert. Sie dienen dazu die Datenpakete in den nRF24L01+ zu schreiben bzw. empfangene auszulesen. &lt;br /&gt;
&lt;br /&gt;
Innerhalb der Register belegen die Informationen eine unterschiedliche Anzahl an Bits. Als Beispiel das STATUS Register. Bit 1 bis 3 geben hier zum Beispiel Auskunft über die verwendete Pipe. Während alle anderen Informationen nur 1 Bit groß sind in dem Register. Es muß also immer entsprechend maskiert werden um die gewünschten Infos zu lesen oder auch zu schreiben.&lt;br /&gt;
&lt;br /&gt;
== Die ersten Schritte ==&lt;br /&gt;
&lt;br /&gt;
So, nach dem kurzen theoretischen Überblick ist es an der Zeit die ersten Schritte zu wagen. Sollte es noch nicht der Fall sein sollten spätestens jetzt die beiden nRF24L01+ Module mit dem µC verkabelt sein. Der ATmega8 sollte für dieses Beispiel mit mind. 8Mhz laufen, ob externer Quarz oder interner Takt ist dabei egal. Nochmals zur Erinnerung: Das nRF-Modul darf mit maximal 3,6V betrieben werden, die Eingänge verkraften aber 5V Signale solange die Versorgungsspannung zwischen 2,7V und 3,3V liegt. Werft sicherheitshalber einen Blick ins Datenblatt betreffend dieser Dinge.&lt;br /&gt;
&lt;br /&gt;
In der Vergangenheit gab es bei Arduino-Boards Fälle, in denen eine Spitzenspannung von mehr als 3,3V zu sehen war. Bei der Stromversorgung des Moduls direkt von einem Arduino-Board sollte daher ein 10µF Kondensator oder mehr parallel zu den VCC- und GND-Pins angeschlossen werden.&amp;lt;ref&amp;gt;[//forum.hobbycomponents.com/viewtopic.php?f=39&amp;amp;t=1317 Thread im &#039;&#039;Support forum for Hobby Components products&#039;&#039;] (abgerufen am 18. April 2014)&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Worüber man sich auch Gedanken machen muß ist, wie man die Funktion bzw. die Daten die man hin und her schickt, visualisiert. Ohne Visualisierung kann es natürlich auch funktionieren doch für das Tutorial wollen wir sicher sehen ob, und wenn ja, welche Daten hin und hergeschickt werden oder auch mal einen Registerinhalt anzeigen. In welcher Form das passiert bleibt jedem selbst überlassen. Man kann die Daten auf einem LCD ausgeben oder auch per UART an den PC liefern lassen. Hier sollte jeder das wählen womit er am Besten zurecht kommt. Theoretisch könnte man auch das Auslangen mit LEDs finden und sich die Registerinhalte oder Datenpakete mittels 8 LEDs anzeigen lassen. Allerdings wäre das nicht sehr komfortabel. &lt;br /&gt;
&lt;br /&gt;
=== Konfigurieren des nRF24L01+ ===&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir das Modul mal initialisieren bzw. die verwendeten Anschlüsse des µC einrichten. Am besten packen wir das ganze in eine Routine die ziemlich zeitig beim Start des µC aufgerufen wird. Weiter unten findet sich dann die Header-Datei die hier verwendet wird.&lt;br /&gt;
&lt;br /&gt;
Als erstes setzen wir die beiden verwendeten Pins als Ausgänge und schalten sie in den default-Status.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_init() &lt;br /&gt;
{&lt;br /&gt;
    DDRB |= ((1&amp;lt;&amp;lt;CSN)|(1&amp;lt;&amp;lt;CE));&lt;br /&gt;
    wl_module_CE_lo;&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dann werden die beiden (eigentlich reicht INT0) externen Interrupteingänge des ATmega8 auf fallende Flanke gestellt und der Interrupt für INT0 aktiviert. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
    MCUCR = ((1&amp;lt;&amp;lt;ISC11)|(0&amp;lt;&amp;lt;ISC10)|(1&amp;lt;&amp;lt;ISC01)|(0&amp;lt;&amp;lt;ISC00));&lt;br /&gt;
    GICR  = ((0&amp;lt;&amp;lt;INT1)|(1&amp;lt;&amp;lt;INT0));					&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
und zum Schluß noch SPI (siehe oben unter SPI) initialisiert:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;	    &lt;br /&gt;
    spi_init();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anbei noch die Header-Datei für das Modul: &lt;br /&gt;
[[Datei:wl_module.h]] (aus irgendeinem Grund forciert das Wiki hier große Anfangsbuchstaben, die Datei sollte als &amp;quot;wl_module.h&amp;quot; abgespeichert werden.)&lt;br /&gt;
&lt;br /&gt;
In dieser Header-Datei werden die wesentlichen Zuordnungen und Einstellungen getroffen wie Pin-Definitionen, Größe des Payloads, Interruptmaskierung für das Modul, CRC-Größe, etc. Außderdem die public functions deklariert. Im Moment noch nicht schrecken, es sind eine ganze Reihe von Funktionen die in einer wl_module.c Datei zusammengefaßt sind. Aufmerksame Leser werden feststellen, daß auch obige Funktion, die wl_module_init() dort erstellt wurde. &lt;br /&gt;
&lt;br /&gt;
In dem Projekt wird noch eine weitere Header-Datei für das Modul verwendet in dem die Mnemonics des Moduls abgebildet sind. Doch dazu gleich. &lt;br /&gt;
&lt;br /&gt;
=== Grundsätzliche Konfiguration ===&lt;br /&gt;
&lt;br /&gt;
Konfigurieren läßt sich eine ganze Menge beim nRF24L01+. Aber wir haben das Glück, daß es auch funktioniert wenn man wenig konfiguriert und die Standardwerte eingestellt läßt. &lt;br /&gt;
&lt;br /&gt;
Für unsere ersten Tests stellen wir nur das notwendigste ein. Um uns die Arbeit mit den vielen Registern zu erleichtern ist es jetzt Zeit die schon angesprochene Header-Datei vorzustellen und in weiterer Folge einzubinden. &lt;br /&gt;
&lt;br /&gt;
[[Datei:NRF24L01.h]]&lt;br /&gt;
&lt;br /&gt;
In dieser Header-Datei finden wir alle Mnemonics um auf die entsprechenden Befehle, Register und Registerinhalte zuzugreifen. Ja, es ist eine ziemlich lange Liste aber davon nicht schrecken lassen. &lt;br /&gt;
&lt;br /&gt;
Gut, dann setzen wir mal die ersten Werte im nRF24L01+. Als erstes wollen wir den Funkkanal einstellen. Dazu haben wir im wl_module.h schon wl_module_CH definiert. Ein Blick ins Datenblatt verrät uns, daß wir das Kommando W_REGISTER brauchen und der Kanal im Register RF_CH eingestellt wird. Die grundsätzliche Funktionsweise der Kommandos wurde schon weiter oben erklärt doch wie setzen wir das jetzt um? &lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns dazu einer Funktion die genau ein Byte in ein gewähltes Register schreibt. reg ist das gewählte Register und value der Wert der geschrieben werden soll. Mit dieser Funktion können wir schon fast alle Register des Moduls beschreiben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_config_register(uint8_t reg, uint8_t value)&lt;br /&gt;
// Clocks only one byte into the given wl-module register&lt;br /&gt;
{&lt;br /&gt;
    wl_module_CSN_lo;&lt;br /&gt;
    spi_fast_shift(W_REGISTER | (REGISTER_MASK &amp;amp; reg));&lt;br /&gt;
    spi_fast_shift(value);&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um den Kanal zu setzen wird &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
// Set RF channel&lt;br /&gt;
    wl_module_config_register(RF_CH,wl_module_CH);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
aufgerufen.&lt;br /&gt;
&lt;br /&gt;
Fein, damit ist es uns ein leichtes den Payload zu konfigurieren. Der Payload sind die Anzahl an Bytes die auf einmal übertragen werden. Der Sender muß (solange nicht die dynamic payload length aktiviert ist) genau so viele Bytes senden wie am Empfänger als Payload-Länge eingestellt ist. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
// Set length of incoming payload &lt;br /&gt;
wl_module_config_register(RX_PW_P0, wl_module_PAYLOAD);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für die ersten Tests werden wir uns um keine Pipes kümmern daher reicht es erstmal wenn wir nur den Payload für die Pipe0 festlegen.&lt;br /&gt;
&lt;br /&gt;
Ich mag das Augenmerk auf folgende Zeile in der wl_config.h legen: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#define wl_module_CONFIG		( (1&amp;lt;&amp;lt;MASK_RX_DR) | (1&amp;lt;&amp;lt;EN_CRC) | (0&amp;lt;&amp;lt;CRCO) )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der Zeile wird einiges für das CONFIG Register eingestellt. Im CONFIG Register können etwa die drei Interrupts maskiert werden, es wird eingestellt ob CRC verwendet wird und ob CRC aus einem oder zwei Bytes besteht. Und dann gibt es noch zwei ganz wesentliche Dinge darin. Einerseits PWR_UP und dann auch noch PRIM_RX. PRIM_RX legt fest ob sich das Modul im TX oder im RX Modus befindet. &lt;br /&gt;
&lt;br /&gt;
Über&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
// Defines for setting the wl_module registers for transmitting or receiving mode&lt;br /&gt;
#define TX_POWERUP wl_module_config_register(CONFIG, wl_module_CONFIG | ( (1&amp;lt;&amp;lt;PWR_UP) | (0&amp;lt;&amp;lt;PRIM_RX) ) )&lt;br /&gt;
#define RX_POWERUP wl_module_config_register(CONFIG, wl_module_CONFIG | ( (1&amp;lt;&amp;lt;PWR_UP) | (1&amp;lt;&amp;lt;PRIM_RX) ) )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
können wir das Modul entweder im TX oder RX Modus aktivieren. &lt;br /&gt;
&lt;br /&gt;
Fürs erste können wir die restlichen Register so lassen wie eingestellt.&lt;br /&gt;
&lt;br /&gt;
Wie schaut es jetzt aus wenn wir ein Register beschreiben wollen das mehr als ein Byte an Daten enthält? Als Paradebeispiel ist dafür natürlich das schreiben des Payloads in den TX-FIFO geeignet da wir hier bis zu 32 Bytes schreiben. &lt;br /&gt;
&lt;br /&gt;
Aber auch andere Register brauchen mehr als 1 Byte, so zum Beispiel die Adressregister die bis zu 5 Bytes breit sind. &lt;br /&gt;
&lt;br /&gt;
Auch dafür können wir uns einer kleinen aber feinen Routine bedienen: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_write_register(uint8_t reg, uint8_t * value, uint8_t len) &lt;br /&gt;
// Writes an array of bytes into inte the wl-module registers.&lt;br /&gt;
{&lt;br /&gt;
    wl_module_CSN_lo;&lt;br /&gt;
    spi_fast_shift(W_REGISTER | (REGISTER_MASK &amp;amp; reg));&lt;br /&gt;
    spi_transmit_sync(value,len);&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An die Routine übergeben wird das Register das beschrieben werden soll, ein Zeiger auf das Array mit den Daten und die Größe dieses Arrays.&lt;br /&gt;
&lt;br /&gt;
=== Register wieder auslesen ===&lt;br /&gt;
&lt;br /&gt;
Eine Frage die sich sehr bald stellen wird: Wie lese ich Register wieder aus? Sei es um die Einstellungen zu  kontrollieren oder auf Bits die darin automatisch gesetzt werden zu reagieren. &lt;br /&gt;
&lt;br /&gt;
Wie wir wissen reagiert der nRF24L01+ auf jeden Befehl den wir schicken automatisch und parallel auf unseren Befehl mit der Antwort des STATUS Registers. Das STATUS Register ist ein wichtiges weil es einiges an wesentlichen Informationen enthält auf die wir reagieren müssen. So werden alle drei Interrupts in dem Register durch setzen eines entsprechenden Bits abgebildet. Dieses Bit muß durch schreiben einer 1 auch wieder gelöscht werden. Es läßt sich außerdem die Pipe auslesen die die Daten gesendet hat sowie, auch ganz wichtig, das TX_FULL Flag auslesen. Dieses Flag wird gesetzt wenn der Sende-Fifo voll ist. &lt;br /&gt;
&lt;br /&gt;
Um den Status auszulesen und sonst nix weiter zu machen können wir eine kleine Funktion einsetzen: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
//return the value of the status register&lt;br /&gt;
extern uint8_t wl_module_get_status()&lt;br /&gt;
{&lt;br /&gt;
	return wl_module_get_one_byte(NOP);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aber nicht vergessen, egal was wir an den nRF24L01+ schicken, er antwortet jedes mal mit dem Inhalt des Status-Registers. Das können wir uns später zu  nutze machen.&lt;br /&gt;
&lt;br /&gt;
In dem Beispiel wird die Funktion wl_module_get_one_byte() verwendet: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern uint8_t wl_module_get_one_byte(uint8_t command)&lt;br /&gt;
{&lt;br /&gt;
uint8_t status;&lt;br /&gt;
&lt;br /&gt;
wl_module_CSN_lo;&lt;br /&gt;
status = spi_fast_shift(command);&lt;br /&gt;
wl_module_CSN_hi;&lt;br /&gt;
&lt;br /&gt;
return status;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Genau betrachtet liefert die Funktion wl_module_get_one_byte() schon den Inhalt des Status Registers. Nachdem die Funktion aber die Grundlage für den Zugriff auf einzelne Teile des Status-Registers ist die in weiteren Funktionen verwendet wird wurde für die bessere Übersichtlichkeit eine eigene Status-Abfrage Funktion implementiert.&lt;br /&gt;
&lt;br /&gt;
Wenn andere Inhalte als der Status abgefragt werden sollen etwa der Inhalt des FIFO wo ja unsere empfangenen Daten liegen bedienen wir uns einer weiteren Funktion. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_read_register(uint8_t reg, uint8_t * value, uint8_t len)&lt;br /&gt;
// Reads an array of bytes from the given start position in the wl-module registers.&lt;br /&gt;
{&lt;br /&gt;
    wl_module_CSN_lo;&lt;br /&gt;
    spi_fast_shift(R_REGISTER | (REGISTER_MASK &amp;amp; reg));&lt;br /&gt;
    spi_transfer_sync(value,value,len);&lt;br /&gt;
    wl_module_CSN_hi;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Funktion leistet uns für einige weitere Funktionen die darauf zugreifen gute Dienste. Wollen wir als Beispiel den gewählten Funkkanal auslesen so können wir das mit dieser Funktion: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
//returns the current RF channel in RF_CH register&lt;br /&gt;
extern uint8_t wl_module_get_rf_ch()&lt;br /&gt;
{&lt;br /&gt;
	uint8_t data;&lt;br /&gt;
	&lt;br /&gt;
	wl_module_read_register(RF_CH, &amp;amp;data, 1);&lt;br /&gt;
	&lt;br /&gt;
	return data;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wie man sieht greift die Funktion wl_module_get_rf_ch() auf die Funktion wl_module_read_register zu, übergibt die notwendigen Parameter und liefert uns dann das Byte zurück das in RF_CH gespeichert ist.&lt;br /&gt;
&lt;br /&gt;
=== Erster praktischer Test ===&lt;br /&gt;
&lt;br /&gt;
So, genug der Grundlagen, schauen wir uns einen ersten praktischen Test mit den Modulen an.&lt;br /&gt;
&lt;br /&gt;
Der Aufbau ist verdrahtet und mit den richtigen Spannungen versorgt, der µC läuft mit mind. 8 MHz (niedrigere Frequenzen gehen auch aber wurden von mir nicht getestet, achtet auf den passenden SPI-Vorteiler), als Optimierungsmethode ist -Os eingestellt und dem Compiler wurde auch die richtige Frequenz mitgeteilt. &lt;br /&gt;
&lt;br /&gt;
Als erstes werden wir beim Sender einen Zähler hochzählen und die Zahlen an den Empfänger übermitteln. Dadurch sehen wir, ob die Funkstrecke funktioniert. Welche Bytes tatsächlich übertragen werden ist schlußendlich egal. &lt;br /&gt;
&lt;br /&gt;
==== Der Sender ====&lt;br /&gt;
&lt;br /&gt;
Hier die kurze Main-Routine für den Sender, verwendete Funktionen werden im Anschluß besprochen. Nach belieben könnt ihr an freie Pins noch LED anschließen um bestimmte Ereignisse optisch zu überwachen. Im Code selbst wird darauf verzichtet. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * nRF24L01_Tutorial_Sender.c&lt;br /&gt;
 *&lt;br /&gt;
 * Created: 06.01.2012 20:15:04&lt;br /&gt;
 *  Author: Ernst Buchmann&lt;br /&gt;
 */ &lt;br /&gt;
&lt;br /&gt;
#ifndef F_CPU				//Define F_CPU if not done &lt;br /&gt;
#define F_CPU 8000000UL&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
#include &amp;lt;util/delay.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;quot;spi.h&amp;quot;&lt;br /&gt;
#include &amp;quot;wl_module.h&amp;quot;&lt;br /&gt;
#include &amp;quot;nRF24L01.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
volatile uint8_t timercounter;&lt;br /&gt;
&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
	uint8_t payload[wl_module_PAYLOAD];		//Array for Payload&lt;br /&gt;
	uint8_t maincounter =0;&lt;br /&gt;
	uint8_t k;&lt;br /&gt;
	&lt;br /&gt;
	wl_module_init();	//initialise nRF24L01+ Module&lt;br /&gt;
	_delay_ms(50);		//wait for nRF24L01+ Module&lt;br /&gt;
	sei();&lt;br /&gt;
	&lt;br /&gt;
	wl_module_tx_config(wl_module_TX_NR_0);		//Config Module&lt;br /&gt;
		&lt;br /&gt;
	//Timer aktivieren ATMEGA8&lt;br /&gt;
	#if defined(__AVR_ATmega8__)&lt;br /&gt;
	TCCR0 |= ( (1&amp;lt;&amp;lt;CS02) | (1&amp;lt;&amp;lt;CS00));		//Prescaler auf 1024 ATMEGA8&lt;br /&gt;
	TIMSK |= ( (1&amp;lt;&amp;lt;TOIE0));					//enable TOVF ATMEGA8&lt;br /&gt;
	#endif // __AVR_ATmega8__&lt;br /&gt;
	&lt;br /&gt;
	//Timer aktivieren ATMEGA88A&lt;br /&gt;
	#if defined(__AVR_ATmega88A__)&lt;br /&gt;
	TCCR0B |= ( (1&amp;lt;&amp;lt;CS02) | (1&amp;lt;&amp;lt;CS00));&lt;br /&gt;
	TIMSK0 |= ( (1&amp;lt;&amp;lt;TOIE0));&lt;br /&gt;
	#endif // __AVR_ATmega88A__&lt;br /&gt;
		&lt;br /&gt;
    while(1)&lt;br /&gt;
    {&lt;br /&gt;
		if (timercounter &amp;gt;= 30)			//30 entspricht ~1 Sekunde bei 8MHz&lt;br /&gt;
			{&lt;br /&gt;
				timercounter = 0;&lt;br /&gt;
			&lt;br /&gt;
				&lt;br /&gt;
				for (k=0; k&amp;lt;=wl_module_PAYLOAD-1; k++)&lt;br /&gt;
				{&lt;br /&gt;
					payload[k] = k;&lt;br /&gt;
				}&lt;br /&gt;
			&lt;br /&gt;
				payload[0] = maincounter;&lt;br /&gt;
				payload[1] = maincounter+1;				&lt;br /&gt;
			&lt;br /&gt;
				wl_module_send(payload,wl_module_PAYLOAD);&lt;br /&gt;
				&lt;br /&gt;
				maincounter++;&lt;br /&gt;
				if (maincounter &amp;gt;250)&lt;br /&gt;
				{&lt;br /&gt;
					maincounter = 0; &lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
ISR(TIMER0_OVF_vect)&lt;br /&gt;
{&lt;br /&gt;
	timercounter++;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//Unterscheidung je nach verwendeten µC&lt;br /&gt;
#if defined(__AVR_ATmega8__)&lt;br /&gt;
ISR(INT0_vect)&lt;br /&gt;
#endif // __AVR_ATmega8__&lt;br /&gt;
#if defined(__AVR_ATmega88A__)&lt;br /&gt;
ISR(INT0_vect)&lt;br /&gt;
#endif // __AVR_ATmega88A__&lt;br /&gt;
#if defined(__AVR_ATmega168__)&lt;br /&gt;
ISR(PCINT2_vect) &lt;br /&gt;
#endif // __AVR_ATmega168__  &lt;br /&gt;
// Interrupt handler &lt;br /&gt;
{&lt;br /&gt;
    uint8_t status;   &lt;br /&gt;
    &lt;br /&gt;
        // Read wl_module status &lt;br /&gt;
        wl_module_CSN_lo;                               // Pull down chip select&lt;br /&gt;
        status = spi_fast_shift(NOP);					// Read status register&lt;br /&gt;
        wl_module_CSN_hi;                               // Pull up chip select&lt;br /&gt;
		&lt;br /&gt;
		&lt;br /&gt;
		if (status &amp;amp; (1&amp;lt;&amp;lt;TX_DS))							// IRQ: Package has been sent&lt;br /&gt;
		{&lt;br /&gt;
			wl_module_config_register(STATUS, (1&amp;lt;&amp;lt;TX_DS));	//Clear Interrupt Bit&lt;br /&gt;
			PTX=0;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (status &amp;amp; (1&amp;lt;&amp;lt;MAX_RT))							// IRQ: Package has not been sent, send again&lt;br /&gt;
		{&lt;br /&gt;
			wl_module_config_register(STATUS, (1&amp;lt;&amp;lt;MAX_RT));	// Clear Interrupt Bit&lt;br /&gt;
			wl_module_CE_hi;								// Start transmission&lt;br /&gt;
			_delay_us(10);								&lt;br /&gt;
			wl_module_CE_lo;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (status &amp;amp; (1&amp;lt;&amp;lt;TX_FULL))							//TX_FIFO Full &amp;lt;-- this is not an IRQ&lt;br /&gt;
		{&lt;br /&gt;
			wl_module_CSN_lo;                               // Pull down chip select&lt;br /&gt;
			spi_fast_shift(FLUSH_TX);						// Flush TX-FIFO&lt;br /&gt;
			wl_module_CSN_hi;                               // Pull up chip select&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, Teile wie Timer oder Timerinterrupt sollten bekannt sein. Schauen wir uns die Funktionen an die aufgerufen werden. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_init();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
ist die bereits bekannte Initialisierungsfunktion wie oben besprochen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_tx_config(wl_module_TX_NR_0);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Müssen wir uns genauer ansehen. In dieser Funktion werden alle wesentlichen Register eingestellt die wir brauchen um das Modul als Sender zu nutzen. Alle verwendeten Funktionen sollten in einer wl_module.c Datei zusammengefasst werden. Obwohl wir es in diesem Beispiel noch nicht nutzen übergeben wir an wl_module_tx_config als Argument die Pipe auf der der Sender senden soll. Das Argument wird dazu  verwendet die entsprechende Adresse für den Sender festzulegen. Diese Routine ist also schon dafür eingerichtet um später einen Multi-Ceiver Betrieb mit 6 Sendern zu ermöglichen. (Beim Empfänger weiter unten wird eine einfache Konfigurationsroutine verwendet mit der kein Multi-Ceiver Betrieb möglich ist!)&lt;br /&gt;
&lt;br /&gt;
Die Variable PTX wird als globale Variable definiert und dazu verwendet um festzustellen ob gerade gesendet wird. Wird gesendet wird sie im Code auf 1 geschaltet, sonst auf 0. &lt;br /&gt;
&lt;br /&gt;
Zum Schluß wird mittels TX_POWERUP (siehe oben) das Modul als Sender aktiviert. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern void wl_module_tx_config(uint8_t tx_nr) &lt;br /&gt;
{&lt;br /&gt;
    uint8_t tx_addr[5];&lt;br /&gt;
	&lt;br /&gt;
    // Set RF channel&lt;br /&gt;
    wl_module_config_register(RF_CH,wl_module_CH);&lt;br /&gt;
    // Set data speed &amp;amp; Output Power configured in wl_module.h&lt;br /&gt;
    wl_module_config_register(RF_SETUP,wl_module_RF_SETUP);&lt;br /&gt;
    //Config the CONFIG Register (Mask IRQ, CRC, etc)&lt;br /&gt;
    wl_module_config_register(CONFIG, wl_module_CONFIG);&lt;br /&gt;
    &lt;br /&gt;
    wl_module_config_register(SETUP_RETR,(SETUP_RETR_ARD_750 | SETUP_RETR_ARC_15));&lt;br /&gt;
	&lt;br /&gt;
	//set the TX address for the pipe with the same number as the iteration&lt;br /&gt;
			switch(tx_nr)			&lt;br /&gt;
			{&lt;br /&gt;
				case 0: //setup TX address as default RX address for pipe 0 (E7:E7:E7:E7:E7)&lt;br /&gt;
					tx_addr[0] = tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P0_B0_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 1: //setup TX address as default RX address for pipe 1 (C2:C2:C2:C2:C2)&lt;br /&gt;
					tx_addr[0] = tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 2: //setup TX address as default RX address for pipe 2 (C2:C2:C2:C2:C3)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P2_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 3: //setup TX address as default RX address for pipe 3 (C2:C2:C2:C2:C4)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P3_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 4: //setup TX address as default RX address for pipe 4 (C2:C2:C2:C2:C5)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P4_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
				case 5: //setup TX address as default RX address for pipe 5 (C2:C2:C2:C2:C6)&lt;br /&gt;
					tx_addr[1] = tx_addr[2] = tx_addr[3] = tx_addr[4] = RX_ADDR_P1_B0_DEFAULT_VAL;&lt;br /&gt;
					tx_addr[0] = RX_ADDR_P5_DEFAULT_VAL;&lt;br /&gt;
					wl_module_set_TADDR(tx_addr);&lt;br /&gt;
					wl_module_set_RADDR(tx_addr);&lt;br /&gt;
					break;&lt;br /&gt;
			}&lt;br /&gt;
	&lt;br /&gt;
	PTX =0;&lt;br /&gt;
	TX_POWERUP;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der Main-Routine wird ein Timer dazu verwendet ca. jede Sekunde einen Zähler (maincounter) hinauf zu zählen (bis max. 250) und im Array payload wird das erste Element mit dem Wert des maincounters belegt. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
payload[0] = maincounter;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Die Schleife dient nur dazu das Array mit irgendwelchen Werten zu belegen die am Empfänger auch abgerufen werden können um damit zu &amp;quot;spielen&amp;quot;. Dann wird die Funktion aufgerufen die das Array ins Modul überträgt und die Sendung der Daten beginnt. &lt;br /&gt;
&lt;br /&gt;
wl_module_send(payload,wl_module_PAYLOAD); kümmert sich darum. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_send(uint8_t * value, uint8_t len) &lt;br /&gt;
// Sends a data package to the default address. Be sure to send the correct&lt;br /&gt;
// amount of bytes as configured as payload on the receiver.&lt;br /&gt;
{&lt;br /&gt;
    while (PTX) {}                  // Wait until last paket is send&lt;br /&gt;
&lt;br /&gt;
    wl_module_CE_lo;&lt;br /&gt;
&lt;br /&gt;
    PTX = 1;							// Set to transmitter mode&lt;br /&gt;
    TX_POWERUP;							// Power up&lt;br /&gt;
    &lt;br /&gt;
    wl_module_CSN_lo;                   // Pull down chip select&lt;br /&gt;
    spi_fast_shift( FLUSH_TX );			// Write cmd to flush tx fifo&lt;br /&gt;
    wl_module_CSN_hi;                   // Pull up chip select&lt;br /&gt;
    &lt;br /&gt;
    wl_module_CSN_lo;                   // Pull down chip select&lt;br /&gt;
    spi_fast_shift( W_TX_PAYLOAD );		// Write cmd to write payload&lt;br /&gt;
    spi_transmit_sync(value,len);		// Write payload&lt;br /&gt;
    wl_module_CSN_hi;                   // Pull up chip select&lt;br /&gt;
    &lt;br /&gt;
    wl_module_CE_hi;                    // Start transmission&lt;br /&gt;
	_delay_us(10);						// Grünes Modul funktioniert nicht mit 10µs delay&lt;br /&gt;
	wl_module_CE_lo;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zum Schluß werfen wir noch einen Blick auf die Interrupt-Routine ISR(INT0_vect). Wir wissen, daß es drei Zustände gibt die einen Interrupt auslösen können: RX_DR der Auftritt wenn neue Daten empfangen wurden, TX_DS der Auftritt wenn Daten gesendet wurden und MAX_RT der Auftritt wenn die maximale Anzahl an Sendungswiederholungen ohne Erfolg stattgefunden haben. Sobald einer der Zustände auftritt wird auch das passende Bit im STATUS-Register gesetzt. Um das Bit zu löschen muß eine 1 geschrieben werden. Jeder dieser drei Zustände kann ausmaskiert werden und löst dann keinen Interrupt aus. Man kann so entweder per Interrupt-Routine auf ein Ereignis reagieren oder aber auch mittels polling auf das interessierende Bit auf ein Ereignis reagieren. &lt;br /&gt;
&lt;br /&gt;
In der ISR(INT0_vect) wird zum Beispiel auf TX_DS reagiert und auf MAX_RT. Soblad das Paket gesendet wurde wird TX_DS wieder zurückgesetzt und die Variable PTX auf 0 gesetzt. MAX_RT wird genutzt um die Daten noch einmal zu senden. Der TX-FIFO Speicher wird ja nicht gelöscht wenn eine Datenübertragung fehlgeschlagen hat.&lt;br /&gt;
&lt;br /&gt;
==== Der Empfänger ====&lt;br /&gt;
&lt;br /&gt;
So, ein nRF24L01+ Modul sollte mal funken. Um das zu kontrollieren brauchen wir jetzt unser zweites nRF24L01+ Modul mit dem wir die Daten empfangen. Ich verwende in dem Beispiel eine LCD-Anzeige um die Daten anzuzeigen auf das aber nicht weiter eingegangen wird. Wie die Daten angezeigt werden ist jedem selbst überlassen, genau so gut kann man mittels UART die Daten am PC anzeigen lassen oder was immer Euch zur Verfügung steht. Auch beim Empfänger nicht darauf vergessen die üblichen Stolpersteine wie -Os, µC-Frequenz etc. einzustellen. &lt;br /&gt;
&lt;br /&gt;
Wie schon angekündigt können empfangene Daten mittels Polling abgefragt werden oder über IRQ. In dem Beispiel wird mittels Polling kontrolliert ob neue Daten angekommen sind. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * nRF24L01_Tutorial_RX.c&lt;br /&gt;
 *&lt;br /&gt;
 * Created: 06.01.2012 22:51:57&lt;br /&gt;
 *  Author: Ernst Buchmann&lt;br /&gt;
 */ &lt;br /&gt;
&lt;br /&gt;
#ifndef F_CPU				//define F_CPU if not done &lt;br /&gt;
#define F_CPU 20000000UL&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
#include &amp;lt;util/delay.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;string.h&amp;gt;&lt;br /&gt;
#include &amp;quot;spi.h&amp;quot;&lt;br /&gt;
#include &amp;quot;lcd-routines.h&amp;quot;&lt;br /&gt;
#include &amp;quot;wl_module.h&amp;quot;&lt;br /&gt;
#include &amp;quot;nRF24L01.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//Variablen&lt;br /&gt;
volatile uint8_t PTX;			//Global Variable&lt;br /&gt;
char itoabuffer[20];&lt;br /&gt;
&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
	uint8_t payload[wl_module_PAYLOAD];		//holds the payload&lt;br /&gt;
	uint8_t nRF_status;						//STATUS information of nRF24L01+&lt;br /&gt;
	uint8_t zaehler = 0;&lt;br /&gt;
	&lt;br /&gt;
	lcd_init();&lt;br /&gt;
	lcd_clear();&lt;br /&gt;
	wl_module_init();		//Init nRF Module&lt;br /&gt;
	_delay_ms(50);			//wait for Module&lt;br /&gt;
	sei();					//activate Interrupts&lt;br /&gt;
	wl_module_config();		//config nRF as RX Module, simple Version&lt;br /&gt;
	&lt;br /&gt;
    while(1)&lt;br /&gt;
    {&lt;br /&gt;
		while (!wl_module_data_ready());			//waits for RX_DR Flag in STATUS&lt;br /&gt;
		nRF_status = wl_module_get_data(payload);	//reads the incoming Data to Array payload&lt;br /&gt;
		zaehler = payload[0];&lt;br /&gt;
		lcd_clear();&lt;br /&gt;
		lcd_home();&lt;br /&gt;
		itoa(zaehler, itoabuffer, 10);				//conversion into String&lt;br /&gt;
		lcd_string(itoabuffer);&lt;br /&gt;
		&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das ist die ziemlich kurze main-Routine zum Abfragen der Daten die im Empfänger angekommen sind. Geübten Augen wird sofort auffallen, daß die Abfrage über Polling in diesem Beispiel den µC solange in einer while-Schleife fest hält bis neue Daten angekommen sind. Das ist natürlich nicht praktikabel wenn der µC noch andere Dinge zu erledigen hätte. Für ein erstes Übungsbeispiel wo der Fokus nur darauf liegt die Funkstrecke einzurichten soll uns das nicht stören. Schauen wir und das Programm im Detail an: &lt;br /&gt;
&lt;br /&gt;
Achtung: F_CPU an die eigenen Gegebenheiten anpassen!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_init();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
kennen wir schon von den Sender Einstellungen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
wl_module_config&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
Konfiguriert das nRF Modul mit den wesentlichen Registerinhalten und stellt das Modul auf Empfang. Es wurde hier absichtlich sehr kurz gehalten und nur die wesentlichsten Einstellungen getroffen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
void wl_module_config() &lt;br /&gt;
// Sets the important registers in the wl-module and powers the module&lt;br /&gt;
// in receiving mode&lt;br /&gt;
{&lt;br /&gt;
    // Set RF channel&lt;br /&gt;
    wl_module_config_register(RF_CH,wl_module_CH);&lt;br /&gt;
	// Set data speed &amp;amp; Output Power configured in wl_module.h&lt;br /&gt;
	wl_module_config_register(RF_SETUP,wl_module_RF_SETUP);&lt;br /&gt;
	// Set length of incoming payload &lt;br /&gt;
    wl_module_config_register(RX_PW_P0, wl_module_PAYLOAD);&lt;br /&gt;
	&lt;br /&gt;
    // Start receiver &lt;br /&gt;
    PTX = 0;        // Start in receiving mode&lt;br /&gt;
    RX_POWERUP;     // Power up in receiving mode&lt;br /&gt;
    wl_module_CE_hi;     // Listening for pakets&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Wie man sieht wurde hier nur die Payload-Größe für Pipe0 eingestellt und keine weiteren Empfangsadressen gesetzt. Das funktioniert weil beim Sender zwar Adressen konfiguriert wurden aber die Default-Adressen verwendet wurden. Man könnte sich für dieses Beispiel die Definition der Adressen beim Sender sparen und auch dort eine sehr verkürzte Konfiguration verwenden. Als Empfangskanal und -Geschwindigkeit müssen natürlich die gleichen Werte verwendet werden wie beim Sender. Auch die Payload-Größe muß im Empfänger zu  der Anzahl an Bytes passen die der Sender schickt. &lt;br /&gt;
&lt;br /&gt;
In dieser Zeile while (!wl_module_data_ready()); prüft das Programm ob im Empfangsmodul Daten angekommen sind die ausgelesen werden können und bleibt solange in dieser while-Schleife bis RX_DR gesetzt wurde. &lt;br /&gt;
&lt;br /&gt;
Diese Funktion macht nichts weiter als das STATUS Register auszulesen und den Wert von RX_DR zurück zu geben: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern uint8_t wl_module_data_ready() &lt;br /&gt;
// Checks if data is available for reading&lt;br /&gt;
{&lt;br /&gt;
    if (PTX) return 0;&lt;br /&gt;
    uint8_t status;&lt;br /&gt;
    // Read wl_module status &lt;br /&gt;
    wl_module_CSN_lo;                                // Pull down chip select&lt;br /&gt;
    status = spi_fast_shift(NOP);               // Read status register&lt;br /&gt;
    wl_module_CSN_hi;                                // Pull up chip select&lt;br /&gt;
    return status &amp;amp; (1&amp;lt;&amp;lt;RX_DR);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sobald RX_DR 1 ist und damit anzeigt, daß Daten angekommen sind wird die while Schleife verlassen und &amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;nRF_status = wl_module_get_data(payload);&amp;lt;/syntaxhighlight&amp;gt; ausgeführt. &lt;br /&gt;
&lt;br /&gt;
Diese Funktion liest den Inhalt des RX-FIFO Speichers aus und gibt den Inhalt des STATUS Registers zurück. Anschließend wird noch das RX_DR Bit gelöscht um den nächsten Datenempfang detektieren zu können: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
extern uint8_t wl_module_get_data(uint8_t * data) &lt;br /&gt;
// Reads wl_module_PAYLOAD bytes into data array&lt;br /&gt;
{&lt;br /&gt;
	uint8_t status;&lt;br /&gt;
    wl_module_CSN_lo;                               // Pull down chip select&lt;br /&gt;
    status = spi_fast_shift( R_RX_PAYLOAD );            // Send cmd to read rx payload&lt;br /&gt;
    spi_transfer_sync(data,data,wl_module_PAYLOAD); // Read payload&lt;br /&gt;
    wl_module_CSN_hi;                               // Pull up chip select&lt;br /&gt;
    wl_module_config_register(STATUS,(1&amp;lt;&amp;lt;RX_DR));   // Reset status register&lt;br /&gt;
	return status;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Rest der main-Routine kümmert sich dann nur noch um die Ausgabe der Daten.&lt;br /&gt;
&lt;br /&gt;
Zum Schluß noch eine kleine Aufgabe: &lt;br /&gt;
Warum wird beim Empfänger keine Interruptfunktion ISR(INT0_vect) verwendet? Und löst  RX_DR überhaupt einen Interrupt aus?&lt;br /&gt;
&lt;br /&gt;
== Beispieldateien ==&lt;br /&gt;
&lt;br /&gt;
Hier finden sich die Dateien die in diesem Beispiel verwendet wurden: &lt;br /&gt;
&lt;br /&gt;
[[Datei: nrf24L01_Tutorial.zip]]&lt;br /&gt;
&lt;br /&gt;
In wl_module.c finden sich alle Routinen die im Tutorial verwendet wurden und auch noch viel, viel mehr. Es sind alle Routinen vorhanden um sehr schnell einen Multi-Ceiver mit 6 Data-Pipes aufzubauen oder verschiedene interessante Daten auszulesen. Das Prinzip sollte nach diesem Tutorial, so hoffe ich, klar sein um diese Routinen zu durchschauen und selbst anzuwenden oder anzupassen.&lt;br /&gt;
&lt;br /&gt;
== Zusammenfassung ==&lt;br /&gt;
&lt;br /&gt;
Noch ein paar wesentliche Punkte zu den Funkmodulen und ersten Schritten hier im Tutorial: &lt;br /&gt;
&lt;br /&gt;
1. Achtung mit der Spannung, die Module vertragen wirklich keine höhere Spannung als im Datenblatt angegeben wie ich leider feststellen durfte. &lt;br /&gt;
&lt;br /&gt;
2. Wie schon angesprochen eignet sich die Polling-Variante im Empfänger-Beispiel nur bedingt für die Umsetzung in eigenen Projekten da sie den µC bis zum nächsten Dateneingang lahm legt. Und sollten keine Daten kommen, dann ist der µC in dieser Zeile ad infinitum gefangen. &lt;br /&gt;
&lt;br /&gt;
3. Es kann sein, wenn die Daten sehr schnell kommen, daß man ein RX_DR versäumt. Der FIFO hat ja Platz für 3xPayload. Man sollte also durchaus auch abfragen ob noch weitere Daten im FIFO vorhanden sind. Insbesondere wenn mit Multi-Ceivern gearbeitet wird. &lt;br /&gt;
&lt;br /&gt;
4. Für kurze Distanzen funktioniert die Datenübertragung mit 2Mbps sehr gut. Wenn längere Distanzen überwunden werden sollen, dann sollte man auf 250kbps zurückgehen, das erhöht die Empfindlichkeit des Empfängers. Der Sender sollte mit maximaler Leistung senden. Außerdem sollte der Payload nur so groß sein wie auch wirklich benötigt. Je weniger Bytes übertragen werden desto größer die Chance auf erfolgreiche Datenübertragung. Bei Bedarf gibt es auch Module die den Anschluß einer externen Antenne ermöglichen. &lt;br /&gt;
&lt;br /&gt;
5. Man sollte die Möglichkeiten nutzen die Enhanced Shockburst bietet. Das TX_DS Bit wird dann nur gesetzt wenn auch wirklich ein ACK vom Empfänger eingetroffen ist. (Im Tutorial wird übrigens Enhanced Shockburst verwendet. Details dazu hätten aber das Tutorial gesprengt)&lt;br /&gt;
&lt;br /&gt;
6. Beim Multi-Ceiver Betrieb sollte für jeden Sender ein, sich von den anderen Sendern unterscheidendes, AUTO RETRANSMIT DELAY (ARD) eingestellt werden. Das erhöht die Chancen, daß sich die Sender nicht gegenseitig stören. &lt;br /&gt;
&lt;br /&gt;
7. Aufpassen beim AUTO RETRANSMIT DELAY wenn mit 250kpbs gesendet wird. Der Default-Wert von 250µS ist zu kurz um eine funktionierende Datenübertragung zu gewährleisten. Für Details siehe Datenblatt. &lt;br /&gt;
&lt;br /&gt;
Nachrichten an den Autor: [http://www.mikrocontroller.net/user/show/Puravida PuraVida]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Funk]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=China_SUPER_Bauteile-Schn%C3%A4ppchen_Thread-Wiki&amp;diff=80657</id>
		<title>China SUPER Bauteile-Schnäppchen Thread-Wiki</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=China_SUPER_Bauteile-Schn%C3%A4ppchen_Thread-Wiki&amp;diff=80657"/>
		<updated>2014-01-05T18:00:13Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: &amp;quot;bis ca. 26€&amp;quot; ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Viele von euch möchten gerne zu günstigen Preisen und kostenlosem Versand Elektronische Bauteilsortimente oder alles Rund um Elektronik einkaufen? Dann seid ihr genau auf dieser Seite richtig. Was Ihr hinnehmen müsst, sind die längere Versandzeiten aus China oder Hongkong. Hier werden nacheinander Schnäppchen vom bekannten &amp;quot;SUPER Bauteile-Schnäppchen Thread&amp;quot; gelistet. Allfällige Preisangaben (anzahl @ gesamtpreis) sind natürlich nur zur Orientierung.&lt;br /&gt;
&lt;br /&gt;
Nachfolgend muss ich sagen, wenn ihr Artikel seht, die nicht mehr verfügbar zu kaufen sind, bitte ich euch darum einfach den Link zu löschen über die &amp;quot;BEARBEITEN&amp;quot; Funktion rechts. So bleibt das Wiki am aktuellsten.&lt;br /&gt;
Wer &amp;quot;Lust und Zeit&amp;quot; hat, darf gerne selber hier Dinge beitragen...&lt;br /&gt;
&lt;br /&gt;
Vielen dank an an den Verfasser Simon Ruetz&lt;br /&gt;
&lt;br /&gt;
== Displays (z.B. HD44780) ==&lt;br /&gt;
&lt;br /&gt;
*http://www.ebay.at/itm/251102217705 (blau)&lt;br /&gt;
*http://www.ebay.at/itm/261061327431 (gelb-grün)&lt;br /&gt;
*http://www.ebay.at/itm/320746806372&lt;br /&gt;
*http://www.ebay.at/itm/251049844026&lt;br /&gt;
*http://www.ebay.de/itm/320533512038&lt;br /&gt;
*http://www.ebay.de/itm/220604499525&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=380630838372&amp;amp;clk_rvr_id=552823587951&lt;br /&gt;
*http://www.aliexpress.com/item/Whole-sale-10PCS-LOT-5V-Character-LCD-Module-Display-LCM-1602-162-16X2-blue-blacklight/817113032.html&lt;br /&gt;
&lt;br /&gt;
128x64 Grafik LCD mit integrierten Controllern ab 8 EUR inkl. Versand&lt;br /&gt;
*http://www.ebay.at/itm/220594603390 (ST7920 Vorsicht*)&lt;br /&gt;
*http://www.ebay.at/itm/170899666269 (KS0108)&lt;br /&gt;
*http://www.ebay.at/itm/261069788027 (KS0108)&lt;br /&gt;
&lt;br /&gt;
Touch Displays 4.3&amp;quot; und 5&amp;quot;&lt;br /&gt;
*http://www.ebay.de/sch/i.html?_sacat=0&amp;amp;_from=R40&amp;amp;_...&lt;br /&gt;
*http://www.ebay.de/sch/i.html?_nkw=touch+tft+modul...&lt;br /&gt;
&lt;br /&gt;
0.96&amp;quot; 128x64 OLED für 4,35€ inkl. Versand: &lt;br /&gt;
Ebay-Artikel Nr. 160879914739&lt;br /&gt;
&lt;br /&gt;
84*48 84x84 LCD Module White backlight adapter PCB for Nokia 5110 Arduino&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=400488314619&amp;amp;clk_rvr_id=552815797700&lt;br /&gt;
&lt;br /&gt;
== Buchsen und Stecker ==&lt;br /&gt;
&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=171038016920&amp;amp;clk_rvr_id=552821867059&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=290928971235&amp;amp;clk_rvr_id=552825839674&lt;br /&gt;
*http://www.ebay.de/itm/180923079454&lt;br /&gt;
*http://www.ebay.de/itm/270853061937&lt;br /&gt;
*http://www.ebay.de/itm/120995663331&lt;br /&gt;
*www.aliexpress.com/store/product/20-pcs-2-Pin-Screw-Terminal-Block-Connector-5mm-Pitch-B/929745_1329137726.html&lt;br /&gt;
*http://www.aliexpress.com/snapshot/292664113.html&lt;br /&gt;
&lt;br /&gt;
== Sortimente ==&lt;br /&gt;
Kondensatoren:&lt;br /&gt;
*http://www.ebay.de/itm/181146487242&lt;br /&gt;
*http://www.banggood.com/Wholesale-0805-SMD-32-Value-Chip-Capacitor-Assortment-Kit-Pack-320pcs-p-53344.html&lt;br /&gt;
Widerstände: &lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=350855175041&amp;amp;clk_rvr_id=553088669397&lt;br /&gt;
Sortiment bunte Schrumfschläuche:&lt;br /&gt;
*http://www.aliexpress.com/snapshot/292198344.html&lt;br /&gt;
Zener-Dioden:&lt;br /&gt;
*http://www.banggood.com/300pcs-2V-39V-30-Values-1-Or-2W-0_5W-Zener-Diode-Assorted-Kit-p-87725.html (30 Werte, je 10 Stück)&lt;br /&gt;
&lt;br /&gt;
== Kunststoff Boxen ==&lt;br /&gt;
&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=170770334385&amp;amp;clk_rvr_id=553094538423&lt;br /&gt;
*http://www.aliexpress.com/item/smd-storage-box-SMA-SMT-component-container-storage-boxes-electronic-case-kit-IC-boxes-100pcs-lot/1306857575.html&lt;br /&gt;
*http://www.aliexpress.com/item/1-IC-original-box-SMD-chip-components-interlocking-parts-can-patch-box-Anti-static-Black-Orange/1322069794.html&lt;br /&gt;
*http://www.ebay.de/itm/20-pcs-Components-Part-Laboratory-Storage-Electronic-SMT-SMD-Box-SMT-Anti-Static-/380740028506.,&lt;br /&gt;
&lt;br /&gt;
== 2,4 GHz ==&lt;br /&gt;
&lt;br /&gt;
 2 PCS NRF24L01 2.4GHz RF Wireless Transceiver Module for Arduino&lt;br /&gt;
*http://www.ebay.de/itm/170838373171&lt;br /&gt;
*http://www.ebay.de/itm/181051362897&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=121118879770&amp;amp;clk_rvr_id=552817485616&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=400505927677&amp;amp;clk_rvr_id=552827828280&lt;br /&gt;
&lt;br /&gt;
== Funkmodule ==&lt;br /&gt;
*http://www.aliexpress.com/snapshot/294138133.html&lt;br /&gt;
*http://www.aliexpress.com/snapshot/294138134.html&lt;br /&gt;
&lt;br /&gt;
== Platinen ==&lt;br /&gt;
&lt;br /&gt;
*http://www.ebay.de/itm/10x-Double-Side-Prototype-PCB-Universal-Board-50x70mm-/130686265627?clk_rvr_id=552815576470&lt;br /&gt;
*http://www.ebay.de/itm/20x-Double-Side-Prototype-PCB-Board-5x7-4x6-3x7-2x8CM-/130531103896?clk_rvr_id=552822429042&lt;br /&gt;
*http://www.ebay.de/itm/50-PROTO-TYPE-PCB-CIRCUIT-PANEL-SOLDER-DIY-50X70-BOARD-/270499139884?clk_rvr_id=552823620700&lt;br /&gt;
&lt;br /&gt;
Ich habe aus Sammelbestellungen immer wieder mal FR4 Lochrasterplatinen... Fragen kostet nichts ;)&lt;br /&gt;
*http://www.mikrocontroller.net/topic/311103&lt;br /&gt;
&lt;br /&gt;
== Batterien und Akkus==&lt;br /&gt;
&lt;br /&gt;
500 SG13 für 3,10:&lt;br /&gt;
*http://www.ebay.de/itm/330570767968&lt;br /&gt;
AAA Batterien:&lt;br /&gt;
*http://www.aliexpress.com/item/16-pcs-lot-4-Blister-AA-Battery-Dry-Battery-Super-Heavy-Duty-Battery-1-5V-AA/796248871.html&lt;br /&gt;
Varta AA:&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=330898341798&amp;amp;clk_rvr_id=553114059335&lt;br /&gt;
&lt;br /&gt;
LiPo 3.7V&lt;br /&gt;
*http://www.aliexpress.com/item/Free-Shipping-New-Upgraded-3-7V-380mAh-25C-Lipo-Battery-for-Hubsan-X4-H107-Ladybird-RC/1135685083.html (5 @ 11.72 EUR)&lt;br /&gt;
&lt;br /&gt;
== Kapton Tape ==&lt;br /&gt;
&lt;br /&gt;
*http://www.ebay.de/sch/i.html?_sop=15&amp;amp;_sacat=0&amp;amp;_from=R40&amp;amp;_nkw=kapton+tape&amp;amp;LH_PrefLoc=2&amp;amp;rt=nc&amp;amp;LH_BIN=1&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
&lt;br /&gt;
=== 5 mm ===&lt;br /&gt;
Die billigsten 5mm LEDs - 100 Stk um unter 3 EUR inkl. Versand&lt;br /&gt;
*http://www.ebay.at/itm/130723150892 (Rot, matt?)&lt;br /&gt;
*http://www.ebay.at/itm/330651196119 (Rot, klar)&lt;br /&gt;
*http://www.ebay.at/itm/140789002572 (Grün, matt?)&lt;br /&gt;
*http://www.ebay.at/itm/230741038980 (Grün, klar)&lt;br /&gt;
*http://www.ebay.at/itm/190719616216 (Blau, klar)&lt;br /&gt;
*http://www.ebay.at/itm/170854883320 (Blau, matt)&lt;br /&gt;
*http://www.ebay.at/itm/330697183675 (Weiss, klar)&lt;br /&gt;
*http://www.ebay.at/itm/251117618595 (Sortiment aus jew. 20 Stk Rot, Blau, Grün, Gelb, Weiss)&lt;br /&gt;
*http://www.ebay.de/itm/290881202957 (Weiss)&lt;br /&gt;
&lt;br /&gt;
=== Hochleistungs LEDs ===&lt;br /&gt;
*http://www.aliexpress.com/item/DropShipping-New-10W-RGB-High-Power-Chip-LED-Light-10-Watt-Lamp-Bright-Light-JS0077-Free/888135721.html&lt;br /&gt;
*http://www.aliexpress.com/item/RGB-10w-diode-led-chip-for-RGB-10W-LED-Floodlight-Flood-Light-CE-RoHS-Warranty-2/957361239.html&lt;br /&gt;
&lt;br /&gt;
=== LED Matrix ===&lt;br /&gt;
*http://www.aliexpress.com/item/1x-16-16-Pixel-WS2812B-LED-Digital-Flexible-Panel-WS2811-Individually-Color-DC5V/1342768354.html&lt;br /&gt;
&lt;br /&gt;
=== RGB Stripes ===&lt;br /&gt;
*http://www.aliexpress.com/item/New-1M-Black-PCB-WS2811-Digital-RGB-LED-Strip-Light-144-Pixel-LEDs-5050-RGB-SMD/1314161448.html&lt;br /&gt;
&lt;br /&gt;
=== Taschenlampe ===&lt;br /&gt;
MEGA DEAL!!!:&lt;br /&gt;
*http://www.aliexpress.com/item/Adjustable-Focus-Zoom-In-Out-CREE-Q5-LED-200-Lumen-SLIM-Ultra-Bright-Flashlight-Torch-For/548172876.html&lt;br /&gt;
*http://www.aliexpress.com/item/Mini-LED-Torch-7W-450LM-CREE-Q5-LED-Flashlight-Adjustable-Focus-Zoom-flash-Light-Lamp-free/913244541.html&lt;br /&gt;
*http://www.ebay.de/itm/111185764169?ssPageName=STRK:MEWNX:IT&amp;amp;_trksid=p3984.m1497.l2649&lt;br /&gt;
&lt;br /&gt;
== Laser ==&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=370810846723&amp;amp;clk_rvr_id=553098953077&lt;br /&gt;
*http://www.aliexpress.com/item/100pcs-650nm-6mm-5V-5mW-Laser-Dot-Diode-Module-Copper-Head-Red-FreeShipping/1143027805.html&lt;br /&gt;
*http://www.ebay.com/itm/10pcs-laser-diode-module-laser-diode-circuit-Module-Head-650nm-6mm-3V-5mW-/130903728362&lt;br /&gt;
*http://www.ebay.com/itm/10pcs-laser-diode-module-red-Laser-Diode-laser-diode-circuit-5V-Module-Head-/370810846723&lt;br /&gt;
*http://www.aliexpress.com/item/2pcs-650nm-5mW-Red-Laser-Line-Module-Glass-Lens-Focusable-Industrial-Class/981044377.html&lt;br /&gt;
&lt;br /&gt;
== Taster und Schalter ==&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=300916303479&amp;amp;clk_rvr_id=553093896309&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=110957987526&amp;amp;clk_rvr_id=553108801354&lt;br /&gt;
*http://www.aliexpress.com/item/100PC-Lot-SMT-3X6X2-5-h-MM-Tactile-Tact-Push-Button-Micro-Switch-Momentary-Two-Pin/728175767.html&lt;br /&gt;
*http://www.aliexpress.com/item/3-6-2-5H-2pin-white-SMD-mp3-mp4-Button-switch-key-switch-Tact-Switch/1065482131.html&lt;br /&gt;
&lt;br /&gt;
== Sensoren ==&lt;br /&gt;
=== Infrared PIR Motion ===&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=130824723088&amp;amp;clk_rvr_id=553097766279&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=370671048122&amp;amp;clk_rvr_id=553103039249&lt;br /&gt;
&lt;br /&gt;
=== Ultraschall ===&lt;br /&gt;
*http://www.aliexpress.com/item/Free-shipping-HC-SR04-HCSR04-Ultrasonic-module-ultrasonic-ranging-modules-ranging-module-Ultrasonic-Sensors-in-stock/610440655.html (10 @ 9.80 EUR)&lt;br /&gt;
*http://www.ebay.com/itm/370877806292 (10 @ 11.37 EUR)&lt;br /&gt;
&lt;br /&gt;
=== MPU 6050 Gyro ===&lt;br /&gt;
*http://www.aliexpress.com/item/FREE-SHIPPING-MPU-6050-MPU6050-Module-3-Axis-analog-gyro-sensors-3-Axis-Accelerometer-Module-GY/1086775775.html (5 @ 11.12 EUR)&lt;br /&gt;
&lt;br /&gt;
== GSM und GPS ==&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=270851051007&amp;amp;clk_rvr_id=553098865478&lt;br /&gt;
*http://www.aliexpress.com/item/VK16U6-ublox-GPS-Module-with-Antenna-TTL-Signal-Output-FZ0517-Free-Shipping-Dropshipping/922483051.html&lt;br /&gt;
&lt;br /&gt;
== Voltmeter ==&lt;br /&gt;
&lt;br /&gt;
*http://www.ebay.de/itm/190657429814&lt;br /&gt;
*http://www.aliexpress.com/snapshot/291462038.html&lt;br /&gt;
*USB Strom-/Spannungsanzeige: siehe Bereich USB&lt;br /&gt;
&lt;br /&gt;
== Schaltregler-Module ==&lt;br /&gt;
=== Step-Down Schaltregler-Module ===&lt;br /&gt;
Die billigsten Step-Down Schaltregler-Module mit LM2596 - unter 2 EUR inkl. Versand&lt;br /&gt;
*http://www.ebay.at/itm/310430056189&lt;br /&gt;
*http://www.ebay.at/itm/221113782096&lt;br /&gt;
*http://www.ebay.at/itm/251120173500&lt;br /&gt;
*http://www.ebay.at/itm/330791790173&lt;br /&gt;
*http://www.ebay.at/itm/130729707683&lt;br /&gt;
*http://www.ebay.at/itm/330646303458&lt;br /&gt;
*http://www.aliexpress.com/item/Hot-sale-10PCS-LM2596-DC-DC-Step-Down-Adjustable-Power-Supply/955850963.html?s=p (10 St.)&lt;br /&gt;
*http://www.ebay.de/itm/270762820456 10× MP2307 3A DC to DC Step-down Power Module KIS-3R33S * 6,95€&lt;br /&gt;
*http://www.ebay.de/itm/190698451181 KIM-055L, 9-40V auf 5V, 5A  (10 @ ca. 11,50 EUR)&lt;br /&gt;
*http://www.ebay.de/itm/261016126639 KIM-3R35, 9-40V auf 3.3V, 5A (10 @ ca. 6 EUR)&lt;br /&gt;
&lt;br /&gt;
=== Step-Up Schaltregler-Module ===&lt;br /&gt;
Die billigsten Step-UP Schaltregler-Module mit LM2577 - ca 2 EUR inkl. Versand&lt;br /&gt;
*http://www.ebay.at/itm/170792120040&lt;br /&gt;
*http://www.ebay.at/itm/140773758954&lt;br /&gt;
*http://www.ebay.at/itm/260974659516&lt;br /&gt;
*http://www.ebay.at/itm/170813838776&lt;br /&gt;
*http://www.ebay.at/itm/180957599819&lt;br /&gt;
*http://www.aliexpress.com/item/Hot-Sell-10pcs-lot-1A-3V-to-5V-DC-DC-Converter-Step-Up-Boost-Module-Free/1359972360.html (10 @ 10.90 EUR)&lt;br /&gt;
&lt;br /&gt;
== Arduino ==&lt;br /&gt;
*http://www.aliexpress.com/item/Free-shipping-BTE-ROBOT-Main-Control-Board-Compatible-with-Arduino-duemilanove-2009-ATMEGA328USB-cable/587638761.html&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=200929452071&amp;amp;clk_rvr_id=552818482186&lt;br /&gt;
&lt;br /&gt;
Arduino Mini/Pro Clones (Breadboard, TQFP ATMEGA328) ab ca 7 EUR inkl. &lt;br /&gt;
Versand&lt;br /&gt;
*http://www.ebay.at/itm/230795578198 (ATMEGA328, Resettaster, kein USB)&lt;br /&gt;
*http://www.ebay.at/itm/230799921826 (ATMEGA328, Nano, USB)&lt;br /&gt;
*http://www.aliexpress.com/item/5pcs-lot-Pro-Mini-328-Mini-ATMEGA328-5V-16MHz-Free-Shipping-Dropshipping/1275111458.html (ATMEGA328, Resettaster, kein USB) &lt;br /&gt;
*http://www.aliexpress.com/item/CP2102-Module-Pro-Mini-Module-Atmega328-5V-16M-Compatible-With-Nano/1273504373.html (ATMEGA328, Nano, USB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Chip-Only ATMEGA328 mit Arduino-Bootloader ab ca 3 EUR inkl. Versand:&lt;br /&gt;
*http://www.ebay.at/itm/300726927158&lt;br /&gt;
*http://www.ebay.at/itm/140810128013&lt;br /&gt;
*http://www.ebay.at/itm/280902871387&lt;br /&gt;
*http://www.mikrocontroller.net/user/show/daniel_w29  Ich habe sie bei mir für 2,80€ gelistet - allerdings plus Versand&lt;br /&gt;
&lt;br /&gt;
Breadboard Power Supply:&lt;br /&gt;
*http://www.ebay.com/itm/New-1PCS-MB-102-Breadboard-Power-Supply-Module-3-3V-5V-For-Arduino-Board-EP98-/111146951040?pt=LH_DefaultDomain_0&amp;amp;hash=item19e0dfe180&lt;br /&gt;
&lt;br /&gt;
== Kamera ==&lt;br /&gt;
&lt;br /&gt;
*http://www.ebay.de/itm/180937263580&lt;br /&gt;
*http://www.ebay.de/itm/221259368601&lt;br /&gt;
&lt;br /&gt;
== Bluetooth Modul ==&lt;br /&gt;
&lt;br /&gt;
*http://www.aliexpress.com/item/HM-06C-best-Wireless-bluetooth-to-uart-transceiver-Module-Support-Remot-control-mode-support-self-checksum/671962689.html&lt;br /&gt;
*http://www.fasttech.com/products/0/10005943/1453902-bluetooth-wireless-serial-port-master-slave-module&lt;br /&gt;
*http://www.ebay.de/itm/Wireless-Bluetooth-RF-Transceiver-Modul-serielle-RS232-TTL-HC-05-Fur-Arduino-AR-/350916840928 (UNGETESTET; 13.12.2013 1,03 Euro + 4,99 Euro Versand; Bluetooth-Modul mit 6-Pin-Pfostenstecker; evtl. (abweichende Pin-Belegung aber gleiche Modulbezeichnung &#039;&#039;HC-05&#039;&#039;) passende Anleitung und Beispielcodes: http://www.instructables.com/id/Arduino-AND-Bluetooth-HC-05-Connecting-easily/)&lt;br /&gt;
*http://www.ebay.de/itm/Interface-Base-Board-Serial-Transceiver-Bluetooth-Module-For-Arduino-MEGA-UNO-AR-/400589610445 (UNGETESTET; 13.12.2013 1,18 Euro + kostenloser Versand; Bluetooth-Modul mit 6-Pin-Pfostenstecker; evtl. (Pin-Belegung identisch) passende Anleitung und Beispielcodes: http://www.instructables.com/id/Arduino-AND-Bluetooth-HC-05-Connecting-easily/)&lt;br /&gt;
&lt;br /&gt;
== ICs und IC-Sockel ==&lt;br /&gt;
&lt;br /&gt;
10 Stk ATMEGA8A TQFP32 (10 Stück für 7,35 EUR inkl. Versand am 30.11.2013)&lt;br /&gt;
*http://www.ebay.at/itm/270747777418&lt;br /&gt;
10 Stk LM2577S (10 Stück für 12,33 EUR am 30.11.2013) &amp;quot;LM2577S-ADJ LM2577 2577 Step Up (Boost) Voltage Regulator TO-263-6&amp;quot;&lt;br /&gt;
*http://www.ebay.de/itm/130724310847 (10 Stück für 12,33 EUR am 30.11.2013)&lt;br /&gt;
*http://www.ebay.de/itm/250846968578 (10 Stück für 13,88 EUR am 30.11.2013)&lt;br /&gt;
LM317:&lt;br /&gt;
*http://www.banggood.com/10pcs-LM317T-LM317-Adjustable-Voltage-Regulator-IC-1_2V-To-37V-1_5A-p-80867.html&lt;br /&gt;
10 Stk MAX 232:&lt;br /&gt;
*http://www.banggood.com/10pcs-Smd-Max232-RS-232-Interface-IC-Dual-Transceiver-Sop-16-p-74860.html&lt;br /&gt;
8-Pin IC Sockel:&lt;br /&gt;
*http://www.banggood.com/60pcs-8-Pin-DIP-IC-Sockets-Adaptor-PCB-Solder-Type-Connectors-Plugs-p-908460.html&lt;br /&gt;
10 Stk 16-Pin Nullkraftsockel (10 Stück für 5,02 EUR am 30.11.2013)&lt;br /&gt;
*http://www.ebay.de/itm/110957986619&lt;br /&gt;
10 Stk 28-Pin Nullkraftsockel z.B. für Atmega8 (10 Stück für 5,99 EUR am 04.12.2013) &amp;quot;28 Pins Test Universal ZIF IC Socket narrow&amp;quot;&lt;br /&gt;
*http://www.ebay.de/itm/110950919330&lt;br /&gt;
&lt;br /&gt;
== Logic Analyzer ==&lt;br /&gt;
&lt;br /&gt;
*http://www.aliexpress.com/item/-/605379977.html&lt;br /&gt;
 - 21,68€ Kompatible zu Saleae, Ax, USB Blaster + 8 Probes: &lt;br /&gt;
*http://www.aliexpress.com/item/-/535753410.html (Verkauft itead übrigens &lt;br /&gt;
als Mini Logic für 38€)&lt;br /&gt;
*http://www.aliexpress.com/item/1pcs-lot-Free-shipping-New-Arrival-Saleae-Logic16-saleae16-USB-Logic-Analyzer-100M-16CH-best-quality/667671473.html&lt;br /&gt;
&lt;br /&gt;
== Programmer ==&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=301000812018&amp;amp;clk_rvr_id=553107983302&lt;br /&gt;
*http://www.aliexpress.com/store/group/Programmer-Emulator/213957_211836576.html&lt;br /&gt;
&lt;br /&gt;
== USB ==&lt;br /&gt;
Stecker und Buchsen:&lt;br /&gt;
*http://www.aliexpress.com/item//1396423329.html&lt;br /&gt;
*http://www.aliexpress.com/item//1079961170.html&lt;br /&gt;
*http://www.aliexpress.com/item//1103210893.html&lt;br /&gt;
*http://www.aliexpress.com/item//1334095911.html&lt;br /&gt;
*http://www.aliexpress.com/item//978229424.html&lt;br /&gt;
*http://www.aliexpress.com/item//1333205473.html&lt;br /&gt;
*http://www.ebay.de/itm/360711370937&lt;br /&gt;
&lt;br /&gt;
Soundkarte&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=160840378914&lt;br /&gt;
&lt;br /&gt;
USB Strom-/Spannungsanzeige &lt;br /&gt;
*http://www.ebay.de/itm/141028948395 (hkiron-shop 2,34 EUR inkl. Versand am 30.11.2013)&lt;br /&gt;
*http://www.ebay.de/itm/400616343237 (befdimall 2,27 EUR inkl. Versand)&lt;br /&gt;
&lt;br /&gt;
== USB-TTL-UART ==&lt;br /&gt;
*http://www.ebay.at/itm/180953299346 (PL2303)&lt;br /&gt;
*http://www.ebay.at/itm/180934694241 (PL2303HX  *)&lt;br /&gt;
*http://www.ebay.at/itm/180956763688 (CP2102)&lt;br /&gt;
*http://www.ebay.at/itm/110929272410 (CP2102)&lt;br /&gt;
*http://www.ebay.at/itm/170895253016 (CP2102)&lt;br /&gt;
*http://www.ebay.at/itm/180962172801 (FT232RL)&lt;br /&gt;
&lt;br /&gt;
*http://www.ebay.de/itm/130970909714&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=261210033859&amp;amp;clk_rvr_id=553102953867&lt;br /&gt;
*http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;amp;item=251299940298&amp;amp;clk_rvr_id=553109809733&lt;br /&gt;
&lt;br /&gt;
== Handys ==&lt;br /&gt;
*http://www.priceangels.com/index.html&lt;br /&gt;
&lt;br /&gt;
== Hinweise ==&lt;br /&gt;
&lt;br /&gt;
* zu dem angebotenen Preis kommen z.b. noch&lt;br /&gt;
** Kreditkarten Auslandszuschläge (etwa 1 - 2% je nach Karte)&lt;br /&gt;
** Zoll und Einfuhrumsatzsteuer, siehe [http://www.zoll.de/DE/Fachthemen/Steuern/Einfuhrumsatzsteuer/einfuhrumsatzsteuer_node.html Zoll-Homepage].&amp;lt;br&amp;gt;Allerdings verzichtet der Zoll i.d.R. bis ca. 26€ auf die Einfuhrumsatzsteuer, weil der Betrag der Einfuhrumsatzsteuer unter 5€ liegt.&lt;br /&gt;
&lt;br /&gt;
* Die angegeben Anzahl pro Lot genau prüfen oft werden z.B 1*USB-Kabel und 1*Arduino als 2 PCS/Lot beschrieben&lt;br /&gt;
&lt;br /&gt;
* Rücksendungen gehen zu Lasten des Kunden, das ist aufgrund der Versandkosten meist nicht wirtschaftlich&lt;br /&gt;
&lt;br /&gt;
* Natürlich wird ein in China bestellter Arduino mit dem Aufdruck &amp;quot;Made in Italy&amp;quot; nicht in Italien hergestellt.&lt;br /&gt;
&lt;br /&gt;
* Ein Blick auf die Bewertung des Händlers ist dringend zu empfehlen. Vorsicht bei solchen mit wenig Punkten oder Negativbewertungen. Positiv wenn Bestellungen für den gewünschten Artikel (z.B. in Transaction History &amp;amp; Feedback) schon mehrfach gut bewertet wurden.&lt;br /&gt;
&lt;br /&gt;
* Die mitgeteilte Trackingnummer &lt;br /&gt;
** schnellstmöglich prüfen, erscheint meist nach 2-3 Tagen auf http://intmail.183.com.cn/icc-itemtraceen.jsp  &lt;br /&gt;
** Falls das Zielland nicht &amp;quot;DE&amp;quot; ist, sofort reklamieren&lt;br /&gt;
** Falls nach ca 5 Tagen nicht vorhanden, reklamieren &lt;br /&gt;
** Später dann komfortabel den Status aller erwarteten Sendungen anzeigen bei https://www.paket.de&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Ultimatives_Aquariumsteuerger%C3%A4t&amp;diff=80035</id>
		<title>Ultimatives Aquariumsteuergerät</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Ultimatives_Aquariumsteuerger%C3%A4t&amp;diff=80035"/>
		<updated>2013-12-15T22:20:00Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: Grundsätzliche aktualisierung - Link auf Entwurf im PDF-Format&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;von Torsten Crull&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Einleitung =&lt;br /&gt;
Wie an den zahlreichen Beiträgen zu dem Thema im Internet zu  erkennen ist, scheint der Bedarf durch fertig käufliche Geräte nicht ausreichend gedeckt zu sein. [http://notizblog.wordpress.com/2012/02/12/unser-neues-aquarium/ Ich habe seit einiger Zeit ein Aquarium] und mir sind die fertigen Kauflösungen zu unflexibel und/oder zu teuer.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fazit: Ein ultimatives Steuergerät ist zu entwickeln; [http://www.mikrocontroller.net/topic/264084 hier geht&#039;s zum Diskussionsthread dieses Projekts]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Terrarien-Steuerung:&#039;&#039;&#039; Auch wenn die Überschrift es anders vermuten lässt, ist das Gerät auch für Terrarien vorgesehen. Im folgenden Text wird zur besseren Lesbarkeit trotzdem immer von einem Aquarium gesprochen.&lt;br /&gt;
&lt;br /&gt;
Es handelt sich &amp;lt;u&amp;gt;nicht&amp;lt;/u&amp;gt; um ein komerzielles Projekt. Bei Bedarf können wir aber Sammelbestellungen z.B. beim Platinenservice organisieren.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übergeordnete Anforderungen&#039;&#039;&#039;&lt;br /&gt;
* Das Steuergerät ist erweiterbar, auch um Komponenten die &amp;lt;u&amp;gt;nicht jeder&amp;lt;/u&amp;gt; benötigt.&lt;br /&gt;
* Das Steuergerät ist sehr preiswert, insbesondere in seiner Basisversion.&lt;br /&gt;
* Der Stromverbrauch des Aquariums ist auf „total cost of ownership“ optimiert.&lt;br /&gt;
* Möglichst alle sinnvollen Ideen und Vorschläge sollten durch Erweiterungen realisierbar sein, sofern sie in der Basisversion nicht enthalten sind.&lt;br /&gt;
* Das Steuergerät entspricht allen wichtigen Vorschriften (TÜV-, CE-, …); eine Approbation ist natürlich nicht geplant.&lt;br /&gt;
&lt;br /&gt;
= Beschreibung =&lt;br /&gt;
&lt;br /&gt;
[http://www.mikrocontroller.net/wikisoftware/index.php?title=Ultimatives_Aquariumsteuerger%C3%A4t&amp;amp;oldid=75768 Die Artikel-Version vom Mai 2013] war hoffnungslos veraltet. Inzwischen sind viele Ergebnisse aus Diskussuionen mit anderen Aquarium-Besitzern eingeflossen.&lt;br /&gt;
&lt;br /&gt;
Auf der folgenden Internetseite ist der aktuelle Stand beschrieben. Dieser Wiki-Artikel wird wieder aktualisiert, wenn die erste Platine fertig ist.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; zur &#039;&#039;&#039;[http://notizblog.wordpress.com/aquarium-steuergeraet-entwicklungsplatine/ Aquarium-Steuergerät Entwicklungsplatine]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Aquaristik]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Hack-O-Copter&amp;diff=79643</id>
		<title>Hack-O-Copter</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Hack-O-Copter&amp;diff=79643"/>
		<updated>2013-11-20T00:46:11Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Funkfernbedienung */ Protokoll-Stub&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Begriff &#039;&#039;&#039;Hack-O-Copter&#039;&#039;&#039; beschreibt einen Nachbau des Quadrocopters „Hubsan X4“, der er sich einfach „hacken“ lässt; die Original-Firmware kann also überschrieben und durch eigene ersetzt werden. Er wird für ca. 21€ verkauft, siehe Beitrag [http://www.mikrocontroller.net/topic/309185?page=single „Hackbarer(?) 21 EUR Quadcopter“.]&lt;br /&gt;
&lt;br /&gt;
Die Original-Firmware kann nicht ausgelesen werden, es muss also eine komplett neue Firmware erstellt werden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Der Artikel enthält Infos bis zu [http://www.mikrocontroller.net/topic/309185?page=1#3356755 diesem Beitrag]. Weitere Inhalte aus dem Thread werden asap ergänzt.&lt;br /&gt;
&lt;br /&gt;
= Beschreibung des Quadrocopters =&lt;br /&gt;
* Abmessungen &#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
* Gewicht &#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
* Lieferumfang &#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
* Reichweite &#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
* Flugdauer und Ladezeit &#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
* Funktionen &#039;&#039;→ Infos (3 Empfindlichkeiten, umdrehen, Rekalibrierung, ...) ergänzen&#039;&#039;&lt;br /&gt;
* Link zur Bedienungsanleitung&lt;br /&gt;
== Bedienung ==&lt;br /&gt;
Auf ebenen Untergrund legen, nach ein paar Sekunden blinken die LEDs er langsamer, dann den linken Steuerhebel einmal hoch und wieder runter fahren.&lt;br /&gt;
== Komponenten ==&lt;br /&gt;
Der Quadrocopter wird von vier kernlosen Gleichstrommotoren („Coreless DC“) angetrieben. Im Inneren des Gehäuses ist eine Platine. Ihre vergleichsweise modernen Hardware-Komponenten (Mikrocontroller, Sensoren, MOSFETs und Funkmodul) sind in den folgenden Kapiteln beschrieben.&lt;br /&gt;
=== Mikrocontroller ===&lt;br /&gt;
Der „Nuvoton Mini54ZAN“ ist ein Cortex-M0 MCU mit 16KiB Flash, 2KB SRAM und SWD.&lt;br /&gt;
&#039;&#039;→ Links zu Datenblättern ergänzen&#039;&#039;&lt;br /&gt;
=== Sensoren zur Flugstabilisierung ===&lt;br /&gt;
Für die Flugstabilisierung ist der Quadrocopter mit drei Gyroskopen und drei Beschleunigungssensoren ausgestattet. Diese sind alle zusammen im Intertialsensor „Invensense MPU-6050“ integriert.&lt;br /&gt;
&#039;&#039;→ Link zum Datenblatt&#039;&#039;&lt;br /&gt;
=== ESC ===&lt;br /&gt;
Die Ansteuerung der Gleichstrommotoren erfolgt über PWM und MOSFETs. Die verwendeten N-Kanal MOSFETs „G2310“ haben einen „Drain-Source On-Resistance“ von etwa 120mΩ.&lt;br /&gt;
&lt;br /&gt;
Siehe http://www.mikrocontroller.net/attachment/193854/G2310.pdf &lt;br /&gt;
=== Funk- Transceiver ===&lt;br /&gt;
Für die 2,4GHz Funkstrecke zur Fernsteuerung ist mit einem „Beken BK3423“ integriert. Die Vermutung, dass dieser voll kompatibel zum NRF24L01 ist, liegt nahe, da der NRF24L01 die Daten der Fernbedienung empfangen kann.&lt;br /&gt;
&lt;br /&gt;
[[Bild:HOC_Fernbedienung_Platine_Ausschnitt2.jpeg|200px]]&lt;br /&gt;
== Zubehör ==&lt;br /&gt;
=== Lade-Adapter ===&lt;br /&gt;
&#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
=== Funkfernbedienung ===&lt;br /&gt;
Die Außenantenne ist nur „Verarsche“ ...&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;→ Hinweis auf Idee: Neuen Sender entwickeln&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Bild:HOC_Fernbedienung_Platine_B-Seite.jpeg|200px]]&lt;br /&gt;
[[Bild:HOC_Fernbedienung_Platine_Ausschnitt.jpeg|200px]]&lt;br /&gt;
[[Bild:HOC_Fernbedienung_Platine_total.jpeg|200px]]&lt;br /&gt;
[[Datei:HOC_Fernbedienung_Platine_Ausschnitt2.jpeg|200px]]&lt;br /&gt;
&lt;br /&gt;
==== Pinbelegung des Mikrocontrollers ====&lt;br /&gt;
&lt;br /&gt;
Die Pinbelegung des Nuvoto-Mikrocontrollers entspricht der des N79E825&lt;br /&gt;
&lt;br /&gt;
 Pin     Name   Funktion&lt;br /&gt;
   1     P2.#   CS&lt;br /&gt;
   2     P2.#   CLK&lt;br /&gt;
   3     P2.#   DATA&lt;br /&gt;
   4     RST    Reset (10k - C)&lt;br /&gt;
   5     VSS    an Masse&lt;br /&gt;
   6     P2.1   RF Modul&lt;br /&gt;
   7     P2.0   RF Modul&lt;br /&gt;
   8     P1.4   RF Modul (IRQ?)&lt;br /&gt;
   9     SDA    Pullup 2K2, RF Modul, DATA LCD Anschluß&lt;br /&gt;
  10     SCL    Pullup 2K2, RF Modul, CLK LCD Anschluß&lt;br /&gt;
  11     P1.1&lt;br /&gt;
  12     P1.0   Buzzer (via Transistor)&lt;br /&gt;
  13     P0.7   über Widerstände an Batteriespannung vor Regler&lt;br /&gt;
  14     AD3    Poti &amp;quot;Roll&amp;quot;, Dämpfung mit RC Glied&lt;br /&gt;
  15     VDD    Versorgung 3.3V&lt;br /&gt;
  16     AD2    Poti &amp;quot;Throttle&amp;quot;&lt;br /&gt;
  17     AD1    Poti &amp;quot;Yaw&amp;quot;&lt;br /&gt;
  18     AD0    Poti &amp;quot;Pitch&amp;quot;, Dämpfung mit RC Glied, Funktion??? an Tastern&lt;br /&gt;
  19     P0.2   Auswertung der Taster&lt;br /&gt;
  20     P0.1   Auswertung der Taster&lt;br /&gt;
&lt;br /&gt;
==== Pinbelegung des Sendemoduls ====&lt;br /&gt;
[[Bild:HOC_Fernbedienung_Sendemodul.jpeg|200px]]&lt;br /&gt;
&lt;br /&gt;
 1 3.3V&lt;br /&gt;
 2 MOSI an PIN6  MCU&lt;br /&gt;
 3 SCK  an PIN7  MCU&lt;br /&gt;
 4 MISO an PIN8  MCU&lt;br /&gt;
 5 CE&lt;br /&gt;
 6 GND&lt;br /&gt;
 7 IRQ&lt;br /&gt;
 8 CSN  an PIN9  MCU&lt;br /&gt;
 9 RXEN&lt;br /&gt;
&lt;br /&gt;
==== Protokoll ====&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;→ Protokoll ergänzen&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Propeller ===&lt;br /&gt;
&#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
== Schnittstellen ==&lt;br /&gt;
=== SWD-Port ===&lt;br /&gt;
Der SWD-Port ist über … herausgeführt. &#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
=== Serielle Schnittstelle ===&lt;br /&gt;
Die Anschlüsse führen zu den RX und TX Pins des MCUs.&lt;br /&gt;
&#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
=== PIN 9 ===&lt;br /&gt;
&#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
=== I²C-Schnittstelle ===&lt;br /&gt;
&#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
= Tipps und Tricks =&lt;br /&gt;
== Bezugsquellen und Kauf ==&lt;br /&gt;
=== Direktkauf aus China ===&lt;br /&gt;
&#039;&#039;→ Infos zu Aliexpress, ebay, Einfuhrumsatzsteuer und Käuferschutz ergänzen&#039;&#039;&lt;br /&gt;
=== Lieferanten aus Europa ===&lt;br /&gt;
&#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
== Ersatzakkus ==&lt;br /&gt;
Der Original-Akku hat …mAh und wiegt …g. &#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
(380mAh, ca. 2,31€, …g) &#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
== Reduzierung der Unfallfolgen ==&lt;br /&gt;
&#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
= Ideen für neue Funktionen =&lt;br /&gt;
== Bessere Flugstabilisierung mit bestehender Sensorik ==&lt;br /&gt;
== Neue Funktionen mit GPS-Sensor ==&lt;br /&gt;
[[Bild:HOC_GPS_Groessenvergleich.jpg|200px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;→ Ideen ergänzen&#039;&#039;&lt;br /&gt;
== Neue Funktionen mit Luftdruck-Sensor ==&lt;br /&gt;
&#039;&#039;→ Ideen ergänzen&#039;&#039;&lt;br /&gt;
== Neue Funktionen mit Kamera ==&lt;br /&gt;
Alternativen: Keycam, Y3000, … &#039;&#039;→ Infos ergänzen&#039;&#039;&lt;br /&gt;
== Neue Funktionen mit Ultraschallsensor ==&lt;br /&gt;
&#039;&#039;→ Ideen ergänzen&#039;&#039;&lt;br /&gt;
== Neue Funktionen mit Infrarot-Entfernungssensor ==&lt;br /&gt;
[[Bild:HOC_IR-Entfernungsmesser-Testplatine.jpg|200px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;→ Ideen ergänzen&#039;&#039;&lt;br /&gt;
== Neue Funktionen mit Bluetooth ==&lt;br /&gt;
&#039;&#039;→ Ideen ergänzen&#039;&#039;&lt;br /&gt;
== Erweiterung der Original-Fernbedienung ==&lt;br /&gt;
=== Funkmodul mit PA + LNA ===&lt;br /&gt;
&#039;&#039;→ Details ergänzen&#039;&#039;&lt;br /&gt;
=== Erweiterung um ein Display ===&lt;br /&gt;
[[Bild:HOC_Fernbedienung_mit_C0802-04.jpeg|200px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;→ Details ergänzen&#039;&#039;&lt;br /&gt;
== Neue Funktionen mit alternativer Fernbedienung ==&lt;br /&gt;
&#039;&#039;→ Ideen ergänzen&#039;&#039;&lt;br /&gt;
= Programmierung neuer Firmware =&lt;br /&gt;
== Beschreibung der Toolkette ==&lt;br /&gt;
&#039;&#039;→ Details ergänzen&#039;&#039;&lt;br /&gt;
=== Notwendige Hardware und Software ===&lt;br /&gt;
&#039;&#039;→ Details ergänzen&#039;&#039;&lt;br /&gt;
=== Installation der Toolkette ===&lt;br /&gt;
&#039;&#039;→ Details ergänzen&#039;&#039;&lt;br /&gt;
=== ISP und ICD ===&lt;br /&gt;
== Beschreibung der Firmware-Varianten ==&lt;br /&gt;
=== „Blinky“ ===&lt;br /&gt;
&#039;&#039;→ Details ergänzen&#039;&#039;&lt;br /&gt;
= Weiterführende Links und Quellen =&lt;br /&gt;
* http://www.jann.cc/2013/10/13/tiny_hackable_quadcopter.html &#039;&#039;→ Details ergänzen&#039;&#039;&lt;br /&gt;
* Multiwii &#039;&#039;→ Details ergänzen&#039;&#039;&lt;br /&gt;
* Paparazzi (http://paparazzi.enac.fr/wiki/Main_Page) &#039;&#039;→ Details ergänzen&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Hausbus&amp;diff=79642</id>
		<title>Hausbus</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Hausbus&amp;diff=79642"/>
		<updated>2013-11-20T00:31:43Z</updated>

		<summary type="html">&lt;p&gt;Torsten c: /* Vergleich von Hausbussystemen */ NRF24L01 ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Anforderungen =&lt;br /&gt;
&lt;br /&gt;
== Zentral/Dezentral ==&lt;br /&gt;
&lt;br /&gt;
Grundsätzlich kann so eine Steuerung zentral oder dezentral arbeiten (wobei natürlich auch Mischformen denkbar sind).&lt;br /&gt;
&lt;br /&gt;
=== Zentral ===&lt;br /&gt;
&lt;br /&gt;
Beim zentralen Ansatz gibt es einen Master, der zyklisch alle Sensoren (Thermometer, Lichtschalter, usw.) abfragt und dann die entsprechenden Aktionen auslöst.&lt;br /&gt;
&lt;br /&gt;
:+ wenig Intelligenz bei den Sensoren/Aktoren nötig&lt;br /&gt;
:+ bei Konfigurationsänderungen keine Änderungen bei den Sensoren/Aktoren nötig.&lt;br /&gt;
:+ keine Multimasterfähigkeit nötig&lt;br /&gt;
:- je mehr Sensoren vorhanden sind, desto länger dauert ein Abfragezyklus. Da so ein selbst gebauter Hausbus ja auch Raum für Erweiterungen bieten soll, sollte man schon mit 100-200 Sensoren rechnen (Lichtschalter, Thermometer, Glasbruchsensoren, Rauchmelder usw. usf)&lt;br /&gt;
:- Wenn die Zentrale ausfällt, dann fällt die gesamte Steuerung auf einmal aus&lt;br /&gt;
&lt;br /&gt;
Anmerkung: Falls, wie im dezentralen Fall die Sensoren von sich aus Zustandsänderungen melden, aber die Nachrichten nur an den Master schicken, entfällt der Nachteil durch das Polling. Dafür muss der Master allerdings  asynchron eintreffende Nachrichten verarbeiten können (das kommt dann als Erschwernis dazu).&lt;br /&gt;
&lt;br /&gt;
=== Dezentral ===&lt;br /&gt;
&lt;br /&gt;
Beim dezentralen Ansatz senden die Sensoren (z.&amp;amp;nbsp;B. Lichtschalter) Botschaften an die Aktoren (z.&amp;amp;nbsp;B. die Glühlampe).&lt;br /&gt;
&lt;br /&gt;
:+ Die Buslast hängt von der Anzahl Ereignisse ab und nicht von der Anzahl Sensoren. Ein Glasbruchsensor, der nie aktiv wird, verursacht auch keine Buslast.&lt;br /&gt;
:+ Keine Schaltzentrale nötig (also kein Single Point of Failure)&lt;br /&gt;
:- Multimasterfähigkeit bei allen Sendern (also allen Sensoren) nötig.&lt;br /&gt;
:- Konfigurationsänderungen müssen immer an den entsprechenden Aktoren/Sensoren gemacht werden. Dazu muss man sie entweder fernkonfigurieren können oder mit dem Konfigurationsgerät direkt an die jeweiligen Geräte.&lt;br /&gt;
&lt;br /&gt;
== Geschwindigkeit ==&lt;br /&gt;
&lt;br /&gt;
Solange man nur ein einzelnes Wohnhaus (und nicht etwa eine Schule oder eine Fabrik) ausrüsten will und nur die üblichen Sensoren/Aktoren hat, ist praktisch jeder Bus schnell genug. Andererseits erlauben RS485 und der CAN-Bus bei den in einem Haus vorkommenden Kabellängen auch durchaus Geschwindigkeiten von 1 MBit/s, wodurch man auch andere Anwendungen damit realisieren könnte.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt; Hohe Geschwindigkeit heißt höherer Aufwand und höhere Kosten &amp;lt;--&lt;br /&gt;
&lt;br /&gt;
Ein Hausbus sollte deshalb in der Geschwindigkeit auf die notwendigen Bedürfnisse abgestimmt sein. Folgende Rechnung lässt sich aufmachen:&lt;br /&gt;
Ein Frame mit einem einfachen Event z.&amp;amp;nbsp;B. &amp;quot;Taste 4 des Moduls 0x2007 gedrückt&amp;quot; lässt sich mit allem Nötigen wie Priorität, Parity-Bits Anzahl Datenbytes und Checksumme in 6 &amp;quot;Byte&amp;quot; à 10 Bit verpacken. Bei einer Geschwindigkeit von nur 10 kHz dauert die Übertragung ca. 6 ms. Erlaubt man pro Frame max. 12 Datenbyte, ergeben sich 18 ms. Wobei 12 Datenbyte eigentlich nur zur Konfiguration der Knoten nötig sind. Uhrzeit, Datum, Temperaturen usw. kann man meistens mit 2 - 4 Datenbyte melden. Da mit der CAN-Topologie kollisionsfrei Daten übertragen werden und ein Hausbus im Allgemeinen keiner hohen Belastung unterliegt, ist es realistisch sonstige Verzögerungen zu vernachlässigen. Ich habe in meinem Fünf-Personen-Haushalt den Bus nach &amp;quot;Bus-belegt-Verzögerungen&amp;quot; gescannt und in drei Monaten vier dieser Ereignisse festgestellt. Das bedeutete 12 ms anstatt der erwähnten 6 ms.&lt;br /&gt;
&lt;br /&gt;
Warum sollte man schneller werden, wenn eine Verzögerung von 200 ms in der Realität nicht festgestellt wird. Die Verzögerung einer Leuchtstofflampe empfinde ich da schon eher als störend.&lt;br /&gt;
&lt;br /&gt;
Sollten wir eine Schule mit solch einem Bus betreiben und 166 Kinder stürmen in die Pause und betätigen dann alle einen Taster, verzögert sich das letzte Ereignis um nicht ganz eine Sekunde.&lt;br /&gt;
&lt;br /&gt;
= Vergleich von Hausbussystemen =&lt;br /&gt;
&lt;br /&gt;
(es gibt auch noch DALI für Lichtsteuerung [http://epanorama.rackhost.net/linkbak/lights.html#homeautomation epanorama])&lt;br /&gt;
&lt;br /&gt;
== [[NRF24L01_Tutorial|NRF24L01]] ==&lt;br /&gt;
&lt;br /&gt;
:+ keine Leitungen&lt;br /&gt;
:+ sehr günstig, geringe Kosten pro Knoten&lt;br /&gt;
:+ multimasterfähig&lt;br /&gt;
:+ übertragungssicher (d.h. bei Übertragungsfehler werden Daten automatisch wiederholt)&lt;br /&gt;
:+ Herstellerunabhängig&lt;br /&gt;
:+ fertige Funkmodule mit 8-Pin-Steckverbindung erhältlich&lt;br /&gt;
:+ über USB-Dongle vom PC ansteuerbar&lt;br /&gt;
:o Protokoll zum Teil bereits im Chip (Beaconing und Vermaschung muss selbst programmiert werden)&lt;br /&gt;
:- keine genormten Hausbus-Protokolle&lt;br /&gt;
&lt;br /&gt;
Diskussion im Thread [http://www.mikrocontroller.net/topic/314298 NRF24L01+ als Hausbus]&lt;br /&gt;
&lt;br /&gt;
== EIB / KNX ==&lt;br /&gt;
&lt;br /&gt;
:+ nur 2 Leitungen für Daten, Power und GND&lt;br /&gt;
:+ kein Abschluss-R nötig, alle Bustopologien&lt;br /&gt;
:+ multimasterfähig&lt;br /&gt;
:+ übertragungssicher (d.h. bei Übertragungsfehler werden Daten automatisch wiederholt)&lt;br /&gt;
:+ Herstellerunabhängig (eine Vielzahl von Herstellern bieten Komponenten für alle erdenklichen Anwendungen)&lt;br /&gt;
:- Chips nur schwer erhältlich und teuer&lt;br /&gt;
:- nur industrielle Module erhältlich, kein Selbstbau&lt;br /&gt;
&lt;br /&gt;
:+ Freebus als Selbstbauvariante? [http://www.freebus.org Freebus Homepage (Deutsch)]&lt;br /&gt;
&lt;br /&gt;
== [[CAN-Bus]] ==&lt;br /&gt;
&lt;br /&gt;
:+ Protokoll bereits im Chip&lt;br /&gt;
:+ multimasterfähig&lt;br /&gt;
:+ übertragungssicher (d.h. bei Übertragungsfehler werden Daten automatisch wiederholt)&lt;br /&gt;
:+ hohe Störsicherheit durch differentielle Übertragung&lt;br /&gt;
:O Preis ist ausgewogen&lt;br /&gt;
:- es werden 2 Leitungen Daten + Power + GND benötigt&lt;br /&gt;
:- Abzweigungen vom Bus sind problematisch (max. 1 m?)&lt;br /&gt;
:- Abschluss-R notwendig&lt;br /&gt;
&lt;br /&gt;
== [[RS-485]] ==&lt;br /&gt;
&lt;br /&gt;
:+ sehr günstig&lt;br /&gt;
:+ Schnittstellenbausteine können direkt an den USART eines Mikrocontrollers angeschlossen werden&lt;br /&gt;
:+ Buslänge von 1200 m möglich&lt;br /&gt;
:+ hohe Störsicherheit durch differentielle Übertragung&lt;br /&gt;
:- Abzweigungen vom Bus sind problematisch (max. 1 m?)&lt;br /&gt;
:- Abschluss-R notwendig&lt;br /&gt;
:- von Haus aus nicht multimasterfähig, muss per Software realisiert werden&lt;br /&gt;
&lt;br /&gt;
== [[1-wire als Hausbus]] ==&lt;br /&gt;
&lt;br /&gt;
:+/- zentrales System&lt;br /&gt;
:+ sehr günstig&lt;br /&gt;
:+ sehr einfache Verdrahtung&lt;br /&gt;
:+ integrierte Peripheriebausteine erhältlich (Thermometer, I/O-Bausteine, etc.)&lt;br /&gt;
:+ über einfaches Selbstbauinterface vom PC ansteuerbar&lt;br /&gt;
:+ Bus kann mit Pullup-Widerstand direkt von einem bidirektionalen Microcontrollerpin angesteuert werden&lt;br /&gt;
:+ professionelle Softwareinterface frei erhältlich (unterstützt bis zu acht Busleitungen)&lt;br /&gt;
:+ mit einfachem Pullup-Widerstand maximal 200 m Buslänge zulässig&lt;br /&gt;
:+ mit aufwendigerem aktiven Pullup maximal 500 m Buslänge zulässig&lt;br /&gt;
:+ integrierte Interfaceschaltungen für I²C, USB und Serielle Schnittstelle erhältlich&lt;br /&gt;
:+ ausführliche Darstellung zur Buslänge in Appnote 148 verfügbar&lt;br /&gt;
:+ Peripherie ohne separate Spannungsversorgung möglich &lt;br /&gt;
:+ umfangreiche Herstellerunterstützung durch technische Dokumente&lt;br /&gt;
:- nicht multimasterfähig&lt;br /&gt;
:- max. 75 Bausteinabfragen/s&lt;br /&gt;
:- Peripherieschaltungen nur als integrierte Bausteine erhältlich&lt;br /&gt;
:- in Software realisierte Peripherie verstößt gegen US-Patente&lt;br /&gt;
:- keine differentielle Übertragung, dadurch deutlich störanfälliger&lt;br /&gt;
:- keine genormte Kabel- und Steckerbelegung&lt;br /&gt;
&lt;br /&gt;
== [[I2C als Hausbus]] ==&lt;br /&gt;
&lt;br /&gt;
:+ billig&lt;br /&gt;
:+ multimasterfähig&lt;br /&gt;
:+ viele direkt anschließbare Slave-Bausteine vorhanden&lt;br /&gt;
:+ mit Treiber IC Kabellängen von 100m und mehr möglich&lt;br /&gt;
:- differentielle Übertragung nur mit Mehraufwand möglich&lt;br /&gt;
:- ohne differentielle Übertragung störanfällig&lt;br /&gt;
:- ohne Treiber IC nur Kabellängen unter 10 m möglich&lt;br /&gt;
:- als &amp;quot;Inter-IC-Bus&amp;quot; zur Anwendung innerhalb von Geräten konzipiert&lt;br /&gt;
&lt;br /&gt;
== Ethernet ==&lt;br /&gt;
&lt;br /&gt;
:+ multimasterfähig&lt;br /&gt;
:+ sehr schnell&lt;br /&gt;
:+/- mit TP-Kabel (100Base-T) Sternstruktur, Leitungslänge  bis 100 m&lt;br /&gt;
:+/- mit Koaxkabel (10Base-2) Busstruktur, Leitungslänge bis 185 m&lt;br /&gt;
:+ Verkabelung und Stecker sind genormt&lt;br /&gt;
:- aufwändig anzusteuern (hoher Hardware- und Softwareaufwand)&lt;br /&gt;
:- (teuer) d.h. für Selbstbau aufwendig&lt;br /&gt;
:- (hoher Stromverbrauch des TCP/IP Treibers/PHY-ICs)&lt;br /&gt;
&lt;br /&gt;
== Powerline ==&lt;br /&gt;
&lt;br /&gt;
:+ Nachrüstbar (keine zusätzliche Verdrahtung erforderlich)&lt;br /&gt;
:+ nutzt vorhandene Netzinstallation&lt;br /&gt;
:- erzeugt ein breitbandiges Störspektrum (nur bei dLan), das über die Netzinstallation unkontrolliert abgestrahlt wird&lt;br /&gt;
:- kann Funkbetrieb, insbesondere im Kurzwellenbereich, stören (bei Powerline im 125kHz-Bereich sind Störungen des Kurzwellenfunks ausgeschlossen)&lt;br /&gt;
:- funktioniert ohne Phasenkoppler nur auf gleichen Phasen (Phasenkoppler besteht aus drei Kondensatoren)&lt;br /&gt;
:- Netzteile mit vernünftigen EMI-Filter filtern auch das PL-Signal (hinter Netzteilfiltern wird meist kein Bus-Signal mehr benötigt)&lt;br /&gt;
:- geringe Übertragungsrate (ohne breitbandige Störspektren zu erzeugen)&lt;br /&gt;
:- Modems werden im Störungsfall von der RegTP außer Betrieb genommen und werden dadurch wertlos (VDE Konformität erforderlich, Layout anspruchsvoll - Labortests?)&lt;br /&gt;
:- Kann von Energiesparlampen bzw von deren Vorschaltgeräte gestört werden (moderne Transceiver ICs sind relativ störsicher. Aber: Kosten)&lt;br /&gt;
:- Netzspannung! (es gelten nicht mehr allein Niederspannungsrichtlinien)&lt;br /&gt;
&lt;br /&gt;
==LON==&lt;br /&gt;
&lt;br /&gt;
==LCN==&lt;br /&gt;
&lt;br /&gt;
= Links =&lt;br /&gt;
&lt;br /&gt;
== Forum ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.mikrocontroller.net/forum/hausbus Hausbusforum]&lt;br /&gt;
&lt;br /&gt;
== Allgemein ==&lt;br /&gt;
&lt;br /&gt;
* http://www.uni-weimar.de/~weiprech/hausbus/&lt;br /&gt;
* http://www.hausinformationssysteme.de&lt;br /&gt;
&lt;br /&gt;
== CAN ==&lt;br /&gt;
&lt;br /&gt;
* [[CAN als Hausbus]]&lt;br /&gt;
* [[Hausbus Diskussion|Hausbus open source projekt]]&lt;br /&gt;
* [http://www.isysbus.org Hausbus open source projekt (iSysBus-Homepage)]&lt;br /&gt;
* [http://hcan.grundwerk.info hcan.grundwerk.info - Hausautomatisierung auf CAN Basis]&lt;br /&gt;
&lt;br /&gt;
== EIB / KNX ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.eib-home.de eib-home]&lt;br /&gt;
* [http://www.knx-user-club.de knx-user-club]&lt;br /&gt;
* [http://www.opternus.de/opternus-components/Preisliste/EIB%20Preisliste%201.July%202005.pdf Chipsatz Preisliste]&lt;br /&gt;
&lt;br /&gt;
== RS485 ==&lt;br /&gt;
* [http://openhc.sourceforge.net OpenHC - PHC Bus kompatibel]&lt;br /&gt;
&lt;br /&gt;
== Ethernet ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.ifas.htwk-leipzig.de/easytoweb/download/Verwendung%20eines%208-bit%20Microcontrollers%20zur%20Ethernet%20Vernetzung%20in%20der%20Hausautomation.pdf  Diplomarbeit]&lt;br /&gt;
&lt;br /&gt;
== Powerline ==&lt;br /&gt;
&lt;br /&gt;
* http://www.plc-bus.de&lt;br /&gt;
* http://www.thelastinstance.de/elek/project03_4.phtml&lt;br /&gt;
* http://www.darc.de/aktuell/plc/index.html (gilt für Powerline bei PC-Vernetzung/dLan)&lt;br /&gt;
* http://www.ulrichradig.de/index.html Projekte-pl-modem&lt;br /&gt;
&lt;br /&gt;
== EnOcean ==&lt;br /&gt;
&lt;br /&gt;
* http://www.omnio.ch&lt;br /&gt;
&lt;br /&gt;
== Sonstiges ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.mikrocontroller.net/articles/S0-Schnittstelle S0-Schnittstelle(!= S0-BUS)]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Hausbus]]&lt;/div&gt;</summary>
		<author><name>Torsten c</name></author>
	</entry>
</feed>