<?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=134.76.63.163</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=134.76.63.163"/>
	<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/articles/Spezial:Beitr%C3%A4ge/134.76.63.163"/>
	<updated>2026-04-11T09:18:37Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Hardwarebeschreibungssprachen&amp;diff=59203</id>
		<title>Hardwarebeschreibungssprachen</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Hardwarebeschreibungssprachen&amp;diff=59203"/>
		<updated>2011-08-04T08:18:57Z</updated>

		<summary type="html">&lt;p&gt;134.76.63.163: /* Weblinks */ Link ist tot&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mit einer Hardwarebeschreibungssprache lässt sich das Verhalten von digitalen Schaltkreisen in Textform beschreiben. Aus dem Quelltext können dann z.&amp;amp;nbsp;B. Daten für die Programmierung von Logikbausteinen ([[FPGA]], [[CPLD]], [[GAL]]) gewonnen werden (Synthese), oder es lassen sich Simulationen durchführen.&lt;br /&gt;
Dabei muss man beachten, dass Hardwarebeschreibungssprachen zwar wie &amp;quot;normale&amp;quot; Programmiersprachen aussehen, es aber nicht sind! Sie beschreiben im wesentlichen eine parallel arbeitende Hardwarestruktur, im Gegensatz zu sequenziellen Ablauf einer Programmiersprache. Natürlich kann man auch sequentielle Abläufe in einer Hardwarebeschreibungssprache ausdrücken. Dazu verwendet man endliche Zustandsautomaten (engl. Finite State Machines).&lt;br /&gt;
&lt;br /&gt;
== ABEL ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A&#039;&#039;&#039;dvanced &#039;&#039;&#039;B&#039;&#039;&#039;oolean &#039;&#039;&#039;E&#039;&#039;&#039;quation &#039;&#039;&#039;L&#039;&#039;&#039;anguage&lt;br /&gt;
&lt;br /&gt;
ABEL wird hauptsächlich für kleinere Aufgaben wie die Programmierung von [[GAL]]s und [[ISP]]s verwendet. Xilinx unterstützt ABEL als Beschreibungssprache für CPLDs (CoolRunner-Familie, XC95xxx-Familie)&lt;br /&gt;
&lt;br /&gt;
* [http://www.seas.upenn.edu/~ese201/abel/abel_primer.html ABEL-HDL Primer] - englischsprachige ABEL-Einführung von der University of Pennsylvania&lt;br /&gt;
* [http://de.wikipedia.org/wiki/Advanced_Boolean_Equation_Language Eintrag deutsche Wikipedia] - Geschichte und Beispiel&lt;br /&gt;
&lt;br /&gt;
== AHDL == &lt;br /&gt;
&lt;br /&gt;
Die Altera Hardware Description Language AHDL ist eine Weiterentwicklung von ABEL.&lt;br /&gt;
&lt;br /&gt;
== Verilog ==&lt;br /&gt;
[[Verilog]] wurde 1983 von der Firma Gateway Design Automation entwickelt. Zu diesem Zeitpunkt diente sie der Simulation/Verifikation, aber nicht der Synthese digitaler Schaltungen. Das gab dieser Sprache auch den Namen: &#039;&#039;Verifying Logic - Veri Log&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
[[Verilog]] ist vornehmlich auf dem amerikanischen Kontinent verbreitet.&lt;br /&gt;
&lt;br /&gt;
* [http://www.eg.bucknell.edu/~cs320/1995-fall/verilog-manual.html Verilog Handbook] nicht mehr online, als HTML und PDF noch hier zu finden:&lt;br /&gt;
http://web.archive.org/web/20060805053107/http://www.eg.bucknell.edu/~cs320/1995-fall/verilog-manual.html&lt;br /&gt;
http://web.archive.org/web/20060805053107/http://www.eg.bucknell.edu/~cs320/1995-fall/manual.pdf&lt;br /&gt;
* [http://www.stanford.edu/class/ee183/handouts_win2003/VerilogQuickRef.pdf Verilog Quick Reference]&lt;br /&gt;
* [http://www.fpga4fun.com/VerilogTips.html Verilog Tips and Tricks]&lt;br /&gt;
* [http://www.mikrocontroller.net/forum/read-9-398050.html Websites für Lernende]&lt;br /&gt;
* [http://www.pyroelectro.com/tutorials/verilog_intro/index.html An Introduction To Verilog] bei www.pyroelectro.com&lt;br /&gt;
&lt;br /&gt;
== VHDL ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V&#039;&#039;&#039;ery High Speed Integrated Circuit &#039;&#039;&#039;H&#039;&#039;&#039;ardware &#039;&#039;&#039;D&#039;&#039;&#039;escription &#039;&#039;&#039;L&#039;&#039;&#039;anguage&lt;br /&gt;
&lt;br /&gt;
[[VHDL]] ist die in Europa vorwiegend verwendete Beschreibungssprache für digitale Schaltungen.&lt;br /&gt;
&lt;br /&gt;
* [[VHDL|FAQ, Kurzreferenzen, weitere Links]]&lt;br /&gt;
* [[VHDL_Schnipsel|kurze Beispiele]]&lt;br /&gt;
* [[Rechnen in VHDL]]&lt;br /&gt;
&lt;br /&gt;
== SystemC ==&lt;br /&gt;
[[SystemC]] ist im Gegensatz zu VHDL oder Verilog keine eigene Hardware-Beschreibungssprache sondern eine Klassenbibliothek für C++.&lt;br /&gt;
Mit SystemC ist es möglich Hardware abstrakt und auf der Register Transfer Ebene (RTL) zu beschreiben. Für eine Beschreibung auf RTL wurde ein VHDL ähnlicher Dialekt gebildet. Für SystemC gibt es zahlreiche Erweiterung wie zB. das Transaction-Level Modeling ([[TLM]]) mit dem es möglich ist komplette Protokolle nachzubilden, ohne sich Gedanken über die unteren Abstraktions Ebenen zu machen. Bisher ist es jedoch so, dass SystemC nicht ohne weiteres synthesefähig ist, dieses wird sich jedoch mittelfristig ändern. Schon jetzt ist es möglich mit highlevel Synthesen, C oder auch C++ Programme zu synthetisieren und diese auf einen FPGA zu programmieren.&lt;br /&gt;
&lt;br /&gt;
== VHDL-AMS ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;VHDL&#039;&#039;&#039; mit Erweiterungen für die &#039;&#039;&#039;A&#039;&#039;&#039;nalog/&#039;&#039;&#039;M&#039;&#039;&#039;ixed &#039;&#039;&#039;S&#039;&#039;&#039;ignal - Simulation. Diese Beschreibungssprache wird z.&amp;amp;nbsp;B. benutzt, um elektrodynamische und mechanische Modelle wie Bremsen, Motoren und Ähnliches in elektrische Schaltungssimulationen zu integrieren.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Weblinks ===&lt;br /&gt;
* Hiesiger thread: http://www.mikrocontroller.net/forum/read-9-358956.html&lt;br /&gt;
* http://www.syssim.ecs.soton.ac.uk/&lt;br /&gt;
* http://www.vhdl-ams.org/Tools/tools.html&lt;br /&gt;
* VHDL-AMS simulator (SEAMS), Version 1.1c (23 March 99): http://www.ececs.uc.edu/~dpl/distribution/packages/packages.html&lt;br /&gt;
* SMASH: http://www.dolphin-integration.com/medal/smash/smash_overview.html&lt;br /&gt;
* Simplorer oder hAMSter: http://www.ansoft.com/about/academics/simplorer_sv/index.cfm&lt;br /&gt;
* Linkliste: http://www.vlsi.informatik.tu-darmstadt.de/staff/klupsch/steffen-vhdlams_links.html&lt;br /&gt;
&lt;br /&gt;
=== Bücher ===&lt;br /&gt;
* VHDL-AMS. Mit CD. Anwendungen und industrieller Einsatz (Broschiert) von Yannick Herve, ISBN: 3486577875, 34,80 EUR, März 2006&lt;br /&gt;
&lt;br /&gt;
== Sonstige ==&lt;br /&gt;
* CUPL: Zu ABEL verwandte Sprache, wird von Atmel noch als WinCUPL für Atmel-CPLDs kostenlos bereitgestellt, aber nicht mehr gepflegt. (Der Texteditor stürzt beim Speichern ab und beendet das Programm - Abhilfe: Wordpad o.ä. benutzen)&lt;br /&gt;
* GHDL: Genrad&#039;s hardware description langugage, eine boolsche Sprache zur Beschreibung von [[GAL]]s und [[PAL]]s.&lt;br /&gt;
&lt;br /&gt;
[[Category:FPGA und Co| ]]&lt;br /&gt;
[[Kategorie:Programmiersprachen]]&lt;/div&gt;</summary>
		<author><name>134.76.63.163</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=Reichelt-Wishlist&amp;diff=55186</id>
		<title>Reichelt-Wishlist</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=Reichelt-Wishlist&amp;diff=55186"/>
		<updated>2011-02-20T17:04:53Z</updated>

		<summary type="html">&lt;p&gt;134.76.63.163: /* Controller/FPGA/CPLD */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Reichelt Wunschliste ==&lt;br /&gt;
&lt;br /&gt;
Auf dieser Seite können Wünsche zur Erweiterung des Reichelt-Lieferprogramms eingetragen werden. Es ist keine offizelle Wunschliste von Reichelt und es ist nicht bekannt, ob Reichelt-Mitarbeiter diese Seite regelmässig sichten. Reichelt sollte sicherheitshalber regelmäßig angeschrieben werden, damit diese Liste nicht in Vergessenheit gerät.&lt;br /&gt;
&lt;br /&gt;
Damit sich die beliebtesten Artikel herauskristallisieren, macht jeder einfach &#039;&#039;&#039;einen&#039;&#039;&#039; virtuellen Strich dahinter: | (Windows: ALT-GR Taste und &amp;lt; Taste drücken, Mac OS X: Alt-Taste und 7 Taste drücken). Alle fünf Striche (|||||) bitte immer ein Leerzeichen einfügen.&lt;br /&gt;
&lt;br /&gt;
Neue Artikel einfügen darf und soll natürlich auch jeder - aber bitte die Liste vorher durchgehen (Tipp: Browser-Suchfunktion nutzen)! Einfach ganz viele Striche auf einmal hinter einem Artikel einzufügen ist zwecklos. Das erkennt man in der History und es gibt viele Leute, die diese Seite überwachen...&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Nicht sinnvoll&#039;&#039;&#039; ist etwas sehr exotisches, wie z.&amp;amp;nbsp;B. einen ganz bestimmten super schnellen AD-Wandler hier aufzulisten! Neue Artikel müssen sich für Reichelt ja auch rentieren und wirtschaftlich &amp;quot;an den Mann bringbar&amp;quot; sein. [Die Entscheidung, ob sich was rentiert und ob es exotisch ist, sollte man vielleicht Reichelt und den eventuellen späteren Strichle-Setzern überlassen, statt im Voraus die Schere im Kopf walten zu lassen.]&lt;br /&gt;
&lt;br /&gt;
= Wunschliste =&lt;br /&gt;
== Halbleiter ==&lt;br /&gt;
=== Controller/FPGA/CPLD ===&lt;br /&gt;
&lt;br /&gt;
* Atmel AT89LP4052 PDIP ||||| ||||| ||||&lt;br /&gt;
* Atmel AT89S2051/4051 |||||&lt;br /&gt;
* Atmel AT90PWM3B (µC für Servosteuerungen und z.b. Motorsteuerungen) ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Atmel ATA6612/13 (LIN-Bus SoC) ||&lt;br /&gt;
* Atmel ATmega324P in TQFP und PDIP ||||| ||||| ||||| |&lt;br /&gt;
* Atmel ATmega324PV in TQFP und PDIP ||&lt;br /&gt;
* Atmel ATmega328P in TQFP und PDIP ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* Atmel ATmega48P in TQFP und PDIP ||||&lt;br /&gt;
* Atmel ATmega644p(a) / atmega1284p(a) in TQFP und PDIP ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Atmel ATtiny2313V in SO und PDIP ||||&lt;br /&gt;
* Atmel ATtiny261 (auch 461 und 861; bevorzugt DIP) ||||| ||||| |||||&lt;br /&gt;
* Atmel AVR Controller mit Funkanbindung z.&amp;amp;nbsp;B. AT86RF230, AT86RF211, AT86RF401, dazu passende Quarze (evtl. SMD) 18,080 MHz (Crystek P/N 016758), Spulen 39nH. ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Atmel AVR mit USB AT90USB82, AT90USB162, AT90USB646, AT90USB1286, AT90USB1287, ATmega32u2 und ATmega32u4 ||||| ||||| ||||| ||||| ||||| |||||  ||||| ||||| |&lt;br /&gt;
* Atmel AVR32 im TQFP ||||| ||||| ||||| ||||&lt;br /&gt;
* Atmel Atmega 168PA, 88PA, etc. ||||| ||||&lt;br /&gt;
* Atmel Atmega 16A und 32A in TQFP und PDIP ||||| ||||| ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* Atmel Atmega 16L und 32L in TQFP (waere ATMEGA 16/32L8 TQ) ||||| |&lt;br /&gt;
* Atmel Dream Sound Synthesizer Chips, z.&amp;amp;nbsp;B. ATSAM3103 und ATSAM3308 ||||| ||||&lt;br /&gt;
&lt;br /&gt;
* Microchip PIC 10F2xx (+ Programmiergerät) ||||| ||||| ||||| ||| (einige Varianten erhältlich, Programmiergerät nicht sicher)&lt;br /&gt;
* Microchip PIC 24 ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* Microchip PIC32 (MIPS) ||||| ||||| ||||| |||&lt;br /&gt;
* Microchip dsPIC33 ||||| ||||| ||||&lt;br /&gt;
* Microchip dsPIC33FJ128GP802 |&lt;br /&gt;
&lt;br /&gt;
* Mehr FPGAs (v.a aktuellere) von Xilinx, z.&amp;amp;nbsp;B. Spartan III , ALTERA CYCLONE II (v.a. auch größere Typen, die noch im TQFP-Gehäuse zu haben sind wie z.&amp;amp;nbsp;B. XC3S400 oder XC3S500E (PQFP208)) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||&lt;br /&gt;
&lt;br /&gt;
* ALTERA CPLD EPM30xx - Familie ||&lt;br /&gt;
* ALTERA CPLD EPM70xx - Familie ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* ALTERA Cyclone2 - Familie ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* ALTERA Cyclone3 - Familie ||||| |&lt;br /&gt;
* ALTERA Flex10K - Familie ||||&lt;br /&gt;
* ALTERA MAX-II (CPLDs) ||||| ||||| ||||| |&lt;br /&gt;
&lt;br /&gt;
* Ajile aj-100 (Java Real-Time Prozessor) ||||&lt;br /&gt;
* Axis Etrax 100LX Risc Processor (kostenloses Linux-System vorhanden) ||||| ||||&lt;br /&gt;
* CY7C68013A-56PVXC (Cypress EZ-USB FX2LP) ||||| ||&lt;br /&gt;
&lt;br /&gt;
* Freescale DSP56F801 ||||&lt;br /&gt;
* Freescale HCS12 Controller ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Freescale MC9S08QEx |&lt;br /&gt;
* Freescale MC9S08QG8 (DIP 16) ||||| ||||| |||||&lt;br /&gt;
* Freescale Prozessoren (Coldfire) (16 + 32 Bit) ||||| ||&lt;br /&gt;
&lt;br /&gt;
* Infineon XC866 ||||| ||||| ||||| ||||| ||&lt;br /&gt;
&lt;br /&gt;
* Lattice GAL 26V12 |&lt;br /&gt;
* Lattice ispMACH 4032C / 4064C / 4128C ||||&lt;br /&gt;
&lt;br /&gt;
* Luminarymicro Stellaris Serie (Cortex-M3) ||||| ||&lt;br /&gt;
* Maxim/Dallas DS89C450 |&lt;br /&gt;
&lt;br /&gt;
* NXP LPC214x-Serie ARM7-Controller ||||| ||||| ||||&lt;br /&gt;
* NXP LPC23xx/24xx ||||| |&lt;br /&gt;
* NXP SAA5281 Videotextinterface ||||| ||||&lt;br /&gt;
&lt;br /&gt;
* PICAXE von Revolution Education Ltd |&lt;br /&gt;
* Parallax Propeller CPU, 8 Cogs - DIP 40 ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Renesas M16C ||||| ||||&lt;br /&gt;
* SSV DIL/NetPCs [http://www.dilnetpc.com]http://www.dilnetpc.com ||||| ||||| ||||&lt;br /&gt;
&lt;br /&gt;
* ST ST7MC... (µC für Servosteuerungen, und vor allem Brushless-Motoren) ||||| ||&lt;br /&gt;
* ST STM32 Serie (Cortex-M3) ||||| ||||| ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* ST STR7 Serie (ARM7TDMI) ||&lt;br /&gt;
&lt;br /&gt;
* Silabs C8051F320 USB Mikrocontroller ||&lt;br /&gt;
* Silabs Si4735 im SSOP-Gehäuse (AM/FM-Empfänger) |&lt;br /&gt;
&lt;br /&gt;
* TI MSP430F167, TI MSP430F168 ||||&lt;br /&gt;
* TI MSP430F2001/2/3 etc. im RSA-Gehäuse (=QFN) ||||| ||&lt;br /&gt;
* TI MSP430F2618 |||&lt;br /&gt;
* TI MSP430FG4618 |&lt;br /&gt;
* TI TMS470 Arm7 ||||| ||||| ||||| ||||| |&lt;br /&gt;
* TI TUSB3210 ||||| ||&lt;br /&gt;
&lt;br /&gt;
* Ubicom SX20 SX28 IP2022 ||&lt;br /&gt;
* Western Design Center 65c816 |||&lt;br /&gt;
* XC3S 400 TQ144 |||&lt;br /&gt;
* Zilog Z8 Encore-Microcontroller (bis 64k Flash, I²C, SPI, 2xUART, ADC, on-Chip Debugger ...) [http://www.zilog.com/products/family.asp?fam=225]www.zilog.com ||||| |&lt;br /&gt;
* Zilog ZNEO-Microcontroller (Z16Fxxx, bis 128k Flash, 4k RAM, bis zu 76 I/Os, 3 Timer, 10-bit A/D, externer Daten-/Adressbus, on-Chip Debugger) [http://www.zilog.com/products/family.asp?fam=236] www.zilog.com |&lt;br /&gt;
&lt;br /&gt;
=== Speicher ===&lt;br /&gt;
&lt;br /&gt;
* Atmel DataFlash, z.&amp;amp;nbsp;B. AT45DB081B (8 MBit Flash-Speicher an seriellen Bus im 8poligen Gehäuse) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Schnelles statisches RAM 128kB (10, 12, 15 oder 20ns, z.&amp;amp;nbsp;B. Samsung K6R1008C1D-UI10 oder CY7C1019D-10ZSXI) (5V/3,3V) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* NexFlash spiFlash NX25P16 (16MBit serial Flash im SO8-Gehäuse) ||||| ||||| ||||| |||&lt;br /&gt;
* RAMs (SRAM oder DRAM) mit ordentlicher Kapazität (z.&amp;amp;nbsp;B. HY57V641620HG oder besser) ||||| ||||| ||||| |||&lt;br /&gt;
* FPGA Konfigurations-EEPROMS AT17LV256, AT17C65/128/256.../XCF04S/... ||||| ||||| |&lt;br /&gt;
* 24LC256 oder 24AA256 oder 24LC512 oder 24AA512 ||||| |||||&lt;br /&gt;
* EEPROM mit SPI Schnittstelle 25XX Serien ||||| ||||&lt;br /&gt;
* 3.3V DRAM ||||| |&lt;br /&gt;
* 3.3V async SRAM ab 16KByte ||||| ||&lt;br /&gt;
* F-RAM mit SPI von RAMTRON ||||| ||&lt;br /&gt;
&lt;br /&gt;
=== ICs ===&lt;br /&gt;
&lt;br /&gt;
* LM397, LM321 o.ä. single op-amp in SOT23-5 5-30V supply ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Generell mehr I²C IC ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Generell mehr 1-Wire IC ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* HV9910 Schaltregler für die Hochleistungs LED^s Ub=8-450V; I beliebig; Eff. besser 90% ||||| ||||| ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* ADS8320 ADC 16 Bit seriell ||||| ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* DDS-IC von Analog wie AD9833, AD9835 ||||| ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* DTMF-Dekoder-Enkoder (8870, 8880) ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Digital Potentiometer (z.&amp;amp;nbsp;B. 2-Wire MAX546x, AD526x, X9C10x) ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Cypress CY7C67300 dual role USB controller mit OTG ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* DAC7612 DAC 12 Bit seriell ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* I²C-Bus Temperatursensor DS1631Z ||||| ||||| ||||| ||||||&lt;br /&gt;
* Generell mehr SPI IC ||||| ||||| ||||| |||||&lt;br /&gt;
* MAX6675 Typ-K Thermoelement nach SPI ||||| ||||| ||||| ||||| &lt;br /&gt;
* Ethernet-Connector RJ-45 mit integriertem Übertrager (z.&amp;amp;nbsp;B. Taimag RJLBC-060TC1) ||||| ||||| ||||| |||||&lt;br /&gt;
* ISD 5116 (Sprachaufnahme bis 16min &amp;amp; I2C-Interface) ||||| ||||| ||||| |&lt;br /&gt;
* PLL Schaltkreise für Frequenzerzeugung. z.&amp;amp;nbsp;B. MC / ML145170 (SOIC16) / TSA5060A ||||| ||||| ||||| |||&lt;br /&gt;
* Maxim MAX629, MAX1795, MAX1703 (Aufwärtsregler / Step-Up-Konverter) ||||| ||||| |||||&lt;br /&gt;
* AD7524 in SMD ||||| ||||| ||||&lt;br /&gt;
* MCP23016 16Bit I²C I/O Expander ||||| ||||| || (verfügbar)&lt;br /&gt;
* D/A Wandler mit 4 oder mehr Ausgängen, z.&amp;amp;nbsp;B. TLC5620/TLV5629/AD5325 ||||| ||||| |||&lt;br /&gt;
* MAX7313 16 LED-PWM-Dimmer (Im gegensatz zu den Philips-ICs ist jede einzelne LED-Dimmbar, dafür nur in 16 Schritten) ||||| ||||| |&lt;br /&gt;
* QT511-ISSG (iPod-like Touch-Wheel-Sensor &#039;&#039;siehe&#039;&#039; [http://www.qprox.com/products/qwheel_qt510.php]) ||||| ||||&lt;br /&gt;
* Philips PCA82C252 oder TJA1054A oder vergleichbar (&amp;quot;Fault-Tolerant&amp;quot; CAN Transceiver, 11898-3) ||||| |||||&lt;br /&gt;
* ZHB6718 (H-Bridge für 1,5V - 20V Motoren) ||||| ||||&lt;br /&gt;
* LTC3490 ||||| |||||&lt;br /&gt;
* Ethernet Magnetics (Auch POE) ||||| ||||&lt;br /&gt;
* MAX6958 / MAX6959 (I²C 4-Digit, 9-Segment LED Display Drivers with Keyscan) ||||| |||||&lt;br /&gt;
* Ethernet-Controller CS8900A ||||| |||&lt;br /&gt;
* VS1053 MP3/AAC/WMA/Ogg Decoder von VLSI ||||| |||||&lt;br /&gt;
* Bosch CJ125 ||||| |||&lt;br /&gt;
* 74VHC-Serie komplettieren (z.&amp;amp;nbsp;B. 74VHC125D) ||||| ||&lt;br /&gt;
* DAC8830 IDT (16Bit-DAC,ser. Input) ||||| |&lt;br /&gt;
* AD623 Single Supply,Rail-Rail, InstrOpamp ||||| |&lt;br /&gt;
* High Side Current Sense ICs wie MAX4172 ||||| |&lt;br /&gt;
* ISD 2560 -&amp;gt; SOIC Gehäuse (Sprachaufnahme IC) ||||| |&lt;br /&gt;
* Automotiv ICs z.&amp;amp;nbsp;B. LM1815, LM1915, LM1949, LM9011, LM9040, LM9044, LMD18400... ||||| |&lt;br /&gt;
* LM3886 ||||| |&lt;br /&gt;
* LMX2306/LMX2316/LMX2326 PLL Synthesizer von National ||||| |&lt;br /&gt;
* RS485 isoliert: z.&amp;amp;nbsp;B. Burr-Brown ISO485 o.ä. ||||| |&lt;br /&gt;
* LM1117 - 3,3V SOT-223 ||||| ||&lt;br /&gt;
* Mehr FET-Treiber (TI UCC3372x, HIPxxx , die neueren Brückentreiber von Maxim ||||| ||&lt;br /&gt;
* TH3122 K-Line Interface von MELEXIS ||||||||&lt;br /&gt;
* National Semiconductor CLC020 und CLC021 Parallel Component nach SDI-Converter |||||&lt;br /&gt;
* LM1117MPX-1.8 und LM1117MPX-3.3 (SMD-Spannungsregler SOT-223) |||||&lt;br /&gt;
* Maxim Switched Capacitor Tiefpass-Filter (z.&amp;amp;nbsp;B. MAX297, MAX7410) ||||||&lt;br /&gt;
* CCS-Akkulade-IC (z.&amp;amp;nbsp;B. CCS9620SL) (siehe [[http://bticcs.com/]]) |||||&lt;br /&gt;
* L5973D 2,5A, 250kHz, Schaltregler im SO8 (ca. 1€) |||||&lt;br /&gt;
* TEA5768HL FM-Tuner IC von Philips |||||&lt;br /&gt;
* PCA9685 16Kanal 12Bit PWM LED Controller ||||| ||&lt;br /&gt;
* Generell mehr DAC&#039;s (auch die teureren) von TI |||||&lt;br /&gt;
* TLV27(2|||||&lt;br /&gt;
* L6205 Motortreiber (2Kanal, 2,8A, DMOS)|||||&lt;br /&gt;
* L6206N Motortreiber (Wird für OpenDCC benötigt, und ist derzeit nur SEHR schlecht erhältlich) |&lt;br /&gt;
* A3982 Motortreiber/Controller (1,5A, 2APeak, u.A. für RepRap&#039;s) |&lt;br /&gt;
* STP08CL596M SO16 STM, LOW VOLTAGE 8-BIT CONSTANT CURRENT LED SINK DRIVER ||||&lt;br /&gt;
* Philips PCA9555 (I2C IO, 16 Bit par. I/O, c&#039;t Project Soundcheck II) |||||&lt;br /&gt;
* LTC1694-1 (I2C/SMBus Accelerator) |||||&lt;br /&gt;
* Generell mehr PWM-SIC&#039;s ||||&lt;br /&gt;
* TPIC6B595 (oder ähnliche 74xx595 high current (150 mA) shift register) |||||&lt;br /&gt;
* QT160 6-fach Touch Sensor IC ||||&lt;br /&gt;
* LM340x High Power LED-Treiber von National ||||&lt;br /&gt;
* 16-bit A/D-Wandler (waren von Maxim schon im Programm, sind aber wieder herausgeflogen?) ||||| |&lt;br /&gt;
* IR21844 DIL |||&lt;br /&gt;
* LTC24xx |||&lt;br /&gt;
* STP16CL596M SO24 STM, LOW VOLTAGE 8-BIT CONSTANT CURRENT LED SINK DRIVER |||&lt;br /&gt;
* IR2011 MOSFET Treiber |||&lt;br /&gt;
* TEA5757 FM-Tuner IC von Philips |||&lt;br /&gt;
* uC supervisor chips + watchdog z.&amp;amp;nbsp;B.: MAX6864 ist z.Z. der beste (0.2uA!) |||&lt;br /&gt;
* FTDI High Speed Chips, z.&amp;amp;nbsp;B. FT2232H ||||&lt;br /&gt;
* Motortreiber TLE 4205 |||&lt;br /&gt;
* MMI4832 (Geber Interface Baustein EnDat, SSI, Incrementalgeber |||&lt;br /&gt;
* Generell mehr I2S IC (ADC, DAC, DSP, u.a. Crystal, BurrBrown etc.) |||&lt;br /&gt;
* MAX127/128 8-Kanal 12bit ADC mit I2C interface |||&lt;br /&gt;
* TI PCM1804|||&lt;br /&gt;
* DP83848C (Ethernet Physical Layer Transceiver/PHY, MII/RMII-Schnittstelle, passend zu AT91SAM7X) |||&lt;br /&gt;
* MagJacks ||||| |&lt;br /&gt;
* STP08CL596B1 DIP16 STM, LOW VOLTAGE 8-BIT CONSTANT CURRENT LED SINK DRIVER ||&lt;br /&gt;
* STP16CL596B1R DIP24 STM, LOW VOLTAGE 16-BIT CONSTANT CURRENT LED SINK DRIVER ||&lt;br /&gt;
* Leistungs-OP LM675 von National ||&lt;br /&gt;
* CS5641 von Cirrus...The CS5461 incl. two delta-sigma A/D converters.... ||&lt;br /&gt;
* TI PCM2707 ||&lt;br /&gt;
* MIC6315 von Micrel (3,3/5V Reset Baustein mit manual Reset) ||&lt;br /&gt;
* DS1616 von Dallas Datalogger-IC ||&lt;br /&gt;
* MAX6650 ||&lt;br /&gt;
* TLV320AIC23B Audio-Codec ||&lt;br /&gt;
* Schnellere und gleichzeitig günstige OpAmps; Beispiel AD8055 ||&lt;br /&gt;
* IRS2092 Class-D Audio Driver IC ||&lt;br /&gt;
* LM1117 - 1,8V ||&lt;br /&gt;
* P82B86 (I2C Dual Bi-Directional Bus Buffer) ||&lt;br /&gt;
* MAX7311AWG 2Wire Interface von Maxim ||||&lt;br /&gt;
* MAX 4420 Mosfet Driver ||&lt;br /&gt;
* MAX 4429 Mosfet Driver ||&lt;br /&gt;
* IP101 PHY von IC+ (Distri für DE [http://www.topas.de/tt/cfs/icp_cfs_mai05.htm Topas]) ||&lt;br /&gt;
* UDN 2987 LW (Source Driver UDN2987 in SMD-Bauform) ||&lt;br /&gt;
* VN808 Low Treshold Octal High Side Driver 0,7A |&lt;br /&gt;
* L5970 o. L5972 1 bzw. 2A, 250kHz Schaltregler im SO8 |&lt;br /&gt;
* Fast Ethernet-Controller (DE9000A/B/E, AX88796B, ...) |&lt;br /&gt;
* Max1555 - LiPo Lade IC ||&lt;br /&gt;
* AD8601 Rail to Rail Opamp |&lt;br /&gt;
* ViPER Schaltregler von ST |&lt;br /&gt;
* TPS79318 1,8V 200mA LDO in (bestens für z.&amp;amp;nbsp;B. LPC210x µC) |&lt;br /&gt;
* AD5160 SPI-Poti in SOT23 |&lt;br /&gt;
* FM25L16 o. FM25L256 SPI-FRAM |&lt;br /&gt;
* TLC2264 (R2R) |&lt;br /&gt;
* TLC3702 Komparator |&lt;br /&gt;
* Linear Technology LTZ1000ACH#PBF Präzisions-Referenz (Ersatz für LM399H) |||&lt;br /&gt;
* Philips TDA1543 - 2x16-Bit DAC |&lt;br /&gt;
* ITS4141N o. BTS4141N Smart High-Side Power Switch (z.&amp;amp;nbsp;B. bestens für 24V geeignet!) ||&lt;br /&gt;
* MAX528 8-fach 8Bit DAC mit Output Buffer seriell |&lt;br /&gt;
* 74HCxxxx komplette Serie |&lt;br /&gt;
* AD628 InstrOpAmp, high voltage inputs |&lt;br /&gt;
* TLV2382ID Rail-Rail-OP von TI |&lt;br /&gt;
* CP2120 single-chip SPI to I2C bridge and GPIO port expander |&lt;br /&gt;
* VS1000 Ogg Decoder von VLSI |&lt;br /&gt;
* MC 34152 D-SMD SO8 Dual Mosfet Driver |&lt;br /&gt;
* ADuM 1201 o. ADuM1401 - Digitale Übertrager ||&lt;br /&gt;
* LM267X SimpleSwitcher Step-Down-Konverter in SO-8 Bauform ||&lt;br /&gt;
* Video-AD-Wandler z.&amp;amp;nbsp;B. LTC2208 (16 Bit 130 MS/s) für FPGA und SDR |&lt;br /&gt;
* Clock generator IC&#039;s, z.&amp;amp;nbsp;B. PCK20?? von Philips |&lt;br /&gt;
* LTC 1661 N8 10 Bit Dual Dac mit SPI Interface |&lt;br /&gt;
* LTC 1655(L) N8 16 Bit DAC interne Ref 2.048/1.25V(L Type) SPI Interface ||&lt;br /&gt;
* MCP23S17 16Bit SPI I/O Expander (aber ohne Schmidt-triggerd Eingänge wie der 23x16) |&lt;br /&gt;
* MCP23S08 8BIT SPI I/O Expander |&lt;br /&gt;
* Power over Ethernet Bausteine z.&amp;amp;nbsp;B. LM7050 |&lt;br /&gt;
* LTC 4411 ideale Diode 2,6 bis 5,5V max. 2,6A im SOT-23 Gehäuse&lt;br /&gt;
* MCP23008 8Bit I2C I/O Expander |&lt;br /&gt;
* Zarlink MT8841 Calling Number Identification Circuit |&lt;br /&gt;
* TI TPS61070 3.3V-75mA-aus-einer-NiMH-Zelle (+ passende SMD-Induktivität) |&lt;br /&gt;
* RFID EM4095 |||&lt;br /&gt;
* LT-1117-CST-5 als Sot223 (adj und 3.3 gibts schon, 5 fehlt noch) |&lt;br /&gt;
* LTC5540 |&lt;br /&gt;
* LM1084-ADJ |&lt;br /&gt;
* Silicon Labs SI4735 Radio ICs |||&lt;br /&gt;
* MAX6958 Babe&lt;br /&gt;
* MCP4725A0 und MCP4725A1 D/A-Wandler 12 Bit I²C ||&lt;br /&gt;
&lt;br /&gt;
=== Diskrete ===&lt;br /&gt;
&lt;br /&gt;
* Größere Auswahl an Step-up Reglern ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Spannungsregler SMD in DPAK ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* SMD Doppeldiode Schottky 12A 60V im TO252AA z.&amp;amp;nbsp;B. 12CWQ06FN von IOR ||||| ||||| ||||| ||&lt;br /&gt;
* LM317EMP oder LM317AEMP SMD-Spannungsregler einstellbar (SMD TO-223 Gehäuse) ||||| ||||| ||||&lt;br /&gt;
* Si4562DY N- and P-Channel 2.5-V (G-S) MOSFET SMD ||||| ||||| ||&lt;br /&gt;
* Niederohm-FETs in SO8, N und P ||||| ||||| |&lt;br /&gt;
* Digitaltransistoren (BCR*), auch als Pärchen NPN/PNP (BCR10, BCR08pn) ||||| ||||&lt;br /&gt;
* IRF7503/IRF7506 Dual Mosfet SMD ||||| |||||&lt;br /&gt;
* ZRA250F005 Referenzspanungsquelle 2,5V 0.5% SOT23 gehäuse ||||| |||||&lt;br /&gt;
* L4941 Spannungsregler 5V/1A in SMD-Ausführung (DPAK) ||||| ||||&lt;br /&gt;
* mehr FETs und IGBTs (nichtnur IRF, sehr gut IXYS &amp;lt;- und sauteuer!) ||||| ||||&lt;br /&gt;
* R-783.3-0.5 Schaltregler 4,75V - ca. 18V Eingang; 3,3V Ausgang (Hersteller Recom) ||||| |||&lt;br /&gt;
* R-785.0-0.5 Schaltregler 6,5V - 30V Eingang; 5,0V Ausgang (Hersteller Recom) ||||| |||&lt;br /&gt;
* MC78LCxx Serie - Ultra Low Drop Spannungsregler 3-5 Volt mit 1 Mikro-Ampere Ruhestrom ||||| ||&lt;br /&gt;
* SPP20N60C3 Infineon Mosfet 600V 190mOhm Rdson &amp;lt;10ns tr+tf (Schnellste Schaltzeit in der Klasse) ||||| |&lt;br /&gt;
* 5,2V Lowdrop Längsregler LF52 im TO252AA von STM |||||&lt;br /&gt;
* BUF420AW Schaltnetzteil Transistor von STM |||||&lt;br /&gt;
* LM2734 Schaltregler |||&lt;br /&gt;
* SDT06S60 Infineon SiC 600V 6A Silizium-Carbid Schottky-Diode (kein trr, daher keine Schaltverluste) ||||&lt;br /&gt;
* Philips PDTD113E/123E und PDTB113E/123E (PNP und NPN im sot23 mit internen Widerständen für Basis und PullUp/Down ||&lt;br /&gt;
* R-785.0-1.0 Schaltregler, Ausgang 5,0V, 1A |||&lt;br /&gt;
* 2SC1971 Transistor mit hoher Frequenz und viel Leistung für Endstufen ||&lt;br /&gt;
* MIC29300/29301 Spannungsregler 5,0V 3A im TO263(SMD) Gehäuse ||&lt;br /&gt;
* R-523.3PA Schaltregler 4V - 18V Eingang, variabler Ausgang (Nominalspannung 3.3 V) mit nur 2-4 externen Bauteilen bei &amp;gt; 90% Effizienz |&lt;br /&gt;
* IRC540 (HEXSense) |&lt;br /&gt;
* Hochspannuns-Widerstände (z.&amp;amp;nbsp;B. 330M/10kV) |&lt;br /&gt;
* R-723.3P Schaltregler 4V - 28V Eingang, variabler Ausgang (Nominalspannung 3.3 V) mit nur 2-4 externen Bauteilen bei &amp;gt; 90% Effizienz |&lt;br /&gt;
* PhotoMOS Relay (z.&amp;amp;nbsp;B. AQV257 von Panasonic; http://www.mew.co.jp/ac/e/control/relay/photomos/index.jsp) |&lt;br /&gt;
* BSH205 P-Channel 1.5V(GS), 0.75A, 12V D-S ||&lt;br /&gt;
* IPS5451S intelligenter Leistungsschalter 50 V, 35 A, 25 mΩ |&lt;br /&gt;
* MAX 8865 Dual, Low-Dropout, 100mA Linear Regulator |&lt;br /&gt;
* IR3313 o.ä. Intelligenter Leistungsschalter 32V/90A, einstellbare Strombegrenzung |||&lt;br /&gt;
* LF50ABDT Spannungsregler SMD DPAK 5.0V very low drop |&lt;br /&gt;
* IPW60R045CS Infineon Mosfet 600V 45mOhm Rdson 30ns tr+tf (niedrigster Rdson in der Klasse) |&lt;br /&gt;
* MJD31C NPN Transistor SMD DPAK 3&lt;br /&gt;
* IRFI4212H-117P Doppel-Mosfet (f. Klasse D-Verstärker&lt;br /&gt;
* generell Spannungsregler, LOW-DROP, SMD (DPAK, D2PAK)&lt;br /&gt;
&lt;br /&gt;
=== Sensoren/Aktoren ===&lt;br /&gt;
&lt;br /&gt;
* Sensirion SHT11/SHT71 (oder auch SHT15/SHT75) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* Sharp Entfernungssensoren (zb den GP2D120 oder den GP2D12) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* Drehwinkelgeber, Gyro, Kreiselsensoren ähnl. Tokin CG-L43 ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||  |&lt;br /&gt;
* IS471 Selbstmodulierende IR-Lichtschranke ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Motorola/Freescale Drucksensoren z.b. MPX4250 mit AP Druckanschluss ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* kleine Feuchtigkeitssensoren zur &#039;on-board-Montage&#039; ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* Durchflussmesser (z.&amp;amp;nbsp;B. wie Conrad Nr.155374) ||||| ||||| ||||| |||&lt;br /&gt;
* iMEMs Acceleration Sensors ADXL Series von Analog Devices ||||| ||||| ||||| |||&lt;br /&gt;
* Hall-Sensor UGN3503, KMZ51 ||||| ||||| |||||&lt;br /&gt;
* LEM Stromsensoren (Transducer) der HAIS-Serie, speziell HAIS 50-P und 100-P ||||| ||||| ||||| |||&lt;br /&gt;
* Summer mit 20mA@5V ähnlich Conrad Nr.751553 (TDB05 kann mit 30mA@5V nicht von allen Controllern direkt getrieben werden) ||||| ||||| |||&lt;br /&gt;
* günstige Temp. Sensoren TC77 ||||| ||||| |||&lt;br /&gt;
* FSRs (Force Sensing Resistor) von Interlink Electronics ||||| ||||| |||&lt;br /&gt;
* NanoMuscle Aktuatoren ||||| ||||| ||&lt;br /&gt;
* K-Typ (J-Typ) Thermocouple Temperatursensoren und passende Steckverbinder ||||| ||||| ||&lt;br /&gt;
* 4Hz Supersense µblox LEA-4S GPS module (Importer pointis.de) + Passende Passives Patch antenna (zB. von inpaq.com) ||||| |||&lt;br /&gt;
* Magnetfeld-Sensor (Kompass-Anwendung) KMZ52 ||||| ||||| |&lt;br /&gt;
* Flexinol ||||| ||&lt;br /&gt;
* Induktions-Stromsensoren Coilcraft #J9199-A o.ä. |||||&lt;br /&gt;
* Piezo Minimotoren/Lienearaktoren von Elliptec/Siemens einzeln und günstig ||||| |&lt;br /&gt;
* Anemometer |||||&lt;br /&gt;
* Linear- und 360° Soft-Pots wie von spectrasymbol ||||| ||&lt;br /&gt;
* Allegro Stromsensoren (z.&amp;amp;nbsp;B. ACS713, ACS756) ||||| ||||| |&lt;br /&gt;
* Luftdruck-/ Temperatur Sensor Intersema MS5534 (mit SPI- Interface) ||||| ||&lt;br /&gt;
* Temperatur IC TC1047 |||&lt;br /&gt;
* Hallsensoren z.&amp;amp;nbsp;B. TLE4905 wieder ins Programm nehmen ||&lt;br /&gt;
* Temperatursensor mit SPI-Interface LM74 ||||&lt;br /&gt;
&lt;br /&gt;
== Baugruppen ==&lt;br /&gt;
* Atmel ATNGW100 von [http://www.atmel.com/dyn/corporate/view_detail.asp?FileName=AVR32NGKit_3_26.html Atmel] = billiges Linux Board ($69=51.69€) --&amp;gt; [http://www.avrfreaks.net/wiki/index.php/Documentation:NGW/NGW100_Hardware_reference Dokumentation] ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Atmel ATSTK600 von [http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4254 Atmel] |||| -&amp;gt; vorhanden&lt;br /&gt;
* Atmel ATSTK1000 von [http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3918 Atmel] ||||| ||||| ||||| ||||&lt;br /&gt;
* Atmel AVR Dragon von [http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3891 Atmel] ||||| ||||| ||||| ||||| ||| -&amp;gt; vorhanden&lt;br /&gt;
* Axis Etrax 100LX MCM (Multi Chip Module) A full Linux computer on a single chip!  ||||| |||||&lt;br /&gt;
* CentiPad/DevKit Embedded Linux Modul ([http://www.centipad.de www.centipad.com]) ||||| ||&lt;br /&gt;
* DS9490R USB zu 1-Wire Dongle (auch mit Linux Treiber) |||||&lt;br /&gt;
* Easy-Radio Module zur seriellen Datenübertragung (ER400 RS/TS/RTS) ||||| ||||| ||||| ||&lt;br /&gt;
* Foxboard = Betriebsfertiges Micro Linux System mit Axis Etrax 100LX MCM 66mm x 72mm ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* FoxVHDL = FPGA Erweiterungskarte für das ACME Foxboard ||||&lt;br /&gt;
* Hope RF Module 433 u. 868 MHz, http://www.hoperf.com/pdf/RF12.pdf |||||&lt;br /&gt;
* kostengünstige Funkschaltmodule (TLP/RLP) ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* kostengünstige Funkempfänger/Funksender 433 &amp;amp; 868 Mhz ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Lantronix XPort Embedded Device Server ([http://www.lantronix.com www.lantronix.com]) ||||| ||||||&lt;br /&gt;
* Lantronix XPort Direct ||&lt;br /&gt;
* FPGA, low-cost Experimentierplatinen ||||| ||||| ||||| |||||&lt;br /&gt;
* Bluetooth Mini-Module (RS232-Bluetooth-&amp;quot;Wandler&amp;quot;-Platinchen) z.&amp;amp;nbsp;B. BTM222 |&lt;br /&gt;
*  Bluetooth Funkmodul ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||| ||||| ||||| ||||&lt;br /&gt;
* Mini-WLan Module (RS232 zu WLan) ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* MT1390 FM Tuner-Modul von Microtune |||&lt;br /&gt;
* NetDCU8 von F &amp;amp; S Elektronik Systeme GmbH (http://www.fs-net.de) - Linux-Computerplatine mit 400MHz Samsung-ARM mit 32MB RAM, 16MB Flash und SD/Ethernet/CAN/USB/TFT/RS232 für ca. 100 Euro ||||| ||||| ||&lt;br /&gt;
* OM5610 FM Tuner-Matchbox von Philips |||&lt;br /&gt;
* TI - MSP430 Wireless Development Tool (AEC13895U) |&lt;br /&gt;
* Gyro Sensoren  MURATA,  ENC-03J A/B    ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* UM232 FTDI USB - RS232 Modul für DIL sockel ||&lt;br /&gt;
* ST Primer 2 (Experimentierboard fuer ARM Einsteiger) ||&lt;br /&gt;
* TI eZ430-Chronos |&lt;br /&gt;
&lt;br /&gt;
== &amp;quot;Passive&amp;quot; Bauteile ==&lt;br /&gt;
&lt;br /&gt;
=== Spulen etc. ===&lt;br /&gt;
* Ordentliche Trafospulen + Kerne, z.b. ETD-Serie, oder RM10 ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Passende Ferrite dazu: N27,N41,N67,N87,N97 ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* Magnetics CoolMu Ringkerne ||||| |||||||&lt;br /&gt;
* Magnetics MPP Ringkerne ||||| ||||| ||&lt;br /&gt;
* Die Micrometals Pulverkerne (-18 und -26) auch in größer ||||| |&lt;br /&gt;
* Funk-Entstördrosseln 16A, div. Werte ||||| ||||| ||&lt;br /&gt;
* Funk-Entstördrosseln 47µF |||&lt;br /&gt;
* Würth Induktivitäten ||||| ||||| ||||| ||||| |&lt;br /&gt;
* Übertrager für Schaltregler z.&amp;amp;nbsp;B. Epcos Typ  B78304 ||||| |||&lt;br /&gt;
* SEPIC-Speicherdrosseln von Würth WE-DD (Größe M u. L) |||&lt;br /&gt;
* Sortimentskästen von Würth ||&lt;br /&gt;
* Fastron 0805 AS Serie vervollständigen |&lt;br /&gt;
&lt;br /&gt;
=== Kondensatoren ===&lt;br /&gt;
* Low-ESR Elkos (definiertes Fabrikat/Typ, und nicht einfach irgendwelche! (Rubycon?)) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||  |||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Low-ESR Elkos RM 3,5mm 1.000uF 6,3V (Mainboardaustausch Elko) ||||     &lt;br /&gt;
* Low-ESR SMD Tantal-Elkos (definiertes Fabrikat/Typ, und nicht einfach irgendwelche! (AVX?, Epcos?)) ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Zum MAX232 so20 passende SMD-Kerkos im Wert 1uF (0805,0603, 1206) ||||| ||||| ||||| |||||&lt;br /&gt;
* Generell SMD-Kerkos im Wert &amp;gt; 100nF ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Kleine Niedervolt-Polyproplyenkondis mit mehr Kapazität ||||&lt;br /&gt;
* Wima MKP4 ||||&lt;br /&gt;
* Wima MKP-X2 (~275V, klein und ideal für Kondensatornetzteile) ||&lt;br /&gt;
* Günstige hochkapazitive Doppelschichtkondensatoren (z.&amp;amp;nbsp;B. Maxfarad MES2245 220F 2,3V) ||||| ||&lt;br /&gt;
* Keramikkond. SMD 0603/0805/1206: mehr Zwischenwerte (56p, 82p, 560p) ||||| ||&lt;br /&gt;
* Drehkondensator  20-500pf |||||&lt;br /&gt;
* Sanyo OS-Con bedrahtet und SMD |||&lt;br /&gt;
&lt;br /&gt;
=== Widerstände, Potis ===&lt;br /&gt;
* SMD-Widerstände 0805 und 1206 auch unterhalb von 1 Ohm ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* SMD-Widerstände unterhalb 1 Ohm, andere Gehäuse als 0805/1206 (leichter erfüllbarer Wunsch) ||||| ||||| |||||&lt;br /&gt;
* SMD-Widerstände 0805 auch aus der E24-Reihe ||||| ||||| ||||| |||&lt;br /&gt;
* Durchsteck-Widerstände in kleiner Bauform 0204. ||||| ||||| |&lt;br /&gt;
* R2R-Widerstandsnetzwerke (z. B. 10/20kOhm für DA-Wandler an Microcontrollern) ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Präzisionswiderstände 0,05% und besser, ev. Drahtgewickelt ||||| ||||| ||||| |&lt;br /&gt;
* Niederohm-Widerstände (Shunts ab 1mOhm im guten Gehäuse z.&amp;amp;nbsp;B. TO220) ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* 25/50W-Widerstände (~20/50 Ohm auch weniger) ||||| ||||| ||||| |&lt;br /&gt;
* Präzisions-Spannunsgteilernetzwerke ||||| ||||&lt;br /&gt;
*Präzisionsspannungsteiler 1:10, 1:100, 1:1000 (10MOhm Gesamtwiderstand) ||&lt;br /&gt;
* SMD-Präzisionswiderstände (0,1% TC10ppm/K =&amp;gt;0,1W indukt.arm) ||||| ||||| ||||| |||&lt;br /&gt;
* statt Radiohm potis bitte Prehostat oder Alphastat 16 63256-026xx ||||| ||||| ||||&lt;br /&gt;
* Null-Ohm Widerstände (Drahtbrücken) Baugröße wie 1/4W ||||| |||&lt;br /&gt;
* Erneut die 10k-Ohm SMD Potis |||||&lt;br /&gt;
* Leitplastikpotis im Servogehäuse |&lt;br /&gt;
* Größere Auswahl an (Stereo-)Schiebepotis in log und lin, insbesondere jenseits 100K |&lt;br /&gt;
* Kleine Ein-Gang-Trimmer unterhalb 250 Ohm |&lt;br /&gt;
&lt;br /&gt;
=== Quarze, Quarzoszillatoren und Resonatoren ===&lt;br /&gt;
* SMD-Quarze mit Standardgehäuse (z.&amp;amp;nbsp;B. HC49/US &amp;amp; HC49/UP) ||||| |||&lt;br /&gt;
* Quarzoszillator  9,8304 Mhz  ||&lt;br /&gt;
* Quarz mit 3,200 Mhz  ||&lt;br /&gt;
* 13,5600 MHz Quarz (benötigt für RFID)  ||||| ||||&lt;br /&gt;
* Quarz mit 13,56 MHz (SMD+bedrahtet) ||||| |&lt;br /&gt;
* 24,0000 MHz Standardquarz Grundton (&#039;&#039;&#039;kein 3. Oberton!!!&#039;&#039;&#039;) (benötigt für USB-DMX-Interface) ||||| ||||&lt;br /&gt;
* 25,0000 Mhz &#039;&#039;&#039;Grundton&#039;&#039;&#039;-Quarz (wird benötigt für Microchip TCP/IP Controller ENC28J60) ||||| ||||| ||||| |||||&lt;br /&gt;
* Allgemein mehr Grundtonquarze bei höheren Frequenzen |||||»&lt;br /&gt;
* SMD Quarze/ Oszillatoren in flachen, kleinen SMD Gehäusen (SMX-A/-B) |||&lt;br /&gt;
* Murata Keramik-Resonator CSTLS16M0X, CSTLS20M0X (obwohl 3. OW, direkt mit µC verwendbar)&lt;br /&gt;
&lt;br /&gt;
=== Sonstiges ===&lt;br /&gt;
* Varistoren 14V auch als bedrahtetes Bauteil (für KFZ-Bordnetz) ||||| ||||| |-&amp;gt; 1,5KE 18CA&lt;br /&gt;
* Suppressordioden mit Spannungsbereich zwischen 15V und 30V |||&lt;br /&gt;
* Netzfilter FFP Reihe Schurter ||&lt;br /&gt;
* Metallbrückengleichrichter für 50A ||||&lt;br /&gt;
* Hochlast NTC, z.&amp;amp;nbsp;B. 80-220 Ohm/1-4A (EPCOS, Ametherm)|&lt;br /&gt;
* Ringkertrafos &amp;gt;500VA mit höherer Spannung als 30V (Verstärkerbau) |&lt;br /&gt;
* Übertrager FB2022 oder 20F-001N (passend zu RTL8019AS)&lt;br /&gt;
* Übertrager passend zu ENC28J60&lt;br /&gt;
&lt;br /&gt;
== HF Baumaterialien ==&lt;br /&gt;
* Filter SFE10.7MA19 360khz SZP2026 |&lt;br /&gt;
* Keramische Filter CFM455... ganzes Sortiment |||| |&lt;br /&gt;
* Quarze 32 MHz 10ppm Oscillatorfrequenz 0 bis +70°C&lt;br /&gt;
* Quarze 6,500000 MHz ||&lt;br /&gt;
* MC68160FB&lt;br /&gt;
* S3C4510B&lt;br /&gt;
* MT48LC4M32B2TG-7&lt;br /&gt;
* MC68EN302PV20&lt;br /&gt;
* Zirkulatoren ALD4302SB statt LM239 &lt;br /&gt;
* Transistoren MRFG35010 |&lt;br /&gt;
* µP Compatible CTCSS Encoder,Decoder FX 365&lt;br /&gt;
* Durchführungskondensatoren 1nF/160V (waren Ende &#039;06 noch im Programm) ||| |&lt;br /&gt;
* ZF-Quarzfilter für versch. Frequenzen (10, 20, 40 MHz) ||&lt;br /&gt;
* MMICs und Ringmischer von Mini-Circuits&lt;br /&gt;
* PLL ICs z.&amp;amp;nbsp;B. von NXP und National für HF-UHF ||&lt;br /&gt;
* MICRF002/022, MICRF102/103 von Micrel  ||||| |&lt;br /&gt;
* Keramik / Teflon Leiterplatinen |&lt;br /&gt;
&lt;br /&gt;
== Optoelektronik und Leuchtmittel ==&lt;br /&gt;
* TFT/OLED Farb-Displays, wie die bereits abgekündigten OSRAM OLEDs |||&lt;br /&gt;
* low current SMD LEDs (z.&amp;amp;nbsp;B. Osram LG T679 - Anm.: hier gleich die neuen Varianten Lx T67K bestellen, nicht die alten 9er) ||||| ||||| ||||| |||||&lt;br /&gt;
* SMD LED Bauform 0402 rot/gelb/grün/blau/weiss  ||||| ||||| ||||| ||||| |&lt;br /&gt;
* weisse SMD LED Bauform 0603 ||||| ||||| |||||&lt;br /&gt;
* warm weisse LED ||||| ||||| ||||| |||&lt;br /&gt;
* OSRAM Hyper TOPLEDS weiss LW T67C-T2U2-5K8L ||&lt;br /&gt;
* OSRAM Halogen Decostar 51 12V 20W GU5,3 statt des billigen NoName Zeugs ||&lt;br /&gt;
* OSRAM Hyper TOPLEDS gelb LY T676-S1T1-26 ||&lt;br /&gt;
* Everlight SMD-RGB (fullcolor) 19-337/R6GHBHC-A01/2T ||||&lt;br /&gt;
* Superflux RGB LED |||&lt;br /&gt;
* 7-Segment-Anzeige 4 DIGIT mit und ohne Doppelpunkt ||&lt;br /&gt;
* 7-Segment-Anzeige, allgemein Low-Current bzw. High Efficiency Versionen anbieten ||||| |||||&lt;br /&gt;
* 7-Segment-Anzeige, weiss, gem. Kathode ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* 7-Segment-Anzeige, weiss, gem. Anode ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Diese 4-Stelligen Dot-Matrix LED Anzeigen Siemens SLG 2016 oder von HP oder ähnliches ||||| |&lt;br /&gt;
* Generell alle 7-Segment-Anzeigen auch in Blau und bis zu 100mm höhe ||&lt;br /&gt;
* Vakuum-Fluoreszenz-Displays (Dot Matrix mit Standardcontroller, z.&amp;amp;nbsp;B. Futaba &amp;quot;LCD Emulators&amp;quot;)  ||||| ||||| |||&lt;br /&gt;
* IL207AT (SMD Optokoppler von Infineon) ||||| ||&lt;br /&gt;
* ILD256T (SMD AC-Optokoppler)  ||||| |||||&lt;br /&gt;
* ILD620 (DIP Optokoppler) ||||| ||||| ||||| |||||&lt;br /&gt;
* SFH6106, SFH6206 4 Pin Optokoppler SMD ||||||&lt;br /&gt;
* TLP113 (SMD Optokoppler) |||||&lt;br /&gt;
* Vactrol Optokoppler (mit Fotowiderstand zur Analogsignalregelung) |||||&lt;br /&gt;
* IR-Diode mit viel power ttp://www.lc-led.com/Catalog/department/36/category/49/1 ||&lt;br /&gt;
* IrDA-Tranceiver TFDS4500 (oder TFDU4100) wieder anbieten (war im 07/2005er Katalog noch drin) ||||| ||||&lt;br /&gt;
* Seoul Zled P4 (100lm bei 350mA, 240lm bei 1A!) ||||| |||||&lt;br /&gt;
* Generell: Z-Power LEDs von Seoul (günstiger und heller als Luxeon) ||||| ||&lt;br /&gt;
* Seoul Z-LED RGB auf Platine ||&lt;br /&gt;
* TLP 3617&lt;br /&gt;
* TSOP 1730 | [Achtung! TSOP17xx sind Auslaufmodelle bei Vishay]&lt;br /&gt;
* TSOP 1140 | (oder andere 40 kHz IR-Empfänger)&lt;br /&gt;
* TORX 178&lt;br /&gt;
* TOTX177PL und TORX177PL als Ersatz für TOTX173 und TORX173 (zwar anderes Footprint, aber dafür auch kleiner und günstiger)&lt;br /&gt;
* TSOP98260 (Breitband IR-Empfangsmodul 20-60 KHz) ||||&lt;br /&gt;
* TSOP98200 (Breitband IR-Empfangsmodul 20-455 Khz) |||&lt;br /&gt;
* TSOP31238 (Besserer Ersatz (2,5-5,5V) für den nicht mehr Lieferbaren TSOP1738) ||&lt;br /&gt;
* PC923 (Opto MosFET Gate Treiber auch für High Side) |&lt;br /&gt;
* TLP250 (Opto MosFET Gate Treiber auch für High Side)||||&lt;br /&gt;
* LED Punktmatrix Anzeigen 8x8 superrot 3mm (z.&amp;amp;nbsp;B. ELM-1883SRWA (Everlight)) ||&lt;br /&gt;
* LED Punktmatrix bicolor 1.9mm (z.b. Betlux BL-M 07A881SG-XX )&lt;br /&gt;
* Acriche 230V~ LEDs&lt;br /&gt;
* Luxeon Rebel weiß (180 lm) auf Star-, Mini- oder normaler Platine ||&lt;br /&gt;
* BPW 34 F / FS (aus dem Sortiment gefallen) |&lt;br /&gt;
* SMD-IR-LEDs in 0603/0805/SOT23 |&lt;br /&gt;
* Dazu passend IR-Fotodioden in 0603/0805/SOT23 |&lt;br /&gt;
* Kingbright PSC Serie (16 Segment LED-Display, insbesondere PSC08 und PSC12) |&lt;br /&gt;
* Edison Opto LEDs: pinkompatibel mit diversen abgekündigten LEDs von Luxeon und Co, aber deutlich günstiger im Preis und leuchtstärker da u.A. Cree LED DIEs verwendet werden&lt;br /&gt;
** Edison Opto ARC / Edixeon LEDs (da ja Luxeons abgekündigt sind) ||||&lt;br /&gt;
** Edison Opto Federal (Luxeon Rebel artig) ||||&lt;br /&gt;
** Edison Opto KLC8 (Luxeon Bauform mit Cree Die) ||||&lt;br /&gt;
** Edison S Serie -&amp;gt; Lumiled kompatibles Gehäuse aber viel Leuchtstärker |||&lt;br /&gt;
** Edison Exixeon Serie -&amp;gt; Lumiled kompatibles Gehäuse aber viel Leuchtstärker ||&lt;br /&gt;
** Edison Edixeon RGB |||&lt;br /&gt;
&lt;br /&gt;
== Mechanisches ==&lt;br /&gt;
* Getriebemotoren wie RB35 oder RB40 ||||| ||||| |||&lt;br /&gt;
* Muttern M2 |||&lt;br /&gt;
* Stopmuttern M2 |&lt;br /&gt;
* Zylinderkopfschrauben M2,5 x 12mm |||||&lt;br /&gt;
* Zylinderkopfschrauben M2,5 x 20mm |||||&lt;br /&gt;
* Zylinderkopfschrauben M2,5 x 30mm |||||&lt;br /&gt;
* Zylinderkopfschrauben M3 x 25mm |||||&lt;br /&gt;
* Bopla ABP oder ABPH 800-100 (10cm) Aluprofil Gehäuse |&lt;br /&gt;
* microSD / Transflash sockel mit push-push technik (ist nervig die immer für teuren versand aus amiland kommen zu lassen) ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* M2 Gewindebohrer und Senker |||&lt;br /&gt;
* Kapton-Baender, evtl auch mit Kupferbeschichtung (Flex-PCB) ||&lt;br /&gt;
* Distanzhülsen/-bolzen M3 in verschiedenen Längen aus Kunststoff |&lt;br /&gt;
* Distanzbolzen M2,5 (SW4) in verschiedenen Längen aus Messing |&lt;br /&gt;
&lt;br /&gt;
=== Schalter etc. ===&lt;br /&gt;
* Drehimpulsgeber DDM Hopt+Schuler 427 SMD (evt auch normal, stehend &amp;amp; liegend) ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Folientastaturen ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Drucktastenfeld Matrix 3x4 ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* kleiner Joystick wie beim Atmel Butterfly  ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Drehschalter Serie DS in allen Versionen nur vom Hersteller C&amp;amp;K; auch brückende Versionen anbieten  ||||| |||||&lt;br /&gt;
* bistabile Relais mit 2 Wicklungen ||||| ||||| ||||| &lt;br /&gt;
* passende Touchpanels für die coolen Blue-Line-Grafikdisplays ||||| ||||||&lt;br /&gt;
* mehrpolige Fußschalter, FS 35 bitte bei Druckschalter einordnen ||||&lt;br /&gt;
* möglichst kleine und flache Druckschalter rastend!  |||||&lt;br /&gt;
* iPod-Wheel (Siehe: IC&#039;s=&amp;gt;QT511-ISSG; siehe 360° Soft-Pots - weiter oben) ||||| |&lt;br /&gt;
* Taster Radiohm ST-1034 in rot, grün, gelb, blau, grau und schwarz&lt;br /&gt;
* Relais mit hohen Wirkungsgrad (daher nur geringer Spulenstrom nötig) ||&lt;br /&gt;
* Tastköpfe für Taster9308, wie zb Omron B32-2000 oder B32-2010 |&lt;br /&gt;
* Batteriehalter für 4 Mignonzellen mit Lötfahne (statt Druckknopf)  ||&lt;br /&gt;
* Batteriehalter für 18650er Lithiumzellen |&lt;br /&gt;
* SMD-Schiebeschalter ||||&lt;br /&gt;
* Hohlwellen-Drehgeber (z.&amp;amp;nbsp;B. EC35B-Serie von Alps) ||&lt;br /&gt;
* Taster und Kappen aus der Multimec-Reihe ||&lt;br /&gt;
* Grayhill Series 60A Joysticks mit USB-Adapter |&lt;br /&gt;
&lt;br /&gt;
=== (Steck-) Verbindungen ===&lt;br /&gt;
* Lüsterklemmen kleiner LÜK 2,5, also z.B. LÜK 1,5: |&lt;br /&gt;
* Modulare Buchse RJ45 mit Übertrager und LEDs für Ethernet 10/100, z.&amp;amp;nbsp;B. SI-40138 MagJack von BEL-STEWART oder Taimag RJLBC-060TC1 ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Modulare Buchse RJ45 (&#039;&#039;ohne Übertrager&#039;&#039;) mit LEDs (oder Lichtleiter für SMD-LEDs) ||||| ||&lt;br /&gt;
* Buchsenleisten zum Crimpen (allseitig anreihbar!, 1x1, 1x2, z.&amp;amp;nbsp;B. [http://www.newproduct.molex.com/datasheet.aspx?ProductID=92125 Molex 2081 ?] oder Harwin M20 )  ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||| ||||| &lt;br /&gt;
* Für die LC-Displays: Adapterplatine mit anschlüssen im Raster 2,54mm (EA 9907-DIP) siehe http://www.lcd-module.de/ ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* TEXTOOL- bzw. ARIES-Fassungen (Breite 7-15,24mm)/ Nullkraftsockel für kleine Mikrokontroller: DIL-20 ||||| || DIL-28 | PLCC-44 ||||| ||||| ||||| (und andere)&lt;br /&gt;
* Nullkraftsockel für SO- oder TQFP-Gehäuse (z.&amp;amp;nbsp;B. Yamaichi) ||||| ||||| ||||| |||&lt;br /&gt;
* Nullkraftsockel für 6-Pin SOT23 (SOT23-6) z.&amp;amp;nbsp;B. für Programmierung v. PIC10F |||||&lt;br /&gt;
* Nullkraftsockel für DIL20 Gehäuse ||&lt;br /&gt;
* Chipkartenkontaktiereinrichtung, die die Kontakte anhebt (keine Schleifkontakte) ||||| |||| |&lt;br /&gt;
* WOL-Verbindungskabel / Stecker / Print-Connectoren: ||||||&lt;br /&gt;
* gängige Platinenverbinder einreihig RM 2mm mit 2-15 Kontakten (in vielen Geräten verwendet, z.&amp;amp;nbsp;B. [http://www.newproduct.molex.com/datasheet.aspx?ProductID=19945 Molex 51004, 53015]): ||||| Molex 71226 |||&lt;br /&gt;
* Floppy Stromversorgungstecker 3,5&amp;quot; Printausführung ||||| |&lt;br /&gt;
* Hochwertigere 1/4&amp;quot; Klinkenbuchsen, z.&amp;amp;nbsp;B. von Rean oder Cliff |||| |&lt;br /&gt;
* mehrpolige, hochwertige Miniatursteckverbinder (z.&amp;amp;nbsp;B. http://www.binder-connector.de/pdfs/serien/711.pdf) |||&lt;br /&gt;
* preiswerte! Hochspannungssteckverbinder &amp;gt;2kV ||||&lt;br /&gt;
* Höherwertige 3,5mm Klinkenbuchsen / -stecker (statt &amp;quot;EBS35&amp;quot; oder &amp;quot;KK(S/M) ..&amp;quot;) ||||| ||| ||&lt;br /&gt;
* Ordentliche Lautsprecherbuchsen &amp;quot;Strich-Punkt&amp;quot; (Print oder Wand) (die Stecker sind OK) |&lt;br /&gt;
* Schuko-Einbausteckdose (Maschinensteckdose) (mit oder ohne Klappdeckel); Flanschmaß möglichst klein (50mmx50mm); div. Farben (sw,grau,...) ||||| ||||| ||&lt;br /&gt;
* Euro-Einbausteckdose (230V~, gab&#039;s früher mal) ||||| |&lt;br /&gt;
* Carrier-IC-Sockel&lt;br /&gt;
* JST HR Steckverbinder |||&lt;br /&gt;
* Wannenstecker(gerade) + Pfostensteckverbinder 6-Pol. (Pfostenbuchsen gibt es 6-Pol.) ||||| ||||| ||||| ||||| ||||| ||||| |||  ( z.&amp;amp;nbsp;B. Harting SEK 18 Serie http://www.harting.com/en/en/de/sol/verbtech/prod/ios/description/03005/index.de.html)&lt;br /&gt;
* Wannenstecker 6-Pol. gewinkelt, gibt nur gerade |&lt;br /&gt;
* Wannenstecker 2,54mm Raster auch als SMD ||||| ||&lt;br /&gt;
* Günstigere SD/MMC-Steckverbinder z.&amp;amp;nbsp;B.SDBMF-00915B0T2 von MULTICOMP(selbst bei Farnell für 1,80Euro) ||||| |&lt;br /&gt;
* Einpolige Steckerleiste 2.54 ||||| |&lt;br /&gt;
* Foliensteckverbinder (FFC) RM1,25 (z.&amp;amp;nbsp;B. 9pol, 11pol ...) |||||&lt;br /&gt;
* Triaxstecker /-buchse (Coax mit 2.tem Schirm als 3. Kontakt) ||&lt;br /&gt;
* vernünftige Koax-Stecker und Kupplungen z. Bsp. von Hirschmann&lt;br /&gt;
* Platinensteckverbinder für Rastermass 2,00mm ||||&lt;br /&gt;
* Molex Steckerreihe Minifit Jr 4,2mm Rastermaß (verwendet als Stromstecker in Computern, Mainboard, PCI-E, P4/EPS ...) |&lt;br /&gt;
* Mini SD Card Connector mit Auswurffunktion für Oberflächenmontage  ||||| |&lt;br /&gt;
* Steckverbinder für PICTIVA OLED Display Folienkabel |||||&lt;br /&gt;
* E10-Schraubsockel, wie sie Glühbiren haben, mit Lötstiften (Achtung es ist nicht die Fassung gemeint) |||||&lt;br /&gt;
* RP-SMA-Buchse/-Stecker (gewinkelt/gerade) ||&lt;br /&gt;
* &amp;lt;s&amp;gt;WAGO 215-4mm-Stecker (Bananenstecker mit Käfigzugklemme) zur schnellen Montage bei Versuchsaufbauten ||||| ||||| ||||| ||||| |||&amp;lt;/s&amp;gt; (dieser Wunsch wurde erhört, Hurraa! Best.-Nr. Wago 215-x11, Vielen Dank an Reichelt.)&lt;br /&gt;
* Die PSK-Kontakte in anderen Packungen als 20/10k.100Stk. wäre z.b. gut.1k auch. ||||&lt;br /&gt;
* OBD-Stecker. |||&lt;br /&gt;
* Adapterprogramm SMA auf SMB ausbauen |&lt;br /&gt;
* Micro-USB Steckverbinder ||||&lt;br /&gt;
* 2.5mm Stereo Klinkenbuchsen (3-polig) SMD |||&lt;br /&gt;
* BNC-Stecker (wie UG 88U, Lötmontage) aber für RG174-Kabel |||| |&lt;br /&gt;
* U.FL bzw. IPEX Steckbüchsen zum selbskonfektionieren von HF Kabeln ||&lt;br /&gt;
* RJ45-Stecker 90° nach unten oder zur Seite gewinkelt ||&lt;br /&gt;
* Buchsenleisten 2.54mm (z.&amp;amp;nbsp;B. BL 1X...G 2,54) TEILBAR, *zum Auseinanderbrechen* (laut Anfrage vom 26.10.2009 nicht im Sortiment) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||| |||||&lt;br /&gt;
* Hohlstecker für Laptops 1,7 x 4,75mm gelb ||&lt;br /&gt;
* Stiftleisten im Rastermaß 1 mm (z.&amp;amp;nbsp;B.: Samtec FTMH-120-03-F-DV-ES) |&lt;br /&gt;
* Cablesharing Adapter 2x RJ45-Buchsen(1x Ethernet 1x ISDN)1xStecker |http://www.btr-netcom.com/Products/upload/ATCH-002661.pdf&lt;br /&gt;
* Stapelleiste AMP 2–0827730–0, 20polig, A 24,2 mm |&lt;br /&gt;
* Buchsenleiste Fischer BL5  |&lt;br /&gt;
* Polklemmen Hirschmann PKNI 10B (max. 63A ^^), zumindest Schwarz und Weiß |&lt;br /&gt;
* Molex C-Grid SL einreihig 2 bis &amp;gt;6 polig: Stecker, Buchsen, Buchsen-SMD, Crimp-Werkzeug |&lt;br /&gt;
* USB3, e-SATA, eSATAp (Power e-SATA) Stecker in Printausführung (gerade und gewinkelt) ||&lt;br /&gt;
&lt;br /&gt;
=== Kabel etc. ===&lt;br /&gt;
* dünner Schaltdraht (&amp;lt; 1mm Durchmesser, isoliert mit Tefzel oder Kynar)  ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Flachbandkabel im 2,54mm Raster und dazu passende Aufpressstecker und -buchsen ||||| ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* versilberten Kupferdraht auch &amp;lt; 0,6mm und alle Stärken in grösserer VPE (z.&amp;amp;nbsp;B. 500g Rolle) ||||| |||||&lt;br /&gt;
* Flexible Einzellitze, 0,5² in verschiedenen Farben ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* bzw. angebotene Schaltlitze (H05VK) um weitere Farben erweitern! |||&lt;br /&gt;
* das qualitativ mangelhafte 4mm Laborsteckerprogramm rausnehmen und nur noch Hirschmann anbieten  ||||| ||||| ||||| |||&lt;br /&gt;
* Zwillingslitze 2x0.14mm, z.&amp;amp;nbsp;B.  Artikel: ZL214SWW-10M Kessler Elektronik ||||| |&lt;br /&gt;
* Heizdraht zB.: Kanthal A1  ||||&lt;br /&gt;
* LYIF Litze (verschiedene Farben) ||||| |&lt;br /&gt;
* dickere Mantel(Feuchtraum)leitungen, z.&amp;amp;nbsp;B. NYM J5x10 |&lt;br /&gt;
* Folienflachkabel (FFC) RM1,25 (z.&amp;amp;nbsp;B. 9pol, 11pol ... /Länge 20cm) ||&lt;br /&gt;
* Flachbandkabel im 1,00mm Raster, passend für Pfostenverbinder PL 2X25G 2,00 . Wird für notebookplatten benötigt. Ohne das macht die gesamte 2,0mm-Wannensteckerproduktgruppe keinen Sinn. |||||&lt;br /&gt;
*Folienflachkabel (FFC) RM 0,8 (z.&amp;amp;nbsp;B. 30pol. Länge125mm) für 8&amp;quot;TFT Monitor&lt;br /&gt;
* H155 (HF-Kabel) |||||&lt;br /&gt;
* RG214 |&lt;br /&gt;
* Low-Loss Kabel (evtl. aus diesem Programm http://www.elspec.de/hf-kabel-technologie/download-hf-technik/hf-lowloss-kabel.html)&lt;br /&gt;
* Schnepp &amp;quot;Laborkabel&amp;quot; Messleitungen ||||&lt;br /&gt;
* Litze, LiY 0,25mm^2, diverse Farben (beispielsweise von Lapp Kabel) |&lt;br /&gt;
* Distanzbolzen mit 2 M2,5 Innengewinden vrsch. Längen |&lt;br /&gt;
* HF-Litze(n) |&lt;br /&gt;
* Flachbandkabel im 1,27 mm Raster, 6-polig |&lt;br /&gt;
&lt;br /&gt;
== Platinen/Prototypen ==&lt;br /&gt;
* SOIC auf PDIP Gehäuse-Adapter zwecks Prototypen-Bau ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Tonerverdichter (www.Huber-Troisdorf.com) ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Adapter TQFP (versch. PinZahlen) auf DIL/QIL ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Adapter QSOP (versch. PinZahlen) auf DIL/QIL ||||| ||&lt;br /&gt;
* Lötstopplaminat ||||| ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* www.schmartboard.com hat super einfach zu lötende SMD-Adapter in allen Größen, nur leider keinen Vertriebspartner in Deutschland (doch: ELV). Wie wäre es mit Reichelt? ||||| ||||| ||||| ||||| ||||| |||||| |&lt;br /&gt;
* Cadsoft Eagle ||||| ||&lt;br /&gt;
* Hohlkehlenlötspitzen (Ersa 0832HD) ||||| |&lt;br /&gt;
* Hohlkehlenlötspitzen f. Weller MLR21 ||||| |||||&lt;br /&gt;
* Fotoplatinen, zweiseitig, Hartpapier(!) |||||&lt;br /&gt;
* Entwickler NaOH-Frei von Bungard (SENO 4007 Universalentwickler) ||&lt;br /&gt;
* chemisches Zinnbad ||||| ||||| ||||&lt;br /&gt;
* Bungard-Fotoplatinen auch in 80x100mm (halbes Euroformat), nicht nur 75x100mm ||||| ||||| ||||| ||&lt;br /&gt;
* Bungard-Fotoplatinen BLAU div. Formate ||||| ||||| ||||| |&lt;br /&gt;
* Fotoplatinen aus Hartpapier von Markenhersteller ||&lt;br /&gt;
* SMD Testplatine (3x3 Felder) wie bei Conrad |&lt;br /&gt;
* Natrium Persulfat 2 kg Packung ||||&lt;br /&gt;
* Steckplatinenen (STECKBOARDS) im 84 x 54 Format (gibts bei Conrad ist da aber viel zu teuer) ||&lt;br /&gt;
* Messignblech/Kupferblech 0.1mm (wenn möglich Photobeschichtet) ||&lt;br /&gt;
* PCI-Express x1 Laborkarte (wie RE 430EP) |&lt;br /&gt;
&lt;br /&gt;
== Werkzeug und Zubehör ==&lt;br /&gt;
* robuste Allzweck- und Teppichmesser ||||| ||&lt;br /&gt;
* zöllische Gewindeschneider g1/4&amp;quot; und g 1/8&amp;quot; insbesondere interessant für Wasserkühlungen ||||||&lt;br /&gt;
* einzelne Hartmetallbohrer in diversen Grössen (z.&amp;amp;nbsp;B. 0,8 1,0 1,3 1,5) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* Arbeitsschalen zum Entwickeln und Ätzen von Platinen(*)(ist im Starterkit enthalten) ||||| ||||| ||||||&lt;br /&gt;
* Gewindebohrer M2 und M2,5 ||||| ||||&lt;br /&gt;
* Konturenfräser/Gravurstichel, etc. zum Fräsen von Platinenprototypen (z.&amp;amp;nbsp;B. Bungard G60N/G30N) ||||| ||||&lt;br /&gt;
* Tri-Wing Schraubendreher ||&lt;br /&gt;
* Ballistol Universalöl ||||| |||&lt;br /&gt;
* ERSA Lötspitzen der Serie 842 (besonders die feinen) Reichelt führt bis jetzt nur 832, die feinen davon sind aber recht unbrauchbar |||&lt;br /&gt;
&lt;br /&gt;
== Unsortiert/Unspezifisch ==&lt;br /&gt;
* Kundenkarte so wie bei ELV (Grundgebühr für ein Jahr, keine Versandkosten, evtl kleiner Rabatt) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* Reichelt Katalog als PDF zum Download (siehe [[Reichelt PDF Katalog]] ||||| ||||| ||||| |||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* (durch pdf-download überflüssig:) der Reichelt Katalog auf CD/DVD |||||&lt;br /&gt;
* In Bereichen wie Multimedia etc. (z.&amp;amp;nbsp;B. Spielekonsolen) ein aktuelleres Angebot, und nich wie z.&amp;amp;nbsp;B. bei der PS2 erst wenn schon fast das Nachfolgemodell draussen ist (Multimedia ist hier nur ein Beispiel, einfach mal an der Konkurrenz orientieren (Zum beispiel am grossen C) |&lt;br /&gt;
* mehr, aber als solche gekennzeichnete billig-Alternativprodukte, nicht nur High-End |||||&lt;br /&gt;
* Modellbau und Zubehör ||||| ||||| ||||| || (Wird immer mehr, man sieht, Reichelt hört dankenswerterweise auf diese Wishlist!!)&lt;br /&gt;
* mehr SMD Bauteile  ||||| ||||| ||||| ||||| ||||| ||||| |||||  |||||  ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* HCT-Logik in SMD ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Kleinere SMD-Bauformen (bes. bei ICs) ||||| ||||| |||||&lt;br /&gt;
* mehr und v.a. kleine (Hand-) Gehäuse  ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* &amp;lt;s&amp;gt;Lieferungen nach Österreich ohne 150 Euro Mindestbestellwert wie alle anderen Supplier ||&amp;lt;/s&amp;gt;&lt;br /&gt;
* gleicher Mindestbestellwert in den Niederlanden wie in Deutschland |&lt;br /&gt;
* Kein Mindestbestellwert (ich bezahle eh&#039; Porto) ||||| ||||| ||||| |&lt;br /&gt;
* Filialen in Österreich  und der Schweiz :-) ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||| |||||| ||||| ||| (man beachte das &amp;quot;:-)&amp;quot;, es gibt auch in D keine &amp;quot;Filialen&amp;quot; - mt)|&lt;br /&gt;
* Günstige Versandkonditionen für die EU ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Selbstabholer-Option bei der Bestellung. Vergisst man es unter &amp;quot;Bemerkung&amp;quot; kommt es per Post :(   ||||  (für Plz 26xxx kommt eine Option für Abholer, Tip: falsche Plz eintragen)&lt;br /&gt;
* Versand von Kleinteilen als Maxibrief, zwecks niedrigerem Versand ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* Option zum anklicken beim Versand, &amp;quot;nichtverfügbare Artikel automatisch streichen&amp;quot;, wenn man das ins Kommentarfeld schreibt wirds nicht beachtet, oder bis das jemand liest dauert es wieder mehrere tage. (In der Zwischenzeit realisiert!!) ||||| ||||| |||||&lt;br /&gt;
* mehr Familien von Logik-ICs, z.&amp;amp;nbsp;B. AC, ACT, LVC (in SMD) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |&lt;br /&gt;
* LiPoly-Zellen (aufladbare Lithiumakkus &amp;quot;Suppentüten&amp;quot;) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||&lt;br /&gt;
* Allgemein mehr Sensoren ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Preiswertere Alu Druckgussgehäuse, wie z.&amp;amp;nbsp;B. von Hammond Manufacturing ||||| ||||| ||||| ||&lt;br /&gt;
* nicht wie die Konkurrenz jetzt schon im April den Juli-Katalog rausbringen ||||| ||||| ||||| ||&lt;br /&gt;
* Neuere, bessere NiMh Akkus (z.b. GP1100 2/3A, GP2000 AF, GP2200 4/5SubC) ||||| ||||| ||&lt;br /&gt;
* Funk-Entstördrosseln 16A, div. Werte ||||| |&lt;br /&gt;
* Taster, Schalter und LED-Fassungen aus der Mentor FEL-Reihe |||&lt;br /&gt;
* Lötfähige (SMD-) Kühlkörper (Fischer) ||||| ||||| ||||| ||&lt;br /&gt;
* Toner für Laserdrucker Kyocera FS-1010 TK17 ||||| |  ist ja eigentlich der gängigste Kyocera Toner&lt;br /&gt;
* Toner für Kyocera FS800-S |&lt;br /&gt;
* Microchip PICkit 2 ||||| |||&lt;br /&gt;
* Microchip PICkit 2 (PG164120) ohne Demoplatine |&lt;br /&gt;
* Möglichkeit für Selbstabholen eine Bestellung unter 10Euro abzuliefern.  |&lt;br /&gt;
* Bessere Auswahl: statt MSP430F147, F148, F149 wenigstens einen mit DAC -&amp;gt; MSP430F16x&lt;br /&gt;
* Cypress PSoC Mikrocontroller |||| |||| |||| |||| |&lt;br /&gt;
* Günstigere Oszilloskope z.&amp;amp;nbsp;B. Multimetrix oder Grundig ||||| ||||| |&lt;br /&gt;
* Sortieren und Spezifizieren der Angebotsliste in Transistoren / FET (bessere Übersicht) ||||| ||||| ||||| ||||| z.&amp;amp;nbsp;B. 400V/6A würde schonmal ganz grob helfen und senkt außerdem unnötigen Traffic weil nicht extra jedes Datenblatt angeschaut wird&lt;br /&gt;
* Vorschaltgeräte mit G23 Fassung (zum Bau von UV-Belichtern geeigent)|||&lt;br /&gt;
* Speicherkarten-Adapter von SD auf CF (bzw. CFII) |||||&lt;br /&gt;
* ein Abendessen mit Angela :-) (hier dürfte wohl Angelika gemeint sein) ||| bzw. mit der Blondine von der Katalogseite mit den Servicenummern |&lt;br /&gt;
* USB-Leergehäuse (z.&amp;amp;nbsp;B. wie USB-Stick, WLAN-Dongle, o.ä.) ||||| ||||| ||||| ||&lt;br /&gt;
* Nicht so viele Tackerklammern/Gummibänder/Tesafilm/Beutel in die Verpackungstüten machen, das nervt beim Auspacken (die kaputten Tüten kann dann auch keiner mehr brauchen, die wenigen nicht kaputt getackerten hebe ich aber gerne auf! Aber bitte weiterhin alles getrennt verpacken... oder wenigstens nicht den Zip-Verschluss tackern) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Reflektoren für 10mm LEDs ||&lt;br /&gt;
* Beamer Casio YC-400 |&lt;br /&gt;
* OBD2 Kabel auf RJ45 Stecker |||&lt;br /&gt;
* mehr Verpackungsmaterial z.&amp;amp;nbsp;B. kleine Schachteln oder die Plastik IC-&amp;quot;Schienen&amp;quot; einzeln (und unzerschnitten) verkaufen ||||| ||&lt;br /&gt;
* PCMCIA Wlan-Karten (Linux kompatibel) mit externem Antennenanschluss |&lt;br /&gt;
* Warenkorb immer in gleicher Reihenfolge sortiert, nicht bei jedem Aufruf anders ||||| |||||&lt;br /&gt;
* PIC_BASIC_II || Programm mit HardwareKey [z.&amp;amp;nbsp;B. für Azubi&#039;s]&lt;br /&gt;
* Reichelt T-Shirt ||||| ||||&lt;br /&gt;
* Reichelt-Gutscheine sollten bei Online-Bestellung einlösbar sein (wie bei z.&amp;amp;nbsp;B. Amazon) ||||| ||||&lt;br /&gt;
* Target 3001 V15 verschiedene Lizenzen |&lt;br /&gt;
&lt;br /&gt;
==Messgeräte==&lt;br /&gt;
* FS300 Messgerät Antennenanalyzer Massenpreis 50000 Stück &amp;lt;br&amp;gt;&lt;br /&gt;
* Smart Tweezer (SMD-Pinzette mit Komponentenmessung) siehe [http://www.trgcomponents.de/TrgDE/Internet/ProductShow.aspx?ItemID=680&amp;amp;CategoryID=2426] ||&lt;br /&gt;
* Tektronix TDS Series Osziloskope |||&lt;br /&gt;
&lt;br /&gt;
= Bereits im Sortiment =&lt;br /&gt;
* Laser-Folien für die Druckformerstellung(Zweckform 3491) ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Atmel AT91SAM7S32 ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||  (=&amp;gt; Best.: AT 91SAM7S64-AU)&lt;br /&gt;
* Atmel AT91R40008 (32bit controller 256KB-RAM 100-lead TQFP) ||||| ||||| |  (=&amp;gt; Best.: AT 91R40008)&lt;br /&gt;
* LCD: auch ein- und dreizeilige Variante der DOG-Serie (EA DOGM081 &amp;amp; 163) |||||&lt;br /&gt;
* Platinen Basismaterial, einseitig Cu-beschichtet, 0,5..1 mm dick ||||| ||||| ||| --&amp;gt;0,8mm: BEL 160x100-1-8&lt;br /&gt;
* Atmel ATtiny45 ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| =&amp;gt; ATTINY 45-20PU, ATTINY 45-20SU, ATTINY 45V-10PU, ATTINY 45V-10SU&lt;br /&gt;
* Atmel ATMEGA48 TQFP ||||| |||| =&amp;gt; ATMEGA 48-20 AU&lt;br /&gt;
* Atmel ATMEGA 88 || =&amp;gt; ATMEGA 88-20 AU, ATMEGA 88-20 PU, ATMEGA 88V-10 AU, ATMEGA 88V-10 PU&lt;br /&gt;
* Atmel ATMEGA644 ||||| ||||| ||||| ||||| =&amp;gt; ATMEGA 644-20 AU, ATMEGA 644-20 PU, ATMEGA 644V-10AU, ATMEGA 644V-10MU, ATMEGA 644V-10PU&lt;br /&gt;
* Atmel ATMEGA2560 ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| || =&amp;gt; ATMEGA 2560-16AU, ATMEGA 2560V-8AU&lt;br /&gt;
* Atmel ATMEGA2561 ||||| | =&amp;gt; ATMEGA 2561-16AU, ATMEGA 2561V-8AU&lt;br /&gt;
* Philips LPC2000-Serie ARM7-Controller (LPC214x, LPC213X, LPC21xx und LPC22xx) |||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| | =&amp;gt; Bauelemente, aktiv / Controller, Speicher / Controller, Prozessoren / Philips-Controller 80C51 / 87LPC.. / 89C51&lt;br /&gt;
* TI MSP430F2xxx (Typen mit 16 MIPS) ||||| ||||| | =&amp;gt; Bauelemente, aktiv / Controller, Speicher / Controller, Prozessoren / Texas MSP430 Controller&lt;br /&gt;
* Breadboards/&amp;quot;Steckbretter&amp;quot; ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||| ||||| ||||| ||||| |||||| ||||| ||||| ||||| ||||| ||||| ||| =&amp;gt; STECKBOARD 1K2V, STECKBOARD 2K1V, STECKBOARD 2K4V, STECKBOARD 3K5V, STECKBOARD 4K7V (zu finden unter &#039;Diverses/Spielwaren&#039; :)&lt;br /&gt;
* RS485 ESD fest: MAX3086E oder 75180 oder ISL83086E ||||| || =&amp;gt;MAX485ECPA &lt;br /&gt;
* Microchip PIC 18F2550  || =&amp;gt; PIC 18F2550-I/P&lt;br /&gt;
* Microchip PIC 16F88  |||| || =&amp;gt; PIC 16F88-I/P&lt;br /&gt;
* Microchip dsPIC ||||| ||||| ||||| ||||| | =&amp;gt; PIC 30F2010-30 SP/SO&lt;br /&gt;
* Logicanalyzer | =&amp;gt; ME ANT 8 und ME ANT 16&lt;br /&gt;
* Atmel ATMEGA8 TQFP |||| =&amp;gt; ATMEGA 8-16 TQ&lt;br /&gt;
* 3,3V Laengsregler (LT1086-Serie z.&amp;amp;nbsp;B.)  ||||| =&amp;gt; vgl z.&amp;amp;nbsp;B. [http://reichelt.de/?ARTIKEL=LT%201086%20CM3%2C3 LT 1086 CM3,3] (SMD) oder [http://reichelt.de/?ARTIKEL=LT%201086%20CT3%2C3 LT 1086 CT3,3] (TO-220) bei Reichelt&lt;br /&gt;
* Flexible Messleitungen: Wie gesagt Reichelt bietet ja die ganze Palette an Bananen/Laborsteckern, Krokodilklemmen usw. an, nur die Leitungen dazu fehlen im Programm.  (Sind schon im Sortiment. Fertig konfektionierte z.&amp;amp;nbsp;B.: ML 100 SW, Meterware z.&amp;amp;nbsp;B.: MESSLEITUNG 10SW)&lt;br /&gt;
* FTDI USB Chips  ||||| ||||| ||||| ||||| ||||| ||| =&amp;gt; Best-Nr. FT232BL, FT232RL (sehr interessant), FT245BM und FT2232BM (2xUART auf USB)(noch nicht unter USB einsortiert)&lt;br /&gt;
* CAN-Bus Controller MCP2515  |||||&lt;br /&gt;
* VLSI MP3 Decoder  ||||| ||||| ||||| | z.Zt. unter CAN-Bus(!) einsortiert. Bitte auch die neuen Gehäuse (ROHS) und Typen mit ins Angebot nehmen.&lt;br /&gt;
* Atmel AT90CAN128 ||||| |&lt;br /&gt;
* MMC / SDC slot  ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ==&amp;gt; Bestell-Nr.: CONNECTOR MMC 11, CONNECTOR MMC 12, CONNECTOR SD 21 und CONNECTOR SD 22&lt;br /&gt;
* lineare Potentiometer als Schiebepoti ||||| | - Bestell-Nr. PSM-LIN* (&amp;quot;mono&amp;quot;) PSS-LIN* (&amp;quot;stereo&amp;quot;)&lt;br /&gt;
* Echtzeituhr DALAS DS1307 (auch SMD) ||||||| - Bestell-Nr. DS1307/DS1307Z&lt;br /&gt;
* Konkret: Neuer PIC ... und PIC18F2550 ||||| ||| &lt;br /&gt;
* MSP430F1232 |&lt;br /&gt;
* Fädelstift, Draht und Kämme ||||| ||| - Bestell-Nr. Fädelstift/Fädeldraht/Fädelkamm (Warum sind diese Stifte ùnd der Draht nur so &amp;quot;erschreckend&amp;quot; teuer? =&amp;gt; immerhin billiger als bei C...) (vielleicht weil jeder die nur 1x kauft und dann mit Draht aus anderen Quellen selber neu bewickelt?? ;-)&lt;br /&gt;
* Mini-GPS-Module ||||| ||||| ||||| ||||| ||| - Bestell-Nr. GPS ET 102/GPS ET 202/GPS EM 401&lt;br /&gt;
* Atmel ATmega48, ATmega168, ATtiny13 ||||| ||||| ||||| | (im neuen katalog und online verfügbar!)&lt;br /&gt;
* CompactFlash Stecker ||||| ||||| ||||| || - Bestell-Nr. connector CF 01/ Connector CF 02 &lt;br /&gt;
* DCF77 Empfangsmodule  ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| (DCF77 Modul) (4.5.2005 ist jetzt verfügbar unter DCF77 MODUL, aber leider 50% teurer als bei der Konkurenz, störempfindlicher, grotesk schwache Ausgangstreiber)&lt;br /&gt;
* Microchip PIC 12F683 (8pin PIC mit PWM !) =&amp;gt; Bereits im Sortiment: Best. Nr PIC 12F683-I/P bzw. PIC 12F683-I/SN &lt;br /&gt;
* MSP430F135 ||||| ||||| | |||||  (MSP430F135 im Programm Bestellnr.: MSP430F135 IPM)&lt;br /&gt;
* SMD 0 Ohm in Bauform 0805 |||| -&amp;gt; SMD-0805 0,00&lt;br /&gt;
* Shunt-Widerstände  ||||| ||||| ||||| ||||| |  (neu im Sortiment: Widerstandsdraht, Best.-Nr. &amp;quot;RD100/x,xx&amp;quot;, Leider nur in teuren 100g Spulen)&lt;br /&gt;
* dünner isolierter Draht, wie Klingeldraht nur dünner, vielleicht 0.2-0.3mm zum Fädeln von Platinen |||| =&amp;gt; Fädeldraht nun im Sortiment&lt;br /&gt;
* dünner Silberdraht zur Verdrahtung auf Lochrasterplatinen ||||| |   (mögl. bereits im Sortiment &amp;quot;SILBER 0,6MM&amp;quot; ???)Kupferlackdraht geht nicht?&lt;br /&gt;
* Hartmetallbohrer in mehr verschiedenen Größen (z.&amp;amp;nbsp;B. 0,6mm 0,8mm 1,1mm 1,2mm etc.) ||||| |||| =&amp;gt; Gibt es beides Bestellnummern: &amp;quot;Bohrerset&amp;quot; oder für einzelne Bohrer &amp;quot;Bohrer + Größe in mm&amp;quot; Bsp: &amp;quot;Bohrer 0,6&amp;quot; =&amp;gt; die kosten aber einiges, eine etwas preiswertere Alternative wäre auch nicht schlecht...&lt;br /&gt;
* 68HC908GP32 |&lt;br /&gt;
* überhaupt: Freescale 68HC908- und vor allem 68HCS08-Mikrocontroller fehlen total im Sortiment!&lt;br /&gt;
* RJ45-Buchse ||| - schon im Sortiment: MEBP 8-8&#039;&#039;x&#039;&#039; unter Modular-Stecker bei TK&lt;br /&gt;
* Elektromotoren ||||| |||| (Suche: Gleichstommotor)&lt;br /&gt;
* Microchip ICD2 || =&amp;gt; Bestell-Nr.: DV 164005 &amp;lt;= Fehlt im Papierkatalog&lt;br /&gt;
* 14,7456 MHz Quarze ||||| ||||| ||||| ||||| ||| (Bst: 14,7456-HC18)&lt;br /&gt;
* SMD Widerstande in Bauform 1206 (SMD 1/4W...)&lt;br /&gt;
* Atmel Atmega 128 in TQFP || (ATMEGA 128-16 TQ)&lt;br /&gt;
* Atmel Atmega 169 in TQFP || (ATMEGA 169-16 TQ)&lt;br /&gt;
* Atmel ATMEGA1280 ||||| ||||| ||||| |||| (ATMEGA 1280-16AU, ATMEGA 1280V-8AU)&lt;br /&gt;
* Atmel ATMEGA8515 | (ATMEGA 8515-*)&lt;br /&gt;
* Atmel ATtiny24/44 ||||| ||||| (ATTINY 24-*, ATTINY 44-*)&lt;br /&gt;
* Atmel ATtiny25/85 ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| | (ATTINY-25-*, ATTINY-85-* gelistet aber erst verfuegbar ab II/07)&lt;br /&gt;
* Atmel AT91SAM7S64, AT91SAM7S256 ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||| (suche AT91*)&lt;br /&gt;
* Atmel AT91SAM7X64-256 ||||| ||| (suche AT91*)&lt;br /&gt;
* TI MSP430F1611 (10k RAM, 48k Flash) ||||| ||||| ||||| ||||| ||||| ||||| || (MSP430F1611 IPM)&lt;br /&gt;
* PCA9306  Dual Bi-Directional I2C-Bus and SMBus Voltage Level-Translator ||&lt;br /&gt;
* PCA9531D  8Bit I2C_BUS LED-Dimmer ||||| |||||&lt;br /&gt;
* PCA9551D  8Bit I2C-BUS LED-Blinker ||||| ||||&lt;br /&gt;
* PCA9530D  2Bit I2C_BUS LED-Dimmer ||||| |&lt;br /&gt;
* PCA9532D 16Bit I2C_BUS LED-Dimmer ||||| |||||&lt;br /&gt;
* PCA9533D  4Bit I2C_BUS LED-Dimmer ||||| ||||&lt;br /&gt;
* PCA9550D  2Bit I2C-BUS LED-Blinker ||||| |&lt;br /&gt;
* PCA9553D  4Bit I2C-BUS LED-Blinker ||||| ||&lt;br /&gt;
* PCA9552D 16Bit I2C-BUS LED-Blinker ||||| |||&lt;br /&gt;
* Microchip PIC 18F2550 (USB, 32 KBytes Flash) | (bereits im Sortiment)&lt;br /&gt;
* Microchip PIC 16F628A (weil: besser als 16F628) ||||&lt;br /&gt;
* Microchip PIC 16F648 (weil mehr Programmspeicher, als 16F628) |||||&lt;br /&gt;
* Microchip PIC 16F684 ||||| &lt;br /&gt;
* Microchip PIC 16F688 ||||| ||&lt;br /&gt;
* Microchip PIC 16F690 ||||| ||||| |||&lt;br /&gt;
* Atmel ATtiny84 ||||| ||||| |||| (gelistet aber erst verfuegbar ab II/07)&lt;br /&gt;
* TI MSP430F169 |&lt;br /&gt;
* FT245RL (alt bekannte FTDI Chips in neuer und besserer Version, FT232RL bereits vorhanden) ||||| ||&lt;br /&gt;
* 3,3V Längsregler SMD Ultra Low drop |||| (-&amp;gt; Zetex)&lt;br /&gt;
* Schiebepotis mit passenden Knöpfen | (Bestell-Nr. PSM-LIN* (&amp;quot;mono&amp;quot;) PSS-LIN* (&amp;quot;stereo&amp;quot;) nicht passed?) |&lt;br /&gt;
* OLED-Displays (zum Beispiel: [http://www.litearray.com/products-oled.php]) || (Reichelt hat jetzt Osram Pictiva Oleds im Programm. Nach &amp;quot;Pictiva&amp;quot; suchen)&lt;br /&gt;
* OSRAM &amp;quot;Golden Dragon&amp;quot; LEDs (http://www.osram-os.com/goldendragon) ||||&lt;br /&gt;
* Microcontroller mit USB-Anschluss (von Cypress oder Atmel in PDIP z.&amp;amp;nbsp;B. AT89C5131, AT43USB355, CY7C637xx) ||||| ||||| ||||| ||||| |||||  -&amp;gt;Bereits im Sortiment: Cypress EZ-USB TQFP-44 Best. Nr AN2131 SC, Atmel AT89C5131 SO-28/PLCC-52&lt;br /&gt;
* Renesas R8C &lt;br /&gt;
* zu Schaltreglern LM257x u.a. passende Speicherspulen mit hohem L , niedrigem R und großer Strombelastbarkeit (zB. Würth WE-PD4) (keine &amp;quot;Entstörspulen&amp;quot;) |||||  |||||  |||||  ||||| |||||  ||||| |||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| || (suche L-PIS*)&lt;br /&gt;
* IL300 (linear Optokoppler z.&amp;amp;nbsp;B. von Vishay egal ob DIP oder SMD) ||||| ||||&lt;br /&gt;
* IL300H (linear Optokoppler von Siemens als DIP) - andere IL300 Varianten im Programm |||&lt;br /&gt;
* &amp;quot;optische&amp;quot; Drehgeber Fabrikat Grayhill sind lieferbar (Bst. ENC 62P22-*)&lt;br /&gt;
* mechanische Drehimpulsgeber von Alps im Programm (suche STEC*)&lt;br /&gt;
** Drehimpulsgeber (konkreter Vorschlag von O.R.: PEC16-4220F-S0024 von Bourns)  ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
** Drehimpulsgeber- weiterer Vorschlag: ALPS Encoder ST EC 11B  ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||| Im Programm (STEC11B01)&lt;br /&gt;
* PCA9633D16 4-bit I2C-bus LED driver ||&lt;br /&gt;
* I²C-Bus to 1-Wire DALLAS DS2482-100 bzw. DS2482-800  ||||| ||||| ||||| ||||| ||||| ||||&lt;br /&gt;
* Step-Down-Konverter in SMD Bauform (z.b. MC 34063): ||||| (-&amp;gt;Artikel-Nr: MC 34063 AD)&lt;br /&gt;
* Preiswerte Kontaktierungen für SD/MMC  ||| (Bereits im Programm: Bestell-Nummern:  CONNECTOR MMC 11 / CONNECTOR MMC 12 / CONNECTOR SD 21 / CONNECTOR SD 22) // ~9 EUR sind wohl kaum preiswert!&lt;br /&gt;
* Eisen(III)-Chlorid  ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||||&lt;br /&gt;
* EA DOG-M128 128x64 Grafikdisplay aufbau ähnlich EA DOGM162 |||||&lt;br /&gt;
* 3,3V-Längsregler SMD zu vernünfitgen Preisen (Bsp: LF33 --&amp;gt; Best.Nr.: LF 33 CV, Preis: 0,76&amp;amp;#8364;)(der LT1086 kostet 4 Euro) ||||| ||||| ||||| ||||| ||||| 	||||| ||||| ||||| || -&amp;gt; LT1117 CST-3.3V für 1.55 €&lt;br /&gt;
* Spannungsregler in SMD-Version (7805 etc., nicht nur der 78L05) ||||| ||||| ||||| ||||| ||||| ||||| ||| -&amp;gt; LT1117-ADJ für 1.55€&lt;br /&gt;
* TSic Temperatursensoren von ZMD ||| -&amp;gt; TSIC&lt;br /&gt;
* Leiterplattenbuchse Hirschmann 4mm auch in *rot* (gab es schonmal als &amp;quot;PB 4 RT) || -&amp;gt; wieder als PB 4 RT erhältlich, letzte Woche 3 Stück geliefert bekommen; Stückpreis 1,25€&lt;br /&gt;
* MCP25050 CAN-Bus Input/Output Expander ||||| |||| (MCP 25050-I/*)&lt;br /&gt;
* Ethernet-Controller RTL8019AS ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| || (erhältlich: RTL 8019AS)&lt;br /&gt;
* SPI-Ethernet-Controller ENC28J60 (erhältlich: ENC 28J60-I/*)&lt;br /&gt;
* &#039;&#039;&#039;Grundton&#039;&#039;&#039;-Quarz (25,0000 MHz Grundton, erhältlich) ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||| (wirklich erhältlich? Als Keramik-SMD-Quarz, 25.0MHz, 25,000000-MJ)&lt;br /&gt;
* Microchip PIC 18F4550 (PIC mit USB) ||||| ||||| ||||| ||||| ||||| ||||| |||&lt;br /&gt;
* Microchip PIC 18F2585 ||||&lt;br /&gt;
* gleicher Mindestbestellwert in Österreich und in der Schweiz wie in Deutschland &#039;&#039;&#039; Seit 1.12.10 umgesetzt&#039;&#039;&#039;&lt;br /&gt;
* Versand nach Österreich über GLS oder sonstigen Paketdienst &amp;amp; auf Rechnung, damit die Spesen halbwegs im Rahmen bleiben (bei der letzten Bestellung ca. EUR 40) ||||| ||||| ||||| ||||| ||||| ||||| ||| &#039;&#039;&#039;Anm.: Versand nach AT inzwischen ab 9,90&#039;&#039;&#039;&lt;br /&gt;
* Pakete nach Österreich in EINER Lieferung schicken, und nicht aus &amp;quot;logistischen Gründen&amp;quot; trennen. Würde zumindest die Hälfte der Verandkosten sparen (letztes mal fast 70€ pro Paket (!) ||&lt;br /&gt;
* Digitale Speicherosziloskope für PC ||||| ||||| || (Picoscope, PC-Oszilloskop)&lt;br /&gt;
* Hameg HM2008 Oziloscope || ( ist möglich über Service -&amp;gt; Produktservice -&amp;gt; neue Artikel anfragen)&lt;br /&gt;
* Microchip dsPIC30F ||||| ||||| |||&lt;br /&gt;
* Microchip PIC 16F883 und 16F886 |||&lt;br /&gt;
* Microchip PIC 18F4523 (12/2007: PIC mit 12-Bit A/D-Wandler) ||&lt;br /&gt;
* Microchip PIC 18F6585 |&lt;br /&gt;
* Microchip PIC 18F6720 |&lt;br /&gt;
* Microchip PIC 18F8720 |&lt;br /&gt;
* Microchip PIC 24FJ64GB002-I/SP (USB-OTG im DIP28 Gehäuse) |&lt;br /&gt;
* Atmel XMega-Typen, z.B. ATXMega64A4, ATXMega128A1 ||||| ||&lt;br /&gt;
* 7-Segment-Anzeige, blau, gem. Kathode ||||| ||||| ||||| ||||| ||||| ||||| || (SC 52-11 BL)&lt;br /&gt;
* 7-Segment-Anzeige, blau, gem. Anode ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| |||| (SA 52-11 BL, SA 56-11 BL)&lt;br /&gt;
* EA DOG-L128 128x64 Grafikdisplay zzgl Touch-Folie und Beleuchtung | --&amp;gt; ist ab Katalog 06/2009 drinn&lt;br /&gt;
&lt;br /&gt;
= Sonstiges =&lt;br /&gt;
&lt;br /&gt;
== zur Webseite ==&lt;br /&gt;
&lt;br /&gt;
In &amp;quot;Neu in unserem Shop&amp;quot;/Neue Artikel werden unter Bauelemente u.a. Computerkabel und PC-Speicher angezeigt (Anlass Stand 5/2010, ist aber schon früher aufgefallen). Diese Teile würden zumindest etwas besser in PC-Technik passen. (...und die Freude des Elektronikbastlers über eine Anzahl neuer Bauelemente würde auch nach Auswahl der Details anhalten, wenn es nicht &amp;quot;nur&amp;quot; so etwas wie USB-Kabel sind.)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
myReichelt ermöglicht: &lt;br /&gt;
* Warenkorbspeicherung&lt;br /&gt;
* öffentlicher Warenkorb&lt;br /&gt;
* CSV-Import, -Export&lt;br /&gt;
&lt;br /&gt;
zu myReichelt siehe auch http://www.mikrocontroller.net/topic/62628&lt;br /&gt;
&lt;br /&gt;
Eine Webseite ohne Frames ist eigentlich heute Stand der Technik. Oder vielleicht ist es das auch nicht mehr - ich weiss es nicht aber nach meiner Auffassung sollte es Stand der Technik sein. Denn dann hat man für jedes Produkt auch einen eindeutigen Link und kann ggf. auch in Beiträgen, Mails und Anfragen darauf verlinken.&lt;br /&gt;
&lt;br /&gt;
Anmerkung dazu:&lt;br /&gt;
Verlinken auf Artikel geht schon, und zwar in der Form:&lt;br /&gt;
http://www.reichelt.de/?ARTIKEL=ATMEGA%208-16%20DIP&lt;br /&gt;
bzw.&lt;br /&gt;
http://www.reichelt.de/index.html?ARTIKEL=ATMEGA%208-16%20DIP&lt;br /&gt;
&lt;br /&gt;
Neu zu lesen unter &amp;quot;Info zum Shop&amp;quot;:&lt;br /&gt;
Zitat:&lt;br /&gt;
&amp;quot;Frames&lt;br /&gt;
In vielen Votings wurden wir auf die Verwendung von Frames hingewiesen und dass diese Technik nicht mehr -State Of The Art- sei. Dieser Meinung schliessen wir uns in vollem Umfang an. In unserem neuen Shop werden KEINE FRAMES verwendet.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Reichelt selbst macht das in seinen PDF-Prospekten auch so. Das Problem liegt nur darin, die URL jedesmal von Hand zusammenzubauen (und dabei auf die Ersetzung der Leerzeichen durch %20 zu achten) oder von einer kopierten URL alles überflüssige zu entfernen.&lt;br /&gt;
&lt;br /&gt;
Einfach mal einen &amp;quot;Permalink&amp;quot; button neben &amp;quot;Artikel empfehlen&amp;quot; ? Oder zurück mit der früheren Druckansicht.&lt;br /&gt;
&lt;br /&gt;
Hinweis: Viele Browser ersetzen Leerzeichen im Adressfeld automatisch durch %20. &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Ferner sollte es möglich sein, Bestellungen, welche noch nicht bearbeitet werden zu verändern, also z.&amp;amp;nbsp;B. was hinzuzufügen oder zu entfernen. Bei einer Wartezeit von ca. 3 Tagen bis zum Versand fällt einem doch noch was ein :-)&lt;br /&gt;
&lt;br /&gt;
Das wird bereits gemacht! Einfach E-Mail an service@reichelt.de mit den Bauteilen, die man noch haben will. I-Net-Nummer nicht vergessen.&lt;br /&gt;
&lt;br /&gt;
Andere Möglichkeit ist anrufen, das mache ich eh immer, um eventuell nicht lieferbare Dinge zu streichen oder zu ersetzen. Geht immer, es sei denn Lieferung wird schon verpackt.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Shopprogramm: Wäre es nicht komfortabel, ein Programm auf dem heimischen Rechner zu haben, welches das aktuelle Sortiment mit den aktuellen Preisen führt, wo dann auch offline Bestellungen zusammengestellt und hochgeladen werden können? So ließen sich die Merklisten auch besser verwalten.&lt;br /&gt;
&lt;br /&gt;
Ja, das fände ich auch sehr toll, sollte man mal drüber nachdenken.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Passwortschutz: Die derzeitige Lösung der Anmeldung im Shop ist für den heutigen Stand der Dinge recht unsicher. Ein zur Kundennummer gehörendes Passwort sollte schon sein. Was soll schon passieren, die Versandadresse ist ja bekannt, und wenn jemand anderes auf meinen Namen bestellt. lässt er sich über die Versandadresse herrausfinden, außerdem weiß ja auch nicht jeder meine Kundennummer.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Eine Art Lagerbestand im Onlineshop wäre sinnvoll. Es ist mehr als ärgerlich, wenn bei einer Bestellung z.&amp;amp;nbsp;B. Kleinteile wie Kondensatoren oder Schalter fehlen, weil sie nicht auf Lager waren. Dabei gibt es gerade bei solchen Teilen genug Alternativen, sei es Farbe, Bauart oder Wert, auf die man umsteigen könnte, damit die Bestellung vollständig ist. Es würde ja vollkommen ausreichen den Bestand in Form einer Ampel, wie bei anderen Shops, mit grün, gelb und rot zu realisieren.&lt;br /&gt;
&lt;br /&gt;
Im Warenkorb werden Artikel, die nicht auf Lager sind, mittlerweile auch so gekennzeichnet.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Früher würden neue Artikel mit einem gelben &amp;quot;NEU&amp;quot; gekennzeichnet, jetzt ist das nicht mehr so. Hätte gerne wieder einen Überblick was neu hinzugekommen ist ohne jede Artikelgruppe aufrufen zu müssen.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Nummerierung der Bauteile: Warum wird der Warenkorb nicht nummeriert. Ich hasse es wenn ich manuell mit Hand zählen muss! Das ist auch nervig wenn man manuell per Hand vergleichen will!!&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Virtuelle Bauteilekisten (vbox): Wer bei Reichelt bestellt ordert oft viele viele Kleinteile. Wenn man nun ein Gerät zum wiederholten mal baut, muss man alle Teile erneut eingeben. Könnte ich nun neben dem Warenkorb auch noch virtuelle Bauteilekisten füllen würde das neue Bestellungen sehr beschleunigen. Der Kunde als Wiederholungstäter sozusagen.&lt;br /&gt;
&lt;br /&gt;
Konkret:&lt;br /&gt;
Ich habe vier verschiedene Elektronikprojekte entwickelt.Für jedes dieser Projekte lege ich bei Reichelt.de eine virtuelle Bauteilekiste mit eigenem Namen an. Die Zusammenstellung der Artikel funktioniert wie beim normalen Warenkorb. Wenn ich nun ein Projekt erneut bauen möchte, kopiere ich einfach den Inhalt der virtuellen Bauteilekiste per Knopfdruck in meinen Warenkorb. Wenn ich Projekt2 also dreimal nachbauen möchte kopiere ich die virtuelle Bauteilebox &amp;quot;Projekt2&amp;quot; dreifach in den Warenkorb.&lt;br /&gt;
Schön wäre es auch die virtuellen Bauteilekisten mit Schaltplan und ev. Eagle  - Dateien veröffentlichen zu können.&lt;br /&gt;
&lt;br /&gt;
Und wieso ist der Login, den es früher mal gab weg? Da konnte man zumindest den aktuellen Warenkorb speichern soweit ich mich erinnern kann, aber seit der neuen Website gibt&#039;s den Login nicht mehr. Ausserdem muss ich jetzt jedesmal meine Kundennummer rauskramen um meine Bestellung abzusenden - Conrad löst das beispielsweise besser. (dafür haben die aber auch ne besch...eidene Suchfunktion und nen unübersichtlichen Shop)&lt;br /&gt;
&lt;br /&gt;
Nebenanregung:&lt;br /&gt;
Damit die &amp;quot;Bauteilekisten&amp;quot; nicht unmengen Platz beim Anbieter verschwenden könnte man diese auslagern.&lt;br /&gt;
Also Nach erstellen Download als einfaches File und bei Bedarf einfach bei Bestellung übertragen.&lt;br /&gt;
So könnte sie jeder in Ruhe offline vorbereiten und verwalten.&lt;br /&gt;
&lt;br /&gt;
IDEE: Offenlegung der Datenbank: Offenlegung der Datenbank oder zumindest Export für die User. Somit koennten die Datenbank in eine Art Datenbank gespeichert werden. Als Katalogprogramm koennte dann soetwas ähnliches wie das von Segor zum Einsatz kommen. Gibt es einen Standard dann koennten  Reichelt, Conrad, Segor, etc. mit einem Programm genutzt und verglichen werden:&lt;br /&gt;
siehe auch http://www.mikrocontroller.net/forum/read-7-363596.html&lt;br /&gt;
Programmierunterstuetzung findet sich bestimmt. Abgesehen davon haben die Distributoren den Vorteil die Katalogdaten übers Internet upzudaten.&lt;br /&gt;
&lt;br /&gt;
Zum offenlegen der Datenbank: Wie wäre es mit einem Webservice, mit dem man über SOAP auf die Datenbank zugreifen kann? Ähnlich wie bei Amazon oder auch Google.&lt;br /&gt;
&lt;br /&gt;
Lösung in HTML:&amp;lt;br/&amp;gt;&lt;br /&gt;
Ich hatte für das Projekt [http://www.mikrocontroller.net/topic/82127 &amp;quot;Webserver ATmega32/644DIP ENC28J60&amp;quot;] ein Bestellformular ([http://www.mikrocontroller.net/attachment/29451/reichelt.htm reichelt.htm] &amp;lt;span style=&amp;quot;font-size: 0.8em;&amp;quot;&amp;gt;[Version vom 22.12.2007]&amp;lt;/span&amp;gt;) gebastelt um schnell alle nötigen teile in den Reichelt – Warenkorb zulegen. Mit etwas HTML-Kenntnis dürfte eine Anpassung nicht das Problem darstellen.&amp;lt;br/&amp;gt;&lt;br /&gt;
In JavaScript, des &#039;&#039;&#039;reichelt.htm&#039;&#039;&#039; Bestellformulars, die Funktion &amp;lt;code&amp;gt;&#039;&#039;&#039;send()&#039;&#039;&#039; &#039;&#039;Zeile 42:&#039;&#039; var maxElements = 40;&amp;lt;/code&amp;gt; die &#039;&#039;&#039;40&#039;&#039;&#039; durch die Anzahl der unterschiedlichen Bauteile Anpassen.&lt;br /&gt;
&lt;br /&gt;
== zu Artikeln ==&lt;br /&gt;
&lt;br /&gt;
* Kupferlackdraht: Auf der Website sind Plastikspulen abgebildet, geliefert wird jedoch seit Jahren schon lose aufgewickelter Draht, der so schlecht zu verarbeiten ist. Bitte ändern! Am besten vernünftigen Draht auf Spulen, zumindest aber das Bild anpassen.&lt;br /&gt;
&lt;br /&gt;
* Spitze fände ich eine verbesserte Suche für Gehäuse. Oft stehe ich vor dem Problem, meine Baugruppe ist so-und-so groß und ich brauche ein Gehäuse, in das diese Baugruppe hineinpasst. Zur Zeit muss ich mich manuell durch alle Gehäusegrößen &amp;quot;durchwühlen&amp;quot;, bis ich ein passendes gefunden habe. Die Suche stelle ich mir so vor: Ich gebe die Maße ein, die das Gehäuse mindestens haben &#039;&#039;muss&#039;&#039;, und bekomme alle Gehäuse angezeigt, die genau so groß oder etwas größer sind als meine Vorgaben.&lt;br /&gt;
&lt;br /&gt;
== Abwicklung ==&lt;br /&gt;
&lt;br /&gt;
* Sammelbestellung: Wenn ich etwas bei Reichelt bestelle, bestelle ich für meine Kollegen auch immer etwas mit. Wenn dann das Päckchen kommt, heisst es sortieren. Wer hatte von was, wie viel? Danach kommt das rechnen dran. Ein besonderes Highlight, sind die Nettopreise. Und auch das Verteilen der Versandkosten ist nicht ohne. Währe es nicht möglich, im Bestellvorgang eine Zuordnung zu Personen oder Projekten zu realisieren, und die Zwischensummen der Personen oder Projekte auf der Rechnung oder per Mail anzugeben. Ein Schmankerl wäre die Angabe der Bruttopreise inklusive der anteiligen Versandkosten.&lt;br /&gt;
** Wahrscheinlich nicht möglich, siehe AGB-Klausel zu Massenbestellungen. &amp;quot;Garantieberechtigt&amp;quot; ist auch immer nur der ursprüngliche Besteller.&lt;br /&gt;
** Welche Klausel? Mir fällt nur 13.3 ins Auge...&lt;br /&gt;
&lt;br /&gt;
== zu dieser Wunschliste ==&lt;br /&gt;
&lt;br /&gt;
(gehört eigentlich in Diskussion)&lt;br /&gt;
&lt;br /&gt;
* Wäre es möglich ein Script zu bauen, welches man ab und zu über diesen Artikel jagt und das die Einträge nach Anzahl der Striche ordnet? =&amp;gt; Formatierung als Tabelle (1. Spalte: das Teil, 2. Spalte: die Striche) würde auch schon helfen.&lt;br /&gt;
** Das geht kaum, weil | ein SOnderzeichen in Vorlagen ist.&lt;br /&gt;
&lt;br /&gt;
* Dass hier jeder immer nur einen Strich macht, glaube ich nicht! Ein Script was pro IP nur einen Strich zulässt wäre gut. -&amp;gt; Naja, alle 24h spätestens gibt es eigendlich eine neue IP...   Antwort: Lässt sich sehr leicht überprüfen mit Artikel -&amp;gt; Versionen&lt;br /&gt;
&lt;br /&gt;
* Warum macht der 5te nicht anstelle |||| ein V :-) und anstelle vom nächsten V kommt dann ein X ....Daniel [[Benutzer:84.179.17.164|84.179.17.164]] 20:11, 4. Feb 2006 (CET)&lt;br /&gt;
&lt;br /&gt;
* Wenn Reichelt was aus der Liste neu ins Programm aufnimmt wäre eine Benachrichtigung per Newsletter oder RSS nett. Oder zumindest eine Rubrik &amp;quot;Seit XX.XX.200X neu im Programm&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Logbuch ==&lt;br /&gt;
&lt;br /&gt;
8.4.2010: Mail an Reichelt geschickt und an die Liste erinnert.&lt;br /&gt;
&lt;br /&gt;
2.10.2009: REVERT auf die Version vor dem 20.Jul.2009 12:47. Da der Artikel von 193.200.150.82 &amp;quot;verdoppelt&amp;quot; wurde. D.h. alles war doppelt vorhanden und die Einleitung gelöscht&lt;br /&gt;
&lt;br /&gt;
19.06.2009: Hab mal den Kram unter der Rubrik &amp;quot;Webseite&amp;quot; entfernt/zusammengefasst der schon realisiert wurde. -- Tobias&lt;br /&gt;
&lt;br /&gt;
12.03.2009: Da haben wir ja alle verpennt, Reichelt in 2008 mal wieder an die Liste zu erinnern. Ich hab das jetzt mal nachgeholt und eine Mail an Reichelt geschickt. -- [http://www.reintechnisch.de Winfried Mueller]&lt;br /&gt;
&lt;br /&gt;
03.08.2007: Das Feld für &amp;quot;neue Artikel&amp;quot; scheint aus dem Reichelt Shop entfernt worden zu sein, schade da man so schnell schauen konnte was neu im Programm ist, nun ist wieder Katalogblättern angesagt. - Nicht nachvollziehbar. siehe Startseite-&amp;gt;Service-&amp;gt;Neu in unserem Shop &lt;br /&gt;
&lt;br /&gt;
18.05.2007: Habe Reichelt an diese Liste erinnert. -- Robin Tönniges&lt;br /&gt;
&lt;br /&gt;
14.11.2006 Ich lese mir gerade euer Wishlist durch. Finde ich gut! Aber wie ihr &lt;br /&gt;
hier (Logbuch) über Reichelt kritisiert finde ich nicht fair! Die haben genug zu arbeiten! Bitte keine Vorurteile! Um das gehts mir hauptsächlich!&lt;br /&gt;
Macht weiter nur nicht so! &lt;br /&gt;
P.S. Schöne inforeiche Site&lt;br /&gt;
Steven&lt;br /&gt;
&lt;br /&gt;
6.8.2006 Habe eine umfassende Kritik zu Reichelts neuem Webshop geschrieben und dabei auf unsere Wünsche bzl. Webseite, insbesondere &amp;quot;Virtuelle Bauteilebox&amp;quot; und &amp;quot;Gehäusesuche&amp;quot; hingewiesen. Verlinkung auf diese Seite ist auch erwähnt worden.&lt;br /&gt;
&lt;br /&gt;
5.8.2006 Hurra, Reichelt bietet endlich den ATtiny13V an! Jetzt können wir  Batteriebetriebene Geräte (2,4-3V) bauen. By the way: Gibt es blaue LED&#039;s, die dazu passen?&lt;br /&gt;
&lt;br /&gt;
14.7.2006 Reichelt antwortete: (Zu lang, deshalb hier nur der Inhalt:) Wir haben                                                                                    ihre mail zur Kenntnis genommen (Forum wird angeblich ab und zu immer wieder kontrolliert). Entscheidender Satz (Original eines Mitarbeiters:)....Ich denke jedoch, dass die meisten und&lt;br /&gt;
wichtigsten Wünsche zum Herbstkatalog eingelistet werden.&lt;br /&gt;
&lt;br /&gt;
14.7.2006 Reichelt erneut auf diesen Beitrag aufmerksam gemacht, erwarte Antwort.&lt;br /&gt;
&lt;br /&gt;
3.7.2006: beitz-online.de eine verlinkung gemailt. Ich hoffe das ist erlaubt.&lt;br /&gt;
&lt;br /&gt;
5.3.2006: Verlinkung gemailt&lt;br /&gt;
&lt;br /&gt;
12.10.2005: Verlinkung gemailt und gebeten sich darum zu kümmern&lt;br /&gt;
&lt;br /&gt;
07.10.2005: Reichelt eine Verlinkung gemailt und speziell auf LOW ESR Elkos und 433 Mhz Funkmodule hingewiesen. Mal sehen was die Antworten.&lt;br /&gt;
&lt;br /&gt;
08.07.2005: Reichelt bescheid gegeben, man möge mal wieder hier rein schauen -- Thomas O.&lt;br /&gt;
&lt;br /&gt;
13.05.2005: Antwort von Reichelt: der Versand ins Ausland bleibt leider bei 150 Eur -- nurmi&lt;br /&gt;
&lt;br /&gt;
09.05.2005: Reichelt bescheid gegeben, man möge mal wieder hier rein schauen -- nurmi&lt;br /&gt;
&lt;br /&gt;
08.05.2005: Pflege der Liste hier: Wenn ihr was in der Liste seht, was bereits schon im Angebot ist, löscht es bitte! Sonst ist das hier bald ein unüberschaubares Chaos. -- [http://www.reintechnisch.de Winfried Mueller]&lt;br /&gt;
&lt;br /&gt;
08.02.2005: Positives Feedback von Reichelt. Freuen sich über diese Form der Anregung. In der 2. Märzhälfte sollen weitere Produkte in den neuen Katalog einfließen. -- [http://www.reintechnisch.de Winfried Mueller]&lt;br /&gt;
&lt;br /&gt;
07.02.2005: Reichelt bescheid gegeben, man möge mal wieder hier rein schauen -- [http://www.reintechnisch.de Winfried Mueller]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Bauteile]]&lt;br /&gt;
[[Kategorie:Lieferanten]]&lt;/div&gt;</summary>
		<author><name>134.76.63.163</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_Arithmetik/Saturierung&amp;diff=52926</id>
		<title>AVR Arithmetik/Saturierung</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_Arithmetik/Saturierung&amp;diff=52926"/>
		<updated>2010-11-23T11:46:29Z</updated>

		<summary type="html">&lt;p&gt;134.76.63.163: Änderung 52924 von 91.201.66.204 (Diskussion) wurde rückgängig gemacht.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;von [[Benutzer:gjlayde|gjlayde]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Unter &#039;&#039;&#039;Saturierung&#039;&#039;&#039; (von engl. &#039;&#039;to saturate&#039;&#039;, wörtlich &#039;&#039;Sättigen&#039;&#039;) versteht man die Eigenschaft bestimmter Operatoren, bei Überschreitung der Bereichs-Grenzen den Maximal- bzw. Minimalwert zu liefern, anstatt überzulaufen und einen Wert zu liefen, der sehr weit vom erwarteten Ergebnis entfernt liegt.&lt;br /&gt;
&lt;br /&gt;
== Einleitung ==&lt;br /&gt;
&lt;br /&gt;
Bei vielen Anwendungen wie der digitalen Signalverarbeitung ist es wichtig, daß ein Wert an den Rändern seines Wertebereiches nicht überläuft. Ist eine Größe &#039;&#039;x&#039;&#039; zum Beispiel als 8-Bit Wert mit Vorzeichen gespeichert, so führt die Operation&lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
    char x = 127; // x =  127&lt;br /&gt;
    char y = x+1; // y = -128&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
zum Ergebnis &#039;&#039;y&#039;&#039;=−128. Solch ein riesiger Sprung ist in vielen Anwendungen fatal. Anstatt an den Bereichsgrenzen überzulaufen ist dann erforderlich daß der Wert an der Maximalgrenze stehen bleibt, d.h. daß das Ergebnis in dem Falle &#039;&#039;y&#039;&#039;=127 ist anstatt −128. Die Variable kann ab dieser Grenze nichts mehr aufnehmen: sie hat ihre &amp;quot;Sättigung&amp;quot; erreicht.&lt;br /&gt;
&lt;br /&gt;
Um saturierte Addition von der üblichen Addition zu unterscheiden, wird hier das Symbol &amp;lt;math&amp;gt;\oplus&amp;lt;/math&amp;gt; verwendet.&lt;br /&gt;
&lt;br /&gt;
Eine saturierte Addition hat eine sehr wichtige Eigenschaft der gewohnten Addition, nämlich die &#039;&#039;Monotonie&#039;&#039;:&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
a \geqslant 0 \;\Rightarrow\; x + a \geqslant x \quad\text{sowie}\quad &lt;br /&gt;
a \leqslant 0 \;\Rightarrow\; x + a \leqslant x &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Analoge Zusammenhänge gibt es für die Monotonie der (saturierten) Subtraktion&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
a \geqslant 0 \;\Rightarrow\; x - a \leqslant x \quad\text{sowie}\quad &lt;br /&gt;
a \leqslant 0 \;\Rightarrow\; x - a \geqslant x &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
sowie für andere saturierte Operatoren wie Negation, Betragsbildung, Multiplikation und Division, welche die gleichen Monotonie-Eigenschaften haben wie die &amp;quot;nativen&amp;quot; mathematischen Operatoren.&lt;br /&gt;
&lt;br /&gt;
Durch Zugewinn der Monotonie verliert man allerdings die &#039;&#039;Assoziativität&#039;&#039;, so daß die Reihenfolge, in der saturierte Operatoren anwandt werden, wie im folgenden Beispiel einen Einfluß auf das Ergebnis haben kann:&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
126 = (127 \oplus 1) \ominus 1  \;\neq\; 127 \oplus (1 \ominus 1) = 127&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
Das ist bei Verwendung von saturierten Operatoren immer zu bedenken!&lt;br /&gt;
&lt;br /&gt;
Neber der Saturierung, welche bei den Werte an den Bereichsgrenzen &amp;amp;ndash; also dort, wo ein Überlauf stattfinden würde &amp;amp;ndash; stehen bleibt, gibt es auch Saturierungen, die zB auf den Wertebereich &amp;amp;minus;100...100 begrenzen. Letztere lässt sich zusammensetzen aus einer &amp;quot;normalen&amp;quot; Saturierung, wie sie hier im weiteren besprochen wird, und einer Maximum- bzw. Minimum-Bildung gegen den gewünschten Wertebereich.&lt;br /&gt;
&lt;br /&gt;
== Umsetzung == &lt;br /&gt;
&lt;br /&gt;
Zur konkreten Umsetzung der Saturierung gibt es mehrere Möglichkeiten:&lt;br /&gt;
&lt;br /&gt;
;A priori: Bereits bevor das Ergebnis berechnet wurde wird anhand der Eingabe entschieden, ob der Wertebereich verlassen und ein Über- oder Unterlauf entstehen wird.&lt;br /&gt;
;A posteriori: Erst nach der Berechnung wird anhand des Ergebnisses entschieden, ob ein Über- oder Unterlauf auftrat.&lt;br /&gt;
&lt;br /&gt;
Sind vorzeichenbehaftete Operanden beteiligt, so fällt die Entscheidung strenggenommen automatisch zugunsten der a priori-Variante aus: In C führt der Überlauf von vorzeichenbehafteten Zahlen explizit zu undefiniertem Verhalten; es steht dem Compiler frei, in einem solchen Fall Instruktionen zu generieren, die beispielsweise den Prozessor anhalten oder neustarten.&lt;br /&gt;
&lt;br /&gt;
Am gebräuchlichsten und effizientesten für kleine Typen sind (wenn möglich) A-posteriori-Methoden, da hier das Ergebnis als Entscheidungsgrundlage mit einbezogen werden kann. Das Ergebnis wird unbedingt berechnet und im Fall eines Überlaufs wieder verworfen. Dieser Mehraufwand muss bei aufwändigen Operatoren mit dem Aufwand von a-priori-Methoden abgewogen werden.&lt;br /&gt;
&lt;br /&gt;
Die A-posteriori-Verfahren lassen sich wiederum untergliedern in unterschiedliche Strategien, die je nach Einsatzfeld mehr oder minder effizient oder garnicht anwendbar sind:&lt;br /&gt;
&lt;br /&gt;
;Erweiterter Zahlenbereich: Die Operation wird in einem erweiterten Zahlenbereich ausgeführt in dem kein Überlauf auftreten kann. Das Ergebnis wird dann gegen die Grenzen getestet und ggf. beschnitten. Die Saturierung eines 32-Bit Wertes wird damit sehr aufwändig, weil der nächstgrößere Typ in Hochsprachen 64 Bits breit ist. Irgendwo ist eine Grenze erreicht, ab der es keinen nächstgrößeren Typ mehr gibt. Eine 8-Bit signed Saturierung könnte in C so aussehen:&lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
char add_signed_sat8 (char x, char y)&lt;br /&gt;
{&lt;br /&gt;
    short x_y = (short) x + y;&lt;br /&gt;
    &lt;br /&gt;
    return MAX (MIN (x_y, 127), -128);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Auswertung von Flags: Viele Rechenwerke produzieren Flags, die Auskunft über Eigenschaften des Ergebnisses enthalten. Dazu gehören Carry-, Overflow-, Negative-, Zero-Flag etc. Von einer Hochsprache aus hat man auf diese Flags keinen Zugriff, man muss also Assembler zu ihrer Auswertung heranziehen.&lt;br /&gt;
&lt;br /&gt;
;Test auf Ergebnis-Überlauf ohne Flags: Hier wird die Monotonie ausgenutzt: Falls eine positive Zahle addiert wird, so muß das Ergebnis größer werden. Falls nicht, muß ein Überlauf aufgetreten sein. Eine Formulierung in C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
char add_signed_sat8 (char x, char y)&lt;br /&gt;
{&lt;br /&gt;
    char x_y = x + y;&lt;br /&gt;
&lt;br /&gt;
    if (y &amp;gt; 0  &amp;amp;&amp;amp;  x_y &amp;lt; x)&lt;br /&gt;
        return 127;&lt;br /&gt;
&lt;br /&gt;
    if (y &amp;lt; 0  &amp;amp;&amp;amp;  x_y &amp;gt; x)&lt;br /&gt;
        return -128;&lt;br /&gt;
&lt;br /&gt;
    return x_y;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Auf AVR ===&lt;br /&gt;
&lt;br /&gt;
Saturierung ist eine Eigenschaft eines Operators und &#039;&#039;nicht&#039;&#039; die einer Zahl, wie bei unsigned/signed, welche nur von der Interpretation des Ergebnisses abhängt. Während für signed/unsigned-Addition die gleichen Befehle verwendet werden, ist dies bei Saturierung nicht der Fall, und wir müssen unterscheiden zwischen verschiedenen Ausprägungen der Saturierung, was in unterschiedlichen Implementierungen resultiert.&lt;br /&gt;
&lt;br /&gt;
Wie im vorhergehenden Abschitt zu sehen, kann Saturierung im Vergleich zu einer gewohnten Addition, die in einem Maschinenbefehl umsetzbar ist, sehr aufwändig sein. Daher versuchen wir nach Möglichkeit Status-Flags des AVR zu verwenden, um einen Überlauf zu erkennen. Dies ist von einer Hochsprache aus leider nicht möglich, so daß wir auf (Inline-)Assembler zurückgreifen müssen, um eine effiziente Implementierung zu erhalten. &lt;br /&gt;
&lt;br /&gt;
Angemerkt sei noch, daß in einer Hochsprache wie C auch bei Verwendung von Assembler die Portabilität erhalten bleibt, wenn maschinenabhängige Sequenzen z.&amp;amp;nbsp;B. per &amp;lt;tt&amp;gt;#ifdef&amp;lt;/tt&amp;gt; parametrisiert werden.&lt;br /&gt;
&lt;br /&gt;
==== Unsigned ====&lt;br /&gt;
&lt;br /&gt;
;Addition:&lt;br /&gt;
&lt;br /&gt;
Das ist der einfachste Fall. Die Addition zweier vorzeichenloser Zahlen liefert immer ein nicht-kleineres Ergebnis. Ein Überlauf ist am Carry erkennbar:&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
;; unsigned R16&lt;br /&gt;
;; unsigned R0&lt;br /&gt;
;; R16 := R16 + R0 mit Saturierung&lt;br /&gt;
add  R16, R0&lt;br /&gt;
brcc 0f&lt;br /&gt;
; Falls es einen signed Überlauf gab (C=1) Maximalwert laden&lt;br /&gt;
ldi  R16, 0xff    &lt;br /&gt;
0:&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Als Inline-Assembler-Schnippel für avr-gcc, der in eine Inline-Funktion gefasst ist, sieht das so aus:&lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
#include &amp;lt;stdint.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
// x += y mit Saturierung&lt;br /&gt;
static inline uint8_t add_usat8 (uint8_t x, uint8_t y)&lt;br /&gt;
{&lt;br /&gt;
    asm (&amp;quot;add  %[x], %[y]&amp;quot;   &amp;quot;\n\t&amp;quot;&lt;br /&gt;
         &amp;quot;brcc 0f&amp;quot;           &amp;quot;\n\t&amp;quot;&lt;br /&gt;
         &amp;quot;ldi  %[x], 0xff&amp;quot;   &amp;quot;\n\t&amp;quot;&lt;br /&gt;
         &amp;quot;0:&amp;quot;&lt;br /&gt;
         : [x] &amp;quot;+d&amp;quot; (x)&lt;br /&gt;
         : [y] &amp;quot;r&amp;quot;  (y));&lt;br /&gt;
&lt;br /&gt;
    return x;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zu beachten ist, daß x wegen dem LDI in Registerklasse &amp;lt;tt&amp;gt;&amp;quot;d&amp;quot;&amp;lt;/tt&amp;gt; (R16&amp;amp;ndash;R31) liegen muss, während für y jedes Register erlaubt ist, es also in Klasse &amp;lt;tt&amp;gt;&amp;quot;r&amp;quot;&amp;lt;/tt&amp;gt; (R0&amp;amp;ndash;R31) liegen kann.&lt;br /&gt;
&lt;br /&gt;
Ein &amp;lt;tt&amp;gt;volatile&amp;lt;/tt&amp;gt; ist hier übrigens nicht notwendig: der Schnippel hat den Compiler nämlich bereits über &#039;&#039;alle&#039;&#039; Nebeneffekte informiert. Der Compiler darf den Schnippel (bzw. die Inline-Funktion) also wegoptmieren, wenn das Ergebnis nicht verwendet wird &amp;amp;ndash; was hier vollkommen in Ordnung ist.&lt;br /&gt;
&lt;br /&gt;
;Subtraktion:&lt;br /&gt;
&lt;br /&gt;
Ganz analog verläuft die Subtraktion:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
;; unsigned R1&lt;br /&gt;
;; unsigned R0&lt;br /&gt;
;; R1 := R1 - R0 mit Saturierung&lt;br /&gt;
sub  R1, R0&lt;br /&gt;
brcc 0f&lt;br /&gt;
; Falls es einen unsigned Unterlauf gab (C=1) Minimalwert laden&lt;br /&gt;
clr  R1&lt;br /&gt;
0:&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Signed ====&lt;br /&gt;
Mehr Aufwand erfordern die signed-Operatoren, weil diese in zwei Richtungen überlaufen können.&lt;br /&gt;
&lt;br /&gt;
;Addition:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
;; signed R16&lt;br /&gt;
;; signed R0&lt;br /&gt;
;; R16 := R16 + R0 mit Saturierung&lt;br /&gt;
add  R16, R0&lt;br /&gt;
brvc 0f&lt;br /&gt;
; Falls es einen signed Überlauf gab (V=1) Maximalwert laden&lt;br /&gt;
ldi  R16, 0x7f&lt;br /&gt;
sbrc R0, 7&lt;br /&gt;
; R0 ist negativ, daher muss der Minimalwert geladen werden&lt;br /&gt;
ldi  R16, 0x80&lt;br /&gt;
0:&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Subtraktion:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
;; signed R16&lt;br /&gt;
;; signed R0&lt;br /&gt;
;; R16 := R16 - R0 mit Saturierung&lt;br /&gt;
sub  R16, R0&lt;br /&gt;
brvc 0f&lt;br /&gt;
; Falls es einen signed Überlauf gab (V=1) Minimalwert laden&lt;br /&gt;
ldi  R16, 0x80&lt;br /&gt;
sbrc R0, 7&lt;br /&gt;
; R0 ist negativ, daher muss der Maximalwert geladen werden&lt;br /&gt;
ldi  R16, 0x7f&lt;br /&gt;
0:&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Negation&lt;br /&gt;
&lt;br /&gt;
Vorsicht ist geboten beim Negieren einer Zahl und bei Betragsbildung, weil der Wert &amp;lt;tt&amp;gt;0x80&amp;lt;/tt&amp;gt;=&amp;amp;minus;128 kein positives Pendant hat:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
;; signed R0&lt;br /&gt;
;; R0 := -R0 mit Saturierung&lt;br /&gt;
neg  R0&lt;br /&gt;
brvc 0f&lt;br /&gt;
; Signed Überlauf (V=1): Das Ergebnis ist 0x80 und wird verändert zu 0x7f&lt;br /&gt;
dec  R0&lt;br /&gt;
0:&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Betrag&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
;; signed R0&lt;br /&gt;
;; R0 := Abs (R0) mit Saturierung&lt;br /&gt;
sbrc R0, 7&lt;br /&gt;
neg  R0        ; R0 &amp;lt; 0: negieren&lt;br /&gt;
sbrc R0, 7&lt;br /&gt;
dec  R0        ; R0 ist immer noch &amp;lt; 0 (also 0x80): lade 0x7f&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Unsigned + Signed ====&lt;br /&gt;
&lt;br /&gt;
Diese Kombination ist am aufwändigsten in der Behandlung und geschieht am einfachsten durch Umskalierung auf zwei signed-Werte, signed-saturierter Operation und nachfolgender Rückskalierung. Zu beachten ist, daß dieser Operator nicht kommutativ ist, d.h. a+b liefert i.A. ein anderes Ergebnis als b+a.&lt;br /&gt;
&lt;br /&gt;
;Addition:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
;; unsigned R16&lt;br /&gt;
;; signed   R0&lt;br /&gt;
;; R16 := R16 + R0 mit Saturierung&lt;br /&gt;
; Transformation [0x00, 0xff] -&amp;gt; [0x80, 0x7f]&lt;br /&gt;
subi R16, 0x80&lt;br /&gt;
add  R16, R0&lt;br /&gt;
brvc 0f&lt;br /&gt;
; Falls es einen signed Überlauf gab (V=1) Maximalwert laden&lt;br /&gt;
ldi  R16, 0x7f&lt;br /&gt;
sbrc R0, 7&lt;br /&gt;
; R0 ist negativ, daher muss der Minimalwert geladen werden&lt;br /&gt;
ldi  R16, 0x80&lt;br /&gt;
0:&lt;br /&gt;
; Rücktransformation [0x80, 0x7f] -&amp;gt; [0x00, 0xff]&lt;br /&gt;
subi R16, 0x80&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Subtraktion:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
;; unsigned R16&lt;br /&gt;
;; signed   R0&lt;br /&gt;
;; R16 := R16 - R0 mit Saturierung&lt;br /&gt;
; Transformation [0x00, 0xff] -&amp;gt; [0x80, 0x7f]&lt;br /&gt;
subi R16, 0x80&lt;br /&gt;
sub  R16, R0&lt;br /&gt;
brvc 0f&lt;br /&gt;
; Falls es einen signed Überlauf gab (V=1) Minimalwert laden&lt;br /&gt;
ldi  R16, 0x80&lt;br /&gt;
sbrc R0, 7&lt;br /&gt;
; R0 ist negativ, daher muss der Maximalwert geladen werden&lt;br /&gt;
ldi  R16, 0x7f&lt;br /&gt;
0:&lt;br /&gt;
; Rücktransformation [0x80, 0x7f] -&amp;gt; [0x00, 0xff]&lt;br /&gt;
subi R16, 0x80&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
Im [[AVR-Tutorial]]:&lt;br /&gt;
* [[AVR-Tutorial: Arithmetik8|8-Bit Arithmetik]]&lt;br /&gt;
* [[AVR-Tutorial: Vergleiche|Vergleiche]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:AVR-Arithmetik|S]]&lt;/div&gt;</summary>
		<author><name>134.76.63.163</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR-Tutorial:_ADC&amp;diff=42459</id>
		<title>AVR-Tutorial: ADC</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR-Tutorial:_ADC&amp;diff=42459"/>
		<updated>2010-01-22T19:57:46Z</updated>

		<summary type="html">&lt;p&gt;134.76.63.163: Einheiten korrigiert, SI-Schreibweise verwendet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Was macht der ADC? ==&lt;br /&gt;
&lt;br /&gt;
Wenn es darum geht Spannungen zu messen, wird der Analog-/Digital-Wandler (kurz: A/D-Wandler) oder englisch [[ADC | &#039;&#039;&#039;A&#039;&#039;&#039;nalog &#039;&#039;&#039;D&#039;&#039;&#039;igital &#039;&#039;&#039;C&#039;&#039;&#039;onverter]] (ADC) benutzt. Er konvertiert eine elektrische Spannung in eine Digitalzahl. Diese kann dann in gewohnter Weise von einem [[Mikrocontroller]] weiterverarbeitet werden.&lt;br /&gt;
&lt;br /&gt;
== Elektronische Grundlagen ==&lt;br /&gt;
&lt;br /&gt;
Die ADC-Versorgungsspannung (AVCC) darf maximal um +/-0,3V von der Versorgung des Digitalteils (VCC) abweichen, jedoch nicht 5,5V überschreiten. Die externe Referenzspannung VREF darf nicht kleiner als die im Datenblatt unter ADC Characteristics als VREFmin angegebene Spannung (z.B. ATmega8: 2V, ATmega644P: 1V) und nicht größer als AVCC sein. Die Spannungen an den Wandlereingängen müssen im Intervall GND &amp;amp;le; VIN &amp;amp;le; VREF liegen.&lt;br /&gt;
&lt;br /&gt;
Im Extremfall bedeutet dies: Sei VCC = 5,5V, folgt AVCC_max = VREF_max = VIN_max = 5,5V.&lt;br /&gt;
&lt;br /&gt;
Der Eingangswiderstand des ADC liegt in der Größenordnung von einigen Megaohm, so dass der ADC die Signalquelle praktisch nicht belastet. Desweiteren enthält der Mikrocontroller eine sog. &#039;&#039;&#039;Sample&amp;amp;Hold&#039;&#039;&#039; Schaltung. Dies ist wichtig, wenn sich während des Wandlungsvorgangs die Eingangsspannung verändert, da die AD-Wandlung eine bestimmte Zeit dauert. Die Sample&amp;amp;Hold-Stufe speichert zum Beginn der Wandlung die anliegende Spannung und hält sie während des Wandlungsvorgangs konstant.&lt;br /&gt;
&lt;br /&gt;
=== Beschaltung des ADC-Eingangs ===&lt;br /&gt;
&lt;br /&gt;
Um den ADC im Folgenden zu testen wird eine einfache Schaltung an den PC0-Pin des ATmega8 angeschlossen. Dies ist der ADC-Kanal 0. Bei anderen AVR-Typen liegt der entsprechende Eingang auf einem andern Pin, hier ist ein Blick ins Datenblatt angesagt.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Tut_ADC_01.gif|framed|center|Testschaltung]]&lt;br /&gt;
&lt;br /&gt;
Der Wert des [[Potentiometer]]s ist Dank des hohen Eingangswiderstandes des ADC ziemlich unkritisch. Es kann jedes Potentiometer von 1k&amp;amp;Omega; bis 1M&amp;amp;Omega; benutzt werden.&lt;br /&gt;
&lt;br /&gt;
Wenn andere Messgrößen gemessen werden sollen, so bedient man sich oft und gern des Prinzips des [[Spannungsteiler]]s. Der Sensor ist ein veränderlicher Widerstand. Zusammen mit einem zweiten, konstanten Widerstand bekannter Größe wird ein Spannungsteiler aufgebaut. Aus der Variation der durch den variablen Spannungsteiler entstehenden Spannung kann auf den Messwert zurückgerechnet werden.&lt;br /&gt;
&lt;br /&gt;
      Vcc ----------+                Vcc ---------+&lt;br /&gt;
                    |                             |&lt;br /&gt;
                   ---                         Sensor,&lt;br /&gt;
                   | |                     der seinen Widerstand&lt;br /&gt;
                   | |                     in Abhängigkeit der&lt;br /&gt;
                   ---                     Messgröße ändert&lt;br /&gt;
                    |                             |&lt;br /&gt;
                    +------- PC0                  +-------- PC0&lt;br /&gt;
                    |                             |&lt;br /&gt;
                Sensor,                          ---&lt;br /&gt;
           der seinen Widerstand                 | |&lt;br /&gt;
           in Abhängigkeit der                   | |&lt;br /&gt;
           Messgröße ändert                      ---&lt;br /&gt;
                    |                             |&lt;br /&gt;
       GND ---------+                 GND --------+&lt;br /&gt;
&lt;br /&gt;
Die Größe des zweiten Widerstandes im Spannungsteiler richtet sich nach dem Wertebereich, in dem der Sensor seinen Wert ändert. Als Daumenregel kann man sagen, dass der Widerstand so gross sein sollte wie der Widerstand des Sensors in der Mitte des Messbereichs.&lt;br /&gt;
&lt;br /&gt;
Beispiel: Wenn ein Temperatursensor seinen Widerstand von 0..100 Grad von 2k&amp;amp;Omega; auf 5k&amp;amp;Omega; ändert, sollte der zweite Widerstand eine Grösse von etwa (2+5)/2 = 3,5k&amp;amp;Omega; haben.&lt;br /&gt;
&lt;br /&gt;
===Referenzspannung AREF===&lt;br /&gt;
[[bild:adc_connection.png|thumb|right|300px|Beschaltung von A&amp;lt;sub&amp;gt;REF&amp;lt;/sub&amp;gt;]]&lt;br /&gt;
Der ADC benötigt für seine Arbeit eine Referenzspannung. Dabei gibt es 2 Möglichkeiten:&lt;br /&gt;
* interne Referenzspannung&lt;br /&gt;
* externe Referenzspannung&lt;br /&gt;
&lt;br /&gt;
==== Interne Referenzspannung ====&lt;br /&gt;
&lt;br /&gt;
Mittels Konfigurationsregister können beim ATmega8 verschiedene Referenzspannungen eingestellt werden. Dies umfasst die Versorungsspannung AVcc sowie eine vom AVR bereitgestellte Spannung von 2,56V (bzw. bei den neueren AVRs 1,1V, wie z.B. beim ATtiny13, ATmega48, 88, 168, ...). In beiden Fällen wird an den AREF-Pin des Prozessors ein Kondensator von 100nF als Minimalbeschaltung nach Masse angeschlossen, um die Spannung zu puffern/glätten. Es ist jedoch zu beachten, dass die interne Referenzspannung ca. +/-10% vom Nominalwert abweichen kann, vgl. dazu das Datenblatt Abschnitt ADC Characteristics VINT (z.B. ATmega8: 2,3-2,9V, ATmega324P: 2,33-2,79V bzw. 1,0-1,2V &amp;quot;Values are guidelines only.&amp;quot;) Die 10uH Spule L1 kann man meist auch durch einen 47 Ohm Widerstand ersetzen.&lt;br /&gt;
&lt;br /&gt;
==== Externe Referenzspannung ====&lt;br /&gt;
&lt;br /&gt;
Wird eine externe Referenz verwendet, so wird diese an AREF angeschlossen. Aber aufgepasst! Wenn eine Referenz in Höhe der Versorgungsspannung benutzt werden soll, so ist es besser dies über die interne Referenz zu tun. Ausser bei anderen Spannungen als 5V bzw. 2,56V gibt es eigentlich keinen Grund an AREF eine Spannungsquelle anzuschliessen. In Standardanwendungen fährt man immer besser wenn die interne Referenzspannung mit einem Kondensator an AREF benutzt wird.&lt;br /&gt;
&lt;br /&gt;
== Ein paar ADC-Grundlagen ==&lt;br /&gt;
&lt;br /&gt;
Der ADC ist ein 10-Bit ADC, d.h. er liefert Messwerte im Bereich 0 bis 1023. Liegt am Eingangskanal 0V an, so liefert der ADC einen Wert von 0. Hat die Spannung am Eingangskanal die Referenzspannung erreicht (stimmt nicht ganz), so liefert der ADC einen Wert von 1023. Unterschreitet oder überschreitet die zu messende Spannung diese Grenzen, so liefert der ADC 0 bzw. 1023. Wird die Auflösung von 10 Bit nicht benötigt, so ist es möglich die Ausgabe durch ein Konfigurationsregister so einzuschränken, dass ein leichter Zugriff auf die 8 höchstwertigen Bits möglich ist.&lt;br /&gt;
&lt;br /&gt;
Wie bei vielen analogen Schaltungen, unterliegt auch der ADC einem Rauschen. Das bedeutet, dass man nicht davon ausgehen sollte, dass der ADC bei konstanter Eingangsspannung auch immer denselben konstanten Wert ausgibt. Ein &amp;quot;Zittern&amp;quot; der niederwertigsten 2 Bits ist durchaus nicht ungewöhnlich. Besonders hervorgehoben werden soll an dieser Stelle nochmals die Qualität der Referenzspannung. Diese Qualität geht in erheblichem Maße in die Qualität der Wandelergebnisse ein. Die Beschaltung von AREF mit einem Kondensator ist die absolut notwendige Mindestbeschaltung, um eine einigermaßen akzeptable Referenzspannung zu erhalten. Reicht dies nicht aus, so kann die Qualität einer Messung durch &amp;lt;i&amp;gt;Oversampling&amp;lt;/i&amp;gt; erhöht werden. Dazu werden mehrere Messungen gemacht und deren Mittelwert gebildet.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Tut_ADC_03.gif|right|framed]]&lt;br /&gt;
Oft interessiert auch der absolute Spannungspegel nicht. Im Beschaltungsbeispiel oben ist man normalerweise nicht direkt an der am Poti entstehenden Spannung interessiert. Viel mehr ist diese Spannung nur ein notwendiges Übel, um die Stellung des Potis zu bestimmen. In solchen Fällen kann die Poti-Beschaltung wie folgt abgewandelt werden:&lt;br /&gt;
&lt;br /&gt;
Hier wird AREF (bei interner Referenz) als vom µC gelieferte Spannung benutzt und vom Spannungsteiler bearbeitet wieder an den µC zur Messung zurückgegeben. Dies hat den Vorteil, dass der Spannungsteiler automatisch Spannungen bis zur Höhe der Referenzspannung ausgibt, ohne dass eine externe Spannung mit AREF abgeglichen werden müsste. Selbst Schwankungen in AREF wirken sich hier nicht mehr aus, da ja das Verhältnis der Spannungsteilerspannung zu AREF immer konstant bleibt (ratiometrische Messung). Und im Grunde bestimmt der ADC ja nur dieses Verhältnis. Wird diese Variante gewählt, so muss berücksichtigt werden, dass die Ausgangsspannung an AREF nicht allzusehr belastet wird. Der Spannungsteiler muss einen Gesamtwiderstand von deutlich über 10k&amp;amp;Omega; besitzen. Werte von 100k&amp;amp;Omega; oder höher sind anzustreben. Verwendet man anstatt AREF AVCC und schaltet auch die Referenzspannung auf AVCC um, ist die Belastung durch den Poti unkritisch, weil hier die Stromversorgung direkt zur Speisung verwendet wird.&lt;br /&gt;
&lt;br /&gt;
Ist hingegen die absolute Spannung von Interesse, so muss man darauf achten, dass ein ADC in [[Digital | digitalen]] Bereichen arbeitet ([[Quantisierung]]). An einem einfacheren Beispiel soll demonstriert werden was damit gemeint ist.&lt;br /&gt;
&lt;br /&gt;
Angenommen der ADC würde nur 5 Stufen auflösen können und AREF sei 5V:&lt;br /&gt;
&lt;br /&gt;
      Volt    Wert vom ADC&lt;br /&gt;
&lt;br /&gt;
       0 -+&lt;br /&gt;
          |         0&lt;br /&gt;
       1 -+&lt;br /&gt;
          |         1&lt;br /&gt;
       2 -+&lt;br /&gt;
          |         2&lt;br /&gt;
       3 -+&lt;br /&gt;
          |         3&lt;br /&gt;
       4 -+&lt;br /&gt;
          |         4&lt;br /&gt;
       5 -+&lt;br /&gt;
&lt;br /&gt;
Ein ADC Wert von 0 bedeutet also keineswegs, dass die zu messende Spannung exakt den Wert 0 hat. Es bedeutet lediglich, dass die Messspannung irgendwo im Bereich von 0V bis 1V liegt. Sinngemäß bedeutet daher auch das Auftreten des Maximalwertes nicht, dass die Spannung exakt AREF beträgt, sondern lediglich, dass die Messspannung sich irgendwo im Bereich der letzten Stufe (also von 4V bis 5V) bewegt.&lt;br /&gt;
&lt;br /&gt;
== Umrechnung des ADC Wertes in eine Spannung ==&lt;br /&gt;
&lt;br /&gt;
Die Größe eines &amp;quot;Bereiches&amp;quot; bestimmt sich also zu&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   Bereichsbreite = \frac {Referenzspannung}{Maximalwert + 1}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Messwert vom ADC rechnet sich dann wie folgt in eine Spannung um:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
  Spannung = ADCwert \cdot \frac {Referenzspannung} {Maximalwert + 1}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wird der ADC also mit 10 Bit an 5 V betrieben, so lauten die Umrechnungen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   Spannung = ADCwert \cdot \frac{5}{1024}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
   Bereichsbreite = \frac{5~\text{V}}{1024} = 0,004883~\text{V} = 4,883~\text{mV}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn man genau hinsieht stellt man fest, dass sowohl die Referenzspannung als auch der Maximalwert Konstanten sind. D.h. der Quotient aus Referenzspannung und Maximalwert+1 ist konstant. Somit muss nicht immer eine Multiplikation und Division ausgeführt werden, sondern nur eine Multiplikation! Das spart viel Aufwand und Rechenzeit! Dabei kann sinnvollerweise [[Festkommaarithmetik]] zum Einsatz kommen.&lt;br /&gt;
&lt;br /&gt;
== Die Steuerregister des ADC ==&lt;br /&gt;
&lt;br /&gt;
=== ADMUX ===&lt;br /&gt;
&lt;br /&gt;
{{Byte|ADMUX| REFS1 | REFS0 | ADLAR |       |  MUX3 |  MUX2 |  MUX1 |  MUX0}}&lt;br /&gt;
&lt;br /&gt;
* Referenzspannung &amp;lt;i&amp;gt;REFS1, REFS0&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| {{Tabelle}}&lt;br /&gt;
|-  style=&amp;quot;background-color:#ffddcc&amp;quot;&lt;br /&gt;
!REFS1||REFS0||Referenz&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
||externe Referenz&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|interne Referenz: Avcc&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
||wird beim Mega8 nicht benutzt&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
||interne Referenz: 2.56 Volt&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Ausrichtung &amp;lt;i&amp;gt;ADLAR&amp;lt;/i&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th align=&amp;quot;left&amp;quot;&amp;gt;ADLAR&amp;lt;/th&amp;gt;&amp;lt;th align=&amp;quot;left&amp;quot;&amp;gt;&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Das Ergebnis wird in den Registern ADCH/ADCL rechtsbündig ausgerichtet. Die 8 niederwertigsten Bits des Ergebnisses werden in ADCL abgelegt. Die verbleibenden 2 Bits des Ergebnisses werden im Register ADCH in den Bits 0 und 1 abgelegt.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Das Ergebnis wird in den Registern ADCH/ADCL linksbündig ausgerichtet. Die 8 höchstwertigen Bits des Ergebnisses werden in ADCH abgelegt. Die verbleibenden 2 niederwertigen Bits werden im Register ADCL in den Bits 6 und 7 abgelegt.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Kanalwahl &amp;lt;i&amp;gt;MUX3, MUX2, MUX1, MUX0&amp;lt;/i&amp;gt;&lt;br /&gt;
{| {{Tabelle}}&lt;br /&gt;
|-  style=&amp;quot;background-color:#ffddcc&amp;quot;&lt;br /&gt;
!MUX3||MUX2||MUX1||MUX0||Kanal&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
||Kanal 0, Pin PC0&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
||Kanal 1, Pin PC1&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
||Kanal 2, Pin PC2&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
||Kanal 3, Pin PC3&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
||Kanal 4, Pin PC4&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
||Kanal 5, Pin PC5&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
||Kanal 6, Pin PC6&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
||Kanal 7, Pin PC7&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|0&lt;br /&gt;
||1.23V, Vbg&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1&lt;br /&gt;
||0V, GND&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
(*) nur in der Gehäusebauform TQFP und MLF verfügbar&lt;br /&gt;
&lt;br /&gt;
===ADCSRA===&lt;br /&gt;
{{Byte|ADCSRA|  ADEN |  ADSC |  ADFR |  ADIF |  ADIE | ADPS2 | ADPS1 | ADPS0}}&lt;br /&gt;
&lt;br /&gt;
;ADEN: &amp;quot;ADC Enable&amp;quot;: Mittels ADEN wird der ADC ein und ausgeschaltet. Eine 1 an dieser Bitposition schaltet den ADC ein.&lt;br /&gt;
; ADSC: &amp;quot;ADC Start Conversion&amp;quot;: Wird eine 1 an diese Bitposition geschrieben, so beginnt der ADC mit der Wandlung. Das Bit bleibt auf 1, solange die Wandlung im Gange ist. Wenn die Wandlung beendet ist, wird dieses Bit von der ADC Hardware wieder auf 0 gesetzt.&lt;br /&gt;
; ADFR: &amp;quot;ADC Free Running&amp;quot;: Wird eine 1 an ADFR geschrieben, so wird der ADC im Free Running Modus betrieben. Dabei startet der ADC nach dem Abschluss einer Messung automatisch die nächste Messung. Die erste Messung wird ganz normal über das Setzen des ADSC-Bits gestartet.&lt;br /&gt;
; ADIF: &amp;quot;ADC Interrupt Flag&amp;quot;: Wenn eine Messung abgeschlossen ist, wird das ADIF Bit gesetzt. Ist zusätzlich noch das &amp;lt;i&amp;gt;ADIE&amp;lt;/i&amp;gt; Bit gesetzt, so wird ein Interrupt ausgelöst und der entsprechende Interrupt Handler angesprungen.&lt;br /&gt;
; ADIE: &amp;quot;ADC Interrupt Enable&amp;quot;: Wird eine 1 an ADIE geschrieben, so löst der ADC nach Beendigung einer Messung einen Interrupt aus.&lt;br /&gt;
; ADPS2, ADPS1, ADPS0: &amp;quot;ADC Prescaler&amp;quot;: Mit dem Prescaler kann die ADC-Frequenz gewählt werden. Laut Datenblatt sollte diese für die optimale Auflösung zwischen 50kHz und 200kHz liegen. Ist die Wandlerfrequenz langsamer eingestellt, kann es passieren dass die eingebaute Sample &amp;amp; Hold Schaltung die Eingangsspannung nicht lange genug konstant halten kann. Ist die Frequenz aber zu schnell eingestellt, dann kann es passieren dass sich die Sample &amp;amp; Hold Schaltung nicht schnell genug an die Eingangsspannung anpassen kann.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th align=&amp;quot;left&amp;quot;&amp;gt;ADPS2&amp;lt;/th&amp;gt;&amp;lt;th align=&amp;quot;left&amp;quot;&amp;gt;ADPS1&amp;lt;/th&amp;gt;&amp;lt;th align=&amp;quot;left&amp;quot;&amp;gt;ADPS0&amp;lt;/th&amp;gt;&amp;lt;th align=&amp;quot;left&amp;quot;&amp;gt;Vorteiler&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;2&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;2&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;16&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;32&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;64&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;128&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Die Ergebnisregister ADCL und ADCH ==&lt;br /&gt;
&lt;br /&gt;
Da das Ergebnis des ADC ein 10 Bit Wert ist, passt dieser Wert naturgemäß nicht in ein einzelnes Register, das je bekanntlich nur 8 Bit breit ist. Daher wird das Ergebnis in 2 Register &#039;&#039;&#039;ADCL&#039;&#039;&#039; und &#039;&#039;&#039;ADCH&#039;&#039;&#039; abgelegt. Von den 10 Ergebnisbits sind die niederwertigsten 8 im Register &#039;&#039;&#039;ADCL&#039;&#039;&#039; abgelegt und die noch fehlenden 2 Bits werden im Register &#039;&#039;&#039;ADCH&#039;&#039;&#039; an den niederwertigsten Bitpositionen gespeichert.&lt;br /&gt;
&lt;br /&gt;
              ADCH                                   ADCL&lt;br /&gt;
   +---+---+---+---+---+---+---+---+   +---+---+---+---+---+---+---+---+&lt;br /&gt;
   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |&lt;br /&gt;
   +---+---+---+---+---+---+---+---+   +---+---+---+---+---+---+---+---+&lt;br /&gt;
                             9   8       7   6   5   4   3   2   1   0&lt;br /&gt;
&lt;br /&gt;
Diese Zuordnung kann aber auch geändert werden: Durch setzen des &#039;&#039;&#039;ADLAR&#039;&#039;&#039; Bits im &#039;&#039;&#039;ADMUX&#039;&#039;&#039; Register wird die Ausgabe geändert zu:&lt;br /&gt;
&lt;br /&gt;
              ADCH                                   ADCL&lt;br /&gt;
   +---+---+---+---+---+---+---+---+   +---+---+---+---+---+---+---+---+&lt;br /&gt;
   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |&lt;br /&gt;
   +---+---+---+---+---+---+---+---+   +---+---+---+---+---+---+---+---+&lt;br /&gt;
     9   8   7   6   5   4   3   2       1   0&lt;br /&gt;
&lt;br /&gt;
Dies ist besonders dann interessant, wenn das ADC Ergebnis als 8 Bit Zahl weiterverarbeitet werden soll. In diesem Fall stehen die 8 höchstwertigen Bits bereits verarbeitungsfertig im Register &#039;&#039;&#039;ADCH&#039;&#039;&#039; zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
Beim Auslesen der ADC-Register ist zu beachten:&lt;br /&gt;
Immer zuerst &#039;&#039;&#039;ADCL&#039;&#039;&#039; und erst dann &#039;&#039;&#039;ADCH&#039;&#039;&#039; auslesen. Beim Zugriff auf &#039;&#039;&#039;ADCL&#039;&#039;&#039; wird das &#039;&#039;&#039;ADCH&#039;&#039;&#039; Register gegenüber Veränderungen vom &#039;&#039;&#039;ADC&#039;&#039;&#039; gesperrt. Erst beim nächsten Auslesen des &#039;&#039;&#039;ADCH&#039;&#039;&#039;-Registers wird diese Sperre wieder aufgehoben. Dadurch ist sichergestellt, daß die Inhalte von &#039;&#039;&#039;ADCL&#039;&#039;&#039; und &#039;&#039;&#039;ADCH&#039;&#039;&#039; immer aus demselben Wandlungsergebnis stammen, selbst wenn der &#039;&#039;&#039;ADC&#039;&#039;&#039; im Hintergrund selbsttätig weiterwandelt. Das &#039;&#039;&#039;ADCH&#039;&#039;&#039; Register &#039;&#039;&#039;muss&#039;&#039;&#039; ausgelesen werden!&lt;br /&gt;
&lt;br /&gt;
== Beispiele ==&lt;br /&gt;
&lt;br /&gt;
=== Ausgabe als ADC-Wert ===&lt;br /&gt;
&lt;br /&gt;
Das folgende Programm liest in einer Schleife ständig den ADC aus und verschickt des Ergebnis im Klartext (ASCII) über die [[AVR-Tutorial: UART|UART]]. Zur Verringerung des unvermeidlichen Rauschens werden 256 Messwerte herangezogen und deren Mittelwert als endgültiges Messergebnis gewertet. Dazu werden die einzelnen Messungen in den Registern temp2, temp3, temp4 als 24 Bit Zahl aufaddiert. Die Division durch 256 erfolgt dann ganz einfach dadurch, dass das Register temp2 verworfen wird und die Register temp3 und temp4 als 16 Bit Zahl aufgefasst werden. Eine Besonderheit ist noch, dass je nach dem Wert in temp2 die 16 Bit Zahl in temp3 und temp4 noch aufgerundet wird: Enthält temp2 einen Wert größer als 128, dann wird zur 16 Bit Zahl in temp3/temp4 noch 1 dazu addiert.&lt;br /&gt;
&lt;br /&gt;
In diesem Programm findet man oft die Konstruktion&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
    subi    temp3, low(-1)      ; addieren von 1&lt;br /&gt;
    sbci    temp4, high(-1)     ; addieren des Carry&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dabei handelt es sich um einen kleinen Trick. Um eine Konstante zu einem Register direkt addieren zu können bäuchte man einen Befehl ala addi (Add Immediate, Addiere Konstante), den der AVR aber nicht hat. Ebenso gibt es kein adci (Add with carry Immediate, Addiere Konstante mit Carry Flag). Man müsste also erst eine Konstante in ein Register laden und addieren. Das kostet aber Programmspeicher, Rechenzeit und man muss ein Register zusätzlich frei haben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
; 16 Bit Addition mit Konstante, ohne Cleverness&lt;br /&gt;
    ldi     temp5, low(1)&lt;br /&gt;
    add     temp3, temp5        ; addieren von 1&lt;br /&gt;
    ldi     temp5, high(1)&lt;br /&gt;
    adc     temp3, temp5        ; addieren des Carry&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hier greift man einfach zu dem Trick, dass eine Addition gleich der Subtraktion der negativen Werts ist. Also &amp;quot;addiere +1&amp;quot; ist gleich &amp;quot;subtrahiere -1&amp;quot;. Dafür hat der AVR zwei Befehle, subi (Substract Immediate, Subtrahiere Konstante) und sbci (Substract Immediate with carry, Subtrahiere Konstante mit Carry Flag).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
.include &amp;quot;m8def.inc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
.def temp1     = r16         ; allgemeines temp Register, zur kurzfristigen Verwendung&lt;br /&gt;
.def temp2     = r17         ; Register für 24 Bit Addition, Lowest Byte&lt;br /&gt;
.def temp3     = r18         ; Register für 24 Bit Addition, Middle Byte&lt;br /&gt;
.def temp4     = r19         ; Register für 24 Bit Addition, Highest Byte&lt;br /&gt;
.def adlow     = r20         ; Ergebnis vom ADC / Mittelwert der 256 Messungen&lt;br /&gt;
.def adhigh    = r21         ; Ergebnis vom ADC / Mittelwert der 256 Messungen&lt;br /&gt;
.def messungen = r22         ; Schleifenzähler für die Messungen&lt;br /&gt;
.def ztausend  = r23         ; Zehntausenderstelle des ADC Wertes&lt;br /&gt;
.def tausend   = r24         ; Tausenderstelle des ADC Wertes&lt;br /&gt;
.def hundert   = r25         ; Hunderterstelle des ADC Wertes&lt;br /&gt;
.def zehner    = r26         ; Zehnerstelle des ADC Wertes&lt;br /&gt;
.def zeichen   = r27         ; Zeichen zur Ausgabe auf den UART&lt;br /&gt;
&lt;br /&gt;
.equ F_CPU = 4000000                            ; Systemtakt in Hz&lt;br /&gt;
.equ BAUD  = 9600                               ; Baudrate&lt;br /&gt;
&lt;br /&gt;
; Berechnungen&lt;br /&gt;
.equ UBRR_VAL   = ((F_CPU+BAUD*8)/(BAUD*16)-1)  ; clever runden&lt;br /&gt;
.equ BAUD_REAL  = (F_CPU/(16*(UBRR_VAL+1)))     ; Reale Baudrate&lt;br /&gt;
.equ BAUD_ERROR = ((BAUD_REAL*1000)/BAUD-1000)  ; Fehler in Promille&lt;br /&gt;
&lt;br /&gt;
.if ((BAUD_ERROR&amp;gt;10) || (BAUD_ERROR&amp;lt;-10))       ; max. +/-10 Promille Fehler&lt;br /&gt;
  .error &amp;quot;Systematischer Fehler der Baudrate grösser 1 Prozent und damit zu hoch!&amp;quot;&lt;br /&gt;
.endif&lt;br /&gt;
 &lt;br /&gt;
; hier geht das Programm los&lt;br /&gt;
 &lt;br /&gt;
    ldi     temp1, LOW(RAMEND)                  ; Stackpointer initialisieren&lt;br /&gt;
    out     SPL, temp1&lt;br /&gt;
    ldi     temp1, HIGH(RAMEND)&lt;br /&gt;
    out     SPH, temp1&lt;br /&gt;
 &lt;br /&gt;
;UART Initalisierung&lt;br /&gt;
 &lt;br /&gt;
    ldi     temp1, LOW(UBRR_VAL)                    ; Baudrate einstellen&lt;br /&gt;
    out     UBRRL, temp1&lt;br /&gt;
    ldi     temp1, HIGH(UBRR_VAL)&lt;br /&gt;
    out     UBRRH, temp1&lt;br /&gt;
&lt;br /&gt;
    sbi     UCSRB, TXEN                         ; TX einschalten&lt;br /&gt;
 &lt;br /&gt;
; ADC initialisieren: ADC0, Vcc als Referenz, Single Conversion, Vorteiler 128&lt;br /&gt;
&lt;br /&gt;
    ldi     temp1, (1&amp;lt;&amp;lt;REFS0)                   ; Kanal 0, interne Referenzspannung 5V&lt;br /&gt;
    out     ADMUX, temp1&lt;br /&gt;
    ldi     temp1, (1&amp;lt;&amp;lt;ADEN) | (1&amp;lt;&amp;lt;ADPS2) | (1&amp;lt;&amp;lt;ADPS1) | (1&amp;lt;&amp;lt;ADPS0)&lt;br /&gt;
    out     ADCSRA, temp1&lt;br /&gt;
 &lt;br /&gt;
Main:&lt;br /&gt;
    clr     temp1&lt;br /&gt;
    clr     temp2&lt;br /&gt;
    clr     temp3&lt;br /&gt;
    clr     temp4&lt;br /&gt;
&lt;br /&gt;
    ldi     messungen, 0        ; 256 Schleifendurchläufe&lt;br /&gt;
 &lt;br /&gt;
; neuen ADC-Wert lesen  (Schleife - 256 mal)&lt;br /&gt;
&lt;br /&gt;
sample_adc:&lt;br /&gt;
    sbi     ADCSRA, ADSC        ; den ADC starten&lt;br /&gt;
 &lt;br /&gt;
wait_adc:&lt;br /&gt;
    sbic    ADCSRA, ADSC        ; wenn der ADC fertig ist, wird dieses Bit gelöscht&lt;br /&gt;
    rjmp    wait_adc&lt;br /&gt;
 &lt;br /&gt;
; ADC einlesen:&lt;br /&gt;
&lt;br /&gt;
    in      adlow, ADCL         ; immer zuerst LOW Byte lesen&lt;br /&gt;
    in      adhigh, ADCH        ; danach das mittlerweile gesperrte High Byte&lt;br /&gt;
 &lt;br /&gt;
; alle 256 ADC-Werte addieren&lt;br /&gt;
; dazu wird mit den Registern temp4, temp3 und temp2 ein&lt;br /&gt;
; 24-Bit breites Akkumulationsregister gebildet, in dem&lt;br /&gt;
; die 10 Bit Werte aus adhigh, adlow aufsummiert werden&lt;br /&gt;
&lt;br /&gt;
    add     temp2, adlow        ; addieren&lt;br /&gt;
    adc     temp3, adhigh       ; addieren über Carry&lt;br /&gt;
    adc     temp4, temp1        ; addieren über Carry, temp1 enthält 0&lt;br /&gt;
    dec     messungen           ; Schleifenzähler MINUS 1&lt;br /&gt;
    brne    sample_adc          ; wenn noch keine 256 ADC Werte -&amp;gt; nächsten Wert einlesen&lt;br /&gt;
 &lt;br /&gt;
; Aus den 256 Werten den Mittelwert berechnen&lt;br /&gt;
; Mathematisch eine Division durch 256&lt;br /&gt;
; Da aber 2^8 = 256 ist ist da einfach durch das weglassen des niederwertigsten Bytes&lt;br /&gt;
; erreicht werden&lt;br /&gt;
;&lt;br /&gt;
; allerdings wird der Wert noch gerundet&lt;br /&gt;
&lt;br /&gt;
    cpi     temp2,128           ; &amp;quot;Kommastelle&amp;quot; kleiner als 128 ?&lt;br /&gt;
    brlo    no_round            ; ist kleiner ==&amp;gt; Sprung&lt;br /&gt;
 &lt;br /&gt;
; Aufrunden&lt;br /&gt;
    subi    temp3, low(-1)      ; addieren von 1&lt;br /&gt;
    sbci    temp4, high(-1)     ; addieren des Carry&lt;br /&gt;
 &lt;br /&gt;
no_round:&lt;br /&gt;
&lt;br /&gt;
;   Ergebnis nach adlow und adhigh kopieren&lt;br /&gt;
;   damit die temp Register frei werden&lt;br /&gt;
&lt;br /&gt;
    mov     adlow, temp3&lt;br /&gt;
    mov     adhigh, temp4&lt;br /&gt;
 &lt;br /&gt;
;in ASCII umwandeln&lt;br /&gt;
; Division durch mehrfache Subtraktion&lt;br /&gt;
&lt;br /&gt;
    ldi     ztausend, &#039;0&#039;-1     ; Ziffernzähler direkt als ASCII Code&lt;br /&gt;
Z_ztausend:&lt;br /&gt;
    inc     ztausend&lt;br /&gt;
    subi    adlow, low(10000)   ; -10,000&lt;br /&gt;
    sbci    adhigh, high(10000) ; 16 Bit&lt;br /&gt;
    brcc    Z_ztausend&lt;br /&gt;
                                    &lt;br /&gt;
    subi    adlow, low(-10000)  ; nach Unterlauf wieder einmal addieren&lt;br /&gt;
    sbci    adhigh, high(-10000); +10,000&lt;br /&gt;
 &lt;br /&gt;
    ldi     tausend, &#039;0&#039;-1      ; Ziffernzähler direkt als ASCII Code&lt;br /&gt;
Z_tausend:&lt;br /&gt;
    inc     tausend&lt;br /&gt;
    subi    adlow, low(1000)    ; -1,000&lt;br /&gt;
    sbci    adhigh, high(1000)  ; 16 Bit&lt;br /&gt;
    brcc    Z_tausend&lt;br /&gt;
                                    &lt;br /&gt;
    subi    adlow, low(-1000)   ; nach Unterlauf wieder einmal addieren&lt;br /&gt;
    sbci    adhigh, high(-1000) ; +1,000&lt;br /&gt;
 &lt;br /&gt;
    ldi     hundert, &#039;0&#039;-1      ; Ziffernzähler direkt als ASCII Code&lt;br /&gt;
Z_hundert:&lt;br /&gt;
    inc     hundert&lt;br /&gt;
    subi    adlow, low(100)     ; -100&lt;br /&gt;
    sbci    adhigh, high(100)   ; 16 Bit&lt;br /&gt;
    brcc    Z_hundert&lt;br /&gt;
                                    &lt;br /&gt;
    subi    adlow, low(-100)    ; nach Unterlauf wieder einmal addieren&lt;br /&gt;
    sbci    adhigh, high(-100)  ; +100&lt;br /&gt;
 &lt;br /&gt;
    ldi     zehner, &#039;0&#039;-1       ; Ziffernzähler direkt als ASCII Code&lt;br /&gt;
Z_zehner:&lt;br /&gt;
    inc     zehner&lt;br /&gt;
    subi    adlow, low(10)      ; -10&lt;br /&gt;
    sbci    adhigh, high(10)    ; 16 Bit&lt;br /&gt;
    brcc    Z_zehner&lt;br /&gt;
                                    &lt;br /&gt;
    subi    adlow, low(-10)     ; nach Unterlauf wieder einmal addieren&lt;br /&gt;
    sbci    adhigh, high(-10)   ; +10&lt;br /&gt;
&lt;br /&gt;
    subi    adlow, -&#039;0&#039;         ; adlow enthält die Einer, Umwandlung in ASCII&lt;br /&gt;
 &lt;br /&gt;
;an UART Senden&lt;br /&gt;
&lt;br /&gt;
    mov     zeichen, ztausend   ; Zehntausender Stelle&lt;br /&gt;
    rcall   transmit&lt;br /&gt;
    mov     zeichen, tausend    ; Tausender Stelle ausgeben&lt;br /&gt;
    rcall   transmit    &lt;br /&gt;
    mov     zeichen, hundert    ; Hunderter Stelle ausgeben&lt;br /&gt;
    rcall   transmit&lt;br /&gt;
    mov     zeichen, zehner     ; Zehner Stelle ausgeben&lt;br /&gt;
    rcall   transmit&lt;br /&gt;
    mov     zeichen, adlow      ; Einer Stelle ausgeben&lt;br /&gt;
    rcall   transmit&lt;br /&gt;
    ldi     zeichen, 13         ; CR, Carrige Return (Wagenrücklauf)&lt;br /&gt;
    rcall   transmit&lt;br /&gt;
    ldi     zeichen, 10         ; LF, Line Feed (Neue Zeile)&lt;br /&gt;
    rcall   transmit&lt;br /&gt;
 &lt;br /&gt;
    rjmp    Main&lt;br /&gt;
 &lt;br /&gt;
transmit:&lt;br /&gt;
    sbis    UCSRA,UDRE          ; Warten, bis UDR bereit ist ...&lt;br /&gt;
    rjmp    transmit&lt;br /&gt;
    out     UDR, zeichen        ; und Zeichen ausgeben&lt;br /&gt;
    ret&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ausgabe als Spannungswert ===&lt;br /&gt;
&lt;br /&gt;
Das zweite Beispiel ist schon um einiges größer. Hier wird der gemittelte ADC-Wert in eine Spannung umgerechnet. Dazu wird [[Festkommaarithmetik]] verwendet. Die Daten sind in diesem Fall&lt;br /&gt;
&lt;br /&gt;
* Referenzspannung : 5V&lt;br /&gt;
* alte Auflösung   : 5V / 1024 = 4,8828125mV&lt;br /&gt;
* neue Auflösung   : 1mV&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Faktor = 4,8828125mV / 1mV = 4,8828125&lt;br /&gt;
&lt;br /&gt;
Der Faktor wird dreimal mit 10 multipliziert und das Ergebnis auf 4883 gerundet. Die neue Auflösung wird dreimal durch 10 dividiert und beträgt 1&amp;amp;mu;V. Der relative Fehler beträgt&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt; F_r = \frac {4883}{4882,8125}-1 = 0,00384% = \frac {1}{26042}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Fehler ist absolut vernachlässigbar. Nach der Multiplikation des ADC-Wertes mit 4883 liegt die gemessene Spannung in der Einheit &amp;amp;mu;V vor. Vorsicht! Das ist &#039;&#039;&#039;nicht&#039;&#039;&#039; die reale [[Auflösung und Genauigkeit]], nur rein mathematisch bedingt. Für maximale Genauigkeit sollte man die Versorgungsspannung AVCC, welche hier gleichzeitig als Referenzspannung dient, exakt messen, die Rechnung nachvollziehen und den Wert im Quelltext eintragen. Damit führt man eine einfach Einpunktkalibrierung durch.&lt;br /&gt;
&lt;br /&gt;
Da das Programm schon um einiges größer und komplexer ist, wurde es im Vergleich zur Vorgängerversion geändert. Die Multiplikation sowie die Umwandung der Zahl in einen ASCII-String sind als Unterprogramme geschrieben, dadurch erhält man wesentlich mehr Überblick im Hauptprogramm und die Wiederverwendung in anderen Programmen vereinfacht sich. Ausserdem wird der String im RAM gespeichert und nicht mehr in CPU-Registern. Die Berechung der einzelnen Ziffern erfolgt über ein Schleife, das ist kompakter und übersichtlicher.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
.include &amp;quot;m8def.inc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
.def z0        = r1          ; Zahl für Integer -&amp;gt; ASCII Umwandlung&lt;br /&gt;
.def z1        = r2&lt;br /&gt;
.def z2        = r3&lt;br /&gt;
.def z3        = r4&lt;br /&gt;
.def temp1     = r16         ; allgemeines Register, zur kurzfristigen Verwendung&lt;br /&gt;
.def temp2     = r17         ; Register für 24 Bit Addition, niederwertigstes Byte (LSB)&lt;br /&gt;
.def temp3     = r18         ; Register für 24 Bit Addition, mittlerers Byte&lt;br /&gt;
.def temp4     = r19         ; Register für 24 Bit Addition, höchstwertigstes Byte (MSB)&lt;br /&gt;
.def adlow     = r20         ; Ergebnis vom ADC-Mittelwert der 256 Messungen&lt;br /&gt;
.def adhigh    = r21         ; Ergebnis vom ADC-Mittelwert der 256 Messungen&lt;br /&gt;
.def messungen = r22         ; Schleifenzähler für die Messungen&lt;br /&gt;
.def zeichen   = r23         ; Zeichen zur Ausgabe auf den UART&lt;br /&gt;
.def temp5     = r24&lt;br /&gt;
.def temp6     = r25&lt;br /&gt;
&lt;br /&gt;
; Faktor für Umrechung des ADC-Wertes in Spannung&lt;br /&gt;
; = (Referenzspannung / 1024 ) * 100000&lt;br /&gt;
; = 5V / 1024 * 1.000.000&lt;br /&gt;
.equ Faktor = 4883&lt;br /&gt;
&lt;br /&gt;
.equ F_CPU = 4000000                            ; Systemtakt in Hz&lt;br /&gt;
.equ BAUD  = 9600                               ; Baudrate&lt;br /&gt;
&lt;br /&gt;
; Berechnungen&lt;br /&gt;
.equ UBRR_VAL   = ((F_CPU+BAUD*8)/(BAUD*16)-1)  ; clever runden&lt;br /&gt;
.equ BAUD_REAL  = (F_CPU/(16*(UBRR_VAL+1)))     ; Reale Baudrate&lt;br /&gt;
.equ BAUD_ERROR = ((BAUD_REAL*1000)/BAUD-1000)  ; Fehler in Promille&lt;br /&gt;
&lt;br /&gt;
.if ((BAUD_ERROR&amp;gt;10) || (BAUD_ERROR&amp;lt;-10))       ; max. +/-10 Promille Fehler&lt;br /&gt;
  .error &amp;quot;Systematischer Fehler der Baudrate grösser 1 Prozent und damit zu hoch!&amp;quot;&lt;br /&gt;
.endif&lt;br /&gt;
&lt;br /&gt;
; RAM&lt;br /&gt;
.dseg&lt;br /&gt;
.org 0x60&lt;br /&gt;
Puffer: .byte 10&lt;br /&gt;
&lt;br /&gt;
; hier geht das Programm los&lt;br /&gt;
.cseg&lt;br /&gt;
.org 0&lt;br /&gt;
 &lt;br /&gt;
    ldi     temp1, LOW(RAMEND)                  ; Stackpointer initialisieren&lt;br /&gt;
    out     SPL, temp1&lt;br /&gt;
    ldi     temp1, HIGH(RAMEND)&lt;br /&gt;
    out     SPH, temp1&lt;br /&gt;
 &lt;br /&gt;
;UART Initalisierung&lt;br /&gt;
 &lt;br /&gt;
    ldi     temp1, LOW(UBRR_VAL)                ; Baudrate einstellen&lt;br /&gt;
    out     UBRRL, temp1&lt;br /&gt;
    ldi     temp1, HIGH(UBRR_VAL)&lt;br /&gt;
    out     UBRRH, temp1&lt;br /&gt;
&lt;br /&gt;
    sbi     UCSRB, TXEN                         ; TX einschalten&lt;br /&gt;
 &lt;br /&gt;
; ADC initialisieren: Single Conversion, Vorteiler 128&lt;br /&gt;
; Kanal 0, interne Referenzspannung AVCC&lt;br /&gt;
&lt;br /&gt;
    ldi     temp1, (1&amp;lt;&amp;lt;REFS0)                   &lt;br /&gt;
    out     ADMUX, temp1&lt;br /&gt;
    ldi     temp1, (1&amp;lt;&amp;lt;ADEN) | (1&amp;lt;&amp;lt;ADPS2) | (1&amp;lt;&amp;lt;ADPS1) | (1&amp;lt;&amp;lt;ADPS0)&lt;br /&gt;
    out     ADCSRA, temp1&lt;br /&gt;
 &lt;br /&gt;
Hauptschleife:&lt;br /&gt;
    clr     temp1&lt;br /&gt;
    clr     temp2&lt;br /&gt;
    clr     temp3&lt;br /&gt;
    clr     temp4&lt;br /&gt;
&lt;br /&gt;
    ldi     messungen, 0        ; 256 Schleifendurchläufe&lt;br /&gt;
 &lt;br /&gt;
; neuen ADC-Wert lesen  (Schleife - 256 mal)&lt;br /&gt;
&lt;br /&gt;
adc_messung:&lt;br /&gt;
    sbi     ADCSRA, ADSC        ; den ADC starten&lt;br /&gt;
 &lt;br /&gt;
adc_warten:&lt;br /&gt;
    sbic    ADCSRA, ADSC        ; wenn der ADC fertig ist, wird dieses Bit gelöscht&lt;br /&gt;
    rjmp    adc_warten&lt;br /&gt;
 &lt;br /&gt;
; ADC einlesen:&lt;br /&gt;
&lt;br /&gt;
    in      adlow, ADCL         ; immer zuerst LOW Byte lesen&lt;br /&gt;
    in      adhigh, ADCH        ; danach das mittlerweile gesperrte High Byte&lt;br /&gt;
 &lt;br /&gt;
; alle 256 ADC-Werte addieren&lt;br /&gt;
; dazu wird mit den Registern temp4, temp3 und temp2 ein&lt;br /&gt;
; 24-Bit breites Akkumulationsregister gebildet, in dem&lt;br /&gt;
; die 10 Bit Werte aus adhigh, adlow aufsummiert werden&lt;br /&gt;
&lt;br /&gt;
    add     temp2, adlow        ; addieren&lt;br /&gt;
    adc     temp3, adhigh       ; addieren über Carry&lt;br /&gt;
    adc     temp4, temp1        ; addieren über Carry, temp1 enthält 0&lt;br /&gt;
    dec     messungen           ; Schleifenzähler MINUS 1&lt;br /&gt;
    brne    adc_messung         ; wenn noch keine 256 ADC Werte -&amp;gt; nächsten Wert einlesen&lt;br /&gt;
 &lt;br /&gt;
; Aus den 256 Werten den Mittelwert berechnen&lt;br /&gt;
; Bei 256 Werten ist das ganz einfach: Das niederwertigste Byte&lt;br /&gt;
; (im Register temp2) fällt einfach weg&lt;br /&gt;
;&lt;br /&gt;
; allerdings wird der Wert noch gerundet&lt;br /&gt;
&lt;br /&gt;
    cpi     temp2,128           ; &amp;quot;Kommastelle&amp;quot; kleiner als 128 ?&lt;br /&gt;
    brlo    nicht_runden        ; ist kleiner ==&amp;gt; Sprung&lt;br /&gt;
 &lt;br /&gt;
; Aufrunden&lt;br /&gt;
    subi    temp3, low(-1)      ; addieren von 1&lt;br /&gt;
    sbci    temp4, high(-1)     ; addieren des Carry&lt;br /&gt;
 &lt;br /&gt;
nicht_runden:&lt;br /&gt;
&lt;br /&gt;
;   Ergebnis nach adlow und adhigh kopieren&lt;br /&gt;
;   damit die temp Register frei werden&lt;br /&gt;
&lt;br /&gt;
    mov     adlow, temp3&lt;br /&gt;
    mov     adhigh, temp4&lt;br /&gt;
&lt;br /&gt;
; in Spannung umrechnen&lt;br /&gt;
&lt;br /&gt;
    ldi     temp5,low(Faktor)&lt;br /&gt;
    ldi     temp6,high(Faktor)&lt;br /&gt;
    rcall   mul_16x16&lt;br /&gt;
&lt;br /&gt;
; in ASCII umwandeln&lt;br /&gt;
&lt;br /&gt;
    ldi     XL, low(Puffer)&lt;br /&gt;
    ldi     XH, high(Puffer)&lt;br /&gt;
    rcall   Int_to_ASCII&lt;br /&gt;
 &lt;br /&gt;
;an UART Senden&lt;br /&gt;
&lt;br /&gt;
    ldi     ZL, low(Puffer+3)&lt;br /&gt;
    ldi     ZH, high(Puffer+3)&lt;br /&gt;
    ldi     temp1, 1&lt;br /&gt;
    rcall   sende_zeichen       ; eine Vorkommastelle ausgeben&lt;br /&gt;
&lt;br /&gt;
    ldi     zeichen, &#039;,&#039;        ; Komma ausgeben&lt;br /&gt;
    rcall   sende_einzelzeichen&lt;br /&gt;
&lt;br /&gt;
    ldi     temp1, 3            ; Drei Nachkommastellen ausgeben&lt;br /&gt;
    rcall   sende_zeichen&lt;br /&gt;
&lt;br /&gt;
    ldi     zeichen, &#039;V&#039;        ; Volt Zeichen ausgeben&lt;br /&gt;
    rcall   sende_einzelzeichen&lt;br /&gt;
&lt;br /&gt;
    ldi     zeichen, 10         ; New Line Steuerzeichen&lt;br /&gt;
    rcall   sende_einzelzeichen&lt;br /&gt;
&lt;br /&gt;
    ldi     zeichen, 13         ; Carrige Return Steuerzeichen&lt;br /&gt;
    rcall   sende_einzelzeichen&lt;br /&gt;
&lt;br /&gt;
    rjmp    Hauptschleife&lt;br /&gt;
&lt;br /&gt;
; Ende des Hauptprogramms&lt;br /&gt;
&lt;br /&gt;
; Unterprogramme&lt;br /&gt;
 &lt;br /&gt;
 ; ein Zeichen per UART senden&lt;br /&gt;
&lt;br /&gt;
sende_einzelzeichen:&lt;br /&gt;
    sbis    UCSRA,UDRE          ; Warten, bis UDR bereit ist ...&lt;br /&gt;
    rjmp    sende_einzelzeichen&lt;br /&gt;
    out     UDR, zeichen        ; und Zeichen ausgeben&lt;br /&gt;
    ret&lt;br /&gt;
&lt;br /&gt;
; mehrere Zeichen ausgeben, welche durch Z adressiert werden&lt;br /&gt;
; Anzahl in temp1&lt;br /&gt;
&lt;br /&gt;
sende_zeichen:&lt;br /&gt;
    sbis    UCSRA,UDRE          ; Warten, bis UDR bereit ist ...&lt;br /&gt;
    rjmp    sende_zeichen&lt;br /&gt;
    ld      zeichen, Z+         ; Zeichen laden&lt;br /&gt;
    out     UDR, zeichen        ; und Zeichen ausgeben&lt;br /&gt;
    dec     temp1&lt;br /&gt;
    brne    sende_zeichen&lt;br /&gt;
    ret&lt;br /&gt;
&lt;br /&gt;
; 32 Bit Zahl in ASCII umwandeln&lt;br /&gt;
; Zahl liegt in temp1..4&lt;br /&gt;
; Ergebnis ist ein 10stelliger ASCII String, welcher im SRAM abgelegt wird&lt;br /&gt;
; Adressierung über X Pointer&lt;br /&gt;
; mehrfache Subtraktion wird als Ersatz für eine Division durchgeführt.&lt;br /&gt;
&lt;br /&gt;
Int_to_ASCII:&lt;br /&gt;
    &lt;br /&gt;
    push    ZL                      ; Register sichern&lt;br /&gt;
    push    ZH&lt;br /&gt;
    push    temp5&lt;br /&gt;
    push    temp6&lt;br /&gt;
&lt;br /&gt;
    ldi     ZL,low(Tabelle*2)       ; Zeiger auf Tabelle&lt;br /&gt;
    ldi     ZH,high(Tabelle*2)&lt;br /&gt;
    ldi     temp5, 10               ; Schleifenzähler&lt;br /&gt;
&lt;br /&gt;
Int_to_ASCII_schleife:&lt;br /&gt;
    ldi     temp6, -1+&#039;0&#039;           ; Ziffernzähler zählt direkt im ASCII Code &lt;br /&gt;
    lpm     z0,Z+                   ; Nächste Zahl laden&lt;br /&gt;
    lpm     z1,Z+&lt;br /&gt;
    lpm     z2,Z+&lt;br /&gt;
    lpm     z3,Z+&lt;br /&gt;
&lt;br /&gt;
Int_to_ASCII_ziffer:&lt;br /&gt;
    inc     temp6                   ; Ziffer erhöhen&lt;br /&gt;
    sub     temp1, z0               ; Zahl subrahieren&lt;br /&gt;
    sbc     temp2, z1               ; 32 Bit&lt;br /&gt;
    sbc     temp3, z2&lt;br /&gt;
    sbc     temp4, z3&lt;br /&gt;
    brge    Int_to_ASCII_ziffer     ; noch kein Unterlauf, nochmal&lt;br /&gt;
&lt;br /&gt;
    add     temp1, z0               ; Unterlauf, eimal wieder addieren&lt;br /&gt;
    adc     temp2, z1               ; 32 Bit&lt;br /&gt;
    adc     temp3, z2&lt;br /&gt;
    adc     temp4, z3                                            &lt;br /&gt;
    st      X+,temp6                ; Ziffer speichern&lt;br /&gt;
    dec     temp5&lt;br /&gt;
    brne    Int_to_ASCII_schleife   ; noch eine Ziffer?&lt;br /&gt;
&lt;br /&gt;
    pop     temp6&lt;br /&gt;
    pop     temp5&lt;br /&gt;
    pop     ZH&lt;br /&gt;
    pop     ZL                      ; Register wieder herstellen&lt;br /&gt;
    ret&lt;br /&gt;
&lt;br /&gt;
; Tabelle mit Zahlen für die Berechung der Ziffern&lt;br /&gt;
; 1 Milliarde bis 1&lt;br /&gt;
Tabelle:&lt;br /&gt;
.dd 1000000000, 100000000, 10000000, 1000000, 100000, 10000, 1000, 100, 10, 1&lt;br /&gt;
&lt;br /&gt;
; 16 Bit Wert in Spannung umrechnen&lt;br /&gt;
;&lt;br /&gt;
; = 16Bitx16Bit=32 Bit Multiplikation&lt;br /&gt;
; = vier 8x8 Bit Multiplikationen&lt;br /&gt;
;&lt;br /&gt;
; adlow/adhigh * temp5/temp6&lt;br /&gt;
&lt;br /&gt;
mul_16x16:&lt;br /&gt;
    push    zeichen&lt;br /&gt;
    clr     temp1                   ; 32 Bit Akku löschen&lt;br /&gt;
    clr     temp2&lt;br /&gt;
    clr     temp3&lt;br /&gt;
    clr     temp4&lt;br /&gt;
    clr     zeichen                 ; Null, für Carry-Addition&lt;br /&gt;
&lt;br /&gt;
    mul     adlow, temp5            ; erste Multiplikation&lt;br /&gt;
    add     temp1, r0               ; und akkumulieren&lt;br /&gt;
    adc     temp2, r1&lt;br /&gt;
&lt;br /&gt;
    mul     adhigh, temp5           ; zweite Multiplikation&lt;br /&gt;
    add     temp2, r0               ; und gewichtet akkumlieren&lt;br /&gt;
    adc     temp3, r1&lt;br /&gt;
&lt;br /&gt;
    mul     adlow, temp6            ; dritte Multiplikation&lt;br /&gt;
    add     temp2, r0               ; und gewichtet akkumlieren&lt;br /&gt;
    adc     temp3, r1&lt;br /&gt;
    adc     temp4, zeichen          ; carry addieren&lt;br /&gt;
&lt;br /&gt;
    mul     adhigh, temp6           ; vierte Multiplikation&lt;br /&gt;
    add     temp3, r0               ; und gewichtet akkumlieren&lt;br /&gt;
    adc     temp4, r1&lt;br /&gt;
&lt;br /&gt;
    pop     zeichen&lt;br /&gt;
    ret&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für alle, die es besonders eilig haben gibt es hier eine geschwindigkeitsoptimierte Version der Integer in ASCII Umwandlung. Zunächst wird keine Schleife verwendet sondern alle Stufen der Schleife direkt hingeschrieben. Das braucht zwar mehr Programmspeicher, ist aber schneller. Ausserdem wird abwechselnd subtrahiert und addiert, dadurch entfällt das immer wieder notwendige addieren nach dem Unterlauf. Zu guter Letzt werden die Berechnungen nur mit der minimal notwenigen Wortbreite durchgeführt. Am Anfang mit 32 Bit, dann nur noch mit 16 bzw. 8 Bit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;avrasm&amp;gt;&lt;br /&gt;
; 32 Bit Zahl in ASCII umwandeln&lt;br /&gt;
; geschwindigkeitsoptimierte Version&lt;br /&gt;
; Zahl liegt in temp1..4&lt;br /&gt;
; Ergebnis ist ein 10stelliger ASCII String, welcher im SRAM abgelegt wird&lt;br /&gt;
; Adressierung über X Pointer&lt;br /&gt;
&lt;br /&gt;
Int_to_ASCII:&lt;br /&gt;
    ldi     temp5, -1 + &#039;0&#039;&lt;br /&gt;
_a1ser:&lt;br /&gt;
    inc     temp5&lt;br /&gt;
    subi    temp1,BYTE1(1000000000) ; - 1.000.000.000&lt;br /&gt;
    sbci    temp2,BYTE2(1000000000)&lt;br /&gt;
    sbci    temp3,BYTE3(1000000000)&lt;br /&gt;
    sbci    temp4,BYTE4(1000000000)&lt;br /&gt;
    brcc    _a1ser&lt;br /&gt;
&lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern&lt;br /&gt;
    ldi     temp5, 10 + &#039;0&#039;&lt;br /&gt;
_a2ser:&lt;br /&gt;
    dec     temp5&lt;br /&gt;
    subi    temp1,BYTE1(-100000000) ; + 100.000.000&lt;br /&gt;
    sbci    temp2,BYTE2(-100000000)&lt;br /&gt;
    sbci    temp3,BYTE3(-100000000)&lt;br /&gt;
    sbci    temp4,BYTE4(-100000000)&lt;br /&gt;
    brcs    _a2ser&lt;br /&gt;
&lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern&lt;br /&gt;
    ldi     temp5, -1 + &#039;0&#039;&lt;br /&gt;
_a3ser:&lt;br /&gt;
    inc     temp5&lt;br /&gt;
    subi    temp1,low(10000000)     ; - 10.000.000&lt;br /&gt;
    sbci    temp2,high(10000000)&lt;br /&gt;
    sbci    temp3,BYTE3(10000000)&lt;br /&gt;
    brcc    _a3ser&lt;br /&gt;
&lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern&lt;br /&gt;
    ldi     temp5, 10 + &#039;0&#039;&lt;br /&gt;
_a4ser:&lt;br /&gt;
    dec     temp5&lt;br /&gt;
    subi    temp1,low(-1000000)     ; + 1.000.000&lt;br /&gt;
    sbci    temp2,high(-1000000)&lt;br /&gt;
    sbci    temp3,BYTE3(-1000000)&lt;br /&gt;
    brcs    _a4ser&lt;br /&gt;
&lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern&lt;br /&gt;
    ldi     temp5, -1 + &#039;0&#039;&lt;br /&gt;
_a5ser:&lt;br /&gt;
    inc     temp5&lt;br /&gt;
    subi    temp1,low(100000)       ; -100.000&lt;br /&gt;
    sbci    temp2,high(100000)&lt;br /&gt;
    sbci    temp3,BYTE3(100000)&lt;br /&gt;
    brcc    _a5ser&lt;br /&gt;
&lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern&lt;br /&gt;
    ldi     temp5, 10 + &#039;0&#039;&lt;br /&gt;
_a6ser:&lt;br /&gt;
    dec     temp5&lt;br /&gt;
    subi    temp1,low(-10000)       ; +10,000&lt;br /&gt;
    sbci    temp2,high(-10000)&lt;br /&gt;
    sbci    temp3,BYTE3(-10000)&lt;br /&gt;
    brcs    _a6ser&lt;br /&gt;
&lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern &lt;br /&gt;
    ldi     temp5, -1 + &#039;0&#039;&lt;br /&gt;
_a7ser:&lt;br /&gt;
    inc     temp5&lt;br /&gt;
    subi    temp1,low(1000)         ; -1000&lt;br /&gt;
    sbci    temp2,high(1000)&lt;br /&gt;
    brcc    _a7ser&lt;br /&gt;
 &lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern&lt;br /&gt;
    ldi     temp5, 10 + &#039;0&#039;&lt;br /&gt;
_a8ser:&lt;br /&gt;
    dec     temp5&lt;br /&gt;
    subi    temp1,low(-100)         ; +100&lt;br /&gt;
    sbci    temp2,high(-100)&lt;br /&gt;
    brcs    _a8ser&lt;br /&gt;
 &lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern&lt;br /&gt;
    ldi     temp5, -1 + &#039;0&#039;&lt;br /&gt;
_a9ser:&lt;br /&gt;
    inc     temp5&lt;br /&gt;
    subi    temp1, 10               ; -10&lt;br /&gt;
    brcc    _a9ser&lt;br /&gt;
    &lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern&lt;br /&gt;
    ldi     temp5, 10 + &#039;0&#039;&lt;br /&gt;
_a10ser:&lt;br /&gt;
    dec     temp5&lt;br /&gt;
    subi    temp1, -1               ; +1&lt;br /&gt;
    brcs    _a10ser&lt;br /&gt;
&lt;br /&gt;
    st      X+,temp5                ; im Puffer speichern&lt;br /&gt;
    ret&lt;br /&gt;
&amp;lt;/avrasm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Navigation_zurückhochvor|&lt;br /&gt;
zurücktext=Uhr|&lt;br /&gt;
zurücklink=AVR-Tutorial: Uhr|&lt;br /&gt;
hochtext=Inhaltsverzeichnis|&lt;br /&gt;
hochlink=AVR-Tutorial|&lt;br /&gt;
vortext=Tasten|&lt;br /&gt;
vorlink=AVR-Tutorial: Tasten}}&lt;br /&gt;
&lt;br /&gt;
[[Category:AVR-Tutorial]]&lt;/div&gt;</summary>
		<author><name>134.76.63.163</name></author>
	</entry>
</feed>