Elektor 447 - 2008-03 (GER)

88
G3078 E www.elektor.de März 2008 (D) e 6,70 CHF 12,90 (A, B, L) e 7,35 electronics worldwide SD-Card- Datalogger Alles unter Kontrolle! Open Source – Ethernet embedded I 2 C Analyser – was ist los auf dem Bus? Software wird Hardware Organische Elektronik – echt gedruckte Schaltungen! FPGAs in C programmieren

Transcript of Elektor 447 - 2008-03 (GER)

Page 1: Elektor 447 - 2008-03 (GER)

G3078 E www.elektor.de März 2008 (D) e 6,70 • CHF 12,90 • (A, B, L) e 7,35

electronics worldwide

SD-Card- DataloggerAlles unter Kontrolle!

Open Source – Ethernet embeddedI2C Analyser – was ist los auf dem Bus?

Software wird Hardware

Organische Elektronik – echt gedruckte Schaltungen!

FPGAs in C programmieren

Page 2: Elektor 447 - 2008-03 (GER)

Werkstattbedarf MesstechnikElektrotechnik

Elektronikring 1 26452 Sande

Relais & Schalter PC-TechnikNetzwerktechnik

Onlineblättern!

S

Werkzeuge

KN 03 02 160 160 mm

KN 03 02 180 180 mm

KN 03 02 200 200 mm

Kombizange

Länge:

KN 86 05 180 180 mmLänge:

KN 86 05 250 250 mm

Länge:

Länge: 190 mm; für Modularstecker Schneiden und Abmanteln von fl achem Telefonkabel Verpressen von 6- / 8-poligen Modularsteckern, RJ12/RJ45 exakter Crimpvorgang durch Parallelvercrimpung und

Zwangssperre, kraftsparende Hebelmechanik mit Längenab- schneider und Abmantelungs- messer für 6 und 12 mm

KN 97 51 10

Schlüsselweite: bis 35 mm parallel geführte Greifbacken Zange und Schraubenschlüssel in einem Werkzeug Schnelleinstellung per Knopfdruck direkt am Werkstück

ölgehärtet, Kopf poliert Schneiden zusätzlich induktiv gehärtet schneidet Draht (weich) 3,1 mm, (hart) 2,0mm

USB-Steckverbinder

Aderendhülsen-Sortimente Sortiment 1: 500x0,5; 500x0,75;

400x1,0; 300x1,5; 200x2,5 Sortiment 2: 50x0,5; 100x0,75;

100x1,0; 100x 1,5; 50x2,5 Sortiment 3: 50x4,0; 20x6,00;

20x10,0; 10x16,0AEH SORTIMENT 1 unisoliert - 0,5 - 2,5 mm²

Neutrik PowerCon®-Steckverbinder Universal-„Mate-N-Lok”-Verbinder

Zangenschlüssel

AEH SORTIMENT 2 isoliert - 0,5 - 2,5 mm²AEH SORTIMENT 3 isoliert - 4,0 - 16mm²

AEH SORTIMENT 4 Twin-AEHs, 2x 0,75 - 2,5 mm²

Qualitätszangen

Serie A, gewinkelt, liegende Montage

USB AW Printmontage BuchseUSB AWF Printmontage SteckerUSB AW SMD SMD-Montage Buchse

Serie B, gewinkelt, liegende Montage

USB BW Printmontage BuchseUSB BW SMD SMD-Montage Buchse

Serie Mini-USB, gewinkelt, liegende Montage

USB BWM 5-pol, Printmontage BuchseUSB BWM SMD 5-pol, SMD-Montage Buchse

Serie A, gewinkelt, liegende Printmontage

USB AW-2 2-PortUSB AW-3 3-Port

Serie A, gewinkelt, vertikale Printmontage

USB AW-VK Länge: 13,3mm BuchseUSB AW-VL Länge: 19,3mm Buchse

Serie A, gerade, 180° Version

USB AG Printmontage BuchseUSB AGF SMD-Montage Stecker

ol Printmontage Buchse

änge: 13 3mm B h

ntmontage Buchse

ontagemo

BuchseBuchse

Crimphebelzange 0,08 - 10 mm², vierkant selbsteinstellende Crimpzange mit Seiten-

einführung zum DIN-gerechten Verpressen von Aderendhülsen in weitem Profi lspektrum leichte Handhabung, Kraftverstär-

kung, entriegelbare Zwangssperre Vierkantcrimpung für stets

optimale Kontaktfl ächen

KN 97 53 04

Aderendhülsenzange

gerade, mit Schneide, Länge: 140 mm aus ölgehärtetem Spezial-Werkzeugstahl fl ach-runde Backen mit gezahnten Greiffl ächen Schneidhärte: ca. 60 HRc, für Draht-

Ø 2,5 mm (weich) / 1,6 mm (mittel) Kopf poliert

KN 25 02 140

Flachrundzange Länge: 125 mm, Drahtklemme präzisionsgeschliffene Schneiden

ohne Wate mit Öffnungsfeder & -begrenzung spielfreies leichtgängiges Gelenk Schneidkraft: Draht-Ø bis 1,6 mm

(weich) / bis 0,6 mm (hart)

KN 78 71 125

Seitenschneider

Power-In, blau

NEUTRIK NAC-3FCA KabelsteckerNEUTRIK NAC-3MPA Chassisbuchse

Power-Out, grau

NEUTRIK NAC-3FCB KabelsteckerNEUTRIK NAC-3MPB Chassisbuchse

Adapter zur Anschlussverlängerung

NEUTRIK NAC-3MM

250 V / 20 A

KabelsteckerSchraubanschluss

NEUTRIK NL-2FC 2-pol 6 - 10 mmNEUTRIK NL-4FC 4-pol 5 - 15 mm 4,0 mm²NEUTRIK NL-8FC 8-pol 8 - 20 mm 2,5 mm²

Speakon Touring-Serie

NEUTRIK NLT4-FXNEUTRIK NLT8-FXNEUTRIK NLT4-MXNEUTRIK NLT4-MPNEUTRIK NLT8-MPNEUTRIK NLT4-FP

KabelsteckerKabelsteckerKabelkupplungEinbaubuchse 38x38 mmEinbaubuchse 38x38 mmEinbaustecker 38x38 mm

Aufnahmeleergehäuse

MNL 2AG 2-pol 1-reihigHöhe

14,0mmBreite

MNL 3AG 3-pol 1-reihig 20,3mmMNL 4AG 4-pol 1-reihig 26,7mmMNL 6AG 6-pol 2-reihig 20,3mmMNL 9AG 9-pol 3-reihig 20,3mm

Steckerleergehäuse

MNL 2SG 2-pol 1-reihigHöhe

14,0mmBreite

MNL 3SG 3-pol 1-reihig 20,3mmMNL 4SG 4-pol 1-reihig 26,7mmMNL 6SG 6-pol 2-reihig 20,3mmMNL 9SG 9-pol 3-reihig 20,3mm

Mate-N-Lok Kontakte

MNL BK1

Steckkontakte

Kontakte0,2 - 0,8 mm²

für

MNL BK2

Steckkontakte

0,5 - 2,1 mm²MNL SK1

Buchsenkontakte

0,2 - 0,8 mm²MNL SK2

Buchsenkontakte

0,5 - 2,1 mm²

Profi l: 0,08 - 10 mm, Länge: 190 mm, selbsteinstellend Fronteinführung zur DIN-gerech-

ten Aderendhülsen-Verpressung größere Kontaktfl ächen: crimpen

von Aderendhülsen im Vierkantprofi l

KN 97 53 08

Crimpzange Profi l: 0,03 - 10 mm², selbst-

anpassend; Länge: 195 mm schneiden und isolieren ohne

manuelle Einstellung für Cu.- & AL-Leiter bis 6 mm² Klemmbacken mit Schneidkanten

KN 12 42 195

Universal-Abisolierzange

Bestellnummer:KN 97 43 200KN 97 49 54

Zange o. Einsätze, im Koffer Einsätze MNL BK1, MNL SK1

wechselbare Einsätze = universeller Gebrauch Crimp-Systemzange / Einsätze

iert 0 5 2 55 mm²5 mm²

04422-955 33304422-955 111

Gesetzliches Widerrufsrecht innerhalb zwei Wochen nach Erhalt der Ware. Alle angegebenen Preise in € einschl. gesetzl. MwSt., ab Lager Sande, zzgl. Versandspesen für den gesamten Warenkorb. Es gelten ausschließlich unsere AGB (unter www.reichelt.de/agb, im Katalog oder auf Anforderung). Zwischenverkauf vorbehalten. Alle Produktnamen und Logos sind Eigentum der jeweiligen Hersteller. Abbildungen ähnlich. Druckfehler, Irrtümer und Preisänderungen vorbehalten. Reichelt Elektronik e. Kfr., Elektronikring 1, 26452 Sande (HRA 130689 Oldenburg)

11.4511.5513.45

38.4544.50

34.00

12.555.405.956.65

125.85

13.05 17.00

124.65 65.45

0.260.460.40

0.250.42

0.500.50

0.341.20

0.800.36

0.300.36

5.402.65

5.402.65

15.30

2.854.95

10.50

8.5515.00

8.255.159.407.30

0.250.250.450.350.45

0.250.260.450.320.40

0.100.100.100.10

120.85102.55

R i h l i dd 2 07 02 2008 09 17 570803_elektor_adv_DU 2 11-02-2008 09:22:05

Page 3: Elektor 447 - 2008-03 (GER)

Bauelemente aktiv / passiv Sicherheitstechnik HaustechnikSteckverbinder www.reichelt.dewwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

+ Achtung: Tagespreise! + Achtung: Tagespreise! ++ Tagesaktuelle Preise siehe www.reichelt.de ++ Stand: 7. 2. 2008 + Stand: 7. 2. 2008 +

Über 960 Seiten! Über 30.000 Artikel!Katalog 01/2008 kostenlos!

KATALOG 0.00

Schaltnetzteile

Bestellt • Beliefert • Begeistert

Stahlblechgehäuse, geschweißtes Rahmen- gestell, komplett vormontiert, eigenbelüftet innenseitig tiefenverstellbare Profi lschinen horizontale Profi lschienen mit Lochraster-

maß, 25 mm zur Befestigung und Tiefen- verstellung der Profi lschienen

zur DIN-Schienenmontage eingebaute Entstörfi lter, Überlastschutz, kurzschlussfest

Patchpanels

PATCHPANEL 24 24 Ports, einreihig, 1 HE

PATCHPANEL 32 32 Ports, zweireihig, 2 HE

PATCHPANEL 6-24 24 Ports, 1 HE (Cat. 6, 250 Mbit/s)

Cat.-5/6-Panels

PATCHPANEL 8-6 8 Ports, Cat. 6PATCHPANEL 12-6 12 Ports, Cat. 6

vollgeschirmtes Gehäuse mit 8-poliger LSA-Schneid- Klemm-Technik, einreihig Spezifi kation: GIA/TIA568A/B

Datentransferrate: 100 Mbit/s vollgeschirmtes Gehäuse mit Kabelführung Schirmblech und Schirmaufl age aus Stahl Anschluss nach EIA/TIA 568A/B

10”-Format-Patchpanels für Systemlösungen mit

geringer Teilnehmerzahl und begrenztem Platzangebot 1000 BT (Gigabit-Ethernet) bis 250 MHz) bis 250 MHz

els

et)

els

ebot) bi 250 MH

Cat.-5E/6-Mini-Panels

MPP-12H Höhe: 1 HE, 12x ISDN, ungeschirmt

MPP-12HS Höhe: 1 HE, 12 x RJ45, geschirmt

PATCHPANEL 16 16 Ports, einreihig, 1 HE

PATCHPANEL 12-5E 12 Ports, Cat. 5E

Eingangsspannung: 85 - 264 VAC 120 – 370 VDCMaße (mm): 93 x 67 x 78

SNT MW-DR45-05 5 V 5,0 A 100 mVSNT MW-DR45-12 12 V 3,5 A 200 mVSNT MW-DR45-24 24 V 2,0 A 480 mV

Eingangsspannung: 85 - 264 VAC 120 – 370 VDCMaße (mm): 55,5 x 125,2 x 100

SNT MW-DR75-12 12 V 6,3 A 100 mVSNT MW-DR75-24 24 V 3,2 A 100 mVSNT MW-DR75-48 48 V 1,6 A 240 mV

Eingangsspannung: 88 – 132 / 176 - 264 VACMaße (mm): 65,5 x 125,2 x 100

SNT MW-DR120-12 12 V 10,0 A 80 mVSNT MW-DR120-24 24 V 5,0 A 80 mV

Eingangsspannung: 85 - 264 VAC 120 – 370 VDCMaße (mm): 125,2 x 125,5 x 100

SNT MW-DRP24 24 V 10,0 A 80 mVSNT MW-DRP48 48 V 5,0 A 150 mV

Leistung: 45 Watt

Leistung: 75 Watt

Leistung: 120 Watt

Leistung: 240 Watt

EI 30/12.5 1,5 VA

EI 30/15.5 2 VA

EI 30/18 2,3 VA

EI 30/23 2,8 VA

Printtransformatoren

Bestellnummer:SIM1-0503 SIL4 5 VDC 3,3 VDC 300 mA

Input Output Output

SIM1-0505 SIL4 5 VDC 5 VDC 200 mASIM1-0509 SIL4 5 VDC 9 VDC 110 mASIM1-0512 SIL4 5 VDC 12 VDC 83 mASIM1-1203 SIL4 12 VDC 3,3 VDC 300 mASIM1-1205 SIL4 12 VDC 5 VDC 200 mASIM1-1209 SIL4 12 VDC 9 VDC 110 mASIM1-1212 SIL4 12 VDC 12 VDC 83 mA

hoher Wirkungsgrad, min. 70%,kurzzeitig KurzschlussfestigkeitMaße: 19,5 x 10 x 5,8 mm

Bestellnummer:SIM2-0505S SIL7 5 VDC 5 VDC 400 mA

Input Output Output

SIM2-0512S SIL7 5 VDC 12 VDC 166 mASIM2-0515S SIL7 5 VDC 15 VDC 132 mASIM2-1205S SIL7 12 VDC 5 VDC 400 mASIM2-1212S SIL7 12 VDC 12 VDC 166 mASIM2-1215S SIL7 12 VDC 15 VDC 132 mA

für Industrieeinsatz, hoher Wirkungsgrad(~ 65%), passend für 24-pol. DIL-RasterMaße: 31,8 x 20,3 x 10 mm

Bestellnummer: Input Output OutputSIM5-0512D 5 VDC ±12 VDC ±125 mASIM5-0515D 5 VDC ±15 VDC ±100 mA

hoher Wirkungsgrad, min. 70%, kurzzeitig KurzschlussfestigkeitMaße: 11,7 x 6 x 10 mm

DC/DC-Wandler-Module1 W, ungeregelt, 4-Pin-SIL-Gehäuse

2 W, ungeregelt, 7-Pin-SIL-Gehäuse

3 Watt DC/DC-Wandler

stert

19”-Wandgehäuse6 - 21 Höheneinheiten

en

ab

Leerlauf13,8V18,6V23,8V

Leerlauf14,8V20,8V24,0V

Leerlauf14,6V20,0V26,0V

Leerlauf12,9V16,7V24,7V

Primär: 230 V, Pin 1-5Sekundär: Pin 7-9 bzw. 6-7/9-10Temperaturklasse ta 70°/B / Kurzschlussfest

U sek I sekEI 30/12,5 109 9V 166mAEI 30/12,5 112 12V 125mAEI 30/12,5 115 15V 100mA

U sek I sekEI 30/15,5 109 9V 222mAEI 30/15,5 112 12V 166mAEI 30/15,5 115 15V 133mA

U sek I sekEI 30/18 109 9V 256mAEI 30/18 112 12V 192mAEI 30/18 115 15V 154mA

I sekEI 30/23 109 9V 311mAEI 30/23 112 12V 233mAEI 30/23 115 15V 186mA

U sek

URW

229.90

Höhe MaßeBOX 691606 229.90 6 HE 600 x 330 x 500 mmBOX 691609 249.90 9 HE 600 x 465 x 500 mmBOX 691612 267.90 12 HE 600 x 600 x 500 mm

Höhe MaßeBOX 691615 289.90 15 HE 600 x 730 x 500 mmBOX 691618 324.90 18 HE 600 x 860 x 500 mmBOX 691621 357.90 21 HE 600 x 997 x 500 mm

25.6569.9539.95

28.3034.85

81.0596.45

24.95

21.45

23.8021.9021.90

39.0038.9042.70

45.9044.05

69.0072.00

2.202.202.20

2.252.252.25

2.352.352.35

2.852.852.85

4.704.705.104.704.704.705.104.70

5.805.805.805.806.356.35

15.3015.30

R i h l i dd 3 07 02 2008 09 18 340803_elektor_adv_DU 3 11-02-2008 09:22:16

Page 4: Elektor 447 - 2008-03 (GER)

Datenlogger mit SD-Card

24 CAN-Explorer

In der Vergangenheit wurden in Elektor bereits mehrere Datenlogger beschrieben, die teilweise für ganz spezielle Einsatzzwecke konzipiert

waren. Beim Entwurf unseres neuen Datenloggers haben wir das Schwergewicht auf Vielseitigkeit und Allround-Funktionalität gelegt.Spannungsverläufe werden an vier analogen Eingängen gemessen und die Werte auf einer wechselbaren SD-Speicherkarte numerisch

gespeichert. Da die Power des Datenloggers in der Software steckt, hält sich der Hardware-Aufwand in Grenzen.

Datenlogger mit SD-Card

Ein CAN-Bus eignet sich nicht nur für Autos und die Automation, er lässt sich auch zur Haussteuerung einsetzen. Leider ist der Aufbau eines solchen Bus-Systems nicht ganz einfach. Hier setzt unser CAN-Board an, das einen PC an den Bus anbindet. Über eine komfortable und kostenlose Software lassen sich

ein CAN-Bus überwachen und die Funktion anderer Knoten überprüfen.

Von EAM zu ElektorMit der Ausgabe 8/2007 ist das ELECTRONIC ACTUELL Magazin (EAM) eingestellt worden. Es war – ähnlich wie früher ELO – eine Zeitschrift, die sich mit der Hobbyelektronik und all’ ihren Randgebieten beschäftigte. Den EAM-Abonnenten wird nun angeboten, auf den Elektor „umzusteigen“, und gleichzeitig darf ich als ehemaliger EAM-Macher diese Leser in neuer Umgebung begrüßen, auch wenn ich selbst nicht mehr an der Redaktionsarbeit teilnehmen werde.Der Blick zurück offenbart eine nicht alltägliche Geschichte: Anders als die ELO, die seinerzeit quasi aus der Retorte entstanden ist, war das EAM anfangs die firmeneigene Publikation einer recht großen deutschen Versandfirma, für die die Abonnenten auch noch bezahlen mussten. Daraus ist vor genau zwanzig Jahren eine Zeitschrift geworden, die sich auch im Kiosk-Verkauf behauptet hat.Dieses Magazin wurde nicht deshalb aufgegeben, weil ihm die Leser fehlten, sondern weil die Herstellung für mich als Einzelkämpfer immer stressiger wurde; trotz DTP und hervorragender Computer-Unterstützung blieb eben keine Zeit für so elitäre Dinge wie Urlaub oder gar Regeneration.Auch ein Blick voraus lässt keine Zweifel daran, dass die Hobbyelektronik eine der schönsten Nebensachen der Welt bleibt. Die von der Industrie angebotenen Baueile eröffnen uns Möglichkeiten, von denen vor Jahren nicht einmal die Profis geträumt haben: Mikrocomputer-Entwicklungssysteme (fast) zum Nulltarif, hochentwickelte Schaltkreise für ein paar Cent und ein Angebot an Fachwissen, das vor gar nicht so langer Zeit nicht einmal den Absolventen der Fach- und Hochschulen zur Verfügung gestanden hat.Elektor habe ich schon vor einigen Jahrzehnten als Schüler gelesen, sofern ich mir das damals leisten konnte. Es bleibt zu wünschen, dass die neuen und die etablierten Leser, jung oder alt, ihren Spaß an der Sache behalten.Ihnen allen einen herzlichen Gruß

Reinhard Gößlerehemals EAM-Chefredakteur

1818

Page 5: Elektor 447 - 2008-03 (GER)

36 FPGA „made easy”FPGAs eignen sich für die unterschiedlichsten Anwendungen. Trotzdem werden die Stärken, die in diesen Chips stecken, für Neuentwicklungen noch selten genutzt, da der Umstieg von der traditionellen Programmierung von Controllern auf das Entwickeln von FPGA-Designs nicht leicht ist. Nun bahnt sich ein Umbruch an. Verschiedene Entwicklungssysteme sind in der Lage, C-Routinen automatisch in FPGA-Hardware zu gießen, was drastische Geschwindigkeitsvorteile bringt.

Das weit verbreitete serielle Bussystem I2C wird hauptsächlich für den schaltungsinternen Informationsaustausch genutzt. Un-ser I2C-Analyser macht die Bussignale auf dem PC-Bildschirm sichtbar. Typische Einsatzfelder sind das Entwickeln eigener I2C-Systeme, die Fehlersuche in Geräten mit I2C-Bus oder das „Reverse Engineering“.

28 I2C-Analyser

INHALT

Technik42 Open Source:

Frei, offen, ungebunden?46 Open Source: Ethernut50 Elektor-CC2-AVR-Projekt64 Workshop:

Funkalarmanlage

Info & Markt6 Impressum8 Mailbox11 News16 Jahrgangs-CD 200770 Review: Cypress

PSoC Development Kit84 Vorschau

Infotainment77 Hexadoku78 Retronik: Disco-Lights

39. JahrgangMärz 2008Nr. 447

Praxis18 Komfortabler Datenlogger24 CAN-Explorer28 I2C-Analyser52 Mini-Betriebssystem

für ARMee-Board72 Preiswerte SPS

Grundlagen36 FPGA „made easy”56 Wie funktioniert ein RTOS?60 Organische Elektronik

Page 6: Elektor 447 - 2008-03 (GER)

elektor - 3/2008

elektor international mediaEine multimediale und interaktive Plattform für jeden Elektroniker - das bietet Elektor International Media. Ob Anfänger oder Fortgeschrittener, ob Student oder Professor, ob engagierter Profi oder leidenschaftlicher Hobbyist: Hier finden Sie wertvolle

Informationen, Inspiration für die eigenen Entwicklungen, Unterstützung bei der Ausbildung und nicht zuletzt eine gute Portion Unterhaltung. Gedruckt und im Web. Analog und digital. In Theorie und Praxis.

elektor electronics worldwide

English GermanDutchFrenchChinese

PortugalGreek

SpanishSwedish

FinnishIMPRESSUM

39. Jahrgang, Nr. 447 März 2008

Erscheinungsweise: 11 x jährlich (inkl. Doppelheft Juli/August)

Elektor möchte Menschen anregen, sich die Elektronik zu Eigen zu machen – durch die Präsentation von Projekten und das Aufzeigen von Entwicklungen in der Elektronik und technischen Informatik.

Elektor erscheint auch in Englisch, Französisch, Niederländisch, Spanisch und weiteren Sprachen. ElEktor ist in über 50 ländern erhältlich.

Verlag Elektor-Verlag GmbH - Süsterfeldstraße 25, 52072 AachenTel. 02 41/88 909-0 - Fax 02 41/88 909-77

Technische Fragen bitten wir per E-Mail an [email protected] zu richten.

Internationale ChefredaktionWisse Hettinga

Redaktion Elektor DeutschlandErnst Krempelsauer (Chefredakteur, v.i.S.d.P.)Jens Nickel(E-Mail: [email protected])

Internationale RedaktionHarry Baggen, Thijs Beckers, Jan Buiting, Guy Raedersdorf

RedaktionssekretariatHedwig Hennekens

Labor/Technische RedaktionAntoine Authier (Ltg.), Ton Giesberts, Paul Goossens, Luc Lemmens, Jan Visser, Christian Vossen

Grafische Gestaltung und LayoutGiel Dols, Mart Schroijen

Page 7: Elektor 447 - 2008-03 (GER)

3/2008 - elektor

fernlehrgang events

Geschäftsführer/Herausgeber: Paul Snakkers

Marketing/Vertrieb (Leitung): Carlo van Nistelrooy

Kundenservice/Auftragsabwicklung (Leitung): Anouska van Ginkel

Anzeigen: ID MedienserviceTel. 05 11/334 84-36 - Fax 05 11/334 84-81E-Mail: [email protected] gilt die Anzeigenpreisliste Nr. 38 ab 01.01.2008

Vertriebsgesellschaft: IPS Pressevertrieb GmbHPostfach 12 11, 53334 Meckenheim

Tel. 0 22 25/88 01-0 - Fax 0 22 25/88 01-199E-Mail: [email protected]: www.ips-pressevertrieb.de

Vertrieb ÖsterreichPressegroßvertrieb Salzburg/Anif - Niederalm 300Tel. +43/62 46/37 21-0

Der Herausgeber ist nicht verpflichtet, unverlangt eingesandte Manuskripte oder Geräte zurückzusenden. Auch wird für diese Gegenstände keine Haftung übernommen. Nimmt der Herausgeber einen Beitrag zur Veröffentlichung an, so erwirbt er gleichzeitig das Nachdruckrecht für alle ausländischen Ausgaben inklusive Lizenzen. Die in dieser Zeitschrift veröffentlichten Beiträge, insbesondere alle Aufsätze und Artikel sowie alle Entwürfe, Pläne, Zeichnungen einschließlich Platinen sind urheberrechtlich geschützt. Ihre auch teilweise Vervielfältigung und Verbreitung ist grundsätzlich nur mit vorheriger schriftlicher

Zustimmung des Herausgebers gestattet. Die veröffentlichten Schaltungen können unter Patent- oder Gebrauchsmusterschutz stehen. Herstellen, Feilhalten, Inverkehrbringen und gewerblicher Gebrauch der Beiträge sind nur mit Zustimmung des Verlages und ggf. des Schutzrechtsinhabers zulässig. Nur der private Gebrauch ist frei. Bei den benutzten Warenbezeichnungen kann es sich um geschützte Warenzeichen handeln, die nur mit Zustimmung ihrer Inhaber warenzeichengemäß benutzt werden dürfen. Die geltenden gesetzlichen Bestimmungen hinsichtlich Bau, Erwerb und Betrieb von Sende- und Empfangseinrichtungen und der elektrischen Sicherheit sind unbedingt zu beachten. Eine Haftung des Herausgebers für die Richtigkeit und Brauchbarkeit der veröffentlichten Schaltungen und sonstigen Anordnungen sowie für die Richtigkeit des technischen Inhalts der veröffent-lichten Aufsätze und sonstigen Beiträge ist ausgeschlossen.

© 2008 elektor international media b.v.

Druck: Senefelder Misset, Doetinchem (NL) ISSN 0932-5468

NEU!

Sind Sie Auszubildender, Schüler, Student oder nur einfach interessiert an der Mikrocontroller-Technologie?

Dann ist dieser Fernlehrgang für Sie das Portal in die faszinierende Welt dieser zukunftsorientierten Technik!

Elektor-Fernlehrgang

Weitere Infos unter www.elektor.de/tfh

Bestandteile des Fernlehrgangs:

• 6 Lehrbriefe, die monatlich im Abo ver-schickt werden einschließlich Sammel-ordner

• 1 Mikrocontroller-Board, das sich aus einem Grund-Board mit Real Time Clock, alphanumerischem LC-Dis-play, Watchdog und vieles mehr zu-sammensetzt. Für die ersten Schritte gibt es noch eine kleine Digital/Analog-Adapter-Platine, die an das Grund-Board angesteckt wird.

In einer weiteren Ausbaustufe kann das Grund-Board auf ein Zusatz-Board mit Porterweiterungen, I²C-Buscontroller, Temperatursensoren und mehr gesteckt werden (das Zusatz-Board gehört nicht zur Grundausstattung des Fernlehrganges)

• 1 ganztätiger Abschluss-Work-shop mit Zertifi kataushändigung.

Beginn: Mitte Februar 2008 (ein späterer Einstieg ist jederzeit möglich)Dauer: 6 Monate

Das gesamte Fernlehrgangs-paket kostet

nur € 449,-

Grund-Board

Zusatz-Board

Einstieg in die Welt der Mikrocontroller

Zertifikat

inklusive

Elektor-Teilnahmeze

electronics worldwide

ELEK DU0802 Fernlehrg_p7.indd Sec1:7 30-12-2007 12:30:54

Page 8: Elektor 447 - 2008-03 (GER)

mailbox briefe · e-mails · ideen

elektor - 3/2008

In den Tipps zum Induktivitätsmesser (Elektor Juni ‘07, S. 56ff) wurde es schon erwähnt: Das Messgerät kann bequem den AL-Wert eines Ringkerns ermitteln, indem man ihn mit zehn Windungen bewickelt.

Von der Formel zur Berechnung des AL-Wertes gibt es verschie-dene Varianten, und zwar eine in nH-pro-Windung und eine in mH-pro-1000-Windungen.

N = √ (L / AL)mit AL = L / N2 und L = AL x N2 (L in Nanohenry)

N = 1000 x √ (L / AL)mit AL = 106 x L / N2 und L = AL x N2 / 106 (L in Millihenry)

Beide Formeln liefern natürlich das gleiche Ergebnis, ich halte aber die zweite für praktischer im Gebrauch. Wurzeln und Quadrate erge-ben nämlich fast immer gebro-chene und „krumme” Zahlen, die man mit dem Taschenrech-ner ermitteln muss, während sich etwa bei 102 oder √100 das Ergebnis meist leicht im Kopf berechnen lässt.Wenn man häufig Ringkerne berechnet, fällt eines auf: Der resultierende AL-Wert ist bei zehn Windungen genau der µH-Wert multipliziert mit 10, so dass man bloß eine 0 an das Mess-ergebnis anfügen muss. Nehmen wir zum Beispiel den orangero-ten 3E25 mit 26 mm Durchmesser und einem AL-Wert von 6420 (TN26/15/10 von Yageo ferroxcube, ehemals Philips). Mit N=10 erhalten wir:

L = AL x N2 / 106 = 0,642 mH = 642 µH

Nur bei 10 Windungen beträgt der AL-Wert das Zehnfache des µH-Werts!

Wenn Sie auf einschlägigen Flohmärkten mit dem Elektor-Spulen-meter schnell einen unbekannten Ringkern vermessen möchten, legen Sie einfach einen Strang mit zehn Drähten einmal um den

Kern, verbinden die Konstruktion über einen Stecker und eine Buchse mit dem Gerät und lesen den Wert im Display ab. In der Praxis kann sich dies als zu voluminös erweisen, aber ein Strang mit fünf Drähten, zweimal um den Kern gewickelt und mit einem Steckerchen und einer Buchse (DIL) versehen, sollte prima funk-tionieren (siehe Zeichnung und Foto). Bei Ringkernen von 20 mm lässt sich dies ausgezeichnet anwenden, für größeres und kleineres Material (Ferrit-Perlen!) sollten Sie zur Sicherheit ein Röllchen 0,5-mm-Draht mitführen.Der Einfluss der Eigenkapazität des Drahtbündels sollte auch beach-tet werden, eine höhere Kapatzität ergibt eine höhere L-Anzeige. Verwenden Sie deswegen kein Flachbandkabel, sondern einzelne Drähte. Aber auch dann ist entweder eine Neukalibrierung erfor-derlich oder Sie ziehen einfach 2...3 mH vom µH-Wert ab, damit Sie einen korrekten AL-Wert erhalten. Immerhin geht es um eine AL-Differenz von 20...30!!Ferrite mit der höchsten Arbeitsfrequenz (Nickel-Zink NiZn) und klei-

nen Abmessungen (<23 mm) besitzen einen AL-Wert zwi-schen 50 und 100. Dies stellt praktisch die untere Grenze der Messgenauigkeit dar. Mit dem AL-Wert kann man nicht viel anfangen, aber als reiner Indikator ist die Anzeige doch brauchbar.Kleine Eisenpulver-Ringkerne liegen noch niedriger im AL-

Wert und die Anzeige ist noch ungenauer, aber auch hier praktisch, um solche Exemplare schnell zu erkennen.Das Spulenmeter verwendet eine ‚digitale’ Messung (Frequenzzäh-lung mit 100 ms Auflösung), die mit einer bestimmten Schrittgröße voranschreitet. Die Zählung läuft NICHT schön mit 1,2,3... hoch, sondern in Schritten <2 % des angezeigten Wertes. Da man an den µH-Wert eine Null anfügen muss, ergibt sich eine AL-Schrit-tauflösung von <20 % des Endwertes. Das hört sich schockierend ungenau an, ist es aber nicht, da Ringkerne nicht selten eine To-leranz von 25 % aufweisen.Walter Geeraert, PE1ABR

Eine praktische Anwendung für jeden, der regelmäßig mit Ferritker-nen arbeitet!

Praktische Anwendung des Elektor-Induktivitätsmessers

1

070977 - 11

234

1234

Page 9: Elektor 447 - 2008-03 (GER)

3/2008 - elektor

Workshop Spiel-Controller (2/2008)Recycling alter Tastaturen - das ist eine Su-per-Idee, die in vielen Projekten zum Einsatz kommen könnte. Nun haben die Tastaturen ja im Allgemeinen noch drei LEDs, die sich als „Rückkanal” verwenden ließen. Gibt es eine einfache Möglichkeit, diese LEDs anzusteuern? Jochen Brüning

Der Autor hat auf diese Frage hin ein kleines Testprogramm (für VB6) entwickelt, mit dem man die drei LEDs der Tastatur ansteuern kann. Das Programm wurde unter XP getestet und ist selbsterklärend – und wurde auf der Seite zum Artikel (www.elektor.de > Zeitschrift > Inhalt Februar 2008 > Spiel-Controller) zum Download bereitgestellt.

Geprügelte LEDs?Im Artikel „LED -Ringblitz“ in Elektor 02/2008 geben Sie einen LED-Strom von 40 mA an. Da aber am Vorwiderstand von 470 Ω eine Spannung von 185 V anliegt, (300 V – 115 V = 185 V), fließen durch die LEDs knapp 400 mA.Sind nun die 470 Ω ein Druckfehler, oder werden die LEDs tatsächlich mit 400 mA geprügelt?Bruno Grau

Diese Frage wurde auch von uns mit dem Au-tor diskutiert. Er weist darauf hin, dass man beim tatsächlich fließenden LED-Strom ver-schiedene Faktoren berücksichtigen muss. Ei-nen Hinweis finden Sie in Tabelle 1. Dort ist die Spannung für die Serienschaltung mit > 115 V angegeben, weil die einzelne LED-Spannung bei hohem Strom größer als 3,6 V sein wird. Außerdem liegt die Elko-Spannung von 300 V nur am unbelasteten Elko, und je nach Kame-ramodell kann sie auch niedriger sein. So bald die LED-Kette via T1 angeschaltet wird, bricht die Spannung am Elko unter der Belastung zusammen, entsprechend schnell sinkt der LED-Strom. Der Anfangsstrom fließt also nur ganz kurz. Um eine ausreichende Helligkeit zu erzielen, musste der Vorwiderstand daher mit 470 Ω dimensioniert werden.

Drahtlose EnergieübertragungAn der HTL in Wels (Oberösterreich) werden Versuche mit Teslakugeln zur drahtlosen Energieübertragung gemacht. Es werden damit wesentlich größere Energien über relativ große Strecken als bei ihrem letzten Beitrag im Elektor 01/2008 übertragen.Die „Antenne” besteht aus einer Spule mit ca. 100 Windungen, einer Teleskopantenne und einer metallisierten Kugel (braun). Die

Frequenz liegt im Bereich von 1 bis 3 MHz und als Endstufe sind 2 FET-Transistoren eingesetzt.Franz Raferzeder

Es gibt sogar eine Bauanleitung dazu. Auf einer Webseite der ÖVR (Österreichische Ver-einigung für Raumenergie) stellt Ing. Norbert Willmann von der genannten HTL eine Anlei-tung zur Verfügung, so dass sich jeder über den „speziellen Versuchsaufbau“ informieren kann (http://www.oevr.at/news/2007-08-14-teslaexp.html). Laut Begleittext zeigen sich bei dem Experiment „Phänomene, welche mit den bekannten Gesetzen der Elektrotechnik nicht wirklich erklärbar sind“. Das sollte unsere Leser doch nicht ruhen lassen…Zu Hause ausprobieren darf man die Bauan-leitung aber nicht (don t try this at home!), da der nicht genehmigte Betrieb eines HF-Senders einen Straftatbestand darstellt (und bei dieser Leistung bestimmt auffällt).

Mac und Mikrocontroller (und kein Ende)In der „Mailbox“ in Elektor 01/2008 erkundi-gte sich ein Leser nach Möglichkeiten, AVR-Prozessoren auf dem Mac zu programmieren. Sie geben den Rat, gleich bot zu campen und die Sache mit Vista zu machen, weil auf dem Mac nichts Brauchbares vorhanden sei. Dem kann ich so nicht ganz zustimmen.Ich habe erst vor einigen Monaten mit Mi-krocontrollern zu arbeiten begonnen. Meine Projekte sind demzufolge noch nicht sehr umfangreich, lassen sich aber problemlos auf meinem MacBook - vorher auf dem iBook - entwickeln.Ich verwende den Programmer von Tuxgra-phics (http://tuxgraphics.org/electronics), den es auch fertig aufgebaut und program-miert in SMD-Bauweise gibt. Auf der Websei-te finden sich auch einige Projektbeispiele bis hin zu einem Ethernet-Baustein mit passender Hard- und Software. Neben Win und Linux ist auch die Anwendung unter MacOSX beschrieben, die mit dem Terminal problemlos funktioniert. Die Beratung durch den Betreiber der Seite ist hervorragend. Der

Anzei

ge

Page 10: Elektor 447 - 2008-03 (GER)

mailbox briefe · e-mails · ideen

10 elektor - 3/2008

USB-Controller ist von FTDI. Dafür gibt es Treiber für MacOSX vom Hersteller.Die Toolchain habe ich von OSX-AVR geladen (www.osx-avr.org/OSX-AVR/ Introduction/Main).Dort wird das January07-Release für PPC und Intel bereitgestellt. In dem Paket AVRG-CC20070131 sind neben dem Sourcecode auch bereits compilierte Dateien vorhanden, so dass das etwas mühsame Compilieren im Terminal entfällt. Es brauchen nur noch eini-ge Anpassungen an der PATH-Variablen und die Anpassung des Makefiles vorgenommen zu werden. Die Dateien lassen sich aber pro-blemlos auch mit einigen Terminalbefehlen in den Controller laden.

Mittlerweile ist ein December07-Release mit aktuelleren Versionen der Software zu be-kommen. Das habe ich aber nicht ausprobiert. Im gleichen Paket ist auch ein Template für Xcode enthalten. Ich verwende im Moment Xcode2.5 mit OSX 10.5.1. Es soll aber auch mit Xcode3 laufen, wie mir der Ersteller der Templates mitteilte (Nick Lott, www.broken-toaster.com/butterflymp3/index.html). Damit lässt sich das in Xcode enthaltene GCC4.x verwenden. Das dazugehörige Makefile ist einfach an den Programmer anzupassen.Der Code lässt sich in C schreiben und com-pilieren. Assembler-Code lässt sich ebenfalls einfügen, ebenso wie eep-Files. Das Flashen wird mit einem Tastendruck ausgelöst. Es gibt auch einen Simulator simulavr, den ich aber bisher noch nicht verwendet habe.Ruedi Heimlicher

Sie haben sicher Recht, dass es keine Frage der Hardware ist (USB ist USB). Das war aber auch nicht die Frage.Dass es auf der Software-Seite mittlerwei-le Tools für den Mac unter OS X gibt, das ist ebenfalls richtig. Allerdings sind sie in der Re-gel nur etwas für „Hartgesottene“ und wenig komfortabel. Sie stimmen sicherlich zu, dass die Auswahl gegenüber der Windows-Platt-form sehr, sehr klein ist. Übrigens auch, was das Unterstützungspotential für Mac & µC im Internet angeht.

Das war der Hintergrund meiner Antwort auf den Leserbrief. Da mir selbst (typischer

bequemer Mac-Anwender…) das Kramen in den von Ihnen angeführten Tools zu umständ-lich ist, habe ich eine Empfehlung gegeben, die meiner Erfahrung und meinen eigenen Vorlieben entspricht.Ich danke Ihnen für Ihre Anregungen und werde versuchen, in zukünftigen Projekten gegebenenfalls auch solche Alternativen zu berücksichtigen.Thomas Scherer

Updates und Ergänzungen

TV-Light, Elektor 2/2008, S. 24 (Platine 070487-1)In der Stückliste wurde die Bezeichnung von IC3 und IC4 vertauscht. Aus Schaltplan und Platine ist aber eindeutig ersichtlich, dass IC3 der Spannungsregler 7805T und IC4 der Taktoszillator ICS502 ist. Der A/D-Wandler ADC1195TC ist nicht abgekündigt, lediglich der ADC1195JM läuft aus. Aus diesem Grund wurde die Platine auch so auslegt, dass beide Versionen verwendbar sind (siehe Artikel-Textabschnitt „Platine“). Das IC ist auch einzeln bei Geist-Electronic erhältlich.Die für das Projekt verwendeten LED-Leis-ten sind z.B. als „LEDlight flexibel 12V“ bei Reichelt erhältlich (Bestellbezeichnung: LED 13,5RGB 3W).Die in der Stückliste unter der Nummer 070487-91 angegebene „Platine bestückt und getestet“ wird im Elektor-Shop nicht angeboten. Dies wurde der Redaktion leider erst nach dem Drucktermin der Februar-Aus-gabe mitgeteilt, so dass es im Artikel leider nicht mehr korrigiert werden konnte.

Anti-Standby-Switch, Elektor 1/2008, S.24 (Platine 070797-1)

In den Schaltplan hat sich ein unauffälliger Fehler eingeschlichen, der (dank korrekter Pla-tine) trotz mehrfacher Kontrolle nicht bemerkt wurde: Am negativen Anschluss der Versor-gungsspannung von IC6 ist ein Massesymbol ge-zeichnet – richtig ist aber +5 V (siehe Abbildung). Der Autor dankt den aufmerksamen und hartnäckigen Forenteilnehmern Halifax1947 und Plutor für die Aufdeckung.

Vielseitiges DC-Power-Meter, Elektor 1/2008, S. 38 (Platine 070559-1)

Durch eine Verwechslung ist für Bild 4 ein falscher Screendump verwendet worden.

MailBoxIn dieser Rubrik veröffentlichen wir

Kritik, Meinungen, Anregungen, Wünsche oder Fragen unserer Leser. Die Redaktion trifft die Auswahl und

behält sich Kürzungen vor. Bitte geben Sie immer an, auf welchen Artikel und welche Ausgabe (Monat/Jahr) sich Ihr

Schreiben oder Mail bezieht.

Sie erreichen uns per E-Mail [email protected],

per Fax (02 41/88 909-77)

oder unter der Anschrift:

Redaktion ElektorSüsterfeldstr. 25

52072 Aachen

In PonyProg dürfen nur die Bits gesetzt wer-den, die bei TwinAVR (Bild 5) nicht gesetzt sind! Besonders unangenehm ist es, wenn in PonyProg bei CKSEL 0 bis 3 ein Häkchen ge-setzt wird: Der Controller lässt sich dann nach dem Programmieren nicht mehr ansprechen und kann nur durch Anlegen eines externen Taktsignals wieder „zurückgeholt“ werden.Der Autor hat inzwischen eine Firmware-Version 2.0 für den ATmega168 entwickelt, die man über seine Homepage beziehen kann. Bis auf den Austausch des Controllers erfordert die V2.0 keine Änderungen an der Hardware des DC-Power-Meters. Die neue Firmware ermöglicht dank des größeren Speichers des ATmega168 zusätzliche Funkti-onen wie freie Shuntwahl und Langzeitspei-cherung der Messwerte. Alle Informationen und eine ausführliche Beschreibung (PDF) findet man auf der Seite: www.dg7xo.de/selbstbau/nt-power-modul.html

Mugen Hybrid-Audioverstärker, Elektor Oktober 2007, S. 20

In der Stückliste ist R11 versehentlich mit 18 Ω statt mit 18 kΩ (wie im Schaltplan rich-tig) angegeben.

Jahresinhaltsverzeichnis 2007Das Jahresinhaltsverzeichnis 2007 wurde an der gewohnten Stelle auf der Elektor-Web-site www.elektor.de als PDF-Dokument zum Download bereitgestellt: Auf der Homepage oben im Menüs „Zeitschrift“ auswählen.Wer keine Möglichkeit zum Download hat, der kann auch beim Elektor-Redaktions-sekretariat schriftlich (Adresse: Süsterfeldstr. 25, 52072 Aachen) oder telefonisch (0241-889090) eine Kopie anfordern.

Page 11: Elektor 447 - 2008-03 (GER)

113/2008 - elektor

chips & controller info & markt

XBEE-Zigbee-Module bei ReicheltI m neuen K ata log (01/2008) führt Elek-tronik-Distributor Reichelt viele inter-essante Neuheiten auf, darunter LCD-Grafikmodule von Elec-tronic Assembly und ein Web-IO-Interface für die Hut-schienenmontage. Auch die XBEE-Zigbee-Module

WiFi 80211 b/g

WEP / WPA

Ethernet to wireless bridging

WP1001000G-01 55,- €/Stk.*

WP10010NMK-01 79,- €/Stk.*

DevKit (ohne Module)

Cortex-M3®

XPort DirectReferenzdesign

Atlantik Elektronik GmbHFraunhoferstr. 11a, 82152 Planegg

Tel. (089) 89 505-0, Fax (089) 89 505-100Internet: www.atlantikelektronik.com

E-Mail: [email protected]

Besuchen Sie unsauf der embedded world26. - 28.02. in NürnbergHalle 12.0, Stand 444

*Preise zzgl. MwSt und Versand

Seriell zu Wireless

MatchPortTM b/g

Einfachste Integration

10Base-T / 100 Base-TX

Rj-45-Connector

HTTP Compliant Webserver

XPD1001000-01 32,- €/Stk.*

XPD100100K DevKit 85,- €/Stk.*

Seriell zu Ethernet

XPort® Direct+TM

Seriell zu Ethernet

Vollfarbiges OLED Display

Luminary Micro ARM Cortex-M3

XPort Direct

Bitmap Bilder Upload via Ethernet

2 MB Serial Flash

Frei programmierbar

JTAG und SWD

GPIO, SPI, I2C, UART

A200LM03S828 199,- €/Stk.*

OLED-ARM-Board mit EthernetDer XPort® von Lantronix® (Vertrieb Atlantik Elek-tronik) ist einer der bekanntesten Embedded-De-vice-Server, mit dem sich Mikrocontroller über eine serielle Schnittstelle an ein Ethernet-basiertes Netz anbinden lassen. „XPort® Direct“ heißt eine kleine Erweiterungsplatine, die Controller-Boards ether-net-fähig macht. Ein Beispiel ist das erste Embed-ded-Core-Modul mit integriertem vollfarbigen OLED-Display, welches ebenfalls von Atlantik Elek-tronik angeboten wird. Das A100LM03828 stützt sich auf Luminary Micros neuen ARM-Cortex-M3-Mikrocontroller und bietet Geräteherstellern ein komplettes Hauptprozessorsystem mit vollem Zu-griff auf bis zu 20 digitale und 8 analoge IOs, SPI und 2 UARTS. Der Cortex-M3 gilt als Nachfolger des ARM7 und ist der erste ARM-Core mit integriertem Interrupt-Controller.

Das OLED stellt Grafiken im Format 128 x 128 Pixel und bis zu 24 bit Farbtiefe dar. Bilder können über USB oder Ethernet geladen werden. Gerade die An-bindung von OLEDs an einen Mikrocontroller, mit den zum Teil sehr hohen benötigten Versorgungs-spannungen und einschließlich der zugehörigen Software, stellen den Entwickler vor große Heraus-forderungen. Das OLED-Board senkt diese Hürden auf ein Minimum und ermöglicht eine Verringe-rung der Entwicklungszeit. Die komplette Software läuft oberhalb einer Betriebssystemschicht mit Free-RTOS, einem Open-Source-Echtzeit-Scheduler. Da-mit wird dem Entwickler nahezu die komplette Res-sourcenverwaltung und das Taskmanagement ab-genommen. Außerdem kommt eine von Luminary Micro entwickelte Treiber-API zum Einsatz, mit der sich eine direkte Registerkonfiguration auf ein Mi-nimum reduzieren lässt. Viele verschiedene Beispielanwendungen ermög-lichen einen schnellen Einstieg in die Programmie-rung des Moduls. Über den integrierten JTAG-De-bugger lassen sich Applikationen direkt auf dem Target debuggen und auch programmieren. Dafür wird keine weitere Hardware benötigt; eine ein-fache USB-Verbindung genügt. Die Entwicklungs-umgebung basiert auf Eclipse, GCC und GDB und ist ebenfalls Open Source.

www.atxx.dehttp://produkte.atlantixx.de/evalboard.74.0.htmlwww.lantronix.com/device-networking/embedded-device-servers/xport-direct.html

ARM9-Stamp mit Linux

Das neue ARM9-CPU-Modul „Stamp“ von taskit vereint auf einer Platinenfläche von 53 x 38 mm einen Atmel AT91SAM9261-Mikrocon-troller sowie je einen 64-MB-SDRAM- und 64-MB-Flash-Baustein (es ist auch eine Versi-on mit 32 MB SDRAM und 16 MB Flash erhält-lich). Durch das kompakte Format lässt sich das CPU-Modul auch in platzbeschränkte Anwen-dungen integrieren. Insgesamt sind 200 Prozessorpins herausge-führt, wobei die Signale über zwei industrie-taugliche 100-polige Hirose FX-8 Stecker über-tragen werden. Damit kann der Anwender auf eine breite Auswahl an Schnittstellen und Peri-pheriegeräten zugreifen. Zu den unterstützten Schnittstellen gehören ein 32-bit-Parallel-Bus, JTAG, 2x USB-Host, 1x USB-Device, 4x USART, 2x SPI, TWI (I²C kompatibel) sowie 80 digitale I/O-Ports. Daten lassen sich über einen SD/MMC-Card- oder Smart-Card-Slot speichern. Der im AT91SAM9261 integrierte LCD/TFT-Controller bietet eine Auflösung von bis zu 2048 x 2048 Pixel bei 24 bit Farbtiefe. Der mit 200 MHz ge-taktete ARM926EJ-S-Prozessorkern eignet sich aufgrund seines stromsparenden Betriebs be-sonders für den Einsatz in mobilen Geräten. Auf der Stamp9261 ist das Open-Source-Be-triebssystem Linux zusammen mit dem Boot-loader U-Boot bereits vorinstalliert. Die Pro-grammierung der Stamp erfolgt mit den mit-gelieferten Standard-GNU-Programmen. Zu diesen gehören unter anderem die GNU-Com-piler-Collection, der Texteditor GNU-Emacs so-wie die GNU-C-Bibliothek. Zur Stamp ist auch ein Starterkit erhältlich, das Software auf CD, Kabel, Netzteil, das herstellereigene Eval-Board Panel-Card Base sowie einen Adapter zum An-schluss an das Eval-Board beinhaltet.

www.taskit.de/produkte/stamp/index.htm

Anzei

ge

Page 12: Elektor 447 - 2008-03 (GER)

12 elektor - 3/2008

von Maxstream (siehe Elektor 2/2007) hat Reichelt jetzt im Angebot. Mit den kompakten Bauteilen lassen sich die unterschiedlichsten Ap-plikationen mit einer Funkübertragung nach dem ZigBee-Standard (2,4 GHz) erweitern, ohne dass sich Entwicker in die Details der Zig-Bee-Kommunikation einarbeiten müssten. Die Module XBEE (1 mW Sendeleistung) und XBEE Pro (100 mW, in Deutschland allerdings gesetzlich auf rund 10 mW beschränkt) stehen für 29,90 Euro bezie-hungsweise 47,50 Euro im Katalog (inklusive Mehrwertsteuer).

www.reichelt.dewww.elektor.de/xbeeD

Ethernet für Embedded-Systeme

Mit dem Echtzeit-Ethernet-Modul RTEM und dem Embedded-Steue-rungsmodul ECM baut und vermarktet ED-V zwei Referenzdesigns für die Echtzeit-Mikrocontrollerfamilie „fido1100“ von Innovasic Se-miconductor. Die speziell auf die Anforderungen der Automation hin konzipierten Minimodule lassen sich für das Rapid Prototyping und die Performance-Evaluierung verwenden. Darüber hinaus können die Platz sparenden Baugruppen auch direkt in das zu entwickelnde Produkt integriert werden.Das Echtzeit-Ethernet-Modul RTEM versorgt jedes Embedded-Sy-stem mit einer 10/100-Ethernet-Schnittstelle. Das auf dem „fido1100“ basierende Design garantiert ein extrem deterministisches Verhal-ten, da beim Empfangen und Senden von Datenpaketen mit hoher Priorität ein niedriger Jitter auftritt.Das Embedded-Steuerungsmodul ECM ist für Nicht-Ethernet-Syste-me geeignet, die neben einer fehlersicheren Echtzeitsteuerung eine breite Auswahl an Ein- und Ausgabeschnittstellen benötigen. Dank der auf „fido1100“ implementierten, programmierbaren I/O-Engines lassen sich mit nur wenigen externen Komponenten zahlreiche se-rielle und parallele Schnittstellen, einschließlich UARTs, GPIO, LCD, SPI, I2C und CAN realisieren.Für die Applikationsentwicklung und zum Debugging können bei-de Referenzplattformen auf ein anwendungsspezifisches Basisboard gesteckt werden. ED-V unterstützt alle Kunden beim Design dieses Basisboards.

www.ed-v.dewww.innovasic.com/fido.htm

PSoC-Controller-KitCypress Semiconductor bietet ein neues Universal PSoC® CapSen-se™ Controller Kit namens CY3280-BK1 an, das die Entwicklung und das Debugging beliebiger CapSense-Systeme (auf Basis kapaziti-

ver Berührungssensoren) erleichtert. Neben vorge-fertigten Regelschaltungen umfasst das Kit auch Con-troller-Boards für die PSoC-Bausteine CY8C20x34 und CY8C21x34. Hinzu kom-men ein Breadboard-Modul und ein weiteres Modul zur Implementierung von bis zu fünf Tastern und einem Schieberegler zusammen mit Beispiel-Overlays, sodass

info & markt chips & controller

ein weiter Bereich unterschiedlicher Bedienfelddesigns abgedeckt wird. Das zusammen mit PSoC Designer™ und PSoC Express™ einsetzbare Kit ermöglicht die Überwachung und Feinabstimmung von CapSen-se-Designs mit Hilfe einer I²C-USB-Brücke, die ebenfalls im Kit ent-halten ist. Das Kit unterstützt die Abtastmethoden CSA (CapSense Successive Approximation) und CSD (CapSense Sigma Delta). Das CSA-Verfahren zeichnet sich durch seine hohe Störimmunität und seinen geringen Stromverbrauch aus und ist damit ideal für porta-ble Applikationen geeignet. Das CSD-Verfahren wiederum besticht durch seinen fehlerfreien Betrieb in nassen Umgebungen und durch sein ausgezeichnetes Temperaturverhalten. Es bietet sich damit ins-besondere für feuchtigkeitsempfindliche Anwendungen an. Neben den Boards enthält das Kit auch einen Programmer und zwei Soft-ware-CDs mit den Programmen PSoC Express, PSoC Designer und PSoC Programmer.

www.cypress.com

CT-Sigma-Delta-AD-Wandler massentauglichUnter der Bezeich-nung ADC12EU050 stellt National Semi-conductor den in-dustrieweit ersten Hochgeschwindig-keits-Analog-Digi-tal-Wandler (ADC) in Continuous-Time-Sigma-Delta-Techno-logie (CTSD) vor. Der neue 8-Kanal-AD-

Wandler arbeitet mit einer Auflösung von 12 bit und erreicht eine Abtastrate von 50 Millionen Abtastungen pro Sekunde, was eine aliasfreie Abtastbandbreite von 25 MHz ergibt. Mit 350 mW ist seine Verlustleistung nach Herstellerangaben 30 % niedriger als die konkurrierender Bausteine in Pipeline-Architektur. Die CTSD-Technologie ist bereits seit über 15 Jahren Gegen-stand der Forschung an Hochschulen und in der Industrie. Die rein resistive und damit einfach anzusteuernde Eingangsstufe der Continuous-Time-Wandler benötigt keinen Sample-and-Hold-Verstärker. Weitere Vorteile gegenüber konventionellen Konzepten sind eine geringere Leistungsaufnahme und ein günstigeres Verhalten bei Eingangsspannungen, die den Mess-bereich überschreiten. Mit der Continuous-Time-Architektur lässt sich außerdem das Systemdesign drastisch vereinfachen, da sie die Integration weiterer Signalpfad-Funktionen wie etwa der Signalaufbereitung ermöglicht und darüber hinaus die Anti-Aliasing-Filterung in den ADC einbindet. Mit der Vorstellung des ADC12EU050 ist National Semiconduc-tor der erste Hersteller, dem die Umsetzung der Forschungser-gebnisse in die Produktion gelungen ist. National plant die Er-weiterung des CTSD-ADC-Produktangebotes für Anwendungen im Imaging- und Kommunikations-Bereich sowie für Prüf- und Mess-Applikationen, die nach einem großen Dynamikbereich im Verbund mit extrem niedriger Leistungsaufnahme verlan-gen. Der Baustein verringert die Komplexität der äußeren Be-schaltung dank seiner programmierbaren, seriellen Ausgänge, welche die Industriestandards LVDS (Low-Voltage Differential Signaling) und SLVS (Scalable Low-Voltage Signaling) unterstüt-zen. Der Start der Serienfertigung ist für das dritte Quartal 2008 vorgesehen, der Preis beträgt 64 US-Dollar (ab 1.000 Stück). Mu-ster und Eval-Boards lassen sich beim Hersteller bestellen.

www.national.com/pf/DC/ADC12EU050.html

Page 13: Elektor 447 - 2008-03 (GER)

133/2008 - elektor

Anzeige

BLDC-Motorsteuerung

Luminary Micro stellt eine breite Produktpalette an ARM-basierten Stellaris-Mikrocontrollern sowie das neue BLDC Motor Control Refe-rence Design Kit vor. Das mit Ethernet und CAN ausgestattete Lumi-nary Micro Stellaris BLDC Motor Control Reference Design Kit (RDK-BLDC) kombiniert die Leistung und Flexibilität der Stellaris-Mikro-controller mit den leistungsstarken Halbleitermodulen von Fairchild Semiconductor und treibt auf diese Weise 3-Phasen-Wechselstrom-Induktionsmotoren von bis zu 36 V an. Das Design ist insbesondere auf die Verwendung in der Fabrikautomatisierung, Robotertechnik, elektrischen Rollstühlen und anderen Fahrzeugen, Pump- und Be-lüftungssystemen und in Haushaltsgeräten abgestimmt. Das BLDC Reference Design Kit beinhaltet einen Stellaris LM3S8971-Mikrocon-troller, einen 3-Phasen-Wechselstrom-Induktionsmotor, ein graphi-sches Kontrollprogramm für Windows sowie dazugehörige Kabel, Quellcode und Dokumentation.

www.luminarymicro.com

Komplexester FPGAAltera kündigt den nach eige-nen Angaben industrieweit komplexesten FPGA-Baustein an. Als Mitglied der Stratix-III-Familie bietet

der EP3SL340 etwa 340.000 Logikelemente (LEs) und unterstützt DDR3-Speicherschnittstellen mit bis zu 1067 Mbit/s. Darüber hin-aus soll der schnelle Chip die vergleichbar geringste Leistungsauf-nahme aufweisen. Nach Herstellerangaben bietet der EP3SL340 im Vergleich zu an-deren entsprechend komplexen FPGAs einen Performance-Vorteil von etwa 25 Prozent, während die Leistungsaufnahme dank der „Pro-grammable Power Technology“ um 29 Prozent geringer sein soll. Mit der Kombination aus 340.000 LEs, 17 Mbit Embedded-Speicher und 575 Multiplizierern (18 x 18) erhalten Entwickler ein Höchstmaß an Funktionalität. Die Stratix-III-FPGAs sind mit der Quartus®-II-Design-Software des Herstellers programmierbar, die eine äußerst schnelle Compilierung erlaubt.

www.altera.com/stratix3

Analyse-Tool für Hex-FilesHEXit von HSE Electronics ist ein Software-Tool zur komfortablen Analyse und Bearbeitung von Intel-HEX-Dateien. Auch wenn ein Projekt mit 0 Errors und 0 Warnings kompiliert worden ist, kann es mitunter sein, dass nach dem Laden der Applikation in den Flash-Speicher nichts funktioniert. Das Analyse-Tool checkt nun die HEX-Datei auf Speicherbele-gung, Adress-verteilung, Ver-t e i l u n g v o n Programm-codes/-daten so-wie auf mehrfach belegte Adressen. Das Ergebnis wird grafisch dargestellt. So könnte sich z.B. herausstel-len, dass der Reset-Vektor nicht belegt worden ist, oder dass der ein-gestellte Adressbereich nicht dem Hardware-Design entspricht.Das Tool unterstützt Intel-HEX-Dateien sowie Binär-Dateien. Beide Dateiformate können in das jeweils andere konvertiert werden. Es lassen sich weiterhin Prüfsummen (CRC16/32 oder ADD32) bilden, außerdem Dateien splitten oder zusammenfügen. Darüber hinaus können virtuelle Daten in Dateien integriert werden, mit denen sich das Verhalten eines Systems testen lässt, so zum Beispiel beliebige Zahlen, Zahlenrampen oder Zufallszahlen. Eine Demo-Version lässt sich beim Hersteller herunterladen.

www.hse-electronics.de

Page 14: Elektor 447 - 2008-03 (GER)

Anzeige

14 elektor - 3/2008

info & markt news

Vom 26. bis zum 28. findet in Nürnberg die „Embedded World“ statt – neben der Electronica im November ist diese Veranstal-tung das Elektronikmesse-High-light des Jahres in Deutschland.Natürlich ist auch die Zeit-schrift Elektor mit einem eige-nen Stand vertreten (Halle 10 - Stand 10.213). Dort stehen nicht nur der Chefredakteur der deutschen Elektor, Ernst Krem-pelsauer, und der Elektor-Ent-wickler Chris Vossen für Fragen zur Verfügung, es sind auch viele interessante Elektor-Projekte zu sehen. Ein Highlight ist sicher-lich das Elektor-CC²-ATmega-Board, das im Mittelpunkt einer kom-binierten Artikel/TV-Serie des Computerclubs 2 und der Zeitschrift Elektor stehen wird. Dieses Projekt beginnt im Aprilheft und stellt Schritt für Schritt Applikationen wie ein 2-Draht-LC-Display, RC5-De-coder, Wetterstation mit 24 bit Auflösung und viele weitere vor (sie-he dazu den Einführungsartikel in diesem Heft).Eine wirklich spektakuläre Mikrocontroller-Anwendung wird eben-falls am Stand zu sehen sein – nämlich eine weitgehend autonom fliegende Mikrodrohne. Udo Jürß, der Designer des AVR-Boards,

entwickelt hauptberuflich so genannte „Quadrocopter“, die vier Rotoren besitzen. Zur La-geregelung solcher Fluggeräte kann ebendas ATmega-Mikro-controller-Board zum Einsatz kommen. Da der Quadrocopter auch mit einer Kamera ausge-stattet sein wird, darf man sich in Nürnberg auf eine tolle Vor-stellung freuen.Neben dem Elektor-CC²-ATmega-Board sind natürlich noch viele andere Projekte in Nürnberg zu sehen. So zum Beispiel der USB-Programmer „USBprog“ aus dem Oktoberheft, der sich gleicher-

maßen als Programmer für AVR- und ARM-Controller, als USB-zu-RS232-Wandler und als USB-I/O-Interface verwenden lässt. Weitere Neuheiten sind das Software Defined Radio, der AVR-Webserver und der GPS-SMS-„Peilsender“ ElekTrack, den Chris Vossen selbst entwi-ckelt hat. Zum FPGA-Board aus 2006 wird eine neue Begleit-DVD präsentiert, die alle Teile der FPGA-Artikelserie enthält. Abgerundet wird das Ganze wie immer von interessanten Büchern.

www.embedded-world.de (080020)

Mit Elektor nach China!

Vom 12. bis zum 21. April 2008 organisiert Elektor International Media eine Internationale Studienreise nach China. Die Reise bietet die Gelegenheit, das Land - das zu den volkswirtschaft-lich wichtigsten Staaten der Welt zählt - umfassend kennen zu lernen. Dabei liegt der Schwerpunkt selbstverständlich auf dem Fachgebiet „Elektronik“, doch bleibt auch Zeit für die chinesische Kultur.Die Teilnehmer besuchen viele interessante Elektronik-Betriebe in verschiedenen Städten. Hierdurch erhält man einen guten Ein-druck von den wirtschaftlichen Möglichkeiten, die China derzeit bietet. Die Betriebsbesichtigungen sind eine einmalige Chance, denn nur eine geringe Anzahl von chinesischen Firmen ist auto-risiert, europäische Besucher zu empfangen. Die Reise beginnt in Shenzhen/Hongkong mit der Messe „China Electronics Fair” (eine der fünf größten Elektronik-Messen in Asi-en) und dem Besuch eines Elektronikunternehmens. In Shanghai stehen weitere Betriebe und der bekannte Fernsehturm auf dem Programm, der als eines der höchsten Bauwerke der Welt einen grandiosen Ausblick über die Weltmetropole bietet. Die Reise en-det in Peking, wo man weitere interessante Elektronikfirmen und zudem die verbotene Stadt besichtigen kann. Ein Besuch der chi-nesischen Mauer darf selbstverständlich nicht fehlen!

www.elektor.de/chinareise (080019

Elektor auf der Embedded World

Page 15: Elektor 447 - 2008-03 (GER)

Anzeige

Aus gutem Grunddie Nummer eins. EAGLE 4.1

Schaltplan · Layout · Autorouter

fürWindows®Linux®Mac®

Unter den Top-100-Unternehmen in Deutschland dürfte es kaum eines geben, in dem EAGLE nichteingesetzt wird. Der entscheidende Grund für den Einsatz von EAGLE ist meist nichtder günstige Preis, sondern die einfache Handhabung. Hinzu kommt der hervorragende Support, der bei CadSoft grundsätzlich kostenlos ist und jedem Kunden unbeschränkt zur Verfügung steht.

EAGLE 4.1 Light ist Freeware!EAGLE 4.1 Light ist Freeware!Zum Testen und für nicht-kommerzielle Anwendungen dürfen Sie EAGLE Lightkostenlos verwenden. Diese Version ist aufPlatinen im halben Europaformat mit maximal zwei Signallayern und ein Schaltplanblatt beschränkt. Alle anderen Features entsprechen denen der Professional-Version.Sie steht zum Download im Internet bereit.

Wenn Sie sich für die kommerzielle Light-Version entscheiden,bekommen Sie zusätzlich das Handbuch und die Lizenz für kommerzielle Anwendungen. Unsere Standard-Version eignet sichfür Platinen im Europaformat mit bis zu vier Signallayern. In derProfessional-Version gibt es solche Einschränkungen nicht.

GRATIS

GRATIS

www.cadsoft.dewww.cadsoft.deCadSoft Computer GmbHHofmark 2, 84568 Pleiskirchen Tel. 08635-6989-10, Fax -40 E-Mail : [email protected]

Alle Preise inklusive 19% MwSt.Upgrades zum Differenzpreis

Jedem EAGLE-Paket in der Professional- bzw. Standard-Ausführung liegt ein Gutschein über eine professionellgefertigte doppelseitige Europakarte bei.

Windows ist ein eingetragenes Warenzeichen der Microsoft Corporation. Linux ist ein eingetragenes Warenzeichen von Linus Torwalds. Mac ist ein eingetragenes Warenzeichen der Apple Computer, Inc.

gewählt.

Die Leser der Zeitschrift Elektronik haben in den letzten Jahren jede neue EAGLE-Version

zum

Light Standard Professional

LayoutLayout+SchaltplanLayout+AutorouterLayout+Schaltplan+Autorouter

49 € 714 €

476 €

238 €

1428 €

952 €

952 €

476 €

Produkt des Jahres

Preise

Diese Kriterien sind die wahren Kostenkiller!

Platinen, die mit EAGLE entwickelt wurden, befinden sich in Patientenüberwachungsgeräten, Chipkarten, Trockenrasierern, Hörgeräten, Autos und Industriesteuerungen. Sie sind klein wie ein Daumennagel oder groß wie ein PC-Motherboard. Sie wurden in Einmannbetrieben oder Großkonzernen entwickelt.

476 €

153/2008 - elektor

elekTermineFEBRUAR26. - 28. NürnbergEmbeddedWorldNeben der Electronica ist diese Messe rund um Mikrocontroller und Co. das Highlight des Jahres. Auch das Konfe-renzprogramm kann sich sehen lassen.www.embedded-world.de

MÄRZ4. - 9. HannoverCeBITEin absoluter Pflichttermin - unzählige Produkte aus den Bereichen Hard- & Software, Kommunikation und Unterhal-tungselektronik werden hier zum ersten Mal gezeigt.www.cebit.de

5. GießenPraxisworkshopMR-SensorikAn diesem Praktikumstag steht die Län-gen- und Winkelmessung mit magneto-resistiven Sensoren auf dem Programm. Von Sensor-Hersteller Sensitec und der FH Gießen.www.sensitec.com

5. - 6. DüsseldorfMobileNetzwerkeinderAutomationVDI-Seminar über Wireless-Technologien: Mobilfunk, WLAN, Bluetooth, ZigBee, ka-bellose Sensoren/Aktoren und vieles mehr.www.vdi-wissensforum.de/index.php?id=180

10. + 11. +12. + 13. Dortmund, Stuttgart, Zürich, NürnbergRenesasR8CWorkshopVeranstaltet von Distributor Sasco Holz. Die Features des kleinen Controllers werden vorgestellt, dazu gibt’s Pra-xisübungen. Ein Starterkit ist im Preis enthalten.www.sascoholz.de/cda/sc/de/teche-vents/0,5225,1809,00.html

11. + 13. Pforzheim (Baden-Württemberg)StartenmitdenMicrochip-ToolsAuf dem Programm des Halbtages-Semi-nars stehen die MPLAB IDE und weitere Softwaretools. Als Option gibt’s nachmittags noch ein Seminar rund um PIC16 aufwärts.https://secure.microchip.com/RTC/de-tails.aspx

11. - 12. DresdenNanofair2008Auf dem Kongress steht die Nanotechno-logie auf den Gebieten Automobil, Elek-

tronik, Optik, Materialwissenschaften und mehr im Fokus.www.nanofair.com

11. - 12. LudwigsburgSensoren&Messsysteme2008Tagung und Ausstellung zu bildgebenden Sensoren, Sensorarrays, Luftgütesen-soren, Kraftfahrzeugsensoren und vielem mehr.www.vdi-wissensforum.de/index.php?id=188

12. LandshutMSP430One-DayWorkshopDer Name der Veranstaltung ist Pro-gramm – gesprochen wird allerdings deutsch. Im Preis ist ein Eval-Board ent-halten. Weitere Seminare siehe Website.http://focus.ti.com/docs/training/trai-ninghomepage.jhtml

12. Steinbach am TaunusRoboTestBei diesem Roboterwettbewerb treten die Maschinen in 10 Disziplinen an. An-schließend kann mit den (Hobby-)Kons-trukteuren gefachsimpelt werden.www.robotest.de

12. - 15. Frankfurt am MainProlightandSoundFachmesse mit den Themenschwer-punkten Licht- und Bühnentechnik, Beschallung, Veranstaltungstechnik und Kommunikation.www.prolight-sound.com

APRIL 20081. + 2. Wolfsburg, DresdenTechnicalDataManagementKostenloses Eintages-Seminar von Nati-

onal Instruments. Thema: Lösungen zur Verwaltung und Weiterverarbeitung von Daten aus unterschiedlichsten Quellen und Formaten.www.ni.com/germany/veranstaltungen

1. + 3. + 16. + 29. Norderstedt, Nettetal, Pforzheim, BerlinGSM/GPRS-ModemsundModuleDer Eintages-Workshop wird von Herstel-ler Wavecom und Distributor Glyn veran-staltet. Thema: Aktuelle und zukünftige Hard- und Software.www.glyn.de

5. DortmundElektorRöhren-WorkshopMit den bekannten Röhren-Experten Menno van der Veen und Rainer zur Lin-de. Neben Grundlagenwissen wird viel Wert auf die Praxis gelegt.www.elektor.de/workshop

Page 16: Elektor 447 - 2008-03 (GER)

16 elektor - 3/2008

Neue Jahrgangs-CD 2007

Jahrgangs-CDs sind schon seit über 10 Jahren Tradition – und bei Elektor-Lesern sehr beliebt. Die im Laufe eines Jahres ver-öffentlichten Beiträge können mit der Suchfunktion schnell gefunden werden. Der Acrobat Reader macht das Gewünschte in kürzester Zeit auf dem Bild-schirm sichtbar.Im Jahr 2006 musste die Struktur der Jahrgangs-CD einer gründ-lichen Veränderung unterzogen werden. Da das frühere Archiv-programm nicht mehr verwen-det werden konnte, wurde es durch eine webservergesteuer-te Applikation ersetzt. Während man mit der neuen Funktiona-lität durchaus zufrieden sein konnte, gab es bei einigen Com-puter-Konfigurationen Probleme mit dem von der CD gestarteten Apache-Webserver. Wir haben uns daher nach einer Alternati-ve umgesehen. Für den Zugriff auf die Jahrgangs-CD 2007 ist jetzt nur noch ein Web-Browser erforderlich, der ActiveX-Kom-ponenten verarbeitet oder eine im System installierte Java-Um-gebung nutzt. Diese Unterstüt-zung darf im Browser nicht de-aktiviert sein.Auf Wunsch vieler Leser haben wir wieder eine Indexfunktion für ältere Jahrgänge hinzuge-fügt (auf der Jahrgangs-CD 2006 war sie nicht mehr vorhanden). Wenn man die Artikel der älteren Jahrgangs-CDs (ab 1998) auf die Festplatte kopiert, können sie nun wieder mit der Indexfunkti-on aufgerufen werden.Auf der Jahrgangs-CD befin-det sich eine Autostart-Datei für Windows, die das Indexpro-

gramm automatisch startet. Falls die Autostart-Funktion in Windows deaktiviert ist, ge-nügt ein doppelter Mausklick auf die Datei „index.html“, um den Standard-Browser mit der CD-Eingangsseite zu starten. Zuerst wird die gewünschte Landessprache gewählt. Falls das Kästchen unten auf der Seite aktiviert ist, legt das Programm ein Cookie auf dem System ab. Mit Hilfe des Cookies startet das Programm beim nächsten Aufruf sofort in der gewählten Landes-sprache. Ein späterer Wechsel ist durch Anklicken des ELEK-TOR-Logos jederzeit möglich, das Programm kehrt dann zur Eingangsseite zurück.Die Funktionalität und Bedie-nung der Jahrgangs-CD 2007 ist mit der vorangegangenen Aus-gabe weitgehend identisch, so dass sich eine Beschreibung an dieser Stelle erübrigt.

Von der FestplatteFür den Start der Inhalte von der Festplatte muss zuerst ein eigener Ordner, zum Beispiel „C:\Elektor\“ angelegt werden. Danach wird der Inhalt der Jahr-gangs-CD 2007 vollständig in diesen Ordner kopiert, der Ord-ner enthält nun fünf Unterord-ner. Ein doppelter Mausklick auf den Unterordner der Lan-dessprache (in diesem Fall \de) öffnet diesen Unterordner. Hier hat der erste Unterordner den Namen „articles“, darin befinden sich weitere Unterordner mit den Namen „1998“ bis „2007“. Im Unterordner „2007“ sind bereits die Artikel des Jahrgangs 2007

als PDF-Dateien vorhanden. Wenn ältere Jahrgangs-CDs vorhanden sind, können deren Inhalte wie folgt übernommen werden:Gehen Sie auf der Festplatte zum Unterordner des betreffenden Jahrgangs. Öffnen Sie auf der Jahrgangs-CD den Unterordner „articles“ und dann „D“. Kopieren Sie alle PDF-Dateien vom geöff-neten Unterordner der CD in den Unterordner des Jahrgangs auf der Festplatte. Die Frage, ob die Dateien auf der Festplatte überschrieben werden sollen, beantworten Sie mit „Ja, alle“. In den Jahrgangsordnern auf der Festplatte stehen PDF-Füllda-teien, die mit den PDF-Dateien der Artikel überschrieben wer-den müssen.Nach diesem Verfahren können alle Inhalte älterer Jahrgangs-CDs in das neue Suchsystem im-portiert werden. Ebenso lassen sich einzelne Artikel-PDFs hin-zufügen, wenn Sie einen Elek-tor-Artikel als PDF-Datei von der ELEKTOR-Website heruntergela-den haben.

Mit Verbesserungsvorschlägen, Problemen und Anmerkungen können Sie sich an das Forum auf der ELEKTOR-Website wen-den. Dort ist zum Thema „Jahr-gangs-CD“ ein eigenes Unterfo-rum eingerichtet.

(080023)gd

Von Harry Baggen

Zeitgleich mit der März-Ausgabe 2008 erscheint auch die Jahrgangs-CD 2007. Auf der CD sind sämtliche im zurückliegenden Jahr in ELEKTOR veröffentlichten redaktionellen Beiträge im PDF-Format zusammengestellt. Verglichen mit der Jahrgangs-CD 2006 ist die neue Version schneller, sie läuft unter Windows, Mac-OS und Linux. Der Index erfasst alle Elektor-Beiträge ab Jahrgang 1998.

info & markt jahrgangs-cd

Page 17: Elektor 447 - 2008-03 (GER)

173/2008 - elektor

mikroElektronika

Bitte besuchen Sie unsere Website für weitere Informationen: http://www.mikroe.com

BIGPIC4-Entwicklungs-BoardKomplettes Hardware- und Software-Paket mit USB-2.0-Programmer plus mikroICD

Wiesein VorgängerBIGPIC3 als einesder besten 80-Pin-

PIC-Entwicklungssysteme bleibt das BIGPIC4-Board derTradition „mehr Features zum gleichen Preis“ treu. Das Systemunterstützt neueste 64- und 80-Pin-PIC-Mikrocontroller und istmit einem PIC18F8520 ausgestattet. Der schnelle Onboard-USB 2.0 Programmer plus mikroICD erlauben effizientesDebugging und die schnelle Prototypen-Entwicklung. ZumLieferumfang gehören fertig getestete Beispiele in C, BASICund Pascal, die den schnellen Einstieg garantieren.

EasydsPIC4-Entwicklungs-BoardKomplettes Hardware- und Software-Paket mit USB-2.0-Programmer plus mikroICD

Das System unterstützt 18-, 28- und 40-Pin-Mikrocontrollerund wird mit dem Universal-Mikrocontroller dsPIC30F4013mit internem 12-Bit-ADC ausgeliefert. Die vielen Featuresvon EasydsPIC4 machen die Entwicklung einfach. Vieledirekt einsetzbare Beispiele in C, BASIC und Pascal erle-ichtern den Einstieg. Ein schneller USB-2.0-Programmer undder mikroICD (In-Circuit-Debugger) ermöglichen effizientesDebugging und schnelle Prototypen-Entwicklung.

dsPICPRO3-Entwicklungs-BoardKomplettes Hardware- und Software-Paket mit USB-2.0-Programmer plus mikroICD

Das System unterstützt dsPIC-Mikrocontroller in 64- und 80-Pin-Gehäusen und ist mit einem dsPIC30F6014A ausgestattet.Es hande l t s ich um ein umfangre ich ausges ta t te tesEntwicklungsboard für Mikrochip-dsPIC-MCUs. Mit demdsPICPRO3-Board können MCU mit externer Elektronik undeiner Vielzahl von Peripheriegeräten verbunden werden. DiesesEntwicklungsboard verfügt über einen integrierten USB-2.0-Programmer und Anschlüsse für MMC/SD-Speicherkarten, 2 xRS232, RS485, CAN, ENC28J60-Ethernet-Controller, DAC usw.

EasyAVR5-Entwicklungs-BoardMit Onboard-USB-2.0-Programmer

Das Systemunterstützt 8-,

14-, 20-, 28- und 40-Pin-Mikrocontroller und ist mit einemATMEGA16 ausgestattet. Jumper, Bauteile und Pins sinddeutlich auf dem Board markiert. Das System eignet sich zumTest vieler industrieller Aufgaben: Temperatur-Controller,Zähler, Zeitgeber usw. EasyAVR5 ist ein benutzerfreundlich-es Atmel-AVR-Entwicklungssystem. Der integrierte USB-2.0-Programmer erleichtert die Entwicklungsarbeit. ZumLieferumfang gehören Beispiele in BASIC und Pascal.

EasyARM-Entwicklungs-BoardKomplettes Hardware- und Software-Paket mit USB-2.0-Programmer

Das EasyARM-Board ist mit dem LPC2214-Mikrocontrollervon Philips ausgestattet. Jumper, Bauteile und Pins sinddeutlich auf dem Board markiert. Das System eignet sich zumTest vieler industrieller Aufgaben: Temperatur-Controller,Zähler, Timer usw. Die vielen Features des Boards verein-fachen die Entwicklung. Eines davon ist der USB-2.0-Programmer mit automatischer Umschaltung zwischen „Run“und Programmier-Modus. Beispiele in C werden mitgeliefert.

Easy8051B-Entwicklungs-BoardMit Onboard-USB-2.0-Programmer

Das System unterstützt 14-, 16-, 20-, und 40-Pin-Mikrocontroller und ist mit einem AT89S8252 ausgestattet.Extra PLCC44- und PLCC32-Sockel erlauben zusätzlichauch 32- und 44-Pin-Mikrocontroller. Der mitgelieferte USB-2.0-Programmer unterstützt die In-Circuit-Programmierung.

- Alle unsere Produkte werden in speziellen Schutzkartons versandt.

- Die sichere Online-Bestellung garantiert eine schnelle und sichere Lieferung der bestellten Produkte.

ENTWICKLUNGSTOOLS | COMPILER | BÜCHER

EasyPSoC3-Entwicklungs-BoardMit Onboard-USB-2.0-Programmer

Das System unter-stützt 8-, 20-, 28-und 48-Pin-Mikrocontroller und

ist mit einem CY8C27843 ausgestattet. Jumper, Bauteile undPins sind deutlich auf dem Board markiert. EasyPSoC3 ist einbenutzerfreundliches PSoC-Entwicklungssystem. Der integri-erte USB-2.0-Programmer unterstützt die In-Circuit-Programmierung.

LV24-33-Entwicklungs-BoardKomplettes Hardware- und Software-Paket mit USB-2.0-Programmer plus mikroICD

Das System unterstützt 64-, 80- und 100-Pin-PIC24F/24H/dsPIC33F-Mikrocontroller. Es wird mit dem PIC24FJ96GA010,einem 16-bit-PIC24- Mikrocontroller, 96 KB Flash-Speicher, 8 KBRAM im 100-Pin-Gehäuse ausgeliefert. Beispiele in BASIC,Pascal und C werden mitgeliefert. Wahlweise USB- oder externeStromversorgung. Die vielen Features von LV24-33 erleichterndie Entwicklung stark. Der USB-2.0-Programmer mit mikroICD(In-Circuit-Debugger) ermöglicht effizientes Debugging undschnelle Prototypen-Entwicklung.

Uni-DS3-Entwicklungs-BoardKomplettes Hardware- und Software-Paket mit USB-2.0-Programmer

Das System unterstützt PIC-, AVR-, 805-1, ARM- und PSoC-Mikrocontroller sowie viele Peripheriegeräte. Um mit einemanderen Chip in der gleichen Entwicklungsumgebung fort zufahren, braucht man nur eine Karte wechseln. Das UNI-DS3verfügt über viele Features, welche die Entwicklung verein-fachen. Wahlweise USB- oder externe Stromversorgung. Fürjede MCU-Karte ist ein eigener USB-2.0-Programmermöglich!

Durch die Unterstützung sehr vieler Mikrocontroller, eine benutzerfre-undliche IDE, hunderte von fertig einsetzbaren Funktionen und eineVielzahl integrierter Tools gehören die Compiler von mikroElektronikazu den Besten überhaupt. Die Ausstattung der mikroElektronika-Compiler ist umfangreich: mikroICD, Statistikmodul, Simulator,Bitmap-Generator für Grafikdisplays, Konvertierungstool für 7-Segmen t -Anze igen ,ASCI I -Tabe l l e ,HTML-Code -Expo r t ,Kommunikations - Tools für SD/MMC, UDP (Internet), USB, EEP-ROM-Editor, diverse Programmierungsmodi usw.Jeder Compiler verfügt über viele Routinen und Beispiele: Lesen undBeschreiben von EEPROMs sowie FLASH-, MMC-, SD- und CF-Karten, Text- und Grafik-Ausgabe auf LCDs, Abfrage von Tasten, 4x4-Tastenfeldern und einer PS/2-Tastatur, Erzeugung von Signalen undSounds, String-Bearbeitung, Mathematik, I2C-, SPI-, RS232-, CAN-,USB-, RS485 und 1Wire-Kommunikation, Manchester-Codierung,logische und numerische Konversionen, PWM-Signale, Interruptsusw. Die mitgelieferte CD-ROM enthält viele fertig getesteteProgramme, die mit unseren Entwicklungsboards verwendet werdenkönnen.

S O F T W A R E A N D H A R D W A R E S O L U T I O N S F O R E M B E D D E D W O R L D

Compiler von mikroElektronikaPascal-, BASIC- und C-Compiler für viele Mikrocontroller

http://www.mikroe.com/en/distributors/Unter dieser URL finden Sie die Distributoren für: Großbritannien, USA, Deutschland, Japan,Frankreich, Griechenland, Türkei, Italien, Slowenien, Kroatien, Mazedonien, Pakistan, Malaysia,Österreich, Taiwan, Libanon, Syrien, Ägypten, Portugal und Indien.

BIGAVR-Entwicklungs-BoardMit Onboard-USB-2.0-Programmer

Das System unterstützt 64- und 100-Pin-AVR-Mikrocontrollerund ist mit einem 10-MHz-ATMEGA128 ausgestattet. Vielefertig getestete Beispiele erleichtern den erfolgreichenEinsatz des Systems. BIGAVR ist ein einfach anzuwenden-des Atmel-AVR-Entwicklungssystem mit vielen Features.Wahlweise USB- oder externe Stromversorgung und dieUnterstützung von Text- und Grafik-Ausgabe auf LCDsmachen das System sehr universell.

mikroElektronika stellt besonders leistungsfähige Entwicklungssysteme her. Die weltweite Verfügbarkeit und eine große Zahlzufriedener Kunden kommen zu unserem erstklassigenService hinzu. mikroElektronika ist offizieller Berater für PIC-Mikrocontroller und Partner von Microchip. mikroElektronika ist

schon seit 2002 offizieller Berater und Partner von CypressSemiconductors und außerdem auch Berater für Produkte von PhilipsElectronics. Alle unsere Produkte entsprechen den RoHS-Richtlinien.

PICFlash programmer – Einultraschneller USB 2.0Programmer für PIC MCU. Wieauch schon sein Vorgänger istder PICFlash einer der schnell-sten PIC-Programmer auf demMarkt. Er unterstützt mitmikroICD jetzt noch mehr PIC-MCUs und bietet demEntwickler eine größereAuswahl an PICs für eigeneEntwicklungen. Mit demmikroICD Debugger könnenSie am Host-PIC-MCU compil-er Programme ausführen undVariablenwerte und die Inhaltedes Special Function Registers(SFR), Speichers und desEEPROMs anzeigen lassen,während das Programm läuft.

PICPLC16B-Entwicklungs-BoardKomplettes Hardware- und Software-Paket mit USB-2.0-Programmer plus mikroICD

PICPLC16B ist ein System für Steuerungen in industriellenSystemen und Maschinen. 16 durch Optokoppler isolierteEingänge und 16 Relais-Ausgänge (bis 10 A) passen für vieleAnwendungen. Der schnelle mikroICD (In-Circuit-Debugger)ermöglicht effizientes Debugging und schnelle Prototypen-Entwicklung. Ausgestattet mit RS485, RS232, Ethernet, USB-2.0-Programmer und mikroICD bleiben kaum offene Wünsche.

Das System unterstützt 64-, 80- und 100-Pin-PIC18FxxJxx-Mikrocontroller und ist mit einem PIC18F87J60 ausgestattet,der über integrierte 10-Mbps-Ethernet-Kommunikation im 80-Pin-Gehäuse verfügt. Es handelt sich um ein sehr einfach zubenutzendes Entwicklungssystem. Der integrierte USB-2.0-Programmer plus mikroICD (In-Circuit-Debugger) ermöglicheneffizientes Debugging und die schnelle Entwicklung vonPrototypen. Beispiele in C, BASIC und Pascal werden mit-geliefert.

Wie sein Vorgänger EasyPIC4 ist das EasyPIC5-Entwicklungs-Board eines der besten PIC-Entwicklungssysteme und verfügtüber noch mehr neue Features zum gleichen Preis. Das Systemunterstützt 8-, 14-, 18-, 20-, 28- und 40-Pin PIC-Mikrocontrollerund ist mit einem PIC16F877A ausgestattet. Der USB-2.0-Programmer mit mikroICD (In-Circuit-Debugger) ermöglichteffizientes Debugging und schnelle Prototypen-Entwicklung.Beispiele in C, BASIC und Pascal werden mitgeliefert.

EasyPIC5-Entwicklungs-BoardKomplettes Hardware- und Software-Paket mit USB-2.0-Programmer plus mikroICD

LV 18FJ-Entwicklungs-BoardKomplettes Hardware- und Software-Paket mit USB-2.0-Programmer plus mikroICD

CAN-1 Board - InterfaceCAN über MCP2551

CAN-2 Board - Verbindungmit CAN-Bus über SPI-Schnittstelle

RS485 Board -Anschlussvon Geräten an ein RS-485-Netzwerk

Serial Ethernet -Verbindung mit Ethernet-Netzwerk über SPI-Schnittstelle (ENC28J60)

CF Board - EinfacheVerwendung von Compact-Flash in IhremDesign

MMC/SD Board - EinfacheVerwendung von MMC- undSD-Karten in Ihrem Design

EEPROM Board - SeriellesEEPROM-Board über I2C-Schnittstelle

RTC Board - PCF8583 RTCmit Batterie-Backup

ADC Board - 12-Bit Analog-Digital-Wandler mit 4Eingängen

DAC Board - 12-Bit Digital-Analog-Wandler mit SPI

Keypad 4x4 Board - FügtIhrer Anwendung einenTastenblockhinzu

Accel. Board - DiesesBoard ist ein elektronischesGerät zur Messung vonBeschleunigungskräften

0803_elektor_adv_DU 17 11-02-2008 09:22:45

Page 18: Elektor 447 - 2008-03 (GER)

praxis datenlogging

18 elektor - 3/2008

Von Loïc [email protected]

Unser neuer Datenlogger stellt seine universellen Fähigkeiten überall dort unter Beweis, wo Messwerte gesammelt und gespeichert werden sollen. Der Aufbewahrungsort der Messwerte ist eine wechselbare SD-Speicherkarte. Da die Power des Datenloggers in der Software steckt, hält sich der Hardware-Aufwand in Grenzen.

Der neue Datenlogger ist ein Mess-system, das die Spannungsverläufe an vier analogen Eingängen misst und die Werte numerisch speichert. Die Span-nungswerte müssen im Bereich 0...5 V liegen, sie werden auf einer handels-üblichen SD-Speicherkarte [1] abgelegt (SD = Secure Digital).In der Vergangenheit wurden in Elek-tor bereits verschiedene Datenlogger beschrieben, teilweise waren sie für spezielle Einsatzzwecke konzipiert. Beim Entwurf dieses Datenloggers ha-ben wir das Schwergewicht auf Viel-seitigkeit und Allround-Funktionalität gelegt. Der Anwender hat die Wahl zwischen fünf Betriebsarten:

• Der Datenlogger wird von Hand durch Drücken eines Tasters gestar-tet, er wird intern getriggert.

• Die Messwertspeicherung wird von einem externen Triggersignal ausge-löst, zum Beispiel vom Signal eines Sensors, der mit der Betriebsspannung 12 V oder 24 V arbeitet. In diesem Fall muss eine Zenerdiode den Triggerein-gang vor Überspannung schützen.

• Der Datenlogger speichert die Werte der Eingangsspannung in festen Zeit-

intervallen, Abstand zehn Sekunden.

• Der Datenlogger speichert die Werte der Eingangsspannung, zum Beispiel das Ausgangssignal eines Tempera-tursensors, in Abständen von einer Minute.

• Die Datenspeicherung wird ausge-löst, wenn die Spannung am Mess-Eingang einen Grenzwert über-schreitet. Die Vergleichsspannung ist eine Spannung an einem anderen Mess-Eingang.

HardwareMittelpunkt der Schaltung in Bild 1 ist ein PIC-Mikrocontroller der oberen Leistungsklasse von Microchip [2], Ty-penbezeichnung PIC18F452 (IC4). Er wird mit der maximalen Geschwin-digkeit im HS-Mode getaktet, die Takt-frequenz beträgt 20 MHz. Die für den Datenlogger erforderliche Periphe-rie ist im Controller bereits integriert: A/D-Wandler, SPI-Port für die Kommu-nikation mit der SD-Speicherkarte und RS232-Schnittstelle.Der PIC18F452 (32 KByte Flash-Spei-cher, 1536 Byte RAM und 256 Byte EE-PROM) ist auch mit einer I2C-Schnitt-

stelle ausgestattet, allerdings ist die-se Schnittstelle nur über die gleichen IC-Anschlüsse wie der SPI-Port zu-gänglich. Der Uhrenbaustein (RTC = Real Time Clock) muss deshalb an zwei andere Controllerleitungen ge-legt werden. Wir haben uns für den Uhrenbaustein PCF8583 von NXP [3] entschieden (IC5), der sich sehr ein-fach konfigurieren lässt. Die Eigen-schaften dieses Bausteins haben wir in einem Textkasten zusammenge-fasst. Nach Abschalten der Datenlog-ger-Betriebsspannung stellt eine 3-V-Lithium-Knopfzelle sicher, dass am PCF8583 weiterhin Betriebsspannung liegt. Anderenfalls würden das aktuelle Datum und die Zeit verloren gehen. Die Schottkydioden D1 und D2 trennen die Lithium-Knopfzelle von der Datenlog-ger-Betriebsspannung. Mit Trimmer C14 kann die von Quarz X1 abhängige Taktfrequenz des PCF8583 so gezogen werden, dass die Gangabweichungen minimiert sind. Der Interrupt-Ausgang des PCF8583 ist ein Open-Drain-Aus-gang, er wird von R23 nach +5 V ge-zogen. Das dort erscheinende 1-Hz-Si-gnal fügt sich problemlos in das Zeit-management des PIC18F452 ein.LCD1, ein alphanumerisches LC-Dis-play mit vier Zeilen zu 16 Zeichen, wird

Komfortabler Datenlogger

Page 19: Elektor 447 - 2008-03 (GER)

130µA

95µA 95µA

125µA

145µA

130µA

100µA

145µA

90µA

140µA130µA

95µA 95µA

125µA

145µA

130µA

100µA

145µA

90µA

140µA

70mV 70mV75mV

80mV 80mV

100mV

110mV

120mV

65mV

115mV

125mV

70mV 70mV75mV

80mV 80mV

100mV

110mV

120mV

65mV

115mV

125mV

6°C5°C

8°C7°C

4°C 4°C

6°C

6°C

8°C 8°C

5°C6°C

5°C

8°C7°C

4°C 4°C

6°C

6°C

8°C 8°C

5°C

193/2008 - elektor

mit SD-Flash-Speicherkarte

im 4-bit-Mode gesteuert. Auf dem LC-Display gibt der Datenlogger folgende Informationen aus: Datum, Zeit, lau-fende Nummer des gespeicherten Da-tensatzes, Wert der Spannung am ana-logen Eingang AN0 in 1024 Schritten (die Auflösung des controller-internen A/D-Wandlers beträgt 10 bit).Die Betriebsart des Datenloggers ist mit den Drucktastern S1, S2 und S3 wählbar. Ferner ist eine RS232-Schnitt-stelle vorhanden, über die mit einem Bootlader Anpassungen der Controller-Firmware vorgenommen werden kön-nen (siehe Textkasten).Die SD-Speicherkarte arbeitet mit der Betriebsspannung 3,3 V. Diese Span-nung wird von einem TS2950-3.3 (IC2) bereit gestellt, ein Spannungsreg-ler mit besonders niedriger Dropout-Spannung. Auch wenn Spannungs-spitzen auf der +5-V-Eingangsspan-nung auftreten, versorgt der Regler die SD-Speicherkarte mit stabiler Betriebsspannung.Der Datenaustausch zwischen dem Mi-krocontroller und der SD-Speicherkar-te findet im SPI-Format statt. Auf der Controller-Seite beträgt der Signalpe-gel 5 V, auf der Seite der Speicherkarte 3,3 V. In Richtung Speicherkarte pas-sen die Spannungsteiler R5...R10 die

höheren Spannungen an die Signalein-gänge CS, DATA, IN und CLK an. In entgegengesetzter Richtung, vom Ausgang DATA OUT zum Controller, muss die Signalspannung 3,3 V nicht angepasst werden. Der Controller in-terpretiert die Spannung 3,3 V bereits als logisch 1.Die analogen Mikrocontroller-Eingänge werden von den Zenerdioden D4...D7 vor Überspannungen geschützt. Die Ze-nerdioden sollten nur montiert werden, wenn die über Klemme K2 anliegenden Eingangssignale den Schutz notwen-dig machen. Da die Zenerdioden auch unterhalb der Zenerspannung keinen unendlich hohen Widerstand haben, verursachen sie Spannungsverschie-bungen, die sich auf die Genauigkeit der Messwerte auswirken. Falls die zu messenden Spannungen über +5 V liegen, müssen sie durch Spannungs-teiler oder andere Maßnahmen an den Eingangsspannungsbereich 0...5 V an-gepasst werden.An Controller-Eingang RA3 kann über Jumper JP1 eine mit P2 einstellbare Spannung gelegt werden. Diese Span-nung ist die Vergleichsspannung, wenn die Datenspeicherung erst bei Überschreiten eines Schwellenwerts ausgelöst werden soll (fünfte Betriebs-

art). In diesem Fall muss die zu mes-sende Spannung an Controller-Eingang AN0 liegen.

PlatineDie Lage der Bauelemente auf der Pla-tine ist in Bild 2 wiedergegeben. Zum Anfertigen der Platine in Eigenarbeit steht auf der Elektor-Website auch das Platinenlayout zur Verfügung.Unter den Bauelementen sind keine Exoten, so dass Beschaffungsprobleme nicht zu erwarten sind. Die Montage auf der Platine ist nicht schwierig, Be-sonderheiten sind nicht zu beachten. Das LC-Display ist ein Standard-Typ mit vier Zeilen und 16 Zeichen in jeder Zeile. Auf der Platine wird das LC-Dis-play mit vier 10 mm langen Abstands-rollen befestigt. Die elektrische Verbin-dung stellt eine 16-polige Stiftleiste her. Als Gegenstück auf der Display-Seite ist zum Beispiel die Kontaktrei-he einer DIP-IC-Fassung geeignet. Die Steckverbindung vereinfacht das Tren-nen von Display und Platine bei einer eventuellen Demontage.Bei der Inbetriebnahme des Datenlog-gers muss das LC-Display mit Trimm-poti P1 auf maximalen Kontrast einge-stellt werden.

Wichtige Eigenschaften• Fünf Betriebsarten:

– Triggern von Hand mit Taster

– Triggern durch externes Signal

– Triggern periodisch, Abstand wahlweise 10 s oder 1 min

– Triggern bei Überschreiten eines einstellbaren Schwellenwerts

• Speichern der Messwerte in Textdateien auf SD-Karte

• Bis zu 9999 Dateien speicherbar

• Lesen der Textdateien über den SD-Kartenleser des PC

• Formatierung der SD-Karte im Dateiformat FAT 16

• Batteriegestützter Uhrenbaustein für die Protokollierung von Datum und Zeit

Page 20: Elektor 447 - 2008-03 (GER)

praxis datenlogging

20 elektor - 3/2008

Wichtige BegriffeLCD – Liquid Crystal Display. Zwischen zwei Glasplatten, auf die transparente Elektroden aufgebracht sind, befindet sich eine dünne Schicht so genannter Flüssigkristalle. Durch elektrische Felder ist die Lichtdurchlässigkeit der Flüssigkristalle beeinflussbar.

Die Bauformen von LCDs sind vielfältig. Der Datenlogger arbeitet mit einem vierzeiligen alphanumerischen Display, das 16 Zeichen in jeder Zeile darstellt.

I2C‑Bus – Inter Integrated Circuit Bus. Serielles Bussystem, das Philips Anfang der achtziger Jahre für Consumer-Geräte und Steuerungen im Heim entwickelt hat. Der I2C-Bus kommt mit einer Datenleitung (SDA, Serial Data), einer Taktleitung (SCL, Serial Clock) und Masse aus.

EEPROM – Electrically Erasable Programmable Read Only Memory. Überschreibbarer Halbleiter-Datenspeicher, dessen Inhalt bei Abschalten der Betriebsspannung nicht verloren geht.

FAT (16 oder 32) – File Allocation Table. Von Microsoft entwickeltes und teilweise patentiertes Verfahren der Speicherplatz-Verwaltung auf Datenträgern. Die Ursprünge des FAT-Dateisystem reichen bis in die DOS-Zeit zurück. Ausführliche Beschreibungen sind bei Wiki zu finden (siehe unten).

IDE – Integrated Development Environment. In einer integrierten Entwicklungsumgebung sind mehrere Software-Werkzeuge (zum Beispiel grafischer Editor, Compiler) für

C1+1VD

D2

C1-3

C2+4

C2-5

VEE

6

T2OUT7

R2IN8

R2OUT9

T2IN10

T1IN11

R1OUT12

R1IN13

T1OUT14

GND15

VCC16

IC3

MAX232

C8

10u

C6

10u

C7

10u

C5

10u

+5V

C9

100n

+5V

X2

20MHzC11

22p

C13

22p

S3 S2 S1

R15

10k

R16

10k

R17

10k

+5V

R21

10k

R22

10k

R23

10k

+5V

VDD

8

INT7

SCL6

SDA5

VSS

4

OSC12

OSC01

A03

IC5

PCF8583

D2

BAT81

D3

BAT81

X1

32.768kHz

C14

5...25p

CR2032

BAT1

3V

R4

56R

C15

100n

R5

3k3

R7

3k3

R9

3k3

R6

2k2

R8

2k2

R10

2k2

C10

100n

C12

100u

+3V3

VSS1

VDD2

VL3

RS4

R/W5

E6

D07

D18

D29

D310

D411

D512

D613

D714

LED+A15

LED-C16

LCD

LC D

ispl

ay 4

x 1

6

P1

10k

+5V

12

3

4

5

6

7

8

K2

K1

1 3

2

IC1

7805D1

1N4001

C4

100u

+5V

+12V

R1

470R

D8

+12V

GNDC1

100n

C2

100n

1

2

3

4

5

6

7

8

9

S1

S2

K3

SUB D9

VSS26

VSS13

VDD4

DI2

CLK5

CS1

DO7

RSV9

W-P12

CO11

DE10

RSV.8

K4

SD Card Holder

+5V

RC7/RX/DT26

OSC

113

OSC

214

VSS

12

VDD

32

MC

LR/V

PP1

VSS

31

RB5/PGM38VD

D11

RC6/TX/CK25

RB0/INT033

RB1/INT134

RB2/INT235

RC2/CCP117

RC5/SDO24

RC3/SCK/SCL18

RC4/SDI/SDA23

RB6/PGC39

RB7/PGD40

RD2/PSP221

RD3/PSP322

RD4/PSP427

RD5/PSP528

RD6/PSP629

RD7/PSP730

RB3/CCP236

RB437

RA3/AN3/VREF+5

RA2/AN2/VREF-4

RA1/AN13

RA0/AN02

IC4

PIC18F452

R241k

R20 10kR18 10kR13 10kR11 10k

R2

10k

R12

1M

R14

1M

R19

1M

D4

5V1

D5

5V1

D6

5V1

D7

5V1

JP1

P2

10k

3 1

2

IC2TS2950-3.3

C3

100n

+5V +3V3

070745 - 11

J-SP

R322R+5V

+5V OUT

GND

Trigger Ext.

AN3

AN2

GND

AN1

AN0

* * * *

*Optional

Bild 1. Im Mittelpunkt der Hardware steht ein PIC18F452, umgeben von einem LC-Display, einer SD-Speicherkarte, einem Uhrenbaustein und einem MAX232.

Page 21: Elektor 447 - 2008-03 (GER)

213/2008 - elektor

Über den auf der Platine vorhandenen RS232-Anschluss ist der Bootlader des Mikrocontrollers zugänglich. Was es damit auf sich hat, wird an ande-rer Stelle in einem Textkasten erklärt. Steckfassungen für SD-Karten sind in der Regel einzeln schwer erhältlich. Eine vollwertige Ersatzlösung ist der Ausbau aus einem handelsüblichen, möglichst preiswerten Kartenleser. Die SD-Karten-Anschlüsse Lock/Un-lock sowie die Anschlüsse 8 und 9 ha-ben in der Datenlogger-Schaltung kei-ne Funktion.

SoftwareEine detaillierte Beschreibung der Software, die mehr als 500 Programm-zeilen umfasst, würde den Rahmen dieses Artikels sprengen. Der Quell-code steht interessierten Lesern als Download (EPS 070745-11.zip) auf der Elektor-Website zur Verfügung. In dem ZIP-Archiv befindet sich auch die Hex-Datei, die zum Programmieren des Mi-krocontrollers erforderlich ist. Der Mi-krocontroller ist im Elektor-Shop unter der Nummer EPS 070745-41 auch pro-grammiert erhältlich.Die Controller-Programmierung mit dem Bootlader wird in einem weiteren Textkasten erklärt. Die Firmware des Datenloggers wurde in C geschrie-ben und mit dem Compiler „MikroC“ von MikroElektronika [4] compiliert. Dieser Compiler ist eine Empfehlung wert, der Hersteller bietet umfassende technische Unterstützung. Eine nicht funktionseingeschränkte Schnupper-Version, die allerdings nur Programme bis 2 KByte verarbeitet, ist kostenlos. Die Datenlogger-Firmware hat wegen der Speicherverwaltung der SD-Karte einen größeren Umfang, sie kann nur mit der Vollversion compiliert werden. Der Preis der Vollversion erscheint uns angemessen in Relation zu dem, was dieser Compiler bietet: Integrierte IDE, umfangreiche Sammlung viel genutzter

Standard-Funktionen wie zum Beispiel die Verwaltung von Speicherkarten im FAT-Dateisystem einschließlich zuge-höriger Parameter (Datum, Zeit usw.).

Zu den Standard-Funktionen gehören auch die Kommunikation mit dem RTC-Uhrenbaustein und das Implementie-ren des I2C-Bus.

die Entwicklung komplexer Programme zusammengefasst.

MikroC – Compiler von MikroElektronika für Mikrocontroller der Familien PIC12, PIC16 und PIC18. Bei der kostenlosen Demo-Version ist der Umfang des Output auf 2 KByte begrenzt.

RTC – Real Time Clock. Eine Echtzeituhr ist ein (meistens batteriegestützter) Baustein mit den Funktionen einer Uhr und eines Kalenders. Ein solcher Baustein befindet sich

auf jeder PC-Hauptplatine.

SD(‑Karte) – Secure Digital (-Karte). Verbreiter Typ eines nicht flüchtigen Datenspeichers in Form einer wenige Quadratzentimeter großen Steckkarte. Inzwischen sind auch noch kleinere Versionen, die „miniSD“ und die „microSD“ auf dem Markt.

SPI – Serial Programming Interface. Schnittstelle eines seriellen synchronen Bussystems, das vorwiegend zum

Programmieren moderner Mikrocontroller eingesetzt wird. Zur SPI-Schnittstelle gehören vier Leitungen: SCLK - Serial Clock, MOSI/SIMO - Master Output / Slave Input, MISO/SOMI - Master Input / Slave Output und SS - Slave Select.

Wikipedia – Open-source Internet-Enzyklopädie. Die Adresse der deutschsprachigen Abteilung lautet:http://de.wikipedia.org/wiki/Hauptseite

BootladerDer Mikrocontroller PCF18F452 muss mit der Da-tenlogger-Firmware im Hex-Format (logger.hex) nach herkömmlichem Verfahren programmiert werden. Danach ist die Neuprogrammierung, bei-spielsweise zum Anpassen an besondere Erforder-nisse, mit Hilfe des Bootladers möglich, den der Autor der Firmware hinzugefügt hat. Der Bootlader ist ein kurzer Programmteil, der bei jeder Control-ler-Initialisierung (Reset) ausgeführt wird. Der Boot-lader sendet über die serielle Schnittstelle ein Zei-chen (hier ein „g“) und wartet auf eine bestimmte Antwort (hier ein „r“). Wenn die Antwort innerhalb einer vorgegebenen Zeit eintrifft (hier 5 s), ver-zweigt der Bootlader in den Update-Mode. Dann wird der Programmspeicher, in dem die Firmware steht, mit den über die serielle Schnittstelle emp-fangenen Daten überschrieben. Bleibt innerhalb der vorgegebenen Zeit die Antwort aus, wird weiterhin die im Programmspeicher bereits stehende Firmware ausgeführt. Dieses Verfahren erlaubt auch das Laden der Firmware bei jedem belie-bigen Controller-Reset. Das „Flashen“ des Controllers setzt nur voraus, dass die Parameter der seriellen Schnittstelle korrekt eingestellt sind (57600 bit/s, 1 Stoppbit, 8 Datenbit, keine Parität, Software-Handshake) und dass der PC verbindungsbereit ist.

Die Operation ist folgendermaßen durchzuführen: Laden Sie in den noch leeren Mikrocontrol-ler die Firmware einschließlich Bootlader nach bekanntem Verfahren. Starten Sie anschließend in mikroC im Menü Tools den microBootloader. Die serielle Schnittstelle muss beim Start korrekt konfiguriert sein. Schließen Sie den Datenlogger an und klicken Sie innerhalb von fünf Sekunden auf connect. Öffnen Sie die Firmware-Hexdatei, die in den Programmspeicher des Controllers geladen werden soll, mit open Hex file, klicken Sie dann auf Start bootloader. Jetzt wird die Hex-Datei in den Programmspeicher des Controllers geladen.

Nachdem das geschehen ist, führen Sie einen Controller-Reset durch, indem Sie die Datenlog-ger-Betriebsspannung unterbrechen, die SD-Karte einstecken (falls noch nicht geschehen) und die Betriebsspannung wieder einschalten. Nach fünf Sekunden arbeitet der Controller mit der neuen Firmware. Die SD-Karte muss vor jedem Neustart eingesteckt sein, weil sie unmittelbar danach initialisiert wird.

Die nebenste-henden Bild-schirminhalte veranschauli-chen den Um-gang mit dem Bootlader.

Page 22: Elektor 447 - 2008-03 (GER)

praxis datenlogging

22 elektor - 3/2008

Übrigens: Auf dem LC-Display erschei-nen alle Meldungen in englischer Spra-che, doch die Texte sprechen für sich.

BedienungDer Datenlogger wird über die Druck-taster S1, S2 und S3 bedient.S1: Mit diesem Taster wird sequenti-ell die Betriebsart gewählt. Wird S1 beim Einschalten des Datenloggers gedrückt gehalten, lassen sich die ak-tuelle Zeit und das Datum einstellen. In diesem Fall können mit S2 und S3 die Datum- und Zeit-Werte verändert werden. Beim Drücken von S1 springt die Eingabe in der Reihenfolge Tag, Monat, Jahr, Stunde, Minute, Sekunde zum nächsten Feld. Der Uhrenbaustein übernimmt die eingestellten Werte, wenn S1 zwei Mal kurz nacheinander gedrückt wird.S2: Wenn in der Betriebsart „Internes Triggersignal“ der Taster S2 gedrückt wird, speichert der Datenlogger die in diesem Moment aktuellen Messwerte. Mit S2 ist auch die Anzahl der analo-gen Eingänge wählbar. Um Rechenzeit einzusparen, wird auf dem LC-Display nur der Messwert des Eingangs AN0 angezeigt.S3: Ein Druck auf diesen Taster hat das Anlegen einer neuen Datei auf der SD-Speicherkarte zur Folge. Die Datei ist eine Textdatei, sie kann mit jedem SD-Kartenleser eines PC gelesen wer-den. Die registrierten Werte liegen im Zahlenbereich 0...1024, was den Mess-spannungen im Bereich 0...+5 V ent-spricht. In einer Datei können die Wer-te von einem bis vier Eingängen gleich-zeitig gespeichert werden.

Und sonst noch...Falls anstelle des in der Stückliste an-gegebenen LC-Displays ein anderer Typ gewählt wird, kann (wenn not-wendig) mit Jumper J-SP die Span-nung der Hintergrundbeleuchtung um-gepolt werden.Der Datenaustausch mit SD-Speicher-karten wird normalerweise nach einem speziellen Protokoll abgewickelt. Unter bestimmten Voraussetzungen können SD-Speicherkarten auch Daten im se-riellen SPI-Mode austauschen. Dieses Übertragungsverfahren ist zwar lang-samer, doch wegen der im Compiler MikroC eingebauten Funktionen lässt es sich leicht in die Firmware des PIC18F452 implementieren.SD-Speicherkarten mit der Kapazität 1 GByte sind inzwischen erstaunlich preiswert geworden, für den Daten-

vom Datenlogger fortlaufend numme-riert, die Dateinamen laufen von 1.txt bis 9999.txt. Spätestens wenn die Ka-pazität der SD-Speicherkarte erschöpft

logger sind sie das ideale Speicher-medium. Die SD-Karte muss im FAT-16-Format formatiert werden, nicht im FAT-32-Format! Die Dateien werden

0707

45-1

(c)

Ele

ktor

A0

A1

A2

A3

TR+5

SD Card Holder

1 2 3 4 5 6 7 8 1 2J-

SP

+ 12V GND

IC3

X2

K3

D1

C4

IC4

IC5

C11

C13

R1

D8

R9

R7

R5

R10

R8

R6

D3

D2

C15

C9

X1

BAT1

R4

K4

P2K2

K1

R2

R24

R20

R18

R13

R11

R17

R16

R21R23

R22

R15

S2 S1

JP1

R12

R14

R19

IC1IC2

C1

C2

C3

C12

C10

LCD

P1

R3

C5

C6

C7

C8

C14

5-25pF

D4

D5

D6

D7

Bild 2. Auf dieser Platine wird die Hardware des Datenloggers aufgebaut. Das Layout ist als Download verfügbar.

StücklisteWiderstände:R1 = 470 ΩR2,R11,R13,R15...R17,R18,R20,R21...R23

= 10 kR3 = 22 ΩR4 = 56 ΩR5,R7,R9 = 3k3R6,R8,R10 = 2k2R12,R14,R19 = 1 MR24 = 1 kP1,P2 = Trimmpoti 10 k

Kondensatoren:C1...C3,C9,C10,C15 = 100 nC4,C12 = 100 μ / 25 VC5...C8 = 10 μ / 25 VC11,C13 = 22 pC14 = Trimmer 5...25 p*

Halbleiter:D1 = 1N4001D2,D3 = BAT81D4...D7 = Zenerdiode 5V1 / 400 mWD8 = LED rot, 3 mmIC1 = 7805IC2 = TS2950-3.3IC3 = MAX232

IC4 = P IC18F452 (programmier t , EPS 070745-41)

IC5 = PCF8583

Außerdem:S1...S3 = Mini-DrucktasterJP1 = Stiftleiste 2-polig mit JumperJ-SP = Stiftleiste 6-polig mit 2 JumpernK1 = Schraubklemmverbinder 2-polig,

Raster 5 mmK2 = Schraubklemmverbinder 8-polig,

Raster 5 mmK3 = D-Sub-Buchsenleiste 9-polig (weiblich),

für PlatinenmontageK4 = Steckfassung für SD-SpeicherkarteX1 = Quarz 32,768 kHzX2 = Quarz 20 MHzBAT1 = Lithium-Knopfzelle CR2032LCD = LC-Display alphanumerisch, 4 Zeilen

mit 16 Zeichen, z.B. DEM 16481Platine (070745-1) oder kompletter Bauteil-

satz inklusive Platine (EPS 070745-71), sie-he Elektor-Shop-Anzeige am Heftende und www.elektor.de.

Der kos tenlose Sof tware-Download (070745-11.zip) auf der Elektor-Website www.elektor.de enthält Quellcode, Hex-Da-tei und Windows-Programm.

Page 23: Elektor 447 - 2008-03 (GER)

233/2008 - elektor

ist, müssen die Daten in den PC über-tragen werden. Anschließend wird die SD-Karte gelöscht oder neu for-

matiert. Auf eine 1 GByte große SD-Speicherkarte passen ungefähr 65000 Messwerte.Der Autor dieses Beitrags [5] wür-

de sich freuen, wenn er erfährt, für welchen Zweck Sie den Datenlogger nutzen!

(070745)gd

Der Autor

Loïc Marty bezeichnet sich selbst als Auto-didakt und ist langjähriger ambitionierter Funkamateur. Die Anwendung von PIC-Mi-krocontrollern, programmiert in Assembler (für den Einsatz in Video-Systemen) sowie in den letzten Jahren überwiegend in C, ist ein anderer Schwerpunkt seiner Interessen. Im Hauptberuf ist Loïc Marty Produktions-agent eines international agierenden Un-ternehmens der Baubranche.

Die Web-Adresse von Loïc Marty lautet: www.f1ubz.fr

Der PCF8583Der PCF8583 ist ein Real-time-Uhren- und Kalender-Baustein in CMOS mit 256 Byte großem statischem RAM von NXP. Adressen und Daten werden mit anderen Bausteinen über einen bidi-rektionalen I2C-Bus ausgetauscht. Über Adressleitung A0 stehen zwei I2C-Adressen zur Wahl, so dass gleichzeitig zwei Bausteine mit dem I2C-Systembus verbunden sein können. Zeitnormal des PCF8583 ist ein interner 32,768-kHz-Oszillator mit externem Quarz. Im RAM belegen die Zeit- und Datum-Funktionen die ersten acht Byte. In den nächsten acht Byte können die Daten der Alarm-Funktion gespeichert werden. Wird davon kein Gebrauch gemacht, stehen sie eben-so wie die übrigen 240 Byte zur freien Verfügung.

Der PCF8583 kann auch mit einem externen 50-Hz-Signal synchroni-siert werden.

Funktionsschema des PCF8583 (Quelle: NXP)

control/status

hundredth of a secondseconds

minuteshours

year/dateweekdays/months

timeralarm control

alarm registersor RAM

RAM(240 × 8)

DIVIDER1 : 256

OR100 : 128

100 HzPCF8583OSCILLATOR

32.768 kHz

CONTROLLOGIC

POWER-ONRESET

ADDRESSREGISTER

OSCI

OSCO

INT

A0

SDA

FF

070745 - 12

0F

0807

0100

I2C-BUSINTERFACE

VDD

1

2

7

8

3

SCL6

5

VSS4

Bild 3. Ansicht des Datenloggers mit SD-Speicherkarte. Das LC-Display wird liegend auf die Platine aufgesteckt. Der Trimmer wurde hier durch einen Kondensator ersetzt.

Weblinks[1] www.sdcard.org

[2] www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1335&dDocName=en010296

[3] www.nxp.com/#/pip/cb=[type=product,path=50807/53497,final=PCF8583_5]|pip=[pip=PCF8583_5][0]

[4] www.mikroe.com (Compiler und Schaltplan RTC)

[5] www.f1ubz.fr

Page 24: Elektor 447 - 2008-03 (GER)

praxis bussysteme

24 elektor - 3/2008

CAN-ExplorerKomfortables PC-CAN-InterfaceVon Dipl.-Ing.(FH) Fredi Krüger

Ein CAN-Bus eignet sich nicht nur für Autos und die Automation, er lässt sich auch zur Haussteuerung einsetzen. Leider ist der Aufbau eines solchen Bus-Systems nicht ganz einfach. Hier setzt unser CAN-Board an, das einen PC an den Bus anbindet. Über eine komfortable und kostenlose Software lassen sich ein CAN-Bus überwachen und die Funktion anderer Knoten überprüfen.

Netzwerke, die auf dem CAN-Bus beru-hen, werden nicht nur in Automobilen und der Industrie (Automatisierung, Steuerung), sondern auch zunehmend im privaten Bereich eingesetzt [1]. Die Vorteile dieses 2-Draht-Busses sind eine hohe Störsicherheit und eine große Auswahl an günstigen Komponenten (in [2a] und [2b] findet man eine Ein-führung, in [2c] eine Übersicht der tech-nischen Spezifikationen). Die verfüg-baren Knoten-Bausteine reichen dabei von so genannten Stand-Alone-Control-lern bis hin zu Mikrocontrollern mit in-tegriertem CAN-Controller.Die Schwierigkeit bei der Realisierung von CAN-Bus-Systemen liegt jedoch dar-in, eine funktionierende Kommunikation zwischen den einzelnen Komponenten zu realisieren, da diverse Einstellungen vorzunehmen sind. Erschwert wird das Ganze noch, wenn ein Bus von Grund auf aufgebaut werden muss und mög-liche CAN-Sender als auch Empfänger entsprechend zu programmieren sind. Hier setzt unser CAN-PC-Interface an, das einen Windows-Computer an den Bus anbindet. Mit Hilfe der entspre-chenden kostenlosen Software lässt

sich nicht nur ein bereits bestehender Bus komfortabel überwachen. Man kann auch CAN-Nachrichten senden und empfangen und somit die Funkti-on anderer CAN-Knoten überprüfen.

Einfach, vielseitig, günstigAls CAN-Controller wird der Baustein MCP2515 von Microchip verwendet, der recht günstig im Preis ist. Die ent-sprechende PC-Software, die ebenfalls von Microchip stammt, ist sogar kos-tenlos [3]. Über die Software lassen sich nicht nur die Register des CAN-Controllers einstellen, um diesen an die jeweilige Applikation anzupassen. Es können auch zu sendende Nach-richten und ein Nachrichtenfilter für weiterzuleitende Nachrichten konfi-guriert werden.Die Ansteuerung des Boards erfolgt über die Parallelschnittstelle (Dru-ckerport) des PCs. Obwohl diese heu-te kaum noch für die Ansteuerung von Druckern verwendet wird, verfügen viele PCs noch darüber. Mit günsti-gen Steckkarten lässt sich eine solche Schnittstelle auch nachrüsten. Die Par-

allelschnittstelle muss für bidirektio-nalen Datenverkehr eingestellt sein.Damit die Schaltung (siehe Bild 1) auch zur später verwendeten Software passt, entspricht der Aufbau weitge-hend der Beschreibung auf der Micro-chip-Internet-Seite [3]. Zum Schutz des Druckerports werden alle verwen-deten Signalleitungen über die bei-den Treiberbausteine 74HCT245 (IC1, IC2) geführt, bevor sie mit dem CAN-Controller MCP2515 (IC3) verbunden werden. Die Ansteuerung erfolgt se-riell per SPI-Interface, die entspre-chenden Signale werden durch die PC-Software am Druckerport zur Ver-fügung gestellt. Die weiteren verwen-deten Leitungen dienen zum Ansteu-ern bzw. Abfragen der zusätzlichen Anschlüsse des CAN-Controllers. Als Bustreiber für den Anschluss an den CAN-Bus selbst wird der Baustein MCP2551 (IC4) verwendet. Es lassen sich aber auch vergleichbare Baustei-ne wie ein PCA82C521 einsetzen.Eine Platine (060201-1) ist bei ThePCB-Shop erhältlich. Mit dem Jumper JP1 läst sich ein Abschlusswiderstand von 120 Ohm setzen, um Reflexionen

Page 25: Elektor 447 - 2008-03 (GER)

253/2008 - elektor

CAN-ExplorerKomfortables PC-CAN-Interface

am Leitungsende zu vermeiden. Zum einfachen Anschluss des CAN-Busses ist ein 9-poliger Stecker (K2) auf dem Board vorgesehen. Die entsprechende Anschlussbele-gung ist dem Schaltplan zu entneh-men. Ebenso wurde die Möglichkeit vorgesehen, andere Komponenten über diesen Anschluss mit einer Betriebs-spannung zu versorgen. Mit dem Jum-per JP2 kann man zwischen den 5 V des auf dem Board befindlichen Span-nungsreglers oder einem direkten An-schluss ans Steckernetzteil wählen, wobei in letzterem Fall noch ein Brü-ckengleichrichter als Verpolungsschutz bzw. zur Gleichrichtung einer Wechsel-spannung dient.

Bestückung und InbetriebnahmeBeim Bestücken beginnt man mit den Widerständen und Kondensatoren, die restlichen Bauteile werden entspre-chend ihrer Größe bestückt. Es ist auf die richtige Polarität der beiden El-kos (C7, C10), der LED (D1) und dem Gleichrichter (B1), sowie auf die Lage der ICs zu achten.

Nachdem man die Platine einer letzten Sichtprobe unterzogen hat, kann man die Betriebsspannung an K3 anlegen, die zwischen 8 V und ca. 12 V liegen sollte. Nun sollte die Leuchtdiode D1 aufleuch-ten. Ist das Board mit dem PC über die Drucker-Schnittstelle verbunden und wird die unten beschriebene Software aufgerufen, dann sollte diese das Board automatisch als Eval-Board erkennen.

Die Software kann von der Internet-Sei-te von Microchip [3] kostenlos herun-ter geladen werden. Sie beruht auf der CANking Software der Firma Kvaser [4], jedoch mit dem passenden Treiber für den Baustein MCP2515. Die Soft-ware ist für alle Microsoft Betriebssys-teme ab Windows 95 einsetzbar. Be-nötigt wird noch der Treiber „dlportio.sys“, der sich im Unterordner „C:\Win-

18

17

13

16

15

14

12

11

19

2

3

4

1

9

5

6

7

8

G33EN1

3EN2

1

2

IC1

74HCT245

20

10IC1

18

17

13

1615

14

12

11

19

2

3

4

1

9

5

6

7

8

G3

3EN1

3EN2

1

2

IC2

74HCT245 20

10IC2

1

2

3

4

5

14

15

16

17

6

7

8

9

10

11

12

13

18

19

20

21

22

23

24

25

G1

G2

K1

GND

C1

100n

C2

100n

GND

GND

1

2

3

4

5

6

7

8

9

G1

G2

K2

GND

GND

+5V

GND

JP1

JP2

2

3

1

K3

1 3

2

IC5

7805

25V

C7

470u

C8

100n

C9

100n25V

C10

47u

GND

D1

R5

1k

+12V +5V

CANH7

CANL6

VREF5

VSS

2

TXD1

RXD4

RS8

VDD

3

IC4

MCP2551SN

C6

100n

+5V

+5V

+12VGND

GND

R4

120R

R3

10k

RX0BF11

TXCAN1

RXCAN2

GN

D9

VCC

18

OSC

27

OSC

18

RX1BF10

SO15

INT12

RESET17

CS16

SCK13

SI14

TX0RTS4

TX1RTS5

TX2RTS6

IC3

MCP2515-I/SO

C3

100n

+5V

GND

X1

16MHz

C5

22p

C4

22p

GND

R2

10k

R1

10k

+5V

060201 - 11

D0

D1

D2

D3

D4

D5

D6

D0

D1

D2

D3

PE

D5

D6

SLCT

BUSY

ACK

D4

PE

SLCT

BUSY

ACK

SUB-D25

SUB-D9

KBP2005G

B1

Bild 1. Zum Schutz des Druckerports werden alle verwendeten Signalleitungen über die beiden Treiberbausteine (IC1, IC2) geführt, bevor sie mit dem CAN-Controller (IC3) verbunden werden. Als Bustreiber für den Anschluss an den CAN-Bus selbst wird IC4 verwendet.

Bild 2. Nach der Installation und einigen Klicks erscheint dieses Auswahlfenster.

Page 26: Elektor 447 - 2008-03 (GER)

praxis bussysteme

26 elektor - 3/2008

dows\system32\drivers“ o.ä. befinden muss. Wer diesen vermisst, kann ihn unter [5] kostenlos downloaden.Nach dem Download muss die Soft-ware zunächst auf dem Rechner instal-liert werden. Wird die Software aufge-rufen, erscheint nach einigen Klicks ein Auswahlfenster wie in Bild 2. Auf man-chen PCs wird der Treiber dlportio.sys allerdings nicht automatisch gestartet, man erhält dann eine entsprechende Fehlermeldung und muss den Treiber manuell starten. Voraussetzung für eine erfolgreiche Verbindung ist auch, dass die richtige Adresse der verwen-deten Drucker-Schnittstelle in der Soft-ware eingestellt ist. Nähere Angaben zu diesen beiden Punkten finden Sie im Dokument „Fehlerquellen_Test.pdf“, das man von der Elektor-Website [6] downloaden kann.Wählt man „MCP2515 Register View“ hat man Zugriff auf alle Register des MCP2515-Bausteins. Für jede Funkti-on ist ein entsprechendes Fenster vor-handen (Bild 3). Wählt man „MCP2515 Bild 3. Im „MCP2515 Register View“ hat man Zugriff auf alle Register des MCP2515-Bausteins.

StücklisteWiderstände:R1,R2,R3 = 10kR4 = 120 OhmR5 = 1k

Kondensatoren:C1,C2,C3,C6,C8,C9 = 100n (5 mm

Pinabstand)C4,C5 = 22p

C7 = 470µ/25V (radial)C10 = 47µ/25V (radial)

Halbleiter:IC1,IC2 = 74HCT245IC3 = MCP2515 (SOIC)IC4 = MCP2551SN (SOIC)(IC3 und IC4 sind auf der Elektor-Platine be-

reits bestückt)IC5 = 7805 (TO220)B1 = KBP2005GD1 = LED 3 mm/2 mA

Außerdem:JP1 = 2-polige Stiftleiste mit JumperJP2 = 3-polige Stiftleiste mit JumperX1 = Quarz 16 MHz (H49U)K1 = 25-poliger SUB-D-Stecker gewinkelt,

für PlatinenmontageK2 = 9-poliger SUB-D-Stecker gewinkelt, für

PlatinenmontageK3 = Hohlstecker-Buchse (HEBW25)

gewinkeltPlatine (060201-1), erhältlich bei ThePCB-

Shop, siehe www.elektor.de

Page 27: Elektor 447 - 2008-03 (GER)

273/2008 - elektor

Evaluation Board“ bzw. „MCP2515 Ba-sic“, dann dient die Software als CAN-Bus-Monitor, der alle Aktivitäten auf dem Bus darstellt (Bild 4). Eine um-fangreiche Dokumentation [3] der Soft-ware kann ebenfalls bei Microchip her-unter geladen werden.

(060201jn)

Weblinks[1a] www.mikrocontroller.net/articles/

CAN_als_Hausbus[1b] www.isysbus.org[1c] www.canathome.de[1d] www.iuse.org[2a] www.me-systeme.de/canbus.html[2b] www.hehlhans.de/bilder/autos/cdi270/

can.htm[2c] http://de.wikipedia.org/wiki/

Controller_Area_Network[3] www.microchip.com/stellent/

idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en531891

[4] www.kvaser.com[5] www.driverlinx.com/download/

dlportio.htm[6] www.elektor.de/canbusD

Bild 4. Wählt man im Auswahlfenster (siehe Bild 2) „MCP2515 Evaluation Board“ bzw. „MCP2515 Basic“, dann dient die Software als CAN-Bus-Monitor, der alle Aktivitäten auf dem Bus darstellt.

Anzeige

Termine für Elektor Nr. 4 / 2008

Anzeigenschluss: Í

26.02.2008

Erscheinungs termin:Í

19.03.2008

Anzeigen:Verlagsbüro ID

Telefon: (0511) 33 48 436

E-Mail: [email protected]

Internet: www.id-medienservice.de

Page 28: Elektor 447 - 2008-03 (GER)

praxis bussysteme

28 elektor - 3/2008

I2C-AnalyserBus-Aktivitäten transparent gemachtVon Etienne Boyer

In diesem Projekt geht es um ein nützliches und handliches Messgerät, das Einblicke in das Geschehen auf dem I2C-Bus gibt. Das weit verbreitete serielle Bussystem I2C wird hauptsächlich für den schaltungsinternen Informationsaustausch genutzt. Der I2C-Analyser macht die Bussignale auf dem PC-Bildschirm sichtbar.

Unser I2C-Analyser wird unkompli-ziert an den I2C-Bus angeklemmt, des-sen Signale untersucht werden sollen. Das können zum Beispiel die I2C-Bus-Signale START, STOP, ADRESS, DATA oder ACKNOWLEDGE sein. Typische Einsatzfelder des I2C-Analysers sind das Entwickeln eigener I2C-Systeme, die Fehlersuche in Geräten mit I2C-Bus oder das „Reverse Engineering“.Der I2C-Analyser kommuniziert mit dem PC über eine USB-Verbindung, die als virtueller COM-Port konfiguriert ist. Der USB-Port des PC übernimmt die Strom-versorgung, so dass der I2C-Analyser ohne Netzteil oder Batterie auskommt.

BlockschemaIn Bild 1 ist das Konzept des I2C-Ana-lysers blockschematisch dargestellt. Am Eingang liegt der I2C-Bus, des-sen Signale untersucht werden sollen, der Ausgang ist über USB mit dem PC verbunden. Am I2C-Analyser können bis zu drei I2C-Komponenten ange-schlossen werden. Zentrales Bauele-ment ist ein Mikrocontroller des Typs PIC18F4520 von Microchip. Die Brücke zum USB-Port des PC bildet der be-kannte Baustein FT232BM von FTDI [1]. Er fand in Elektor-Projekten schon wiederholt Verwendung.

SchaltungBevor wir die Schaltung näher betrach-ten, kann ein Blick auf die grundle-

genden Eigenschaften des I2C-Bus nicht schaden. Sollte das Wissen um den I2C-Bus verblasst sein, wird es im Text-kasten „Die Geheimnisse des I2C-Bus“ aufgefrischt.Das I2C-Protokoll legt fest, dass eine START-Prozedur durch eine negativ gerichtete Flanke auf der SDA-Leitung eingeleitet wird, während die SCL-Lei-tung auf 1 (hohe Spannung) liegt. Die Flanke kippt das monostabile Flipflop IC1A eines 4538, das in Bild 2 links dargestellt ist. Die für R2 und C2 ge-wählten Werte legen die Kippdauer auf 8,2 µs fest, was für die START-Prozedur völlig ausreicht. Diese Zeit liegt zwar in einem Bereich, in dem Mikrocontrol-ler reagieren, das menschliche Auge reagiert jedoch viel träger. Damit die START-Prozedur von einer LED sicht-bar gemacht werden kann, muss der 8,2 µs breite Impuls verlängert wer-den. Diese Aufgabe hat das zweite monostabile Flipflop des 4538 (IC2B), es sorgt dafür, dass die grüne LED D2 für etwa 150 ms aufleuchtet.Die gleiche Beschreibung trifft sinn-gemäß auf das STOP-Signal und den zweiten 4538 (IC1) mit den astabilen Flipflops IC1A und IC1B sowie die rote LED D1 zu.Das Zeitdiagramm in Bild 3 stellt die START- und STOP-Signale grafisch dar. Die beiden Impulse sind nicht gleich lang. Der START-Impuls wird dadurch verkürzt, dass die SCL-Leitung auf 1 (High) geht. Tatsächlich dauert der Bild 1. Das Konzept des I2C-Analysers ist leicht überschaubar.

I2C-Device 1

I2C-Device 2

I2C-Device 3

I2C-Bus

USB-Verbindung

070600 - 12

START

SCAN

PIC18F4520FT232BM

DISPLAY

STOP

I2C-Bus-Analyser

Page 29: Elektor 447 - 2008-03 (GER)

293/2008 - elektor

START-Im-puls etwa 3 µs. Der STOP-Impuls ist mit 8,2 µs wesentlich län-ger als er theoretisch sein müsste. Das liegt daran, dass das astabile Flipflop außerhalb des empfohlenen Bereichs 100 µs...1 s arbeitet.Ein Blick auf die Schaltung in Bild 4 zeigt, dass sich die Anzahl der Bauele-mente in engen Grenzen hält. Ein PIC-Mikrocontroller, ein USB-Schnittstellen-Baustein von FTDI und zwei CMOS-Standard-ICs 4538 sind die aktiven Bauelemente. Zentrale Schaltstelle ist der PIC18F4520 von Microchip [2], eine weiter entwickelte Version des 18F452. Die beiden Typen sind sowohl unter-einander als auch mit dem bekannten Typ 16F877 pinkompatibel.Aufgabe des Mikrocontrollers ist hier das Abtasten und Analysieren der Si-gnale an den Eingängen RC3 und RC4, an denen die SCL-Leitung (Serial CLo-ck) und die SDA-Leitung (Serial DAta) des I2C-Bus angeschlossen sind. Durch Drücken des Tasters S3 (SCAN) wird die Analyse gestartet.Bei genauem Betrachten der Schal-tung taucht die Frage auf, ob die Ge-

schwindig-keit des Mikro-

controllers ausreicht, um die Signale auf dem

I2C-Bus abzutasten. Die Ant-wort lautet wie folgt: Die maxima-

le Übertragungsgeschwindigkeit auf dem I2C-Bus beträgt laut I2C-Proto-koll 400 kbit/s. Die Befehlszyklusdau-er des Mikrocontrollers hat mit 0,2 µs ungefähr 1/12 der Länge eines Bit, so dass wenig Zeit zur Verarbeitung der Daten übrig bleibt. Außerdem müssen die START- und STOP-Konditionen an den positiven Flanken erkannt wer-den, dadurch wird das Programm kom-plexer. Dieses Problem auf der Seite der Software lässt sich durch zusätz-liche Hardware lösen. Gemeint sind die schon beschriebenen flankenge-triggerten monostabilen Flipflops der CMOS-ICs 4538.Nachdem die START-Kondition erkannt wurde, genügt es, die SDA-Leitung im Rhythmus des SCL-Taktsignals ab-zutasten. Die Daten werden vom Mi-krocontroller analysiert, das Ergebnis speichert der Mikrocontroller auf glei-che Weise wie ein Datenlogger. Die vier Ereignisse, um die es geht, sind die Signale START, BYTE, ACKNOW-LEDGE und STOP. Der Inhalt des Da-tenspeichers wächst abhängig vom Volumen des Datenverkehrs auf dem I2C-Bus. Bei vollem Speicher wird der Inhalt über die USB-Schnittstelle dem PC übergeben.

Falls auf dem I2C-Bus nur wenig Da-tenverkehr stattfindet, muss nicht ge-wartet werden, bis der Datenspeicher voll belegt ist. Mit Taster S2 (DISPLAY) kann die Datenübertragung zum PC von Hand gestartet werden. Gleichzei-tig wird der Datenspeicher gelöscht.Der I2C-Analyser kommuniziert mit dem PC über den FT232BM, ein USB-Schnittstellen-Baustein, der den USB-Port im CDC-Modus (Communication Device Class) nutzt. Für den Betrieb des FT232BM sind nur wenige externe Bauelemente nötig, ein 6-MHz-Quarz (X2) und zwei Kondensatoren (C7, C8) genügen. Die USB-Leitungen D+ und D– des FT232BM sind über 27-Ω-Schutzwiderstände mit USB-Buchse K2 verbunden. Der FT232BM legt über den 1,5-kΩ-Widerstand R16 die Span-nung +5 V an USB-Leitung D+. Der

Bild 2. Das erste monostabile Flipflop wird durch die negative Flanke des SDA-Signals gekippt.

IC2.A

RCX CX

≥1

2 1

4

3

R

6

75

C2

1n

R2

8k2

VCC

START

SDA SCL

Wichtige Eigenschaften• Analyse des I²C-Bus mit 100 und

400 kbit/s

• Speichern von 620 aufeinander folgen-den I²C-Ereignissen

• Erkennen der START- und STOP-Konditi-on durch Hardware, Anzeige über grüne und rote LED

• USB-Kommunikation mit dem PC über virtuellen seriellen Port

• Stromversorgung über den USB-Port des PCs oder extern

• Source der PIC-Controller-Firmware in C (CCS-Compiler)

• Windows Mensch-Maschine-Schnittstelle in C++ Builder Version 5 (Borland)

Page 30: Elektor 447 - 2008-03 (GER)

praxis bussysteme

30 elektor - 3/2008

USB-Host (der PC) erkennt daran, dass ein Gerät an den benutzten Port ange-schlossen ist und dass es sich um ein Full-Speed-Gerät handelt.

Zu erwähnen sind noch die LEDs D1 und D2, sie signalisieren die START- und STOP-Kondition auf dem I2C-Bus. Induktivität L1, eine Ferritperle, min-dert Störeinflüsse, die vom PC über die Betriebsspannung zum I2C-Analyser gelangen können. Eine Festinduktivität an dieser Stelle hat dieselbe Wirkung, sie kann gleichzeitig die Funktion ei-ner Sicherung übernehmen und die +5 V-Leitung des USB-Ports vor Kurz-schlüssen schützen. Für den Fall, dass der I2C-Analyser eine eigene Strom-versorgung erhalten soll, ist diese Lei-tung durch Versetzen von Jumper JP1 abtrennbar.

Bild 3. Dieses Diagramm stellt die START- und STOP-Kondition dar.

Bild 4. Auf den ersten Blick sind in der Schaltung ein PIC, ein USB-IC sowie diverse Anschlussbuchsen zu erkennen.

X1

20MHz

X2

6MHz

C5

22p

C6

22p

C7

22p

C8

22p

K31

2

3

4

5

6

K41

2

3

4

5

6

K51

2

3

4

5

6

K11

2

3

4

5

6

VCCVCC

K2

+5V

GND

USB

D–

D+

1

2

3

4

C12

33n

C11

33n

RC0/T1OSO/T1CKI

RC1/T1OSI/CCP2

RA3/AN3/VREF+

RA2/AN2/VREF-

RC3/SCK/SCL

RC4/SDI/SDA

RA5/AN4/SS

RE0/RD/AN5

RE1/WR/AN6

RE2/CS/AN7

PIC18F4520

RA4/T0CKI

RC7/RX/DT

RC6/TX/CK

MCLR/VPP

RC2/CCP1

RD0/PSP0

RD1/PSP1

RD2/PSP2

RD3/PSP3

RD7/PSP7

RD4/PSP4

RD5/PSP5

RD6/PSP6

RB0/INT

RB3/PGM

RA0/AN0

RB7/PGD

RB6/PGC

RA1/AN1

RC5/SDO

IC3

OSC1 OSC2

RB1

RB2

RB5

RB4

11

15

40

39

38

37

35

36

34

33

3112

10

32

16

17

18

19

20

21

22

13 14

26

25

24

23

30

27

28

29

1

3

2

4

6

5

7

8

9 FT232BM

PWRCTL

EEDATA

3V3OUT

RSTOUT

RESET

USBDP

USBDM

RXLED

TSLED

SLEEP

PWREN

TXDEN

VCCIO

TEST

EECS

IC4EESK

XOUT

AGND

AVCC

XIN

DCD

DSR

RXD RTS

TXD CTS

DTR

26

32

1727 28

29

14

11

12

10

31

30

19

20

24 23

25 22

21

RI18

15

16

13

3

1

9

5

2

4

6

7

8R14

27Ω

R15

27Ω

R16

1k5

R11

1k

R12

1k

S3

SCAN

S2

DISPLAY

VCC

VCC

VCC

R9

10k

R10

10k

VCC

S1

RESET

R7

470

Ω

R8

4k7

VCC

TP6

SCOPE-TRIGGER

SDA

SCL

TP4

TP5Tx

Rx

JP1

C9

10n

L1

VCC

TP3C10

100n

R13

470

Ω

VCC

070600 - 11

IC2.A

RCX CX

≥1

2 1

4

3

R

6

75 IC2.B

RCX CX

≥1

14 15

12

13

R

10

911

IC1.A

RCX CX

≥1

2 1

4

3

R

6

75 IC1.B

RCX CX

≥1

14 15

12

13

R

10

911

C2

1n

C4

100n

C1

1n

C3

100n

R2

8k2

R4

1M5

R1

8k2

R3

1M5

T2

2N7000

R6

330

Ω

D2

vert

START

VCC

T1

2N7000

R5

330

Ω

D1

rouge

STOP

VCC

IC1

16

8

IC2

16

8

VCC

IC1, IC2 = 4538

TP7START

TP8STOP

START

STOP

ISP ICD

2I C

2I C

2I C

SDA SCL

SDA

SCL

TP1

TP2

VCC

VCC

Page 31: Elektor 447 - 2008-03 (GER)

313/2008 - elektor

Platine

In Bild 5 ist das Platinenlayout für die Schaltung aus Bild 4 wiedergegeben. Der erste Schritt auf dem Weg zum funktionsfähigen I2C-Analyser ist die Montage des einzigen SMD-ICs, des FT232BM (IC4). Wie immer beim Lö-ten von SMDs sind auch hier erhöhte Sorgfalt und eine ruhige Hand gefor-dert. Auf der Platine wurden die Lötin-seln für dieses IC verlängert, die Mon-tage wird dadurch erleichtert. Das IC muss unbedingt lagerichtig und mittig auf den Lötpads positioniert werden. Die runde Markierung auf der linken Gehäuseseite kennzeichnet den IC-An-schluss 1. Auf der Platine ist die Posi-tion von Anschluss 1 durch die Ziffer „1“ angegeben. Mit einem für SMDs geeigneten Lötkolben und feinem Löt-zinn werden zuerst zwei diagonal ge-genüber liegende IC-Beine angelötet. Die übrigen IC-Anschlüsse dürfen erst angelötet werden, wenn sie mittig auf ihren zugehörigen Lötinseln lie-gen. Nach dem Löten hilft eine starke Lupe bei der Kontrolle der Lötstellen. Eventuelle Kurzschlüsse, die beim Lö-ten entstanden sind, müssen natürlich beseitigt werden. Der Montage des FT232BM folgen die übrigen SMDs im 1206-Gehäuse und anschließend die kleinen bedrahteten Bauelemente wie Widerstände, Kondensatoren, Quarze, Transistoren und LEDs, wobei die An-schlussbelegung der LEDs und der Transistoren zu beachten ist. Für IC1, IC2 und Mikrocontroller IC3 wird die Verwendung qualitativ hochwertiger Fassungen dringend empfohlen. Die nächsten zu montierenden Bauele-mente sind die RJ11-Buchsen K1, K3, K4 und K5 sowie USB-Buchse K2. Was noch fehlt, sind die drei Taster S1, S2, S3 und Jumper JP1. Der Jumper muss in Position „On“ gesteckt sein, wenn der I2C-Analyser seine Betriebsspan-nung vom USB-Port des PCs bezieht.

Nach einer letzten sorgfältigen Sicht-kontrolle kann die Schaltung über ein USB-Kabel mit dem USB-Port des ein-geschalteten PCs verbunden werden. Jetzt wird mit dem Multimeter über-prüft, ob an den dafür bestimmten Pins der IC-Fassungen die Betriebs-spannung +5 V anliegt. Wenn das zu-trifft, wird das USB-Kabel abgezogen, danach werden IC1, IC2 und Mikro-controller IC3 in ihre Fassungen ge-setzt. Dabei ist unbedingt auf korrekte Position (Lage von Pin 1) zu achten.Auf der Platine befinden sich acht Test-punkte, bezeichnet mit TP1 bis TP8.

Die Leitungen SCL, SDA, Rx und Tx sind identisch mit TP1, TP2, TP4 und TP5, sie können wie beim Musterauf-bau über Lötstifte zugänglich gemacht werden. Während der Testphase kann ein externes Netzteil die Schaltung über eine I2C-Buchse oder direkt an-gelötete Leitungen mit der Betriebs-spannung +5 V versorgen.

Die Funktionen der monostabilen Flip-flops lassen sich leicht kontrollieren, denn die Flipflops arbeiten unabhän-gig vom Mikrocontroller und seiner Firmware. Nach Anschließen eines in Betrieb befindlichen I2C-Bus müssen die START- und STOP-Konditionen auf dem Bus zum Aufleuchten der LEDs D2 und D1 führen.

Bild 5. Auf der Platine des I2C-Analysers müssen auch SMD-Bauelemente montiert werden.

StücklisteAlle SMDs: 1206

Widerstände:R1,R2 = 8k2R3,R4 = 1M5R5,R6 = 330 ΩR7,R13 = 470 ΩR8 = 4k7R9,R10 = 10 kR11,R12 = 1 kR14,R15 = 27 ΩR16 = 1k5

Kondensatoren:C1,C2 = 1 nC3,C4,C10 = 100 nC5...C8 = 22 pC9 = 10 nC11,C12 = 33 n

Halbleiter:D1 = LED 3 mm, rotD2 = LED 3 mm, grün

T1,T2 = 2N7000IC1,IC2 = 4538IC3 = PIC18F4520 (programmiert,

EPS 070600-41)IC4 = FT232BM (FTDI)

Außerdem:K1 = RJ11-Buchse 6-polig, gerade K3 . . .K5 = R J11-Buchse 6 -po l i g ,

abgewinkeltK2 = USB-Buchse Typ B, abgewinkeltL1 = FerritperleX1 = Quarz 20 MHz (HC 49/4H)X2 = Quarz 6 MHz (HC 49/4H)S1 = DrucktasterS2,S3 = Schalter für Platinenmontage, rot

und grünJP1 = Stiftleiste 3-polig mit JumperPlatine 070600-1 (siehe Elektor-Shop-Anzei-

ge und www.elektor.de)

Die Software und das Platinenlayout für die-ses Projekt können frei von der Elektor-Website (www.elektor.de) herunter geladen werden.

Page 32: Elektor 447 - 2008-03 (GER)

praxis bussysteme

32 elektor - 3/2008

SoftwareDer Quellcode der Mikrocontroller-Firmware wurde in C geschrieben und mit dem Cross-Compiler PCH, Version 4.010 von Custom Computer Service (CCS) compiliert. Dieser Com-piler umgeht bestimmte Schwach-stellen der Programmiersprache C, er ist eine Empfehlung für Elektroniker, die eigene Programme schreiben. Die Firmware wurde mit MPLAB V7.62 entwickelt.

cuit Debugging“ (ICD) der Firmware möglich.

ProgrammübersichtIm Gegensatz zur vergleichsweise einfach aufgebauten Hardware ist die Firmware des Mikrocontrollers ziem-lich komplex. Die Firmware kann von der Elektor-Website www.elektor.de unter der Nummer EPS 070600-11 her-unter geladen werden. Nachfolgend geben wir eine kurze Übersicht über die Software:

Mensch-Maschine-Schnittstelle Das PC-Programm „Monitor I2C“ wur-de, wie schon erwähnt, in C++ Buil-der V5.0 geschrieben. Es läuft unter Windows und muss nicht installiert werden, der Aufruf der Datei „moni-tor_I2C.exe“ genügt. Voraussetzung für die Funktionsfähigkeit ist jedoch die Installation der zum FT232BM ge-hörenden USB-Treiber. Dazu verweisen wir auf vorangegangene Beiträge mit dem FT232BM in Elektor sowie auf die Website von FTDI [3].

RS232-KonfigurationBeim Programmstart erscheint zuerst ein Dialogfenster, in dem der virtuelle COM-Port gewählt werden kann. Über den virtuellen COM-Port empfängt der PC die Daten, die der Mikrocontroller des I2C-Analysers seriell sendet (Über-tragungsgeschwindigkeit 128 Baud). Die Statusleiste gibt Auskunft über die ordnungsgemäße Funktion des se-riellen Port.

Ergebnisse anzeigenDas Abtasten der I2C-Signale beginnt, sobald Taster S3 (SCAN) gedrückt wird. Von diesem Zeitpunkt an wer-den alle Ereignisse auf dem I2C-Bus registriert, anschließend werden die Ereignisse farbig auf dem PC-Bild-schirm dargestellt. Im Hauptfenster, das Bild 6 zeigt, erscheinen START in Grün, STOP in Rot, die Adressen in Dunkelblau und die Daten in Hellblau. Die Farben der Adressen und Daten hängen außerdem vom Acknowledge-Bit ab. Wenn das Acknowledge-Bit 0 ist, werden die Adressen und Daten in Grau dargestellt.Die Statusleiste gibt codiert auch Auf-schluss über den Status der seriellen Verbindung zwischen I2C-Analyser und PC. Beispiele:

- S00 für START,- V20 für ein abgetastetes Byte, dessen

Wert hexadezimal 20 ist,

Das unter Windows laufende Pro-gramm, das die I2C-Bus-Aktivitäten auf dem PC-Bildschirm darstellt, wur-de in C++ Builder V5.0 von Borland geschrieben. Der Quellcode lässt sich auch mit CodeGear 11 compilieren. Diese neueste IDE stellt Borland 30 Tage kostenlos zur Verfügung.In der Mitte der Platine befindet sich ISP-Anschluss K1. Über diesen Zugang zum Mikrocontroller ist das „In System Programming“ (ISP) und das „In Cir-

Bild 6. Das Programm „Monitor I2C“ macht die Signale auf dem PC-Bildschirm sichtbar.

Bild 7. Ein angeschlossenes Oszilloskop kann auf ein voreingestelltes Byte triggern.

Page 33: Elektor 447 - 2008-03 (GER)

333/2008 - elektor

- v20 für ein abgetastetes Byte, das nicht den Wert hexadezimal 20 hat,

- P00 für STOP.

Oszilloskop-SynchronisationMit dieser Hilfsfunktion kann ein Bit-muster zur Synchronisation eines Os-zilloskops vorgegeben werden. Wenn der Mikrocontroller im Datenstrom ein Byte mit diesem Bitmuster erkennt, wird über den Ausgang „SCOPE_TRIG-GER“ ein Synchronisationsimpuls aus-

gegeben. Der Impuls kann ein Oszillo-skop triggern, das auf externe Synchro-nisation eingestellt ist. Das Oszilloskop stellt die SDA- und SCL-Signale dar, die nach dem Triggerzeitpunkt auf dem I2C-Bus liegen. Als Beispiel zeigt Bild 7 das Bitmuster des Byte-Werts hexade-zimal 21. Oben ist erkennbar, dass das Signal immer dann seinen Zustand für die Dauer des folgenden Byte ändert, wenn das voreingestellte Byte auftritt. Der mittlere Teil ist eine zehnfache

Vergrößerung. Hier ist zu sehen, dass die Rückflanke des SCL-Taktimpulses das Signal SCOPE_TRIGGER auslöst. Zu diesem Zeitpunkt legt im Normal-fall der Empfänger seine Antwort auf den Bus. Die 1 auf der SDA-Leitung bedeutet, dass kein ACKNOWLEDGE zurück gegeben wurde. Das kann dar-an liegen, dass ein Empfänger mit der Adresse hexadezimal 10 nicht existiert, oder der Empfänger mit dieser Adresse ist nicht empfangsbereit.

Der I2C-Bus (Inter Integrated Circuit Bus) ist eine Entwicklung von Philips aus der Zeit, als dieses Unternehmen noch zu den Marktführern im Segment der Consumer-Audio-Video-Systeme gehörte. Die Berei-che, in denen der I2C-Bus Anfang der achtziger Jahre vorwiegend ein-gesetzt wurde, waren elektronische Systeme im Wohnbereich sowie die Heimautomatisierung (Domotik). In jener Zeit drangen die Mikropro-zessoren in die TV-Gerätetechnik vor. Es musste eine Grundlage für die Kommunikation zwischen einzelnen Geräte-Komponenten geschaffen werden.

Der I2C-Bus ist ein synchroner serieller Bus, der physisch aus nur drei Leitungen besteht: DATA (SDA), CLOCK (SCL) und Masse. Die über den I2C-Bus miteinander kommunizierenden Systeme sind in einer Master-Slave-Hierarchie strukturiert. Der Master steuert die Kommu-nikation, er generiert das Taktsignal und legt Adressen und Daten auf den Bus. Der Slave empfängt die Daten und sendet bestätigende (Ack-nowledge-)Signale zurück. Trotz (oder gerade wegen) seiner einfachen Struktur können Mikroprozessoren sehr unterschiedlichen Typs Infor-mationen über den I2C-Bus austauschen. Voraussetzung ist natürlich, dass in den beteiligten Systemen das I2C-Protokoll implementiert ist. Nachfolgend werden in Kurzform die vier wichtigsten „Konditionen“ (Zustände) des I2C-Bus dargestellt:

1. Übertragen eines Bit über den I2C-Bus (Bild A).

Das Taktsignal hat den Anschein, instabil zu sein. Das trifft jedoch nicht zu, die Taktimpulse des I2C-Bus können unterschiedliche Breite haben.

2. START- und STOP-Kondition (Bild B).

Vor einer Datenübertragung wird die SDA-Leitung 0, während die SCL-

Leitung auf 1 bleibt. Dies ist das START-Bit. Nach der Datenübertra-gung wird die SDA-Leitung wieder 1, die SCL-Leitung bleibt auch hier auf 1. Dies ist das STOP-Bit.

3. Datenübertragung über den I2C-Bus (Bild C).

Der Master setzt das MSB (Most Significant Bit) des zu übertragenden Bytes auf die SDA-Leitung. Das Bit ist gültig, wenn der Master die SCL-Leitung kurzzeitig auf 1 legt. Auf gleiche Weise werden die übrigen Bits bis zum LSB (Least Significant Bit) übertragen. Nach Übertragen aller acht Bits geht bei normalem Verlauf die SDA-Leitung auf 0. Dies ist das Acknowledge-Bit.

4. Acknowledge-Signal auf dem I2C-Bus (Bild D).

Der Slave sendet das Acknowledge-Signal als Bestätigung des emp-fangenen Bytes. Bei ordnungsgemäßem Empfang legt er die SDA-Lei-tung kurzzeitig auf 0.

Der I2C-Bus ist zwar einfach aufgebaut, trotzdem sind mit ihm relativ komplexe Operationen möglich. Die zu diesem Projekt-Beitrag gehö-renden Oszillogramme verdeutlichen die Komplexität.

Hinzuzufügen ist noch, dass auch der Slave in umgekehrter Richtung Daten an den Master senden kann. Detaillierte Informationen über das I2C-Protokoll enthält das englischsprachige PDF-Dokument „Specifica-tions of the I2C-Bus, January 2000“ auf der Website www.nxp.com/acrobat_download/literature/9398/39340011.pdf

Das Studium dieses Dokuments wird ausdrücklich empfohlen.

(Quelle der Abbildungen: Philips Semiconductors)

data linestable;

data valid

changeof dataallowed

SDA

SCL

SDA

SCLP

STOP condition

SDA

SCLS

START condition

SrorP

SDA

Sr

P

SCL

STOP orrepeated START

condition

SorSr

START orrepeated START

condition

1 2 3 - 8 9

ACK

9

ACK

7 81 2

MSB acknowledgementsignal from slave

byte complete,interrupt within slave

clock line held low whileinterrupts are serviced

acknowledgementsignal from receiver

S

STARTcondition

9821

clock pulse foracknowledgement

not acknowledge

acknowledge

DATA OUTPUTBY TRANSMITTER

DATA OUTPUTBY RECEIVER

SCL FROMMASTER

Die Geheimnisse des I2C-Bus

A B

C D

Page 34: Elektor 447 - 2008-03 (GER)

praxis bussysteme

34 elektor - 3/2008

VerschiebefunktionEine weitere Hilfsfunktion dient dazu, den Start der Daten-Aufzeichnung um eine vorgegebene Ereignis-Anzahl zu verschieben. Die übersprungenen Ereignisse erscheinen auf dem Bild-schirm in Form eines Punktes.

I²C kurz gefasstEine im Programm eingebaute Hilfssei-te enthält eine kurze Übersicht über die wichtigsten Begriffe und Ereignisse in Zusammenhang mit dem I2C-Bus. Fer-ner wird in Kurzform die Darstellung der Signale beschrieben.Für das Senden von Daten über ei-

nen I2C-Bus haben die START- und die STOP-Kondition zentrale Bedeutung. Bei der START-Kondition geht die SDA-Leitung von 1 nach 0, während die SCL-Leitung auf 1 bleibt. Die STOP-Kondition ist dadurch gekennzeich-net, dass die SDA-Leitung von 0 nach 1 geht, auch hier bleibt die SCL-Leitung auf 1. Nach der START-Kondition folgen auf der SCL-Leitung acht Taktimpulse für die Übertragung eines Byte. Das höchstwertige Bit (MSB) wird zuerst, das niederwertigste Bit (LSB) wird zu-letzt übertragen. Der neunte Taktim-puls gehört zu einem Acknowledge-Bit, das den Daten-Empfang bestätigt. Die Anzahl der übertragenen Byte ist nicht begrenzt, doch auf jedes Byte muss ein Acknowledge-Bit folgen. Der Empfän-ger gibt diese Empfangsbestätigung zurück, indem er die SDA-Leitung auf 0 legt. Wenn dies nicht geschieht, kann

Mit dem I2C-Analyser können auch die Signale auf dem I2C-Bus des Datenlog-gers betrachtet werden, den wir an an-derer Stelle in dieser Elektor-Ausgabe veröffentlichen. Der I2C-Bus des Daten-loggers ist in Echtzeit mit dem übrigen System verbunden.

(070600)gd

Weblinks[1] Datenblatt des FT232BM:www.ftdichip.com/Documents/DataSheets/ds232b18.pdf

[2] Datenblatt des PIC18F4520:ww1.microchip.com/downloads/en/DeviceDoc/39631a.pdf

[3] Website von FTDI:www.ftdichip.com/

[4] CCS-Compiler:www.ccsinfo.com/

der Sender zum Beispiel die Übertra-gung des Byte wiederholen.

Noch etwas?Nicht viel. Es genügt, den I2C-Analyser mit dem I2C-Bus des zu untersuchen-den Geräts auf der einen Seite und mit dem USB-Port des PCs auf der ande-ren Seite zu verbinden. Auf dem PC wird das Windows-Programm „Moni-tor I2C“ (Dateiname: monitor_I2C.exe) gestartet. Danach muss nur noch Tas-ter SCAN (S3) und einige Sekunden später Taster DISPLAY (S2) gedrückt werden.

Zum SchlussDer I2C-Analyser ist mit Standard-Bau-elementen aufgebaut (PIC, CMOS 4000, USB-Schnittstellen-Baustein), er analy-siert die auf dem I2C-Bus auftretenden Signale. Die Hardware könnte auch mit dem PIC18F4550 aufgebaut werden, der eine USB-Schnittstelle an Bord hat. Dadurch würde der Hardware-Aufwand verringert, der FT232BM und der 6-MHz-Quarz würden ent-fallen. Außerdem ist der PIC18F4550 schneller, da seine PLL mit 48 MHz ar-beitet. Erkauft werden müssten diese Vorteile durch wesentlich komplexere Firmware. Die Anbieter von C-Cross-Compilern (MPLABC18Compiler, CCS) liefern zwar in reichem Maß Quellcode-Module und Bibliotheken mit, eine voll-ständige Übersicht der Einstellungen ist jedoch kaum zu finden.

Der Autor

Etienne Boyer absolvierte sein Ingenieurstu-dium an der INSA in Lyon (Frankreich) und setzte seinen beruflichen Weg als Dozent an staatlichen Hochschulen fort. Seit vielen Jahren unterrichtet Etienne Boyer Studieren-de in verschiedenen Fachbereichen und hat dabei die rasant fortschreitende Evolution der Elektronik aktiv verfolgt. Meilensteine in dieser Zeit waren die diskreten Halblei-ter-Bauelemente, die digitalen Speicher, die Mikroprozessoren und schließlich die Ein-führung der Personal Computer.

Ein wichtiges Anliegen des Autors ist die leicht verständliche Darstellung der Zusam-menhänge in komplexen elektronischen Sy-stemen sowie bei deren Installation, Konfi-guration und Fehlerbeseitigung. Für Etienne Boyer ist die Tätigkeit als Dozent in der Elek-tronik der „schönste Beruf der Welt“.

Dieser Laboraufbau weicht von der endgültigen Version noch in verschiedenen Details ab.

Page 35: Elektor 447 - 2008-03 (GER)

353/2008 - elektor

Elektor-Workshops

Röhren in Audio- und Instrumentalverstärkern

für Audio- und E-Gitarrenfreaks

sowie Selbstbauer

Totgesagte leben länger! Das gilt erst recht für die Röhren technik, die seit einigen Jahren wieder richtig aufblüht und somit auch die Mythen und Märchen, die sich um die Röhren und deren Technik ranken. Es ist also an der Zeit, das Wissen um die alte-neue Technik wieder aufzufrischen bzw. sich anzueignen.

Nutzen Sie hierfür die von Elektor

angebotenen Röhren-Workshops!

Elektor hat zwei renommierte Referenten gewinnen können: MENNO VAN DER VEEN (international bekannter Entwickler von Röhrenverstärkern) und RAINER ZUR LINDE (anerkannter Autor vieler Bücher zum Thema Röhren). Beide vermitteln technisches Wissen von Grund auf und rücken so die Mythen und Märchen zurecht.

Veranstaltungstermine:

Programmpunkte Röhren-Workshop(Änderungen und Ergänzungen vorbehalten)

Teilnehmerbeitrag:

Der Kostenbeitrag beträgt pro Teilnehmer 199,00 EUR

(inkl. Mittagsbuffet mit kalten Speisen und Getränken

+ Zertifi kataushändigung).

Achtung: Elektor-Abonnenten erhalten 5% Rabatt!

Alle interessierten Teilnehmer erhalten nach ihrer Anmeldung umgehend eine Bestätigung mit allen weiteren Einzelheiten.

1. VorverstärkungDefi nition von μ, S und Ri

Inkonstanz der drei RöhrengrundgrößenDie Arbeit mit KennlinienfeldernAussagekraft und Zuverlässigkeit von KennlinienfeldernDie eingeschränkte Aussagekraft von Formeln; Kennlinien-

felder besitzen eine größere AussagekraftStatische Lastgerade, Aussteuerung und Verstärkungs-

faktor, effektive AusgangsimpedanzDynamische Lastgerade, Berechnung von Caus, f-3L und

Katodenkondensator für den tieffrequenten BereichFrequenzverhalten im oberen AudiobereichDie Röhre als Modell: Herleitung der grundlegenden formel-

mäßigen Zusammenhänge; Kennlinien und Interpretation grafi scher Daten als Grundlage für den Schaltungs-entwurf von Eingangs-Audio-Verstärkern

Trioden und Pentoden als Anfangsstufenverstärker: unter schiedliche Anforderungen im Hifi - und Instrumental-verstärkerbereich

Periphere Beschaltung und ihre Wirkung auf das Über-tragungsverhalten

2. EndstufenEintakt-Stufen (SE) und ihre Eigenschaften; die Bedeutung

des Luftspaltes beim AusgangsübertragerGegentakt-Endstufen (PP) und ihre Eigenschaften;

Bestimmung nach Thomson, Berechnung von Klasse-A, -AB und B.

Vor- und Endstufenschaltungstechnik der Instrumental-verstärker

Spezielle Schaltungstechniken und soundbestimmende Elemente: Signalaufbereitung und Frequenzgang -beein fl ussung – Der Verstärker als Teil des Instruments

Beispielhafte Schaltplananalyse legendärer Gitarren-verstärker: Klangformung in den Vorstufen

Die Besonderheiten von Instrumentalverstärker-Endstufen: Schaltungen kommerzieller Geräte im Eintakt- und Gegentaktbetrieb

3. TransformatorenEintakt-Stufen (SE) und ihre Eigenschaften; die Bedeutung des Luftspaltes beim Ausgangsübertrager

4. GegenkopplungLokale Gegenkopplung und Über-alles-GegenkopplungDie formelmäßige Darstellung der Gegenkopplung

(A, Zaus, THD ...)Stabilitätsanforderungen im tieffrequenten Übertragungs-

bereichStabilitätsanforderungen im höherfrequenten AudiobereichDas „Menno-Kriterium“Die besonderen Wirkungen der Gegenkopplung im

Instrumentalverstärker

5. Nachbesprechung

Aktuelle Infos & Anmeldung nur unter www.elektor.de/workshop

++

+

WE

ITE

RE

3 T

ER

MIN

E W

EG

EN

GR

OS

SE

R N

AC

HF

RA

GE

+

++

W

EIT

ER

E 3

TE

RM

INE

WE

GE

N G

RO

SS

ER

NA

CH

FR

AG

E

++

+

Zertifikat

inklusive

Elektor-Teilnahmeze

electronics worldwide

e

ldwdwiwididede

05. April 2008 in Dortmund Anmeldeschluss: 01.04.2008

31. Mai 2008 in Wien Anmeldeschluss: 27.05.2008

14. Juni 2008 in Luzern Anmeldeschluss: 10.06.2008

Jeweils samstags von 10:00 Uhr bis 16:00 Uhr

ELEK DU0803 WorkshopRohrenNW.ind1 1 04-02-2008 13:12:010803_elektor_adv_DU 35 11-02-2008 09:23:19

Page 36: Elektor 447 - 2008-03 (GER)

technik fpga

36 elektor - 3/2008

Heute arbeiten zahllose elektronische Geräte und Systeme mit Mikrocontrollern, selbst funktional einfachste Geräte machen keine Ausnahme. Es muss nicht betont werden, dass das nicht immer so gewesen ist. Als die Mikrocon-troller Einzug in die Welt der Elektronik hielten, war der Einsatz dieser damals exotischen Bauelemente einer Handvoll privilegierter Spezialisten vorbehalten. Zu jener Zeit waren nahezu alle elektronischen Geräte und Syste-me in analoger Technik aufgebaut.

Mysterium FPGA?Mikroprozessoren waren ursprünglich für den Einsatz in Mikrocomputern gedacht. Die wenigen Entwickler, die sich mit diesen Chips auskannten, wurden als hochkaräti-ge Spezialisten bestaunt. Ihr Terrain war ein Fachgebiet, das außerhalb der geläufigen Elektronik-Sparten lag.

Assembler war die Standardsprache, in der die Firmware geschrieben wurde. Die vielen Kollegen, die an analogen Schaltungstechniken orientiert waren, betrachteten die Mikrocontroller mit Skepsis. Für sie hatten diese „neumo-dischen“ Chips den Hauch eines Mysteriums.Eine ähnliche Aura umgibt gegenwärtig die FPGAs. Die meisten heute im Beruf stehenden Entwickler sind dem Begriff „FPGA“ schon irgendwo begegnet, und viele zei-gen verstärktes Interesse für die hochgelobten Vielkönner. Doch der Einstieg ist nicht ganz leicht, die vertrauten Mi-krocontroller bleiben die Favoriten. Mikrocontroller sind eben oft die einfacher scheinende Lösung.

Neue GenerationAnders als Mikrocontroller stehen FPGAs in dem Ruf, extrem teuer und extrem energiehungrig zu sein. Die

FPGA „made easy”Programmieren Sie FPGAs in C!

Von Paul Goossens

FPGAs eignen sich für die unterschiedlichsten Anwendungen. Trotzdem werden die Stärken, die in diesen Chips stecken, für Neuentwicklungen noch selten genutzt. Der Hauptgrund dürfte der gegenwärtige Mangel an FPGA-Spezialisten sein. Die jüngste Entwicklung auf dem Gebiet der Electronic Design Automation (EDA) kann diesem Engpass abhelfen.

Page 37: Elektor 447 - 2008-03 (GER)

373/2008 - elektor

FPGA-Hersteller haben sich entschlossen, diesem Image entgegenzuwirken. Sie haben inzwischen preisgünstige und energiesparende Neuentwicklungen auf den Markt gebracht. Das Endstadium ist noch längst nicht erreicht, die Zukunft wird noch Einiges bringen.Beim Betrachten der Hersteller-Websites fällt auf, dass alle Hersteller eine Low-cost- und Low-power-FPGA-Fami-lie im Programm haben. Dadurch wird die Entscheidung zwischen Mikrocontroller und FPGA allmählich schwie-riger, die Kriterien „Low-cost“ und „Low-power“ können nicht mehr allein den Ausschlag geben. Eine Hürde für den Einsatz von FPGAs auf breiter Front ist allerdings der gegenwärtige Mangel an Entwicklern, die Kenntnisse und Erfahrungen im Umgang mit FPGAs haben.

Die verbreitete Sprache für die Programmierung von Mi-krocontrollern ist C, hier folgen die Abläufe dem sequenti-ellen Prinzip. Dagegen werden FPGAs normalerweise in VHDL oder Verilog programmiert, welche keine sequen-tiellen Abläufe kennen. Der Umstieg von C nach VHDL oder Verilog bedeutet für den Entwickler, dass er konse-quent umdenken muss. Für viele Entwickler ist dies ein ziemliches hohes Wagnis. Das Einarbeiten in VHDL (be-gleitet vom Sammeln praktischer Erfahrungen) erfordert beispielsweise hohe Investitionen an Material und Zeit. Die ersten Entwicklungen unter Einsatz von FPGAs werden

wesentlich mehr Zeit in Anspruch nehmen als äquivalente Entwicklungen mit Mikrocontrollern. Für viele Unterneh-men ist dies Grund genug, an den Mikrocontrollern als Standard fest zu halten.

Zwei WeltenAuch wenn die Entscheidung zu Gunsten eines FPGAs fiel, befindet sich häufig ein Mikrocontroller im zu entwik-kelnden System. Entweder übernimmt der Mikrocontroller die für ihn typischen Aufgaben, oder der FPGA emuliert einen Mikrocontroller. Diese Methode ist gut geeignet, zwei Welten miteinander zu verbinden. Das System kann größtenteils immer noch nach bewährtem Verfahren ent-wickelt werden. Dem FPGA werden spezifische System-funktionen zugeordnet, während das restliche System wie bisher durch einen Mikrocontroller und Firmware realisiert wird.

Es genügt, fertige IP-Blöcke aneinanderzufügen, um eine funktionsfähige Basis zu schaffen (zur Abkürzung IP sie-he Kasten). Diesem Mix wird manchmal noch eigene, in VHDL oder Verilog konfigurierte Hardware hinzugefügt. Der „Zusammenbau“ kann in vielen EDA-Programmen grafisch vorgenommen werden, hierzu sind keine VHDL- oder Verilog-Kenntnisse erforderlich.

FPGA „made easy”Programmieren Sie FPGAs in C!

Bild 1.Schema des internen FPGA-Entwurfs.

SRAM_A[15..0]SRAM_D[31..0]

NSRAM_CENSRAM_WENSRAM_OENSRAM1_BHENSRAM1_BLENSRAM0_BHENSRAM0_BLE

TCKTMS

TDITDO

TRST

JTAG

.

JTAG

JTAG

JTAG

JTAG

JTAG

..

SOFT_TDISOFT_TDOSOFT_TCKSOFT_TMS

VCC

Wishbone Interconnect

s0_STB_Os0_CYC_Os0_ACK_Is0_ADR_O[17..0]s0_DAT_I[31..0]s0_DAT_O[31..0]s0_SEL_O[3..0]s0_WE_Os0_CLK_Os0_RST_O

m0_STB_Im0_CYC_I

m0_ACK_Om0_ADR_I[31..0]

m0_DAT_O[31..0]m0_DAT_I[31..0]

m0_SEL_I[3..0]m0_WE_I

m0_CLK_Im0_RST_I

m0_INT_O[31..0]

IC2

WB_INTERCON

SEL_I[3..0]WE_I

DAT_O[31..0]DAT_I[31..0]

ADR_I[17..0]ACK_O

STB_ICYC_I

RST_ICLK_I

SRAM Controller

SRAM_D[31..0]SRAM_A[15..0]SRAM_CESRAM_WESRAM_OESRAM_B3_ESRAM_B2_ESRAM_B1_ESRAM_B0_E

IC1

WB_MEM_CTRL

CLK25

CLK40

CLK_IRST_I

DAT_I[7..0]DAT_O[7..0]ADR_I[3..0]

CYC_ISTB_I

WE_I

ACK_O

INT_O[1..0]

Terminal ConsoleIC6

TERMINAL

Wishbone Interconnect

s0_STB_Os0_CYC_Os0_ACK_I

s0_ADR_O[3..0]s0_DAT_I[7..0]

s0_DAT_O[7..0]s0_SEL_O[3..0]

s0_WE_Os0_CLK_Os0_RST_O

s1_STB_Os1_CYC_Os1_ACK_I

s1_ADR_O[9..0]s1_DAT_I[31..0]

s1_DAT_O[31..0]s1_SEL_O[3..0]

s1_WE_Os1_CLK_Os1_RST_O

m0_STB_Im0_CYC_Im0_ACK_Om0_ADR_I[23..0]m0_DAT_O[31..0]m0_DAT_I[31..0]m0_SEL_I[3..0]m0_WE_Im0_CLK_Im0_RST_Im0_INT_O[31..0]

IC5

WB_INTERCON

CLK_I CLK

DELAY[7..0]

INIT

IC8

FPGA_STARTUP8

VCC

RST_I

CLK_IRST_I

INT_I[31..0]

IO_CYC_O

IO_CLK_O

IO_ADR_O[23..0]

IO_STB_O

ME_DAT_O[31..0]ME_SEL_O[3..0]

ME_STB_O

IO_WE_O

IO_DAT_O[31..0]

ME_WE_OIO_SEL_O[3..0]

ME_ADR_O[31..0]ME_DAT_I[31..0]

IO_ACK_IME_CYC_OME_ACK_I

IO_DAT_I[31..0]

IO_RST_OME_CLK_OME_RST_O

MDU : InstalledDebug Hardware : Installed

Internal Memory : 32 KB

TSK3000A 32-Bit RISC Processor

Current Configuration

RST_ICLK_I

IC4

TSK3000A

Wishbone Multi Master

STB_OCYC_OACK_IADR_O[31..0]DAT_I[31..0]DAT_O[31..0]SEL_O[3..0]WE_OCLK_ORST_O

m1_STB_Im1_CYC_I

m1_ACK_Om1_ADR_I[31..0]

m1_DAT_O[31..0]m1_DAT_I[31..0]

m1_SEL_I[3..0]m1_WE_I

m1_CLK_Im1_RST_I

m2_STB_Im2_CYC_I

m2_ACK_Om2_ADR_I[31..0]

m2_DAT_O[31..0]m2_DAT_I[31..0]

m2_SEL_I[3..0]m2_WE_I

m2_CLK_Im2_RST_I

High Priority

No Delay

IC3

WB_MULTIMASTER

Wishbone ASP

io_STB_Iio_CYC_Iio_ACK_Oio_ADR_I[9..0]io_DAT_O[31..0]io_DAT_I[31..0]io_SEL_I[3..0]io_WE_Iio_CLK_Iio_RST_I

me_STB_Ome_CYC_Ome_ACK_Ime_ADR_O[31..0]me_DAT_I[31..0]me_DAT_O[31..0]me_SEL_O[3..0]me_WE_Ome_CLK_Ome_RST_O

IC7

WB_ASP070986 - 12

CLK40

Page 38: Elektor 447 - 2008-03 (GER)

technik fpga

38 elektor - 3/2008

Statische und dynamische StromaufnahmeDer Betriebsstrom, den ein digitaler Baustein aufnimmt, setzt sich aus zwei Komponenten zusammen. Der Dauerstrom fließt ständig, solange Betriebsspannung anliegt. Dieser Strom muss fließen, damit zum Beispiel die Inhalte statischer Register nicht verloren gehen. Auch Leckströme haben Anteil am ständig flie-ßenden Strom. Die zweite Komponente ist der so genannte dy-namische Strom. Die Ursache dieses Stroms sind die Zustands-änderungen der chip-internen Signale.

Bekanntlich bestehen komplexe digitale Bausteine (auch FP-GAs) aus einer Vielzahl elementarer digitaler Schaltungen, die auf einem gemeinsamen Chip integriert sind. Alle elementaren Schaltungen haben Ausgänge, die in der binären Welt entwe-der 0 oder 1 sein können, sie liegen auf niedriger oder hoher Spannung. Jeder Ausgang ist über eine leitende Struktur mit mindestens einem Eingang einer anderen elementaren Schal-tung verbunden.

Aus dem Physikunterricht ist sicher noch bekannt, dass jeder Leiter zusammen mit einem in der Nähe befindlichen Leiter einen Kondensator bildet. Die so entstehenden parasitären Kondensatoren hemmen den chip-internen Signalfluss. Wenn sich der Si-gnalzustand eines Ausgangs ändert, muss ein Strom fließen. Der Strom muss den parasitären Kondensator aufladen oder entla-den, den die Ausgangsleitung mit Masse bildet. Anderenfalls wäre keine Signal-Zustandsänderung möglich.

Wenn ein Ausgang von 0 V auf 5 V schaltet, wird der parasitäre Kondensator so lange aufgeladen, bis die Spannung 5 V erreicht ist. Im umgekehrten Fall, wenn der Ausgang von 5 V auf 0 V wechselt, muss die Ladung des parasitären Kondensators nach Mas-se abgeführt werden, damit die Spannung 0 V betragen kann.

Die Ladungsmenge parasitärer Kondensatoren, die transportiert werden muss, hängt von zwei Faktoren ab. Maßgeblich sind die Spannungsdifferenz zwischen den beiden Signalzuständen sowie die Kapazität des umzuladenden parasitären Kondensators. Durch geschickte Konstruktion der internen Chipstrukturen und überlegten Einsatz der Materialien lässt sich die Kapazität mini-mieren. Niedrige Kapazitäten der parasitären Kondensatoren haben zur Folge, dass zum Umladen niedrigere Ströme erforderlich sind.

SYNCHRONE SYSTEMEIn synchronen digitalen Systemen arbeiten die Systemkomponenten gewissermaßen im Gleichschritt. Zum Beispiel können sich die Ausgangssignale von Flipflops nur zu bestimmten Zeiten des Taktsignals ändern. Wenn die Flipflops andere logische Elemen-te steuern, bedeutet dies, dass sich die Eingangssignale dieser logischen Elemente ändern. Das kann zur Folge haben, dass sich auch ihre Ausgangssignale ändern.

Nach kurzer Verzögerung nehmen alle Ausgangssignale stabile Zustände an. Die Zustände aller Ausgangssignale können sich nur mit dem nachfolgenden Taktimpuls ändern.

HERTZ NACH STROMDie dynamische Stromaufnahme synchroner Systeme lässt sich durch Herabsetzen der Taktfrequenz reduzieren. Der dynamische Strom sinkt in dem Maß, in dem die Taktfrequenz herabgesetzt wird.

Eine weitere Senkung des dynamischen Stroms ist auf folgendem Weg erreichbar: Die Anzahl der Ausgangssignale, die sich mit jedem Taktimpuls ändern, wird dynamisch auf das unbedingt notwendige Maß reduziert. Alle Teile des Systems werden zu den Zeiten stillgelegt, in denen ihre Funktionalität nicht gebraucht wird. Diese Maßnahme kann erheblich zur Reduzierung der dynami-schen Stromaufnahme beitragen.

&

&

&

D Q

CLK

CLOCK

FF1

Q

D Q

CLK

FF2

Q

070986 - 11

Wichtige BegriffeASP – Application Specific Processor. Digitale Schaltung, optimiert für eine bestimmte Anwendung.

EDA – Electronic Design Automation. Sammelbegriff für Programme, die das Entwickeln elektronischer Systeme vereinfachen.

FPGA – Field Programmable Gate Array. Integriertes Bauelement, das aus vielen tausend elementaren logischen Schaltungen be-steht. Durch Programmieren können die Elemente so miteinander verknüpft werden, dass hoch komplexe digitale Systeme entste-hen. Auf diese Weise sind sogar Mikrocontroller und Grafik-Chips emulierbar.

IP – Intellectual Property. Im Zusammenhang mit FPGAs ist hiermit ein Code-Fragment gemeint („IP-core“), das meistens unter Li-zenzauflagen beim Hersteller oder Dritt-Anbietern erworben werden kann. Diese Code-Fragmente haben vordefinierte komplexe Funktionen (wie z.B. ein Mikrocontroller-Core), sie lassen sich unkompliziert in FPGA-Entwicklungen einbauen.

Page 39: Elektor 447 - 2008-03 (GER)

393/2008 - elektor

C nach HDie neueste Entwicklung, die wir einfach „C nach H“ nennen wollen, ist ein weiterer Schritt in Richtung FPGA-Entwicklung ohne VHDL. EDA-Entwickler haben Methoden ersonnen, mit denen FPGA-Systeme ohne VHDL realisiert werden können. Besonders bemerkenswert ist das Verfah-ren, das Standard-ANSI-C-Quellcode unmittelbar in das digitale Schaltungsäquivalent umsetzt. Schon seit einiger Zeit stehen Compiler zur Verfügung, die Untermengen von C verarbeiten können. Die neuesten Compiler beherr-schen Standard-ANSI-C vollständig.Sowohl von FPGA-Hersteller Altera (C2H-Compiler) als auch von EDA-Spezialist Altium (CHC-Compiler) wurden solche Compiler entwickelt. Es dürfte nicht lange dauern, bis auch andere Hersteller eigene C-nach-H-Compiler anbieten.

FPGAs für alle!Die Stärke dieser Compiler liegt darin, dass C-Routinen nun auch die Fähigkeiten der FPGAs nutzen können.Mikrocontroller wurden meistens für den universellen Einsatz entwickelt. Dadurch sind sie in der Lage, die un-terschiedlichsten Aufgaben zu übernehmen. Nicht zuletzt dieser Eigenschaft verdanken die Mikrocontroller ihren Siegeszug in der Vergangenheit. Auf der anderen Seite ist die hohe Flexibilität auch ein Schwachpunkt. Der Mikro-controller ist zwar „Mädchen für alles“, ein Spezialist ist er nicht.Auch FPGAs sind „Mädchen für alles“, jedoch auf we-sentlich höherem Niveau. Mit ihnen sind fast beliebige digitale Systeme realisierbar (also auch Mikrocontroller!). Darüber hinaus können FPGAs anwendungsspezifische Hardware ersetzen, exakt angepasst an die individuellen Erfordernisse. Diese Hardware kann mit Hilfe der C-nach-H-Compiler in C entwickelt werden. Die C-nach-H-Compi-ler öffnen Programmierern ohne VHDL- oder Verilog-Kennt-nisse den Zugang zur Welt der FPGAs.

PraxisIm ELEKTOR-Labor wird der „Altium Designer“ eingesetzt, seit Version 6.8 gehört zum Lieferumfang auch ein C-nach-H-Compiler mit dem Namen CHC. Mit dem Altium Designer haben wir die beschriebene Methode an einem einfachen Beispiel erprobt. Unser Beispiel (Bild 1) be-nutzt ausschließlich Standard-IP-Komponenten von Altium. Mit ihnen können innerhalb kürzester Zeit eingebettete Systeme entwickelt werden. Der Prozessor (IC4) ist ein 32-bit-Typ mit der Bezeichnung TSK3000. Er wird innerhalb des FPGAs über diverse Blöcke unter anderem mit dem externen Speicher, einem Terminal-Emulator und einem ASP (siehe Kasten) verbunden, dem Kernstück des Gan-zen. Der Output des CHC-Compilers wird diesem Block übergeben.Ausführliche Informationen zu den hier verwendeten Blök-ken sind auf der Website von Altium zu finden.

TestFür unseren Probelauf brauchten wir außer der Softwa-re und dem FPGA-Entwurfsschema auch Hardware. Ein noch im Laborstadium befindliches ELEKTOR-Projekt bot sich zu diesem Zweck an. Zu seiner Hardware gehören ein Cyclone-III-FPGA und ein 256 KByte großer externer Speicher.Mit unserer Test-Firmware berechnet der Prozessor

500.000 Mal die Wurzel einer Zahl. Zuerst ließen wir diese Berechnung vom ASP durchführen (der ASP ist hier nichts anderes als in Hardware gegossenes C, also der Output des CHC-Compilers). Gemessen wurde die dafür benötigte Zeit. Anschließend ließen wir die Software-Ver-sion unserer Wurzel-Rechenroutine 500.000 Mal vom TSK3000-Core innerhalb des FPGA abarbeiten, auch hier wurde die erforderliche Zeit protokolliert.Die für den Test geschriebene Routine geht aus Listing 1 hervor. Zuerst wird auf geschickte Weise das Resultat der Wurzelberechnung abgeschätzt. Der Algorithmus ist so aufgebaut, dass der erste Schätzwert immer über dem exakten Wert liegt. Anschließend wird geprüft, ob der Schätzwert der exakte Wert ist. Falls das nicht zutrifft, wird der Schätzwert um den Wert 1 herabgesetzt. Das gesamte Verfahren wird so oft wiederholt, bis der Schätz-wert mit dem exakten Wert mit genügender Genauigkeit übereinstimmt.Dieser Algorithmus enthält zwei Schleifen, in denen Schie-

Listing 1: Wurzel-Berechnungunsigned int isqrt_sw (int number) signed int n = 1; signed int n1 = (((n) + (number)/(n)) >> 1);

while(((n1 - n) > 1)||((n-n1) > 1)) n = n1; n1 = (((n) + (number)/(n)) >> 1); while((n1*n1) > number) n1 -= 1; return n1;

Page 40: Elektor 447 - 2008-03 (GER)

technik fpga

40 elektor - 3/2008

bebefehle und Multiplikationen vorkommen, zwei häufig durchzuführende Operationen.

Exportieren zur HardwareDie Routine mit dem Namen „isqrt_sw“ dient uns dazu, die für die Rechenoperationen benötigte Zeit zu messen. Zum Testen des CHC-Compilers verwenden wir eine ex-akte Kopie dieser Routine, wir geben ihr den Namen „is-qrt“. Nun müssen wir in der Entwicklungsumgebung noch dafür sorgen, dass diese Routine vom CHC-Compiler zur Hardware übertragen wird. Das ist völlig unkompliziert:

Zuerst muss der Cursor auf den Namen der Routine ge-setzt werden. Nach einem Klick mit der rechten Maustaste erscheint ein kurzes Kontextmenü. Hier klicken wir „Push and export hardware“ an. Das hat zur Folge, dass die Routine vom CHC-Compiler in Hardware realisiert wird. Ferner bewirkt diese Aktion, dass alle Aufrufe der zu die-ser Routine gehörenden Firmware durch Aufrufe des ASP ersetzt werden. Das alles bewirkt ein einziger Mausklick!

ErgebnisNach dem Compilieren und Programmieren des FPGA

Bild 2. Einfacher geht es kaum

noch.

Bild 3. Das Testergebnis.

Page 41: Elektor 447 - 2008-03 (GER)

413/2008 - elektor

wird, wie Bild 3 zeigt, das Testergebnis über das Ter-minalprogramm auf dem PC-Bildschirm sichtbar. Die Hardware-Version benötigt etwas mehr als eine halbe Se-kunde, um die Wurzel-Berechnung 500.000 mal durch-zuführen. Bei der Software-Version ist diese Zeit fast um den Faktor 13 länger (hierzu ist anzumerken, dass ein im FPGA implementierter Core bei gleicher Taktfrequenz etwa gleich schnell wie ein „festverdrahteter“ rechnet).Wichtig ist hier, dass wir bewusst keine einzige Zeile VHDL ins Spiel gebracht haben. Folglich können mit dem beschriebenen Verfahren die Stärken der FPGAs genutzt werden, ohne Abschied von der vertrauten Programmier-sprache C nehmen zu müssen.

AnwendungenDer ASP kann mit Recht als Selbstbau-Coprozessor be-trachtet werden. Er lässt sich individuell an die Anwen-dung anpassen, so dass die Hardware-Beschleunigung in fast jede Applikation eingebaut werden kann. Es ist auch möglich, vom ASP auf den Speicher zuzugreifen, zum Beispiel im Fall eines Video-Beschleunigers. Die Routinen zum Zeichnen von Linien, Kreisen und Flächen können

mit hohen Geschwindigkeiten von einem ASP ausgeführt werden. Ferner kann der ASP seine Routinen parallel zur Software ausführen, vorausgesetzt die Software wird dar-an angepasst. Durch die parallele Verarbeitung wird die Rechenleistung nicht unerheblich gesteigert. Der Video-Beschleuniger ist eine typische Anwendung, hier wirken sich die Stärken unmittelbar aus. Der Prozessor muss nicht warten, bis der Video-Beschleuniger die Linie, den Kreis oder ein anderes Objekt vollendet hat. Er kann während dieser Zeit andere Prozesse fortsetzen.

Low-powerEine nicht so offensichtliche Option ist die Senkung des Energiebedarfs durch Einsatz eines ASP. Da der ASP die Rechenleistung erhöht, kann bei gleicher Rechenleistung die Taktfrequenz vermindert werden. Die niedrigere Takt-

frequenz wird ganz oder teilweise durch den Geschwin-digkeitsgewinn ausgeglichen, der mit dem ASP erzielt wird.Die dynamische Stromaufnahme des FPGA (siehe Kasten) verhält sich proportional zur Taktfrequenz. Unter dem Strich ergibt sich folglich ein niedrigerer Energiebedarf. Der sparsame Umgang mit der Energie ist insbesondere bei portablen Applikationen wichtig.

Zum SchlussDie jüngsten Entwicklungen auf dem Gebiet der C-nach-H-Compiler öffnen den Zugang zu den FPGAs auch den Programmierern, die nicht auf Kenntnisse und Erfahrun-gen mit VHDL und Verilog zurückgreifen können. Das Abkürzen der Entwicklungs-Zeiten und die Übernahme vorhandener C-Routinen beim Einsatz von FPGAs dürf-te der Akzeptanz dieser modernen Bauelemente einen Schub geben. Die Hersteller bemühen sich um die techno-logische Weiterentwicklung der FPGAs mit Hochdruck. Es lässt sich absehen, dass die FPGAs zu ernst zu nehmen-den Konkurrenten der „Embedded Controller“ werden.

(070986)gd

C nach H für PCs?Zurzeit werden bereits in einigen Super-Computern FPGAs eingesetzt, sie unterstützen die Prozessoren bei der Ausfüh-rung komplexer mathematischer Prozesse.

Es ist durchaus vorstellbar, dass FPGAs auch Eingang in die Welt der Allgebrauchs-PCs finden. Allerdings muss zuvor ein Standard erarbeitet werden, der den Kommunikationsablauf zwischen Prozessor und FPGA festlegt. Noch wichtiger ist die Standardisierung des Verfahrens, mit dem Programmfrag-mente in FPGA-gerechte Form gebracht werden. Die neuen C-nach-H-Compiler sind bereits ein erster Schritt in diese Richtung. Man kann gespannt sein, wie sich der Einsatz von FPGAs auf die PC-Rechengeschwindigkeiten auswirken wird.

Page 42: Elektor 447 - 2008-03 (GER)

technik open source

42 elektor - 3/2008

Open Source: Frei, offen, ungebunden?Die Lizenzen der offenen InnovationVon Antoine Authier

Der Aufschwung des Internets und die rasante Entwicklung der Kommunikationsmedien und -techniken haben eine ungekannte Verbreitung von Erkenntnissen, Projekten und Arbeits- und Diskussionsgemeinschaften auf globaler Ebene ermöglicht. Wenn solche Aktivitäten zu einem Prozess der Öffnung und des Austauschs führen, sprechen wir von Open Innovation.

Dies trifft auf Projekte wie GNU, Linux, Mozilla, Apache, The GIMP, MySQL, Amarok, OpenOffice, YAMPP oder jüngst OpenMoko zu. Sowohl bei Software als auch bei Schaltungen (Hardwarelö-sungen) sprechen wir von Open Source.Auch Künstler profitieren von dieser Entwicklung und diesen Kommunika-tionsmitteln. Werfen Sie einen Blick auf

das von Alex Ciccius und The Sambu-ki Social Crew lancierte Wallpaper-Pro-jekt, in dem 100 Künstler ein Transpa-rent mit einer Länge von 100 Fuß (ca. 32 Meter) geschaffen haben, das auf der Website www.thespacejockeys.com/wallpaper zu sehen ist.Die unermessliche Menge der im In-ternet zu diesem Thema zur Verfügung stehenden Informationen macht daraus eine schwer zu greifende, unübersicht-liche Angelegenheit. Dieser Artikel lie-fert zunächst einige historische Orien-tierungspunkte und eine Beschreibung der Open Innovation. In einem zweiten Schritt werden die Verbreitungswege und die Realisierbarkeit anhand ei-niger Beispiele beleuchtet. Dabei geht es auch um die spezifischen Merkmale von Hardwareprojekten und um den Entwicklungsprozess. Das Thema Pa-tente und Urheberrecht lassen wir da-bei außen vor. Insbesondere die Um-setzung der EUCED (European Union Copyright Directive) wäre noch einen separaten Artikel wert…

Open SourceDie Open-Source-Bewegung nahm ihren Ursprung in den siebziger Jahren an der Universität von Berkeley in Kalifornien im Rahmen eines Entwicklungsprojekts für ein mit UNIX kompatibles Betrieb-system namens BSD (Berkeley Soft-ware Distribution). Durch die uneinge-schränkte Offenlegung des Quellcodes zur gemeinsamen Nutzung konnte sich dieses Projekt als gemeinschaftliche Arbeit entwickeln. An solchen großen Projekten sind viele Entwickler betei-

ligt, die sich nicht notwendigerweise von Beginn an kennen. Sie arbeiten auf das gleiche Ziel hin, jedoch an verschie-denen Orten in der Welt und organisie-ren von Zeit zu Zeit Treffen, um den Ent-wicklungsplan festzulegen.Im Jahr 1983 wurde von Richard Stall-man die Free Software Foundation ge-gründet, um einen Rahmen für die Ent-wicklung des GNU (das berühmte re-kursive Akronym GNU is Not Unix) zur Verfügung zu stellen. Er verfasste die GPL (General Public Licence) genann-ten Lizenzbedingungen, um die Früch-te dieser Arbeit zu verbreiten und ih-ren Fortbestand zu sichern. Auf diese Weise entstand die freie Software oder free software. Im Englischen kann free sowohl frei als auch kostenlos bedeu-ten, was zu allerlei Missverständnissen geführt hat. Freie Software ist nicht notwendigerweise kostenlos; sie kann auch verkauft werden, was in der Re-gel jedoch nicht der Fall ist.Mit der gemeinschaftlichen Entwicklung des Linux Kernels, die von einem fin-nischen Studenten ausging, und der dar-auf folgenden Integration dieses Kernels in GNU wurde der Grundstein für diese Form der offenen Innovation gelegt. Wenn es hierbei hauptsächlich um Software geht, spricht man von Open Source.Es gibt keine eindeutige Definition von Open Source, die übrigens auch nicht gleichbedeutend mit einer Softwareli-zenz ist. Die Open Source verfügt noch nicht einmal über einen eigenen for-maljuristischen Wert. Außerdem sollte man aufhören, die Begriffe freie (kos-tenlose) Software und Open-Source-Software zu vermischen, wie dies häu-fig getan wird.

Page 43: Elektor 447 - 2008-03 (GER)

433/2008 - elektor

Open Source: Frei, offen, ungebunden?

Die Open Source Initiative OSI wur-de 1998 als Antwort auf die ökono-mischen und technischen Realitäten gegründet, um den freien Zugang zu den Quellcodes von Software zu ver-teidigen. Sie definiert einige Bedin-gungen, die eine Software erfüllen muss, um als Open-Source-Software bezeichnet zu werden; sie ist im üb-rigen auch das offizielle Zertifizie-rungsorgan der Open-Source-Bewe-

gung und ihrer verschiedenen Veröf-fentlichungslizenzen geworden.

Vor- und NachteileIn einem Artikel mit dem Titel „Die Open Source Dynamik“ hat Robert Vis-seur die Vor- und Nachteile von Open Source beschrieben. Wir fassen sie hier zusammen.

• Qualität: Stabilität und Leistung von Open-Source-Software wie Linux oder FreeBSD.• Reaktivität: Die Aktualisierungen für Software wie zum Beispiel Apache oder Linux erscheinen sehr schnell.• Beständigkeit (Legacy): Treue Nut-zer haben zum Beispiel alte Betriebs-systeme wie MS-DOS oder CP/M neu programmiert.• Kosten

Die wichtigsten LizenzenDie in diesem Kasten enthaltenen Informationen sind in keiner Weise rechtlich verbindlich. Aufgrund der Fülle der in Lizenzen enthaltenen Informationen müssen wir uns damit begnügen, einige für den Einstieg in die Materie relevante Passagen herauszugreifen. Wir haben uns auf die hauptsächlich für die Verbreitung von Quellcodes oder Elektronik-Projekten verwendeten Lizenzen konzentriert. Der an der einen oder anderen Lizenz interessierte Leser sollte das entsprechende vollstän-dige Dokument lesen. Sie finden die Texte der verschiedenen Lizenzen inklusive der diversen Neufassungen im Internet über die Website der FSF.

• Gemäß BSD-Lizenz (Berkeley Software Distribution) ist es gestattet, das durch die Lizenz geschützte Dokument in seiner Gesamtheit oder in Teilen ohne Einschränkung für eine öffentliche oder urheberrechtlich geschützte Arbeit weiter zu verwenden. Im Unterschied zum öffent-lichen Bereich gibt es jedoch bei der Weiterverbreitung einige Regeln zu beachten. Diese Lizenz schützt auch die Namen der Urheber in davon abgeleitet-en Veröffentlichungen und entlastet sie im Hinblick auf etwaige mit der Nutzung der Arbeit verbundene Probleme. Sie ist eine der am wenigs-ten restriktiven Lizenzen.

• Die GNU GPL (GNU General Public Licence) ist sicherlich die ra-dikalste. Sie schreibt die Veröffentlichung von Modifikationen für die Weiterverbreitung der Software zwingend vor. Sie basiert auf dem Prin-zip des Copyleft, das die Verwertungsrechte der Gemeinschaft über-lässt (im Gegensatz zum Copyright). Jedoch gehört ein unter einer GPL veröffentlichtes Dokument faktisch dem Urheber, der über die Lizenz für die Verbreitung späterer Versi-onen des Dokuments entscheidet, was ihm erlaubt, diese Lizenz zu ändern. Sie hat einen virusartigen Charakter, denn sie kontaminiert die (ge-schlossenen) Projekte, in denen sie verwendet wird. Ein unter einer GPL veröffentlichtes Projekt muss in seiner Gesamtheit GPL sein. Dies ist sicherlich die älteste und populärste Lizenz für freie Software.

• Die GNU LGPL Lizenz (GNU Lesser General Public Licence) stellt eine abgeschwächte Form der vorigen Lizenz dar. Sie gestattet es, den Code unter GNU GPL in seiner Gesamtheit an ein Mittel zu binden, das nicht frei ist. So erlaubt sie es, urheberrechtlich geschützte Software zu schreiben und dafür freie Software zu nutzen. Sie gilt hauptsächlich für Softwarebibliotheken. Ansonsten ist ihre Verwendung von geringem Interesse.

• Die MPL-Lizenz (Mozilla Public Licence) erlaubt die Kombination des geschützten (im Allgemeinen nicht veröffentlichten) Quellcodes mit dem freien Quellcode innerhalb eines Projekts. Sie garantiert also

die Offenlegung des als frei bezeichneten Quellcodes. Aufgrund ih-res nicht virusartigen Charakters wird sie von vielen als freier als die GPL-Lizenz angesehen. Sie garantiert dem Urheber den Fortbestand des offenen Charakters seiner Arbeit ohne dabei die (derzeitigen oder künftigen) Projektmitarbeiter zu zwingen, dasselbe zu tun.

• Zeitgebundene Lizenzen Die Offenlegung des Quellcodes erfolgt mit zeitlicher Verzögerung erst nach der Vermarktung der Software, normalerweise bei Veröffent-lichung einer neuen kommerziellen Version. Dies ist zum Beispiel bei der Firma ID Software der Fall, die durch den Erfolg ihres ersten Spiels in 3D („Doom“) berühmt geworden ist. Dessen Quellcode wurde erst am Ende der kommerziellen Nutzungsdauer veröffentlicht.

• Die IBMPL-Lizenz (IBM‘s Public Licence), die von IBM für die Verbrei-tung mancher ihrer Quellcodes verwendet wurde, die als nicht strate-gisch galten, ist von der OSI anerkannt. Sie weicht von der GPL in der Verwaltung und Verbreitung von Pa-tenten ab. Sie macht eher Herausgeber und Verbreiter der Software verantwortlich als die am Projekt mitarbeitenden Personen.

• Die SCSL-Lizenz (Sun‘s Community Source Licence) ist die ursprüng-lich von SUN Microsystems zur Verbreitung ihrer Programmiersprache JAVA verwendete Lizenz. Sie gestattet die Veröffentlichung des Quellcodes von JAVA nicht und wird daher nicht als offen betrachtet. Dafür erlaubt sie einerseits den Erwerb, die Nutzung und kostenlose Weiterverbreitung der JAVA virtual machine (ohne die der von Ihnen geschriebene Code nicht interpretiert werden kann) und andererseits die Verbreitung von in JAVA geschrie-bener freier Software, Tools und Bibliotheken. Seit 2005 hat SUN neue Lizenzen eingeführt, um die Öffnung voranzutreiben, ohne jedoch den Quellcode zu veröffentlichen.

• Die Shared-Source-Lizenz, die von Microsoft als Antwort auf den von der freien Software-Szene ausgeübten Druck eingeführt wurde, besteht aus mehreren Lizenzverträgen und ist den Großkunden von Microsoft und bestimmten einflußreichen Institutionen (Universitäten, chinesische Regierung…) vorbehalten. Sie erlaubt hauptsächlich die Einsicht in den Quellcode und die Fehlerbeseitigung. Nur sehr wenige haben ein Modifikationsrecht.

• Die Creative-Commons-Lizenz ist flexibel und personalisierbar. Sie bietet vier Verbreitungsoptionen: Urheberschaft, keine kommerzielle Verbreitung, keine Modifikation, Weitergabe unter gleichen Bedin-gungen. Auch in Kombination, um eine spezifische Verbreitungslizenz zu etablieren. Ein innovatives und erfrischendes Konzept mit Zukunft.

Page 44: Elektor 447 - 2008-03 (GER)

technik open source

44 elektor - 3/2008

• Freiheit: Unabhängigkeit der Entwickler.• Konkurrenz: Eine Monopolisie-rung ist durch die Offenlegung des Quellcodes und der Kommunikations-standards unmöglich. Der Wettbewerb zwischen Unternehmen und sogar zwischen einzelnen Ländern wird sti-muliert. Mit einem offenen Quellcode kann sich die Software frei entwickeln und profitiert von der Unterstützung der gesamten Gemeinschaft. Dasselbe gilt für die Dokumentation und Ent-wicklung wirklich offener und verläss-licher Standards, auf die jeder einen kritischen Blick werfen kann.• Schutz des geistigen Eigentums: Der Hauptkritikpunkt der Gegner von Open Source ist, dass zur Förderung von Innovationen Geheimhaltung und eine erbitterte Konkurrenz unerlässlich seien. Dem halten die Befürworter von Open Source entgegen, dass der Aus-tausch von Ideen und die gegenseitige Anregung Innovationen weit mehr för-dern, als es Geheimhaltung je könnte. • Ausführung: Berühmte klassische Interfaces.• Divergenzrisiko: BSD hat sich zum Beispiel schrittweise in drei Projekte aufgespalten: FreeBSD (das am wei-testen verbreitete und benutzerfreund-lichste, das auf Leistung ausgerich-tet ist), OpenBSD (das auf Sicherheit ausgelegt ist) und das ursprüngliche Projekt, NetBSD (das auf Anpassung an die Hardware ausgerichtet ist).• Markenimage: Linux wird in hierar-chisch strukturierten Organisationen oftmals als ungeeignet für die profes-sionelle Nutzung angesehen.• Support : Die Dokumentation ist oft schwach. Das Mitte der 90er Jahre aufgekommene Wiki-Konzept, das in letzter Zeit durch die freie Enzyklopä-die Wikipedia populär wurde, ver-sucht diese Lücken zu schließen. Es bietet dem Leser die Möglichkeit, on-line zur Dokumentation beizutragen. Englisch ist trotz lobenswerter Über-setzungsbemühungen obligatorisch.

An einem Projekt mitarbeitenNichts ist einfacher als an einem Open-Source-Projekt mitzuarbeiten. Kontaktie-ren Sie den Autor per Mail oder Instant Messaging, schreiben Sie einen Beitrag im Projektforum, sagen Sie Ihre Meinung oder fügen Sie eine Dokumentationsseite oder Anregungen zu Wiki hinzu.Sie können auf mehreren Ebenen ei-nen Beitrag leisten, dies kann einfach durch Ihre Unterstützung geschehen oder auch durch eine kleine Spende.

für Codes, Entwürfe, Bilder, Fotos, Gra-phiken und so weiter ist mit Hilfe einer Lizenz möglich (zum Beispiel Creative Commons). Die Übersicht im Kasten er-leichtert Ihnen die Auswahl einer Ihren Bedürfnissen entsprechenden Lizenz. Solche Lizenzen reichen von der kom-promisslosen open source (freie Soft-ware) über verschiedene moderatere Formen bis zur Shared-Source-Lizenz.Wenn es darum geht, Geld zu verdie-nen, muss man sich mehr oder minder den ökonomischen Modellen unserer Marktwirtschaft mit den üblichen Strategien und Marketingmaßnahmen anpassen. Die OSI arbeitet für eine Softwarewirtschaft ohne Nutzungsli-zenzen, jedoch basierend auf dem Ver-kauf von Angeboten wie Support und Hardware, die eine schnelle Nutzung ermöglichen. In Europa verdienen meh-rere tausend Ingenieure dank dieses ökonomischen Modells ihr Geld.

Open HardwareDas Konzept von Open Source Hard-ware oder Open Hardware unterschei-

det sich kaum hiervon. Es ist jedoch viel einfacher, Software zu kopieren als Hardware zu reproduzieren, für die ge-nauere Kenntnisse und Kompetenzen erforderlich sind.Während Open Source bei Software durch die zugehörigen Lizenzen klar definiert ist, existiert für das Konzept der Open Source Hardware noch keine weltweit anerkannte oder vollständig akzeptierte Definition.Richard Stallman, der Gründer der FSF (Free Software Foundation) und Verfasser der Lizenz GPL (General Pu-blic Licence), bekräftigte 1999 in einem in „Linux Today“ veröffentlichten Ar-tikel, dass sich die GPL für elektro-nische Schaltungen nicht eignet, weil diese schwieriger zu verändern oder zu kopieren (nachzubauen) sind. In den meisten Reaktionen darauf wurde dies auch für eingebaute Software (im Spei-cher von Chips) so gesehen. Die Nutzer von Open Source Hardware müssen die Hardware modifizieren und frei weitergeben (vertreiben) können. Hierfür ist die uneingeschränkte Be-reitstellung der Schaltpläne, aber auch des Quellcodes der einzelnen Kompo-

Ihre allgemeinen Anmerkungen zu den Funktionen oder zum Interface sind gern gesehen, die Meldung von Bugs, ein Kommentar, die Durchsicht des Quellcodes sind willkommen. Und wenn Sie das literarische Fieber packt, dann zögern Sie nicht, an der Projekt-dokumentation mitzuarbeiten. Wenn Sie programmieren möchten, dann zei-gen Sie, was Sie können und schicken Patches (Korrekturen, Verbesserungen), und Sie werden bald einen Schreib- oder Verwaltungszugang für die Ver-sion (CVS, Subversion…) erhalten

Ein Projekt startenEin Projekt zu starten ist nicht viel schwieriger. Sie haben eine Idee von der Sie glauben, dass Sie für die Ge-meinschaft nützlich ist und möchten sie mit anderen teilen. Wenn Sie nicht ihr eigener Webmaster sein möchten, dann melden Sie einen Account bei www.sourceforge.net an und veröffent-

lichen Ihr Projekt mit dem Quellcode und allem, was dazugehört. Wenn Sie für Ihr Projekt lieber selbst eine Web-site einrichten möchten, können Sie dafür gemeinschaftlich entwickelte Tools nutzen und mit Hilfe von gforce Ihre eigene Community Site aufbauen. Wenn nicht, genügt auch eine einfache Website …

Verbreitung eines ProjektsWie können die Urheber freier Software davon leben oder zumindest etwas Geld verdienen? Bevor Sie Ihre Arbeit im Internet veröffentlichen und damit offen zugänglich machen, ist es wich-tig, einen rechtlichen Rahmen festzule-gen, der es Ihnen erlaubt, als Urheber anerkannt zu werden, sich gegen eine etwaige missbräuchliche Nutzung zu schützen und eine Nutzung durch an-dere mehr oder weniger zuzulassen. Die freie und kostenlose Verbreitung unter Beibehaltung der Urheberrechte

Page 45: Elektor 447 - 2008-03 (GER)

453/2008 - elektor

nenten erforderlich, insbesondere der Quellcodes der HDL (Hardware De-scription Language) der Hardware und der Firmware (meistens in C oder As-sembler geschrieben).In einem Gespräch mit Elektor hat Harald Kipp, der Vater des an ande-rer Stelle in dieser Ausgabe beschrie-benen Ethernut-Projekts, nicht ohne Humor gesagt, dass Open Source für viele wie der Kommunismus ist, in dem Sinne, dass jeder von der Gemeinschaft alles bekommen kann, ohne irgend et-was dafür zu zahlen. Kipp fügte hinzu, dass Open Source für manche Entwick-ler ebenfalls mit dem Kommunismus gleichzusetzen ist, aber deswegen, weil sie die hierarchischen Strukturen als Diktatur empfinden!Man könnte in der Tat versucht sein zu glauben, dass in der Open-Source-Ge-meinde Anarchie herrscht, aber so ist es keineswegs. Die Organisation der Open-Source-Projekte ist solide, ja so-gar stark hierarchisch aufgebaut, wo-bei der Eigentümer des Projekts die meiste Zeit der unangefochtene Chef an der Spitze des Gefüges ist. Wenn

ein Beitrag ihm nicht gefällt, kann er ihn herausnehmen, ohne irgend je-manden zu fragen. Gefällt ihm ein Ent-wickler nicht, so kann er ihn ohne wei-ters „entlassen“, indem er ihm jegliche Form der Mitarbeit verweigert.Bei kleineren Projekten ist es eben-falls der Eigentümer, der entscheidet, wann welche neue Version veröffent-licht wird. Die Quellcodes können (im Allgemeinen) frei weiterverbreitet werden, das heißt, dass jeder als Ver-treiber freier Software agieren kann (vorausgesetzt, er respektiert die Li-zenzbedingungen). Wenn ein Teil der Gemeinschaft oder ein isolierter (und frustrierter) Entwickler glaubt, es bes-ser machen zu können, steht es ihm frei, den Quellcode aufzugreifen und ein neues Projekt ins Leben zu rufen. Eine solche Abspaltung wird fork ge-nannt (nach dem C-Befehl der POSIX-Norm, der es in C ermöglicht, einen Prozess zu duplizieren).

Geistige OffenheitFür ein Unternehmen ist es wichtig, die Berichte von Nutzern über Fehl-

funktionen (bugs) zu sammeln. Das Unternehmen kann sogar noch weiter gehen und ein öffentliches Forum zur Verfügung stellen, in dem jeder Nutzer sich äußern, etwaige Mängel kritisie-ren oder die Vorteile preisen kann. Eine solche Initiative kann sich auch als un-angenehm erweisen. Jedermann zu erlauben, die Qualität des Quellcodes und der Hardwarekonzeption frei zu analysieren und diese offen (und oft auch unangemessen) zu kritisieren, er-fordert ein gewisses Maß an Mut, Ge-wöhnung, Durchhaltevermögen und auch ein dickes Fell.Die vernünftigen Kritiker sind wichtig, um das Projekt effektiv vorantreiben zu können. Ohne den Druck des kri-tischen Blicks von außen würden die meisten Konzeptionsmängel über die verschiedenen Entwicklungsstadien hinweg bestehen bleiben, sich fest-setzen und schließlich nach einem an-fänglich eleganten Start das ganze Pro-jekt gefährden. Während der gesamten Laufzeit eines Projekts, ob es dabei um Soft- oder Hard-ware geht, muss darauf geachtet wer-den, dass alle gesetzlichen Anforde-rungen erfüllt und Patentverletzungen, ob absichtlich oder nicht, vermieden werden. Während es in einem „geschlos-senen“ Projekt schwierig ist, solche Ver-stöße aufzudecken, so treten sie in einem offenen Projekt umso schneller zutage, je größer und vielfältiger die Gemeinschaft ist. Es ist also notwendig, angemessene Maßnahmen zu ergreifen, um sich der Wahrung der Urheberrechte im Hinblick auf die verschiedenen Beiträge zu versi-chern, was eine schwierige Aufgabe ist. Der Gemeinschaftsgeist offener Projekte zwingt die Entwickler, solche Verstöße festzustellen und unverzüglich Maßnah-men zu ergreifen.Zurzeit werden die meisten Open Har-ware-Projekte und Firmwares mit BSD-Lizenzen verbreitet, die weniger res-triktiv sind als die GPL-Lizenz und die insbesondere die Verbreitung verbes-serter Firmware ohne den entspre-chenden Quellcode erlauben. Auf die-se Weise behalten die Unternehmen die Kontrolle über die Veröffentlichung bestimmter Verbesserungen, während andere geheim bleiben, um die Wert-schöpfung des Produkts zu erhalten.

Kommerzielle BeiträgeWorin besteht das Interesse eines Unter-nehmens, zu einem Open Source-Projekt beizutragen, wenn es nicht durch eine Lizenz dazu gezwungen ist? Warum sollte es das Risiko eingehen, dass einer

seiner Konkurrenten von den Früchten seiner Arbeit profitiert? Es geht zweifel-los darum, von den Verbesserungen an-derer Projektmitarbeiter zu profitieren. Statt darauf zu warten, dass man von Konkurrenten eingeholt wird, kann ein Unternehmen durchaus die Vorteile der Öffnung genießen, die es in die Lage ver-setzen, dank besserer Produkte, besserer Dienstleistungen und überlegener Qua-lität nicht ins Hintertreffen zu geraten, selbst wenn sämtliche Mitbewerber die-selbe Software nutzen. Manche Unter-nehmen leisten auch „zeitlich verzögerte Beiträge“ und halten anfangs ihre Ver-besserungen geheim, um sie erst dann zu veröffentlichen, wenn ihr Produkt gut am Markt eingeführt ist (siehe Beispiel für eine zeitlich verzögert freigegebene Lizenz im Kasten).

Elektor veröffentlicht diesen Artikel un-ter der Creative Commons Lizenz, die eine ausdrückliche Erwähnung der Ur-heberschaft (Quellenangabe), den Aus-schluss jeglicher kommerziellen Nut-zung und die Weitergabe unter gleichen Bedingungen (share-alike) verlangt.

Bei allen in Elektor veröffentlichten Projekten legen wir großen Wert dar-auf, dass der Quellcode wann immer möglich offen gelegt wird. Manchmal kommt es vor, dass Autoren damit nicht einverstanden sind. Die Entschei-dung für oder gegen eine Veröffentli-chung ist dann nicht einfach. Soll ein sehr interessantes Projekt aus diesem Grund abgelehnt werden, oder soll es trotzdem veröffentlicht werden, um möglichst vielen zur Verfügung zu ste-hen, auch wenn der Quellcode nicht offen gelegt wird? Wir sind fest davon überzeugt, dass sich die Offenlegung auf lange Sicht bezahlt macht.

(070948-I)

Links www.fsf.orgwww.fsf.org/campaignswww.opensource.orghttp://en.wikipedia.org/wiki/Copylefthttp://opencollector.org/Whyfree/http://opencollector.org/Whyfree/vilbrandt.htmlhttp://en.wikipedia.org/wiki/FLOSShttp://en.wikipedia.org/wiki/Open_Source_Initiativehttp://en.wikipedia.org/wiki/GNU_Projecthttp://features.linuxtoday.com/news_story.php3?ltsn=1999-06-22-005-05-NW-LF http://en.wikipedia.org/wiki/Wikihttp://en.wikipedia.org/wiki/Wikipedia

Page 46: Elektor 447 - 2008-03 (GER)

technik open source hardware

46 elektor - 3/2008

Ethernut und die Kipp-Familie......oder wie man mit Open-Source unerwartet Geld verdienen kannVon Dr. Thomas Scherer

Achtung HighTech! Diese Warnung ist berechtigt, denn neue Technik und Interesse an den aktuellsten Entwicklungen kann unerwartet das Leben ganzer Familien verändern...Harald Kipp und seine Familie sind ein Beispiel dafür, dass die Freude an Open-Source nicht immer eine rein ideelle Angelegenheit bleiben muss. Sie kann durchaus Eigendynamik entwickeln und schließlich zum Kerngeschäft eines modernen Familienbetriebs werden.

Harald Kipp war eigentlich mit sei-nem Leben ganz zufrieden. Schon ei-nige Jahre war er in seiner eigenen kleinen Software-Firma im Ruhrgebiet tätig, als er Open-Source-Software-Pro-jekte als neues Hobby für sich entdeck-te. Dank der Vernetzung durch das In-ternet Ende der 90er Jahre des letzten Jahrhunderts war er mit diesem Hobby nicht alleine. Darin lag ja gerade der Reiz dieser Projekte, die damals wie Pilze aus dem Boden schossen. So hät-te es bleiben können, doch Zufall und Engagement führten dazu, dass ein spezielles Projekt zunächst unmerk-lich, aber schließlich umso mehr sein Leben veränderte und letztlich seine ganze Familie mit einbezog. Doch zu-nächst zum Anfang der Geschichte.

Mikrocontroller meets InternetZur Jahrtausendwende war die Dot-Com-Welle auf Ihrem Höhepunkt, und moderne Mikro-Elektronik hatte sich längst überall eingenistet. Kei-ne Waschmaschine mehr ohne Mikro-controller, Handys bekamen immer mehr Funktionen und die ganzen Pe-ripheriegeräte für PCs waren sowieso mit solchen Allround-Chips bestückt. Kein Wunder also, dass die damals auftauchenden leistungsfähigen 8-bit-Mikrocontroller, die mit ihrer Rechen-

Bild 1. Das egnite-Team mit Harald Kipp nebst Tochter Lia, Frau Ute und Sohn Niels sowie weiteren Mitarbeitern (von links) auf der Dachterasse des Mulvany-Centers in Castrop-Rauxel.

Page 47: Elektor 447 - 2008-03 (GER)

473/2008 - elektor

Ethernut und die Kipp-Familie......oder wie man mit Open-Source unerwartet Geld verdienen kann

kraft einen PC-XT aus den 80er Jah-ren in den Schatten stellten, geradezu zwingend nach einer Internet-Anbin-dung verlangten. Tüftler und Entwick-ler auf der ganzen Welt begannen da-mit, diese Chips mit dem Internet zu verbandeln.Im Jahr 2000 schließlich gab es zwei derartige Open-Source-Projekte: Adam Dunkel vom SICS (Swedish Institute of Computer Science) entwickelte „lwIP“ und Dave Hudson sein „Liquorice“. Auf Letzteres ist Harald Kipp zufällig beim Surfen gestoßen - und er war gleich fasziniert. Da es zu dieser Software noch keine spezielle Hardware gab, hat er das STK200-Kit von Atmel (ba-sierend auf ATmega103) mit zusätz-lichem Speicher und einer ISA-Ether-net-Karte erweitert. Das Ganze funk-tionierte erstaunlich gut, entsprach allerdings nicht Harald Kipps Vorstel-lungen von Stabilität.

Vom Ethernut-Projekt...In der Folge beschloss Harald Kipp, diese Komponenten auf einem einzigen Board zu vereinen. Die Kombination von ATmega103, RTL8010AS-Ethernet-Con-troller und 32 KB RAM auf einer Plati-ne im halben Eurokarten-Format wur-de dann auf den nicht ganz so ernst gemeinten Namen „Ethernut“ getauft. Das zusätzliche RAM war unbedingt erforderlich, da der Mikrocontroller nur über 4 KB RAM verfügte und die Sen-de- und Empfangspuffer mit je einem Ethernet-Frame schon 3 KB belegten. Mit dem bescheidenen Rest von 1 KB bringt aber auch der begnadetste Soft-ware-Entwickler keine halbwegs taug-liche Internet-Software zustande.Mittlerweile war Dave Hudson aber bei der Firma Ubicom tätig. Da Ubicom bekanntlich ein Konkurrent von Atmel ist, wurde Liquorice von ihm nicht mehr weiter entwickelt. Eine weitere Folge war aber auch, dass der Status Quo von Liquorice unter der Bezeich-nung Nut/OS in das Ethernut-Projekt integriert wurde, was eine Weiterent-wicklung möglich machte.

Mit-t e 2 0 0 1 schließlich wurde Ethernut als kombiniertes Open-Source Hard- und Software-Projekt bei SourceForge registriert. Ab da wurde die Community aufmerksam und es häuften sich die Anfragen – er-staunlicherweise insbesondere auch nach fertig aufgebauter Hardware.Harald Kipp verdiente seine Brötchen zu dieser Zeit schon einige Jahre mit seiner Firma „egnite Software GmbH“ und der Begriff Software tauchte in der Firmenbezeichnung nicht ohne Grund auf. Sollte er sich nun tatsächlich auch noch auf Hardware einlassen?Glücklicherweise gab es einen Kontakt mit der in Sachen Hardware schon et-was geübteren Startup-Firma „opti-Compo Electronics“, die ihn zu Anfang unterstützte. Die zweilagigen Platinen der ersten Auflagen wurden noch von Hand bestückt. Eine erste „Großbestel-lung“ über 50 Exemplare aus Japan stellte daher eine besondere Her-ausforderung für die Kipp-schen „Produktions-kapazitäten“ dar ;-)

...über MP3...Da die Bestellungen im Laufe der nächsten Monate mehr und mehr zu-nahmen, blieb nichts anderes übrig, als eine professionelle Auftragsfertigung in Anspruch zu nehmen. Ethernut-Boards wurden als Vertriebs-Produkt zunehmend in den Firmenalltag von egnite integriert. Anfangs kamen die meisten Bestellungen noch von priva-ten Anwendern, von Schulen und von Universitäten. Mit der Zeit aber zeigte sich auch bei kleineren Firmen und bei Industriekunden stärkeres Interes-se. Eine dieser Firmen wollte Kaufhäu-ser mit Abspielstationen für CDs aus-rüsten. Der innovative Gedanke war folgender: Wenn ein Kunde an einer solchen Station den EAN-Barcode ei-

Bild 2. Das erste Ethernut-

Board (1.3) wird immer noch produziert und erfreut

sich nach wie vor hoher Beliebtheit.

Bild 3. Ethernut 2.1

wurde gegenüber seinem Vorgänger um Speicher und

eine schnellere Ethernut-Anbindung erweitert.

Page 48: Elektor 447 - 2008-03 (GER)

technik open source hardware

48 elektor - 3/2008

ner CD-Hülle einscannt, dann wird via TCP/IP der entsprechende Musiktitel als MP3 von einem Server gestreamt und an der Station über Kopfhörer ab-gespielt. Ein Öffnen der verschweißten CD-Hülle zum Probehören wäre also nicht mehr notwendig.Da das Ethernut-Board (Bild 2) in wei-ser Voraussicht mit einem Erweite-rungs-Stecker ausgestattet war, konn-te dafür eine kleine Zusatzplatine mit dem MP3-Player-Chip VS1001K entwi-ckelt werden. Noch etwas Software dazu und fertig war der MP3-Strea-ming-Client. Hierzu wurde die Kompe-tenz von Jesper Hansen in Anspruch genommen, der sich im Web mit sei-nem Open-Source-Projekt YAMPP [3] einen guten Ruf erworben hatte.

...zur Ethernut-FamilieDie Verbindung von Ethernet und MP3 legt eine weitere Anwendung nahe:

Gatter durch ein CPLD (Complex Pro-grammable Logic Device).Im Jahre 2004 schließlich war Ethernut 2 ausgereift und verfügbar. Eine der ers-ten Anwendungen war ein Kirchenradio für eine niederländische Organisation, die älteren oder behinderten Menschen den lokalen Gottesdienst per MP3-Stream ins Haus liefern wollte. Gleich zwei Anbieter für solche Systeme set-zen mittlerweile auf Ethernut [6].Der Wunsch nach mehr Leistung führ-te schließlich zu einer dritten Version. Um leistungshungrige Applikationen wie Verschlüsselung möglich zu ma-chen, wurde der 8-bit-Controller beim Ethernut 3 (Bild 4) durch eine moder-nere ARM7-CPU ersetzt. Dem vorausge-gangen waren interessanterweise Ex-perimente, bei denen Nut/OS auf einen Gameboy Advance portiert wurde.Im Moment befindet sich Ethernut 5 in der Entwicklung. Dieses Board ver-wendet eine ARM9-CPU mit einer Re-

Internet-Radio. Es gab damals schon eine quasi unüberschaubare Zahl an Internet-Radio-„Sendern“, die ihre in-ternationale Hörerschaft mit jeder mög-lichen Musik in Form von MP3-Streams versorgte. Da das hierfür eingesetzte Shoutcast-Protokoll auf TCP basiert, können Übertragungsschwankungen auftreten, deren Vermeidung eine aus-reichende Pufferung erfordert. Der re-lativ kleine Speicher von Ethernut war damit aber überfordert, was Harald Kipp zu einem Redesign veranlasste.Resultat war eine neue Platine. Ether-nut 2 (Bild 3) verfügte – wenn schon denn schon – über 100-Mbit-Ethernet und 512 KB RAM. Da der Mikrocontrol-ler aber nur 64 KB linear adressieren konnte, wurde mit ein paar Gattern eine Art Bank-Switching realisiert. Der erste Entwurf dazu wurde von der mittlerwei-le entstandenen User-Community sofort intensiv diskutiert. Diese konstruktive Kritik führte letztlich zum Ersatz der

Tabelle 1. Technische Daten der Ethernut-Boards

Ethernut 1.3 G Ethernut 2.1 B Ethernut 3.0 E Ethernut 5 (vorläufig)

CPU ATmega128ATmega128 ATmega2561

AT91R40008 (ARM7) AT91SAM9260 (ARM9)

Takt 14,7456 MHz 14,7456 MHz 73,728 MHz 180 MHz

RAM 32 KB512 KB als 32 KB +30 Bänke mit je 16 KB

256 KBytes 64 MBytes

Permanent-Speicher128 KB Flash4 KB EEPROM

128/256 KB Flash4 KB EEPROM512 KB Flash seriell

4 MB Flash32 KB EEPROM seriell

4 MB Flash32 KB EEPROM seriell

EthernetRTL8019AS10 Mbit/s

LAN91C11110/100 Mbit/s

DM9000E10/100 Mbit/s

DM9161A PHY10/100 Mbit/s

Programmierbare Hardware -

XC9536XL (für interne Anwendung)

XC95144XL (teilweise ver-fügbar) + CY22393 (pro-grammierbare Uhr)

-

USB - - -1 Host1 Device

RS232-Schnittstelle DB9-Buchse DB9-Buchse mit RTS/CTSDB9-Stecker mit vollem Handshake

DB9-Stecker mit vollem Handshake

SekundäreRS232-Schnittstelle

TTL am Erweiterungs-Steckplatz

Via Kabel-Adapter oder TTL am Erweiterungs-Steckplatz

Via Kabel-Adapter oder TTL am Erweiterungs-Steckplatz

TTL am Erweiterungs-Steckplatz

RS485-Schnittstelle - Halbduplex - -

Digitale I/O-Ports 31 31 Bis 48, teilweise via CPLD Noch nicht festgelegt

Analoge Eingänge 8 8 - 4

Speichererweiterung Ja Ja Ja, via CPLD Ja

HardwareUhr / Kalender - -

Ja, mit Kondensator-Backup

Ja

Speicherkarten-Slot - - MMC-/SD-Karte Ja

Stromversorgung 8...12 V mit 150 mA 8...12 V mit 400 mASchaltnetzteil mit5 V bei 200 mA bis 24 V bei 70 mA

Schaltnetzteil mit 5 bis 24 V oder via USB oder via POE

Temperaturbereich Kommerziell Industrie Kommerziell Noch nicht festgelegt

Abmessungen (mm) 98 x 78 98 x 78 98 x 78 98 x 78

Page 49: Elektor 447 - 2008-03 (GER)

493/2008 - elektor

chenkraft, die zur Dekodierung und Darstellung von Video-Streams auf einem angeschlossenen LCD ausrei-chen dürfte. Wenn Sie mitgezählt ha-ben: Version 4 wurde zugunsten der leistungsfähigeren 5er-Version von eg-nite etwas zurückgestellt. Und soviel sei jetzt schon verraten: Die Technik dieser Version 4 bildet die Grundlage für das Elektor-Internet-Radio (Bild 5), das wir in der nächsten Ausgabe de-tailliert vorstellen werden. Damit lässt sich dann ein komfortables Stand- Alone-Webradio realisieren, das sich sicher auch für eigene Anwendungen unserer Leser eignet.Mittlerweile existiert eine größere An-wendergemeinde der Ethernut-Boards. Interessant ist die Aufgabenteilung, die sich entwickelt hat. Während et-liche Software-Erweiterungen von den Anwendern beigesteuert werden, kümmert sich egnite um Tests auf ver-schiedenen Plattformen mit verschie-denen Compilern und betreut die of-fiziellen Releases. Zurzeit sind neben Harald Kipp weitere 18 Entwickler bei SourceForge eingetragen, die Schreib-zugriff auf den aktuellen Quellcode haben. Außerdem gibt es einen regen Austausch mit anderen Open-Source-Projekten, von denen besonders die YAGARTO-Toolchain von Michael Fi-scher hervorzuheben ist.

Open Source & Kommerz…das ist eigentlich ein Widerspruch. Schließlich stehen sowohl Software als auch Hardware durch LGPL oder BSD-Lizenz relativ frei zur Verfügung oder sind sogar gleich „Public Domain“. Im Gegensatz zur GPL wird hier aber kei-ne Offenlegung der darauf aufbauen-den Produkte erzwungen. Dieser Fakt und die Tatsache, dass sich komplette Ethernut-Boards recht leicht in End-produkte integrieren lassen, macht das Projekt auch für kommerzielle Anwen-der interessant. Zudem hat Harald Kipp dafür gesorgt, dass bei der Evolution der Board-Versionen die Steckeranord-nungen gleich geblieben sind. Auch der Erweitungsstecker blieb kompatibel.An dieser Geschichte, die mit dem Ethernut-Projekt als Hobby von Harald Kipp begann und sich zwischenzeitlich „irgendwie“ zum Schwerpunkt seiner Firma gewandelt hat, kann man seh-en, dass die Beschäftigung mit Open-Source-Projekten keine brotlose Kunst mehr sein muss. Die zunehmende wirt-schaftliche Bedeutung solcher Projekte hat auch für Schüler und Studenten den Vorteil, dass die Beschäftigung da-

mit mehr als nur Hob-by oder spiele-risches Trainings-feld bedeutet, da hier wichtige berufliche Kom-petenzen erworben werden können.

Wie es sich für einen Unternehmer ge-hört, der sich stark mit Open-Source-Projekten beschäftigt, ist Harald Kipp auch bezüglich seiner Firma mit Anga-ben sehr offen: Da inzwischen mehrere tausend Boards pro Jahr gefertigt wer-den, ist der Umsatz mittlerweile auf über 600.000 Euro gestiegen. Neben mehreren Teil- und Vollzeitkräften so-wie Auszubildenden tragen mittlerwei-le auch Ehefrau, Tochter und Sohn mit unterschiedlichen Schwerpunkten zum kommerziellen Erfolg des Ethernut-Pro-jekts bei. Wer hätte das gedacht: Open Source als treibende Kraft im Familien-betrieb des 21. Jahrhunderts…

(071080e)

Links[1] Homepage von egnite:www.egnite.de

[2] Webseite zum Ethernut-Projekt:www.ethernut.de sourceforge.net/projects/ethernut/

[3] Webseite zu YAMPP:www.myplace.nu/mp3/

[4] Toolchain für Ethernut 1 & 2:winavr.sourceforge.net

[5] YAGARTO-Toolchain (für Ethernut 3):www.yagarto.de

[6] Kirchenradios mit Ethernut:www.solutionsradio.nl www.streamit.eu

[7] Das inHaus-Innovationszentrum der Fraunhofer-Gesellschaft beherbergt mehrere Ethernut-Boards:www.inhaus-zentrum.de

Bild 4. Ethernut 3 basiert auf einer ARM7-

CPU und hat einen SD/MMC-Kartenslot integriert.

Bild 5. Erster Entwurf der Platine zum Elektor-Internet-Radio, das im nächsten Heft veröffentlicht wird.

Page 50: Elektor 447 - 2008-03 (GER)

technik mikrocontroller

50 elektor - 3/2008

Seit über 20 Jahren gibt es die Verbindung zwischen Elektor und dem Computerclub. War es am Anfang der WDR-Computer-club, so ist es heute die moderne Version, der CC². Wolfgang Back und Wolfgang Rudolph haben diese Sendung in Eigenre-gie wieder auferstehen lassen.Gestartet wurde sie am 24. Juli 2006 als

Audiocast. Seither wird jede Woche montags um 20 Uhr eine 30-Minuten-Sendung zum Downloaden angeboten. Am 1. Jahrestag des CC² gab es die erste Ausgabe von CC²-tv. Der Privatsender NRW-TV in Düsseldorf bot dem CC² die Möglichkeit, monatlich eine 60-minütige Fernsehsendung zu produzieren und über Kabel in NRW zu verteilen. Selbst-verständlich wird diese Sendung auch live gestreamt und steht bei NRW-TV und beim CC² im Internet zum weltweiten Download bereit.Viele Zuhörer des Audiocast wünschten sich Selbstbaupro-jekte, so wie sie früher, im alten Computerclub gang und gäbe waren. Aber Basteln im Hörfunk ist eher unüblich. Nachdem sich nun aber die monatliche Fernsehsendung etabliert hatte, wurde der Ruf nach „Basteln“ immer lau-ter. Aber es fehlte noch ein professioneller Partner, der mit großer Erfahrung diese Projekte betreuen konnte. Schon die ersten Gespräche mit dem „alten Freund“ Elektor machten Hoffnung. Und dann, am 15. Januar 2008 fiel die Ent-scheidung. Elektor und der Computerclub 2 werden künftig gemeinsame Projekte haben. Natürlich können die Projekte als Platine und auch fertig aufgebaut vom Elektor-Verlag bezogen werden.

Auch ein hochkarätiger „Hardwaremann“ war auf Seiten des Computerclub 2 schnell gefunden. Der Geschäftsführer und Mitbegründer der Firma microdrones GmbH aus Kreuztal bei Siegen, Udo Jürß, erklärte sich bereit, tätig mitzuwirken. Seit über 30 Jahren hat Udo Jürß sein Herz an die Elektronik und Computertechnik verloren. Schon zu Zeiten des APPLE ][ entwickelte er Hard- und Software für diesen Urahn der PC-Technik. Und beim Entwickeln ist er bis heute geblieben. Die Entwicklung der Mikrodrohnen, dieser fliegenden High-Tech-Wunderwerke, fand vollständig bei der microdrones GmbH statt. Doch dazu wird es sicherlich einen eigenen Beitrag geben, denn diese Technologie ist ein Labsal für die (oft

in Elektor!Im nächsten Heft: Das Elektor-CC2-AVR-Projekt

Von Wolfgang Rudolph

Vorversion des Elektor-CC2-ATmega-Boards.

Wolfgang Back und Wolfgang Rudolph.

Udo Jürß mit einer Mikrodrohne.

Page 51: Elektor 447 - 2008-03 (GER)

513/2008 - elektor

unverstandene) Seele des Technikers. Wer es nicht abwarten kann, der sollte die Internetseite von microdrones.com besu-chen oder die Sendung 6 von CC²-tv, mit einem 20-minütigen Beitrag über die Drohnen aus dem Internet, laden.In der April-Ausgabe von Elektor werden wir mit der Zusam-menarbeit beginnen und als erstes das Elektor-CC²-ATme-ga-Board vorstellen. Ebenso wird dieses Board in CC²-tv in der Sendung Ende März vorgestellt und ausführlich erklärt. Und dann geht es Schlag auf Schlag weiter, jeden Monat mit einer neuen Erweiterung zum Elektor-CC²-ATmega-Bord. Nur einige Monatsthemen kurz angerissen:2-Draht-LC-Display, RC5-Decoder, Relaiskarte, Wetterstati-on mit 24 bit Aufl ösung, SD-Card als Solid-State-Disk, Hall-Sensoren und gesteuerte Magnetfelder, Drehzahlmesser für optische- und magnetische Sensoren, Stimmgerät, FMS-RC-Interface, 3D-Magnetometer, IMU (Inertial Measurement Unit)

und viele weitere Projekte. Danach sind dann frei bewegliche und selbststeuernde Roboter zu Lande und in der Luft geplant, sofern der geneigte Leser und Zuschauer dies will.Es gab sicherlich schon einige Versuche, Fernsehen und Zeitschriften thematisch zu koppeln, aber die Fernsehsen-dung ist immer wie ein Blitz - hell und weg. Die Zeitschrift dagegen lagert oft über Jahre hinweg im Regal (wie bei mir), im Ordner oder im Karton auf dem Speicher. Unsere Zeit und die Entwicklung der IT gibt uns heute die Mög-lichkeit, Zeitschriften und Fernsehsendungen immateriell zu speichern oder aus dem Internet abzurufen. Immer dann, wenn Informationen zu den einzelnen Projekten benötigt werden, sind sie blitzschnell aus dem Internet geladen. Damit bleibt neben dem sinnlichen Vergnügen, Elektor wirk-lich noch in die Hand zu nehmen und die Fernsehsendung in ihrer plastischen Informationsvermittlung zu genießen, die Möglichkeit, auf diese beiden Verbreitungsarten jederzeit Zugriff zu haben. Der weltweite Wissens- und Informationsspeicher ist längst Realität geworden. Wir wollen diese Möglichkeiten nutzen und unseren Lesern und Zuschauern diese Projekte in einer neuen Medienkon-vergenz verfügbar machen.

(071137e)

Links:www.cczwei.de

http://microdrones.de/index.html

www.nrw.tv/home/cc2

n Elektor!Heft:CC2-AVR-Projekt

Anzeige

(D) € 15,90(A) € 16,40 CHF 25,90

Sichern Sie sich jetzt Ihr Exemplar unterTel. +49 (0)241 88 909-0Fax +49 (0)241 88 [email protected]

Audio 1Das Audio-Sonderheft wendet sich an alle, die in der Ausbildung oder im Beruf Audiogeräte (mit Halbleitern und Röhren sowie Lautsprecher-boxen) entwickeln und herstellen. Nicht zuletzt vermittelt dieses Elektor-Special auch dem ambitionierten Amateur, Audioliebhaber und Selbstbauer wertvolles Wissen. Es werden u.a. 8 Verstärker und 7 Lautsprecherboxen für den Selbstbau vorgestellt.

Aus dem Inhalt:• 100 W Mono-Röhrenverstärker• Trioden-Röhrenverstärker• Klasse-D-Endverstäker• 100 W Klasse-A-Verstärker• Rondo• Bifrost

High-End-Verstärker & Lautsprecherboxen

Verstärker und

Lautsprecherboxen

für den Selbstbau

Erhäl t l i ch bei Ihrem Buch- und Zei tschr i f tenhändler oder direkt beim Verlag ordern!

NEU!

Page 52: Elektor 447 - 2008-03 (GER)

technik arm-betriebssystem

52 elektor - 3/2008

LAOS for ARMeeEin Mini-Betriebs-system für das ARMee-Board von ELEKTORVon Dipl.-Ing. (FH) Dirk Krämer

Mit dem ARMee-Board aus der April-Ausgabe 2005 betrat ELEKTOR Neuland, denn es ebnete einem breiten Publikum den Weg zur Programmierung einer 32-bit-CPU des Lizenzgebers ARM. Um die Sache preiswert zu gestalten, kam ein LPC2106 von NXP zum Einsatz. Es zeigt sich allerdings, dass so ein Chip reichlich komplex ist. Doch mit „LAOS“ sind diese CPUs zu bändigen!

Ein neuer Mikrocontroller hat eine ge-wisse Ähnlichkeit mit Malt-Whisky: Der richtige Geschmack stellt sich bei Letzterem erst nach einer ordentlichen Lagerfrist ein. Und die siebte Version der CPUs von Advanced RISC Machi-nes hat mittlerweile eine Reifezeit von mehr als zwei Jahren hinter sich. Für CPUs ist das ausreichend - daher ist es Zeit für die Verkostung.In der Zwischenzeit hat sich einiges getan und so hatte der Autor ausrei-chend Zeit zur Entwicklung eines Be-triebssystem-Frameworks für ARM7-Controller und das ARMee-Board, wel-ches die Programmierung solch einer opulenten Controller-Plattform nun we-sentlich bekömmlicher gestaltet.

ZieleAuch wenn der Titel des Beitrags martialisch klingt: Es wird kein klei-nes Land in Südostasien zum Militär gerufen. Das Akronym bezieht sich auf „Little Applications Operating System“. Es geht also um kleine Pro-gramme, bei denen LAOS Anfängern wie Fortgeschrittenen hilfreich zur Sei-te steht. Dies ist für alle interessant, die sich im Zusammenhang mit dem ARM7 in Newsgroups, bei Slashdot, SourceForge oder in Mikrocontroller-Foren herumtreiben.„Little Applications“ bezieht sich auf Anwendungen in den Bereichen Steu-

ern, Regeln, Messen bis hin zu Robo-ter-Gehirnen. Und selbst Letzteres ge-hört für eine ARM-CPU zu den kleine-ren Aufgaben.Eine der wichtigsten Punkte bei der Entwicklung von LAOS war, eine kom-fortable und einfach zu „handelnde“ Programmschnittstelle zur Verfügung zu stellen und dabei die Portabilität der kompletten Applikation zu bewah-ren. Wie immer ist aller Source-Code kostenlos via ELEKTOR-Webseite ver-fügbar - er darf auch ohne Einschrän-kung weiterentwickelt und an eigene Bedürfnisse angepasst werden.

SchichtenmodellEine LAOS-kompatible ARM-Applika-tion hat einen Schichtenaufbau - die Layer entsprechen Bild 1. Die oberste Schicht „Application Layer“ ist zum di-rekten Zugriff auf die darunter liegen-den Schichten berechtigt und in der Lage - mit einer Ausnahme: Auf die Hardware darf selbst sie nicht direkt zugreifen. Aus diesem Grund spricht man hier von einem quasi-konsisten-ten Schichtenmodell. Die Applikation selbst kann lediglich die Service-Rou-tinen ansprechen, für die von den ent-sprechenden Schichten auch Interfaces angeboten werden.Den wichtigsten Teil von LAOS bildet die Schicht „Object eXecution Layer“ (OXL). Während die anderen Schichten

im Grunde lediglich eine Ansammlung nützlicher Methoden darstellen, ent-hält OXL die eigentliche Funktionali-tät des Betriebssystems. Ob eine Ap-plikation auf Methoden der Schichten „Device Driver Layer“ (DDL), „Protocol Layer“ (PL) oder „Hardware Abstrac-tion Layer“ (HAL) zugreift: Im Prinzip nutzt jede LAOS-basierte Applikation dazu die Kern-Methoden von OXL.

Beim OXL handelt es sich um ein „non-preemptives“ Betriebssystem, das asynchrone Ereignisse (Events) in ei-ner Warteschlange (Queue) sammelt und diese mit den entsprechenden Event-Routinen in der Reihenfolge des Eingangs abarbeitet. Dank des enor-men Durchsatzes einer LPC2106-CPU sieht es oft so aus, als ob die „Tasks“ einer Applikation parallel abgehandelt werden würden. Verglichen mit einem echten preemptiven Betriebssystem aber ist LAOS nicht wirklich echtzeitfä-hig. So müssen die einzelnen Routinen der Event-Queue jeweils ohne Ausnah-me bis zum Ende abgearbeitet werden. Nur mit Interrupts können Aufgaben „zwischendurch“ berücksichtigt wer-den. Im Idealfall aber sollten via Inter-rupts nur neue Events kreiert werden, deren Abarbeitung dann wie gehabt der Event-Queue überlassen wird. Mit anderen Worten: LAOS ist keine gute Grundlage für einen selbst gestrickten Airbag-Auslöser ;-).

LAOS for ARMeeEin Mini-Betriebs-System für das ARMee-Board von ELEKTOR

Page 53: Elektor 447 - 2008-03 (GER)

533/2008 - elektor

LAOS for ARMeeEin LAOS-Programm

Das prinzipielle Vorgehen besteht im Definieren von Objekten, die Events generieren oder asynchron abarbeiten können. Die OXL-Schicht arbeitet dabei als Vermittler zwischen Objekten. Um die eindeutige Referenzierung von Ob-jekten zu garantieren, verwendet OXL einzigartige „ObjectHandles“. Jedes Objekt kann bestimmte Events bear-beiten, und deshalb müssen auch ein-zigartige „EventIDs“ verwendet wer-den. Mit diesen beiden Informationen ermöglicht OXL einem Objekt die ab-geschirmte Kommunikation mit ande-ren Objekten - ohne dass deren interne Strukturen wechselseitig bekannt sein müssen. Wie das im Detail funktioniert, zeigt Bild 2.

Weitere Aufgaben von OXLAbgesehen von der Inter-Prozess-Kom-munikation überwacht OXL auch inter-ne Timer und Message-Buffer. Hinzu

kommen die Selbstüberwachung wäh-rend der Laufzeit und Generierung von statistischen Laufzeit-Daten. Ein Blick auf ein praktisches Beispiel vermittelt Sinn und Zweck dieser Strategie:Als erster Schritt wird die Funktionoxl_init(<pSystemTime>, <bRuntimeSupervision>, <pErrorHandler>)aufgerufen. Beim ersten Parameter pSystemTime handelt es sich um ei-nen Pointer auf eine System-Variable, die vom eingebauten Timer des Mikro-controllers jede Millisekunde inkremen-tiert wird. Alle zeitbasierten Dienste in OXL hängen von dieser Systemzeit ab. Alternativen zu diesem Verfahren sind denk- und machbar, doch hat die vorge-schlagene Verfahrensweise den Vorteil, dass keinerlei Umrechnungen notwen-dig sind. Mit „TRUE“ oder „FALSE“ beim zweiten Parameter bRuntime-Supervision wird angegeben, ob die Konsistenz der Event-Queue garantiert werden soll oder nicht. Der dritte Para-meter pErrorHandler zeigt auf eine

Funktion, welche die Behandlung der von OXL entdeckten kritischen Fehler übernimmt.Als nächster Schritt müssen OXL alle Applikationsobjekte gemeldet werden. Hierzu dient die Methodeoxl_registerObject(<pEventHandler>, <pInitializer>).

OXL gibt daraufhin das schon erwähn-te ObjectHandle zurück. Die Parame-ter der obigen Funktion sind Function-Pointer. Die von OXL mit pEventHand-ler angesprochene Funktion wird dann aufgerufen, wenn ein für das Objekt relevantes Event in der Event-Queue gefunden wird. Die mit pIn-itializer indizierte Funktion wird einmal zum eigentlichen Beginn von OXL aufgerufen und initialisiert benö-tigte Objekte. Die Objekt-Ausführung selbst wird durch oxl_start(void) gestartet. Alles Weitere wird von der enthaltenen Endlos-Schleife abgear-

Bild 1. Schichtenmodell eines für LAOS geeigneten Programms.

Listing 1. Beispiel einer OXL-Initialisierung.int main(void) // initialise the target InitTarget(); pl_ascii_sendString(“Target initialized...\r\n”);

// initialise the OXL oxl_init(&SystemTime, TRUE, oxl_errorHandler); pl_ascii_sendString(“OXL initialized...\r\n”);

// register the objects and get for each object an unique Handle ButtonHandle = oxl_registerObject(ButtonEventHandler, ButtonInitializer); DigInHandle = oxl_registerObject(DigInEventHandler, DigInInitializer); LcdHandle = oxl_registerObject(LcdEventHandler, LcdInitializer); LedHandle = oxl_registerObject(LedEventHandler, LedInitializer); SerHandle = oxl_registerObject(SerEventHandler, SerInitializer);

sprintf(StringBuffer, “%d object(s) registered...\r\n”, (int)SerHandle); pl_ascii_sendString(StringBuffer);

pl_ascii_sendString(“About to start the OXL...\r\n”);

// OXL shall start its work oxl_start();

return (0);

Bild 2. Prozesse unter OXL.

Page 54: Elektor 447 - 2008-03 (GER)

technik arm-betriebssystem

54 elektor - 3/2008

beitet. Ein Beispiel einer solchen In-itialisierung zeigt Listing 1.

Events erzeugenDamit sich etwas tut, müssen Objek-te zuerst einmal Events kreieren. Die-se Events können sich auf das Objekt selbst oder auf andere Objekte bezie-hen. Hierzu gibt es vier Methoden. Die beiden Methodenoxl_genEvent(<ObjHandle>, <EventID>, <pData>, <DataLen>)undoxl_genFastEvent(<ObjHandle>, <EventID>, <pData>, <DataLen>)unterscheiden sich lediglich darin, wo sie einen Event platzieren. Die zwei-te Methode übergeht die FIFO-Strate-gie der Queue und platziert ihr Event als das nächste abzuhandelnde. Das ist zwar schlechter Stil und sollte mit Vorsicht genossen werden, aber manchmal unumgänglich. Mit den er-sten beiden Parametern <ObjHandle> und <EventID> kann ein spezifischer Dienst innerhalb des Programms ge-zielt angesprochen werden. Die bei-

ersten beiden Parametern indizierte Event generiert. Listing 2 zeigt, wie so etwas in einem Programm aussieht.

SchlussbemerkungLAOS kann in Form der Zip-Datei „070990-11.zip“ kostenlos von der Pro-jekt-Seite unter www.elektor.de herun-ter geladen werden. Die Datei enthält alle Quellen und Materialien sowie die hier aufgeführten Beispiele. Übrigens bedeuten die ersten beiden Buchsta-ben von LAOS nicht, dass man damit nicht auch große Programme für den ARM7 schreiben könnte. Das geht so-gar wunderbar und mit relativ wenig Aufwand. Auf der gerade freigeschal-teten Homepage des Autors [2] wird es in Zukunft zusätzliche Informatio-nen geben.

(070990-I)

Weblinks[1] ARMee-Entwicklungsboard, ELEKTOR April 2005: www.elektor.de/armeeD

[2] Webseite des Autors:www.dk-embedded.info

den folgenden optionalen Parameter <pData> und <DataLen> übergeben Daten an OXL, wodurch diese in des-sen Liste verwahrt werden. Diese Vor-gehensweise ermöglicht die Vermei-dung globaler Daten, und die Quelle der Daten kann nach Übergabe an OXL problemlos verändert werden. Wenn innerhalb einer Interrupt-Service-Rou-tine ein Event erzeugt werden soll, dann sollte die Methodeoxl_genEventIsr(<ObjHandle>, <EventID>, <pData>, <DataLen>)verwendet werden. Eine eigene Me-thode ist notwendig, da es ansonsten passieren könnte, dass via Interrupt oxl_genEvent() aufgerufen würde, während dies zufällig gleichzeitig auch von einem Objekt der Anwendung ge-schieht, was ziemlich sicher Chaos zur Folge hätte.Die vierte Methode zur Event-Genese istoxl_genTimeoutEvent(<ObjHandle>, <EventID>, <TimeToEvtGen>).Ihr Aufruf aktiviert den OXL-Timer. Wenn die Zeitspanne <TimeToEvt-Gen> verstrichen ist, wird der in den

Listing 2. Beispiel zur Event-Generierung.void LedEventHandler(tU32 EventID, tU8* pData, tU32 DataLen) static tU8 BlinkState = 0; static tU8 LastBlinkState; static tBOOL LifeLedToggle = FALSE;

// calm down the compiler pData = pData; DataLen = DataLen;

switch(EventID) case evLedUpdateBlinkPattern: // update the blinking pattern hal_clrBytePort(LED_PORT, LED_OFFSET, LastBlinkState); hal_setBytePort(LED_PORT, LED_OFFSET, ++BlinkState);

// memorise the current blinking pattern LastBlinkState = BlinkState;

// check for overrun BlinkState %= MAX_LED_VALUE;

// execute this event in 50ms again oxl_genTimeoutEvent(LedHandle, evLedUpdateBlinkPattern, 50); break;

case evLedToggleLifeLed: if(LifeLedToggle) hal_setPortpin(LED_OK); else hal_clrPortpin(LED_OK);

LifeLedToggle = ~LifeLedToggle;

// execute this event in 500ms again oxl_genTimeoutEvent(LedHandle, evLedToggleLifeLed, 500); break;

Page 55: Elektor 447 - 2008-03 (GER)

Weitere Infos unter www.embedded-world.de

Elektor auf der

in Nürnberg26.02. – 28.02.2008Besuchen Sie den Elektor-Stand auf der Embedded World 2008

in Nürnberg vom 26.02. – 28.02.2008!

Sie finden uns in

Halle 10 / Stand 10-213 (Messezentrum Nürnberg)

Öffnungszeiten:

26.02. und 27.02. von 09:00 – 18:00 Uhr

28.02. von 09:00 – 17:00 Uhr

Profitieren Sie von Extra-Vorteilspreisen für

Platinen, Module, Bücher und CD-ROMs!

Elektor-Abonnenten erhalten einen Preisvorteil von 10% auf alle Verlags-produkte (ausgenommen Abonnements

und preisgebundene Bücher).

Natürlich haben Sie auf dem Elektor-Stand auch Gelegenheit zum Kontakt

mit der Redaktion. Informieren Sie sich

über unsere neuesten Entwicklungen

und Projekte und nutzen Sie die

Gelegenheit zu einem Gespräch

über Elektronik und Elektor.

Wir freuen uns auf Ihren Besuch!

26. – 28. Februar Nürnberg

Hal le 10 / Stand 10-213

ELEK DU0802 A4Messe.indd 1 30-12-2007 12:34:170803_elektor_adv_DU 55 11-02-2008 09:23:36

Page 56: Elektor 447 - 2008-03 (GER)

technik rtos

56 elektor - 3/2008

Mikrocontroller finden bekanntlich in immer mehr elektronischen Anwen-dungen ihren Platz. Im letzten Jahr wurde in Elektor eine Artikelreihe über die 16-bit-Controller der 24F-, 24H- und 33F-Reihe von Microchip veröffentlicht. Diese modernen und leistungsfähigen

Mikrocontroller verfügen über viele Er-weiterungen und eine fortschrittliche Interrupt-Architektur. Die Kombinati-on mit einem „Real-Time Operating System“ (RTOS) kann dabei helfen, die Software-Struktur und das Timing-Verhalten solcher Hochleistungs-Con-troller beherrschbar zu halten.In diesem Beitrag geht es vor allem um die Funktionsweise eines RTOS. Die angeführten Beispiele basieren auf AVIX, einem RTOS, das vom Autor speziell für die aufgeführten Mikrocon-troller-Familien entwickelt wurde. Am Schluss des Beitrags wird eine Demo-Applikation für das Explorer-16-Board von Elektor gezeigt.

Allgemeine Software-StrukturSoftware ist vielfach modular aufge-baut. Dabei ist es wichtig, dass die einzelnen Module so rechtzeitig abge-arbeitet werden, dass das Gesamtsys-tem korrekt funktioniert.Als Beispiel dient das System von Bild 1. Man sieht ein Modul zum Ein-lesen analoger Werte und ein weite-res Modul, das die eingelesenen Werte verarbeitet. Beide Module stehen un-ter der Kontrolle eines so genannten Schedulers (Steuerprogramm), wel-cher im Beispiel das eigentliche Haupt-programm ist, das die beiden Module passend aufruft. Wenn jede Millisekun-de ein analoger Wert eingelesen und verarbeitet werden soll, dann muss

sichergestellt sein, dass die Verarbei-tung des letzten Wertes abgeschlossen ist, bevor die nächste Millisekunde be-ginnt. Dauert dies aber einmal länger, dann muss der Prozess in Teile zerlegt werden, damit das Timing aufrechter-halten werden kann. Innerhalb der Mo-dule muss dann geregelt werden, wel-cher dieser Teile bei einem Aufruf akti-viert wird, sodass von außen gesehen die Aufrufe in der richtigen Ordnung ausgeführt werden. Innerhalb der Ar-beitsmodule braucht es hierfür eine so genannte „State Machine“ (Zustands-automat) - ihre Struktur ist in Bild 2 dargestellt.Die Verteilung von Mikrocontroller-Ka-pazität an einzelne Prozesse wird nun kombiniert vom Scheduler und der Sta-te-Machine erledigt. Wenn die Softwa-re aus vielen Modulen besteht, dann wird ihre Struktur kompliziert und un-übersichtlich. Ein zweites Problem ist das Timing des Systems. Das richtige Zeitverhalten wird von der Prozesslauf-zeit der einzelnen (Sub-)Module beein-flusst. Diese Zeiten lassen sich oft nur empirisch bestimmen. Bei Änderun-gen an der Software, Übertragungen auf andere Mikrocontroller-Typen mit anderem Takt und/oder Leistungsfä-higkeit oder selbst bei Änderungen der Optimierungseinstellungen am Compiler muss das komplette Zeitver-halten neu überprüft werden. Das ist nicht nur zeitraubend, sondern provo-ziert auch Fehler.

Rechnen in EchtzeitWie funktioniert ein Real-Time-Operating-System (RTOS)?

SCHEDULER

ADCCONVERSION

SIGNALPROCESSING

070949-11

SCHEDULER

ADCCONVERSION

SIGNALPROCESSING

STATEMACHINE

PART 1

PART 2

PART 3

070949-12

Bild 1. Allgemeine Software-Struktur.

Bild 2. Komplexe Software-Struktur.

Page 57: Elektor 447 - 2008-03 (GER)

573/2008 - elektor

Da der Entwickler das Scheduling der Controller-Kapazität auf die einzelnen Module explizit festlegen muss, ergibt dies ein statisches Modell. Einmal auf einem Mikrocontroller laufend, liegt das Zeitverhalten fest und kann nicht mehr dynamisch angepasst werden. Wenn der Scheduler ein Modul aufgeru-fen hat, kann es erst wieder weiter ge-hen, wenn dieses Modul seine Arbeit beendet hat. In dieser Zeit kann der Scheduler nicht mehr eingreifen, wes-halb man hier von einem so genannten kooperativen Scheduler spricht.

Ein Echtzeit-BetriebssystemAll diese Probleme werden durch einen so genannten präemptiven Scheduler gelöst. Ein RTOS enthält einen solchen. Ein RTOS ermöglicht eine übersichtli-che Software-Struktur bei determini-stischem Zeitverhalten. Der große Un-terschied zum kooperativen Scheduler liegt darin, dass auch in ein laufendes Modul eingegriffen werden kann. Dabei muss nicht einmal die Struktur des Mo-duls verändert werden, um das RTOS zum Zug kommen zu lassen. Wenn Er-eignisse auftreten, auf die das System reagieren muss, dann wird das gerade aktive Modul gegebenenfalls unterbro-chen, um einem wichtigeren Prozess den Vorzug zu geben. Dies ist die ent-scheidende Eigenschaft eines RTOS. Erleichternd kommt hinzu, dass ein beliebiges Modul deshalb eben nicht

in mehrere kleine Teile aufgesplittet werden muss. Ein unter einem RTOS laufendes Modul wird als „Thread“ be-zeichnet, und ein Thread wird ganz ge-wöhnlich als lineares Programmstück geschrieben, dem man nicht ansieht, dass es gegebenenfalls vom RTOS unterbrochen wird. Eine weitere Be-sonderheit ist, dass jeder Thread eine Priorität zugewiesen bekommt, welche das RTOS über die Dringlichkeit seiner Abarbeitung informiert. Weiter bietet ein RTOS für gewöhnlich Möglichkei-ten des Austauschs von Informatio-nen zwischen Threads (Messages) und zeitliche Informationen (Timer). Unter einem RTOS stellt sich das System aus Bild 1 so dar wie in Bild 3.In diesem Bild wird auch ein wichti-ger Aspekt der Verwendung eines RTOS deutlich: Beide Threads warten auf ein Ereignis (Event). Der ADC-Th-read wartet auf den Timer und der Pro-

cessing-Thread wartet auf eine Mes-sage. Die Wartefunktionen werden vom RTOS realisiert, sodass das RTOS weiß, welcher Thread worauf wartet. Das RTOS aktiviert dann den Thread, bei dem das passende Ereignis auf-tritt. Dabei wird auch die Priorität der Threads berücksichtigt. Wartefunktio-nen selbst sind nicht aktiv, denn das Warten wird nicht über eine Schleife im Hintergrund realisiert. Warten bei einem RTOS bedeutet, dass das war-tende Modul wirklich inaktiv ist und keine CPU-Zyklen verbraucht. Wäh-rend der Wartezeit eines Threads wer-den andere Threads abgearbeitet.Und wie funktioniert das? Der Zu-stand, in dem sich ein Programm ge-rade befindet, wird durch den Inhalt von Prozessor-Registern bestimmt. Bei der Ausführung von Code werden die-se Inhalte permanent verändert. Wenn ein Event eintritt, der das Aktivieren

Rechnen in EchtzeitWie funktioniert ein Real-Time-Operating-System (RTOS)?

Von Leon von Snippenberg, AVIX-RT

Wer ein so genanntes Echtzeit-Betriebssystem verwendet, kann das Zeitverhalten von Software auf Mikrocontrollern stark verbessern. In diesem Beitrag geht es um die Arbeitsweise und weitere Eigenschaften eines RTOS.

Bild 3. Basissystem unter RTOS.

ADCThreadBegin Forever Do Wait for 1ms timer Read ADC values Put ADC values in message Send message to ProcessingThread EndDoEnd

ProcessingThreadBegin Forever Do Wait for message Read values from message Process values EndDoEnd

Page 58: Elektor 447 - 2008-03 (GER)

technik rtos

58 elektor - 3/2008

eines anderen Threads erfordert, wird das RTOS alle Register zwischenspei-chern. Auf diese Weise wird der aktu-elle Status des gerade laufenden Pro-gramms gesichert.Eines dieser Register ist der Programm-zähler. Dabei handelt es sich um das

schäftigen kann, werden vom RTOS erst alle Register mit den zwischenge-speicherten Werten geladen. Welcher Thread als nächstes kommt, bestimmt das RTOS mit Hilfe der Prioritäten. Von den Threads mit gleicher Priorität kom-men die zuerst zum Zug, deren Events zuerst aufgetreten sind. Sind Events für mehrere konkurrierende Threads aufgetreten, bevorzugt das RTOS die Threads mit der höchsten Priorität. Da in Bild 3 der ADC-Thread eine höhe-re Priorität als der Processing-Thread aufweist, kommt beim Auftreten des Timer-Events der ADC-Thread direkt an die Reihe – unabhängig davon, ob gerade der Processing-Thread aktiv ist. Auf diese Weise wird auch das zweite Problem eines Schedulers gelöst: Ohne spezielle Anpassungen des Programms werden dennoch die Timing-Anforde-rungen erfüllt. Da der ADC-Thread eine höhere Priorität hat, wird nach jedem Timer-Event ein analoger Wert einge-lesen. Damit das funktioniert, muss na-türlich die Rechenleistung groß genug sein, damit sie für die rechtzeitige Ab-arbeitung von ADC-Thread plus Proces-sing-Thread im Mittel innerhalb der Zy-kluszeit von 1 ms ausreicht. Wenn diese Zeit ab und zu überschritten wird, dann ist das nicht schlimm, da das RTOS über eine rechtzeitige Aktivierung des ADC-Threads dafür sorgt, dass kein analoger Wert ausgelassen wird.

Der beschriebene Sachverhalt wird in Bild 4 veranschaulicht. Unten im Bild sind die Events des Millisekunden-Ti-mers eingezeichnet. Nach jedem sol-chen Event aktiviert RTOS den ADC-Thread. Am Ende jedes ADC-Threads wird eine Message für die Weiterverar-beitung (Processing-Thread) generiert. Bei Event 1 klappt das ohne Probleme. In Millisekunde 2 dauert der Proces-sing-Thread aus irgendwelchen Grün-den etwas länger. Daher wird nach Event 2 vom RTOS der Processing-Thread zugunsten eines neuen ADC- Threads unterbrochen. Nach Beendi-gung des ADC-Threads wird zwar eine Message generiert, aber zunächst der vorherige Processing-Thread beendet. Erst dann wird aufgrund dieser neu-en Message eben etwas verzögert ein neuer Processing-Thread angehängt. Bis zum Event der vierten Millisekunde hat sich alles wieder normalisiert und es geht schön seriell weiter. Eine Fol-ge dieser Funktionsweise ist übrigens, dass noch nicht bearbeitete Messages in einer Message-Queue zwischengela-gert werden müssen, was für ein RTOS zu den Standard-Aufgaben gehört.

Register, in welchem der auszuführen-de Befehl festgehalten wird. Da auch dieses Register gesichert wird, kann bei einem späteren Wiederaufruf das Modul an genau der Stelle fortgeführt werden, wo zuvor aufgehört wurde.Bevor ein Thread (wieder) die CPU be-

ADC ADC ADCADC

1 2 3 4 5

1 ms 2 ms 3 ms 4 ms

Processing>

070949-14

Bild 4. Scheduling unter RTOS.

Bild 5. AD-Umsetzung mit Hilfe einer Pipe.

ADC

1

2

3

4

5 6INTERRUPTHANDLER

ADCTHREAD

DRIVER

PIPE

070949-16

Bild 6: ADC-Interrupt-Handler / Thread-Integration.

SPEECHTHREAD

SHAREDMEMORY

RESUME

LCDTHREAD

MAINTHREAD

SWITCHTHREAD

CHANGENOTIFICATION

INTERRUPTHANDLER

TIMERINTERRUPTHANDLER

ADCINTERRUPTHANDLER

PIPE

PIPE

PIPE

AVIX

070949-17

Bild 7: AVIX-basiertes sprechendes Thermometer.

tADCValue adcVal;…;avixPipe_Read(pipeADC, (unsigned char*)adcVal, sizeof(adcVal));

Page 59: Elektor 447 - 2008-03 (GER)

593/2008 - elektor

RTOS & Interrupts

Dem erfahrenen Programmierer wird sicherlich aufgefallen sein, dass sich das Timing eines solch einfachen Sy-stems auch via Interrupts ganz ohne ein RTOS realisieren lässt. Das Einle-sen und puffern analoger Werte kann auch durch einen einfach gestrickten Interrupt-Handler erreicht werden. Durch die Verwendung von Interrupts kann ein laufendes Programm regelmä-ßig unterbrochen werden, doch ist mit so einer simpleren Technik auch der eine oder andere Nachteil verbunden.Die 16-bit-Controller von Microchip be-sitzen eine Interrupt-Prioritäts-Struktur. Während der Abhandlung eines Inter-rupts mit höherer Priorität sind eventuell auftretende Interrupts niedrigerer Priori-tät blockiert. Da ohne ein explizites RTOS der Interrupt-Handler mehr tun muss und dafür normalerweise auch länger braucht, werden auftretende Interrupts entsprechend länger blockiert, was die Wahrscheinlichkeit steigert, dass Inter-rupts übergangen werden.Weiter müssen die eingelesenen ana-logen Werte vom Interrupt-Handler an die Processing-Routine übergeben werden. Ohne RTOS wird das schnell reichlich komplex. Eine Speicherver-waltung muss hinzukommen, die da-für sorgt, dass die Processing-Routine keine falschen Werte erhält. Die hierfür nötigen Operationen können eventuell einen zwischenzeitlich auftretenden Interrupt blockieren und so dafür sor-gen, dass gelegentlich ein solcher In-terrupt verpasst wird.Ein RTOS macht intern auf optimierte Weise Gebrauch von Interrupts und ermöglicht so auf sichere Weise den Transport von Events und Messages an Threads, die für deren Abhandlung zuständig sind. Interrupts sind selbst-verständlich die Basis jedes beschrie-benen Events. Timer-Events sind ge-wissermaßen ein Klassiker. Praktisch jedes RTOS unterstützt Timer, sodass Threads eine bestimmte Zeit warten können. RTOS-Timer sind Software-Ti-mer. Grundlage dieser Timer sind na-türlich Hardware-Timer des Control-lers. Diese Hardware-Timer generieren in festen Zeitabständen Interrupts. Bei jedem Interrupt aktualisiert das RTOS die jeweiligen Software-Timer. An-hand der so erzeugten Events wird dann vom RTOS entschieden, welcher Thread als nächster gestartet wird. So führt ein Hardware-Interrupt auf der Basis eines Hardware-Timers über ei-nen Software-Timer zu dem zuvor an-gesprochenen Timer-Event.

Auch zur Ansteuerung der Peripherie werden Interrupts verwendet, die zu bestimmten Events führen. Hierbei er-laubt ein RTOS eben das Erstellen von Software auf einem deutlich abstrak-teren Niveau und befreit den Program-mierer von der komplexen Aufgabe, jeden Interrupt selbst abhandeln zu müssen. Dies wird in AVIX von einem Pipe-Mechanismus umgesetzt.Diese Pipes sind im Prinzip FIFO-Buf-fer, womit Threads untereinander oder aber Threads mit Interrupt-Handlern Informationen austauschen können. Ein Thread, der eine Pipe liest, muss darüber informiert sein, wenn die ge-wünschte Informationsmenge noch nicht vorliegt. Auch beim Schreiben muss der Thread entsprechend über-wacht werden, wenn der Speicherplatz für die abzulegende Informationsmen-ge noch nicht zur Verfügung steht. Das RTOS muss dabei den Thread solange deaktivieren, ohne dass dabei Rechen-zeit verbraucht wird.Nachfolgend wird gezeigt, wie man mit einer Pipe im Zusammenhang mit einem ADC umgeht. Gelesen wird wie immer mit einem Thread. Der hierfür nötige Code ist in Bild 5 zu sehen.Der Thread enthält im Kern eine Lese-operation und wird blockiert, wenn die gewünschten Daten nicht vorliegen. Doch was passiert im Hintergrund? Die Antwort darauf findet sich in Bild 6.Der Ablauf der Software ist wie folgt:1. Der Thread liest aus der Pipe. Wenn die Pipe leer ist, wird der Thread in den Wartezustand versetzt.2. Vom Pipe-Mechanismus wird eine DRIVER-Funktion aufgerufen.3. Der DRIVER aktiviert den ADC. Der ADC läuft los und löst einen Interrupt aus, wenn er fertig ist.4. Dieser Interrupt aktiviert den zum ADC gehörenden Interrupt-Handler. Dieser übernimmt das Resultat der Analog/Digital-Konversion und5. dieses Resultat wird in die Pipe ge-schrieben. Hiermit stehen die Daten bereit, die der Thread benötigt und das RTOS sorgt dafür, dass6. die Daten dem Thread überge-ben werden. Dieser kann sie dann verarbeiten.

Der beschriebene Mechanismus wird auch im Demo-Programm verwendet, das vom Autor speziell für diesen Arti-kel erstellt wurde.

Ein AVIX-basiertes SystemEines der Demo-Programme aus der Explorer-16-Artikelreihe dreht sich um

ein sprechendes Thermometer. Hier wird relativ viel Peripherie eingebun-den. Die Struktur dieses Programms ist etwas unübersichtlich, weshalb Än-derungen oder Erweiterungen nicht einfach sind. Ein Compiler-Lauf mit der höchsten Optimierungsstufe führt zum Beispiel dazu, dass das Programm nicht mehr funktioniert, da das Timing nicht mehr stimmt.Dieses Programm wurde daher zum Betrieb unter AVIX umgeschrieben, um die Vorteile eines RTOS zu illu-strieren. Das Demo-Programm kann inklusive einer AVIX-Demo-Version von der Webseite www.avix-rt.com und von der Elektor-Website herunter geladen werden. Nach der Installation kann das Programm von MPLAB aus kompiliert und das Resultat auf den 24FJ128GA010-Controller des Explo-rer-16-Boards geladen werden. Weiter wird noch eine PICtail-Plus-Soundkar-te (AC164125) von Microchip benötigt. Die Struktur ist in Bild 7 zu sehen.Zur Demoversion gehört auch eine ausführliche englischsprachige Be-schreibung der verschiedenen Programmteile.

(070949)

Weblinkswww.avix-rt.com

www.elektor.de/rtosD

www.elektor.de/explorer16

Über den Autor

Leon von Snippenberg hat mit AVIX ein eigenes RTOS entwickelt, das die PIC24- und dsPIC-Mikrocontroller-Familien von Microchip unterstützt. Seine Firma AVIX-RT ist auf Produkte und Dienstleistungen rund um die „Embedded“-Systement-wicklung spezialisiert.

Page 60: Elektor 447 - 2008-03 (GER)

grundlagen organische elektronik

60 elektor - 3/2008

Was treibt die Industrie dazu, hohe Summen in die Entwick-lung einer vollkommen neuen Technologie zu investieren? Die konventionelle Art, elektronische Schaltungen aufzubau-en, hat sich doch bestens bewährt. Sie hat in wenigen Jahr-zehnten eine beispiellose Evolution erlebt und kann doch nicht auf einmal überholt sein?Kurz gesagt, es sind die Kosten. Schaltungen aus Leiter-platten, Halbleiterchips und passiven Bauelementen haben nun einmal ihren Preis, und der lässt sich nicht beliebig drü-cken. Und damit bleiben die Anwendungen von Elektronik

begrenzt. Es gäbe zahllose weitere, aber dafür müssten die Produktionskosten um Größenordnungen sinken. Und genau dies verspricht man sich von der jetzt aufkommenden Plastik-Elektronik.

Der entscheidende Unterschied zur konventionellen liegt weniger in den verwendeten Materialien - die sogar eher schlechter sind, sondern vielmehr im Herstellungsverfahren. Hier müssen keine hochreinen Einkristalle mehr gezüchtet und keine Wafer mehr zersägt werden, man braucht keine Fotolithografie, keine hohen Temperaturen, keine Aufdampf-prozesse im Hochvakuum und keine kostspielige Reinraum-Atmosphäre. Stattdessen werden einfach ein paar Schich-ten auf eine papierdünne Folie gedruckt (Bild 1). Und das geht nicht nur extrem billig, sondern auch noch blitzschnell. Es folgt eine wenige Mikrometer starke Lage auf die ande-re (Leiter, Isolationsschichten, Halbleiter), und alles nur in additiven Prozessen. Das heißt, was einmal drauf ist, wird nicht wieder weggeätzt. Die fertige Schaltung kostet dann maximal ein paar Cent. Damit kann man es sich leisten, sie nach - oft nur einmaligem - Gebrauch wegzuwerfen. Zur herkömmlichen Technik kommt hier also überhaupt kei-ne Konkurrenz auf, sondern vielmehr eine Ergänzung. Die Plastikschaltungen zielen auf völlig andere Märkte, die der herkömmlichen Elektronik verschlossen gewesen wären. So ist zumindest die Vision. Noch ist das nicht Realität. Aber weltweit arbeiten viele Firmen und Institute mit Hoch-druck daran. Marktforscher sagen in wenigen Jahren Milli-ardenstückzahlen und explosionsartig wachsende Umsätze voraus. Die Industrie ist sich sicher, dass die hohen Summen, die derzeit in Forschung und Entwicklung gesteckt werden, wieder zurückfließen werden. Die allerersten, noch recht sim-plen Produkte kommen jetzt gerade auf den Markt.

Stromleitung über KohlenstoffkettenDass überhaupt derartige Entwicklungen in Gang kamen, ist einer bahnbrechenden Erfindung zu verdanken: Elektrisch leitfähige Kunststoffe. Nicht solche, denen einfach nur Metall- oder Kohlepulver beigemengt ist, sondern „echte“ mit einem Ladungsträgertransport über lange organische Kettenmole-

Kunststoff statt Silizium„Smart Plastics“ – die Elektronik der Zukunft?Von Helmuth Lemme

Eine Revolution der elektronischen Schaltungstechnik bahnt sich an: Bauelemente aus leitfähigen Kunststoffen statt aus Silizium und Metall. Welches sind die Gründe? Welches Potenzial hat diese Technik? Was wird sie kosten? Wir geben einen Überblick.

Bild 1. Dünn und flexibel wie Papier: Elektronische

Schaltungen aus leitfähigen Kunststoffen.

(Foto: Fraunhofer-IZM)

Page 61: Elektor 447 - 2008-03 (GER)

613/2008 - elektor

küle. Dafür müssen die Ketten immer abwechselnd „konju-gierte“ Einfach- und Doppelbindungen zwischen den Koh-lenstoffatomen aufweisen. Die ersten Materialien dieser Art wurden um 1977 genauer untersucht, doch zunächst fand sich dafür keine praktische Anwendung. Das Interesse stieg dann schlagartig, als auch halbleitende Polymere gefunden wurden, deren elektrische Leitfähigkeit sich durch Zugabe von Dotierstoffen innerhalb von weiten Grenzen einstellen lässt. Damit kann man Transistoren aufbauen. Zwar hatten die allerersten im Vergleich zu Siliziumtransistoren noch er-bärmlich schlechte Daten, aber immerhin funktionierten sie.Diese Erfindung wurde schließlich für so bedeutsam erach-tet, dass die drei Wissenschaftler Alan Heeger, Alan Mc-Diarmid und Hideki Shirakawa im Jahr 2000 dafür den Nobelpreis für Chemie erhielten. Dies hat die weltweite For-schung erst richtig in Fahrt gebracht. Heute arbeiten zahl-lose Firmen, Forschungsinstitute und Hochschul-Lehrstühle auf diesem Gebiet. Im europäischen Raum sind das zum Beispiel PolyIC, Plastic Logic, Plastic Electronic, Printed Sys-tems und das Fraunhofer-Institut für Zuverlässigkeit und Mik-rointegration (siehe Kasten und Weblinks). Hinzu kommen aber noch viele weitere. Immer neue derartige Polymere werden entdeckt, so dass die Vielfalt immer schwerer über-schaubar wird. Besonders günstige Eigenschaften haben z. B. die Stoffe der Gruppe der „Polythiophene“ mit der in Bild 2 gezeigten Kettenmolekülstruktur oder auch die so genannten „PEDOT:PSS“ [1].

Die entscheidenden physikalischen Größen sind zum einen die Leitfähigkeit - die immer noch um Größenordnungen un-ter der von Metallen liegt - und zum anderen die Ladungs-träger-Beweglichkeit. Diese ist das Verhältnis von Geschwin-digkeit der Ladungsträger (Elektronen oder Löcher) in cm/s zur anliegenden elektrischen Feldstärke in V/cm (daher die Dimension „cm²/Vs“). Die „schnellsten“ Materialien kom-men derzeit bis auf knapp 1 cm²/Vs, was dem Wert von amorphem Silizium entspricht, dem Standardmaterial für Dünnfilmtransistoren in Aktiv-Matrix-Displays. Die Entwick-lungsanstrengungen zielen auf weitere Verbesserung, man hofft noch das Polysilizium einholen zu können, das bei einigen 10 cm²/Vs liegt. Einkristallines Silizium thront so hoch darüber, dass man sich keine Hoffnungen macht, dies je zu ereichen. Das ist aber auch gar nicht interessant.

Schaltungen noch sehr einfachTechnische Reife haben bisher nur p-leitende Materialien erreicht. Die n-leitenden stecken noch weitgehend im Labor-stadium. Deshalb gibt es noch keine Bipolartransistoren und pn-Dioden, sondern nur p-Kanal-FETs und Schottky-Dioden (Metall-Halbleiter-Kontakt). An n-Kanal-FETs wird aber inten-siv gearbeitet; Ziel ist, eines Tages stromsparende CMOS-Schaltungen aufbauen zu können.Einen Querschnitt durch einen solchen „OFET“ oder „OTFT“ (Organic Thin Film Transistor) zeigt Bild 3. Wegen der im Vergleich zu Silizium sehr viel geringeren Leitfähigkeit gibt man solchen Transistoren in der Praxis die Form von inein-ander greifenden Fingerstrukturen. Schalteten die allerersten noch unsäglich langsam (Grenzfrequenz einige Hertz), so sind die neueren dank besserem Verständnis schon um mehrere Größenordnungen schneller. Der Rekordwert im Labor liegt heute bei 600 kHz.Ansonsten braucht man vor allem Widerstände, Kondensa-toren und Leiterbahnen, welche allesamt in dieser Techno-logie leicht herstellbar sind. Man verwendet dafür konven-tionelle Polymere mit Beimengung von Metall- oder Kohle-pulver, die besser leiten. Die Komplexität der Schaltungen bleibt vorerst relativ gering, das heißt, mit einer ein- bis

zweistelligen Zahl von Transistoren. VLSI-Schaltungen sind kein Thema. Man will ja dem Silizium keine Konkurrenz ma-chen, sondern gerade in solche Bereiche vorstoßen, wo es nie zur Anwendung kommen würde. Gegenstandslos wird

Bild 2. Elektrisch leitfähiger Kunststoff „Polythiophen“. (Bild: PolyIC)

Elektroden

KanalVDS

VGS

leitfähiges Polymer

Isolatornormales Polymer

Halbleiterkonjugiertes Polymer

Substratflexibler Film

Bild 3. Aufbau eines organischen Feldeffekt-Transistors (OFET). (Bild: PolyIC)

Auswahl von AnwendungenPolyIC aus Fürth entwickelt RFID-Chips aus organischen Ma-terialien, die dereinst – in Massen hergestellt – Barcodes zur Produktidentifikation ersetzen könnten [2].

Die nach eigenen Angaben erste Fabrik zur Herstellung von Aktiv-Matrix-Backplanes auf Plastiksubstraten hat Plastic Logic aus Cambridge aufgebaut [5]. Ziel sind ultradünne, flexible, „papierähnliche” Displays, die wie eine Zeitung überallhin mitgenommen werden können.

Eine intelligente Folie entwickelt die Firma Plastic Electronic aus dem österreichischen Linz [6]. Die flexible Polymerfolie ist mit matrixartig angeordneten Elektroden versehen, die sowohl das Gewicht als auch die Position eines darauf abge-legten Gegenstandes erkennen.

Das Dresdner Unternehmen Printed Systems hat Chipkarten aus Pappe auf den Markt gebracht, welche organische, ge-druckte Elektronik enthalten [7]. Steckt man die Karte in ein USB-Lesegerät, kann der Rechner eine Verbindung zu einer bestimmten Website aufbauen, was von Unternehmen für Marketingzwecke genutzt werden kann.

Das Fraunhofer-Institut für Zuverlässigkeit und Mikroin-tegration aus München hat sich der „Large Area Electronics“ verschrieben [8]. Aktive und passive, elektronische und pho-tonische Bauelemente - vorzugsweise aus organischen Ma-terialien - werden auf großflächigen Substraten aufgebracht. Hinzukommen sollen flexible, ultraflache Batterien und/oder organische Solarzellen zur Stromversorgung. Am Ende der Forschungen könnten Produkte wie ein „Foliencomputer“ oder eine elektronische Zeitung stehen.

Page 62: Elektor 447 - 2008-03 (GER)

grundlagen organische elektronik

62 elektor - 3/2008

hier allerdings die bisherige Unterscheidung zwischen Ein-zeltransistoren und integrierter Schaltung.

Herstellung auf DruckmaschinenDie verwendeten Materialien haben im Rohzustand flüssige oder pastöse Form. So lassen sie sich mit üblichen Druck-maschinen aufdrucken (Bild 4). Die Durchlaufgeschwindig-keiten werden durch die Trocknungszeiten der Schichten be-stimmt. (Hier hat man also erstmals wirklich eine „gedruck-te“ Schaltung! Was bisher fälschlicherweise so bezeichnet wurde, war ja nicht gedruckt, sondern geätzt.) Nun kennt die heutige Drucktechnik eine ganze Reihe von verschie-denen Druckverfahren. Hiervon ist nicht ein einzelnes der Favorit, sondern je nach zu druckendem Material ist das eine oder das andere besser. Deshalb können nicht alle Schritte auf einer Maschine laufen. Vielmehr durchläuft die Bahn eine Reihe von verschiedenen, zwischendurch wird sie immer wieder aufgerollt. Der entscheidende Punkt sind die damit erreichbaren Struk-turgrößen. An so ultrafeine Strukturen wie in Silizium - heute nur noch einige zig nm - ist hier nicht entfernt zu denken. So etwas braucht man aber auch gar nicht. Sicher beherrsch-bar sind 50 µm, bei 20 µm wird es schon schwieriger, bei 10 µm zur echten Herausforderung. Noch wesentlich dar-

unter zu kommen, erwartet von den Fachleuten keiner. Je kleiner, desto genauer müssen die einzelnen Druck-Schritte aufeinander abgestimmt werden. Weil man das in der Pra-xis nicht beliebig präzise schafft, werden die Toleranzen bei den technischen Daten der Transistoren dann immer größer. Irgendwann streuen sie so stark, dass man sie nicht mehr verwenden kann.Die Hauptmotivation dafür, die Kanallänge der Transistoren immer kleiner zu machen, ist die Steigerung der Schaltfre-quenz. Die Verkleinerung der Schaltung als solche ist nur zweitrangiges Ziel. Bei steigender Komplexität kann man problemlos in die Breite gehen. Während Silizium-Chipflä-che teuer ist und mit allen Mitteln klein gehalten werden muss, kommt es bei Plastik nicht so darauf an. Ein paar cm² zusätzlich kosten nicht viel mehr. Entscheidend für den Einbau an kritischen Stellen ist viel mehr die Dicke, die hauptsächlich durch die Trägerfolie gegeben ist (typisch einige zig µm). Die leitenden Schichten sind nur wenige Mikrometer dünn. Die Materialien (Folien und Pasten) als solche sind sehr kostengünstig, die Herstellungsprozesse - wenn sie einmal gründlich ausgereift sind - ebenfalls. Die Trägerbahnen kön-nen im Prinzip bis zu mehrere Meter breit werden (was noch nicht Realität ist), ihre Länge ist nur durch die Größe der Aufwickelspulen begrenzt. Als Material kommen neben verschiedenen Kunststoffen (etwa Polycarbonat oder PET) auch Metallfolien (z. B. Edelstahl) oder auch Dünnglas in Betracht, das bei z. B. 50 µm sehr flexibel ist und bei sach-gemäßer Behandlung kaum bricht.Und die Herstellung geht enorm schnell. Wenn auch das Tempo von Zeitungsdruck (bis zu 15 m/s = 54 km/h) noch lange nicht zu erreichen ist, so schafft man doch immerhin schon rund 20 m pro Minute. So sind Plastikschaltungen im Nu fertig - während Siliziumchips vom rohen Wafer bis zum fertigen Baustein ein paar Wochen brauchen. Die Kosten liegen im Cent-Bereich oder noch darunter, so dass sich ein damit ausgestattetes Produkt nicht spürbar verteuert. Die größten Unterschiede zeigen sich bei den Investitionskosten: Kostet ein Werk für Siliziumchips heu-te mehrere Milliarden Euro, so ist eines für Plastik-Schal-tungen im Vergleich dazu spottbillig.

Immer mehr Funktionen Eine der ersten anvisierten Massenanwendungen für Plas-tikschaltungen ist RFID, die Identifikation über Funk. In Silizium haben sich solche „Transponder“ oder „Tags“ schon sehr weit verbreitet. Sie enthalten einen Chip mit nur zwei Anschlüssen, die mit einer Antennenspule verbun-den sind. Das zugehörige Lesegerät strahlt einen kurzen Hochfrequenzimpuls aus, die dadurch in der Spule indu-zierte Wechselspannung wird gleichgerichtet und speist den Chip. Dieser schickt dann ein kurzes Datentelegramm an das Lesegerät zurück. Vor allem diese Art von Schaltungen ist es, die man in Plastik drastisch billiger als bisher produzieren kann. Gigantische Stückzahlen erwartet man im Bereich der Warensicherung. Hier besteht ein dringender Bedarf, weil die Produktfälsche-rei allmählich ein unerträgliches Ausmaß angenommen hat. Ein als Plastikschaltung aufgebauter RFID-Transponder ist im Gegensatz zu einer herkömmlichen Platine mit Siliziumchip ultraflach und lässt sich an Stellen einbauen, wo das bisher nicht möglich war - oft geht das sogar unsichtbar (Bild 5). Er gibt dann bei Abfrage das Signal „Produkt echt“ zu-rück - aber eben nur, wenn er vorhanden ist. Lassen sich solche Etiketten einmal für einen Cent oder weniger her-stellen, können sie auf der gesamten Warenpalette Einzug halten, beispielsweise im Lebensmittelhandel, wo sie dann

Bild 5. Von außen kaum

erkennbar: Sicherungsetikett zur

Verhinderung von Produktfälschungen.

(Foto: PolyIC)

Bild 4. Polymerschaltungen lassen sich mit Geschwindigkeiten

von bis zu 20 m pro Minute auf üblichen

Druckmaschinen herstellen. (Foto: PolyIC)

Page 63: Elektor 447 - 2008-03 (GER)

633/2008 - elektor

die derzeitigen Barcodes ablösen können (Bild 6). Auch die Echtheit von Flugtickets, Eintrittskarten (etwa zu teuren Konzerten oder Fußballspielen) ließe sich damit sichern. Dies ist Thema des vom BMBF unterstützten Projekts PRIS-MA (Printed Smart Labels). Auch in der Logistik wären sie von Nutzen für die Verfolgung und Identifikation von Teilen und Produkten während des Fertigungsprozesses. Eine Art elektronisches Brettspiel als Demo-Anwendung zeigt, dass die Technologie funktioniert (Bild 7).

Die zur Übertragung genutzten Frequenzen legt man in die für allgemeine Nutzung freigegebenen ISM-Bänder. Viel verwendet wird z. B. 13,56 MHz. Diese Frequenz kann bisher kein OFET verarbeiten, das ist aber auch nicht nötig. Das muss nur die Diode schaffen, die das HF-Signal gleich-richtet. Die Taktfrequenz der Daten liegt zwischen 100 Hz und 1 kHz. Bei der Firma PolyIC in Fürth [2] hat bereits eine erste Serienproduktion von derartigen RFID-Transpondern begonnen. Das Tag gibt bei Abfrage eine Ja/Nein-Infor-mation zurück (1 Bit), in dem Sinne „Ja, ich bin ein echtes Etikett“. Für viele Zwecke reicht das vorerst schon als Echt-heitsnachweis. Dieses nachzuahmen, wäre für die ostasi-atischen Fälscherbanden so schwer, dass sich das nicht rechnen würde.

Langfristig will man dann immer mehr Funktionen in Plastik realisieren. In Entwicklung sind Sensoren zur Aufnahme von Messwerten aus der Umgebung (etwa Temperatur, Vibrati-onen, Stöße usw.), Schalter und Tastaturen zur manuellen Eingabe von Daten (etwa einer Geheimzahl). Zur Anzeige von Informationen (etwa Ladestand einer Geldkarte) braucht man ein Display. Das soll ebenfalls in Drucktechnik her-gestellt werden. Gute Chancen haben dazu OLEDs (orga-nische Leuchtdioden) oder so genannte „elektronische Tin-te“, die auch billige Kleindisplays auf Verpackungen mög-lich machen könnte [3]. Zum Betrieb der Schaltung dient entweder eine Folienbatterie oder eine organische Solarzel-le; beide sollen in Zukunft gedruckt werden können.

MischtechnikenWas in der Theorie einfach aussieht, kann in der Praxis doch noch ganz erhebliche Tücken haben. Nicht alles lässt sich so einfach drucken, wie man das gern hätte. Deshalb verwendet man hier auch häufig hybride Verfahren, etwa Kombinationen von Drucktechnik und Fotolithografie. So gibt es allerhand Zwischendinge zwischen konventioneller und organischer Elektronik. Wenn man Siliziumchips durch rückseitiges Abätzen auf rund 20 µm abdünnt, werden sie flexibel und machen Biegungen der Trägerfolie mit, ohne zu brechen. Die Industrie klebt nicht an irgendwelchen Dog-men wie „unbedingt alles aus Plastik, auf keinen Fall Sili-zium“, sondern die Anwendung bestimmt die Technologie. Man stellt das her, was der Markt verlangt. Und das ist in jedem Einzelfall unterschiedlich. Auf jeden Fall besteht die Herausforderung darin, die zwei grundverschiedenen Welten von Drucktechnik und Elek-tronik zusammenzubringen. Das erfordert eine sehr enge Kommunikation von Fachleuten aus beiden Branchen. Dazu wurde 2004 die „OE-A“ (Organic Electronic Association) als Arbeitsgruppe im VDMA (Verband der Deutschen Ma-schinen- und Anlagenbauer e. V.) gegründet [4].

Nicht ohne ProblemeMeist werden die Plastikschaltungen nur einmal benutzt, anschließend landen sie im Müll. Was das dann noch für Umweltprobleme gibt, ist schwer abzusehen. Wie die

Chemikalien, die es früher überhaupt nicht gegeben hat, auf Menschen, Tiere und Natur wirken können, ist bisher kaum erforscht.Und noch ein ganz anderes Thema muss sicher sehr ernst genommen werden. Die ganze Welt wird elektronifiziert. An allen möglichen - oft versteckten - Stellen sitzen elektronische Schaltungen und machen irgendetwas. Vor allem nehmen sie Informationen auf und übertragen sie anderswohin, sehr oft, ohne dass ein Mensch davon etwas merkt. Droht der „1984“-Überwachungsstaat? In dem besagten Roman flos-sen noch alle Informationen über Kabel, in jedem Gebüsch konnte ein Abhörmikrofon versteckt sein. Heute geht alles per Funk, mit Bluetooth, ZigBee usw. – und das ist weit schwerer zu entdecken! Kommt hier die totale Vernetzung auf uns zu? Dazu darf es niemals kommen!

(070999)

Weblinks[1] http://en.wikipedia.org/wiki/PEDOT:PSS

[2] www.polyic.com

[3] www.elektor.de/HauchduenneDisplays

[4] www.oe-a.org

[5] www.plasticlogic.com

[6] www.plastic-electronic.com

[7] www.printed-systems.de

[8] www.izm.fhg.de/programme/ ElektronikaufgroflchigenSubstraten.jsp

OLED-Display

Tastatur

Film-SubstratLeiterbahnen

flexibleMikrobatterie

optischeInspektion

Elektrochrom-Display

System-Integration

Logik-Schaltung

optischerSensor

Solarzellen

Bild 7. Vorführobjekt für Plastik-Elektronik: Elektronisches Brettspiel. (Bild: OE-A / Concept Company)

Bild 6. Zukunftsvision: Elektronisches Etikett auf jeder Ware. (Foto: PolyIC)

Page 64: Elektor 447 - 2008-03 (GER)

praxis workshop

64 elektor - 3/2008

Haben Sie es bemerkt? Die Entwicklung schreitet in allen Elektronik-Bereichen immer schneller voran. Ein Gerät, wel-ches Sie heute freudestrahlend aus dem Laden tragen, ist faktisch schon veraltet. So sammelt sich im Laufe der Jahre eine Unmenge „Elektronikschrott“ an. Um die Wiederver-wendbarkeit oder Ersatzteilgewinnung ist es leider eben-falls oft schlecht bestellt, sofern man nicht über die nötigen Spezialwerkzeuge verfügt. Der Einsatz von Multilayer-Lei-terplatten und die meist unvollständige oder gänzlich feh-lende Beschriftung der Bauteile machen das Identifizieren von Schaltungen sehr schwierig. Umso erfreulicher ist es da, wenn einem ein Altgerät in Hände fällt, dem man ein zweites Leben einhauchen kann.

Wie alles begannAuf dem Dachboden hatte ich seit etwas mehr als zwei Jahren einen kleinen Posten Least-Cost-Router (LCR) für den ISDN-Mehrgeräteanschluss herumstehen. Der Anblick der Kartons ärgerte mich bei jedem Gang auf den Boden mehr. Etwa Mitte 2006 griff ich mir eine der Pappschachteln, um nachzusehen, ob sich der Inhalt vielleicht noch anderwei-tig verwerten ließe. Auf den ersten Blick fand sich da ein Steckernetzteil, ein ISDN-Kabel, ein Gehäuse und eine zu 95 % SMD-bestückte Leiterplatte. Ein wenig enttäuscht legte ich die Teile beiseite.Wochen später betrachtete ich die Platine (siehe Bild 1) nochmals genau. Es wurde schnell klar, dass hier doch nicht Hopfen und Malz verloren waren. Ich erkannte, dass die Teles-Ingenieure alle Funktionsblöcke des Rou-ters räumlich getrennt hatten. Auf der einen Seite lag der ISDN- und auf der anderen Seite der Prozessorteil nebst Spannungsstabilisierung. Die zweite Überraschung war der „klassisch“ aufgebaute Rechnerteil: ein 8051-Derivat, beschaltet wie im Lehrbuch! Ein 80C32-Mikroprozessor, 32 KB Arbeitsspeicher (RAM), 64 KB Programmspeicher (ROM) und sogar ein serielles EEPROM waren vorhanden. Nach dem Studium der Datenblätter [1][2] eine weitere gute Nachricht: Der verwendete ROM-Baustein war eine Art Hybrid aus Flash- und OTP-EPROM. Ein solches MTP- EPROM (Multiple-Time-Programmable-EPROM) lässt sich bis zu 100 Mal neu programmieren. Mit diesen Erkennt-nissen im Hinterkopf, jedoch ohne konkrete Idee, packte ich alles wieder zusammen.Ende 2006 ergab sich eine gute Gelegenheit, ein wenig mit der Platine „herumzuspielen“. Die Demontage der für

Router + Funk-Klingel = Alarmanlage!Angewandtes ElektronikrecyclingVon Enrico Müller

Dieser Workshop ist wieder einmal ein waschechtes Recycling-Projekt – wir beschreiben den Umbau eines alten Telefon-Routers und einer Funktürklingel zu einer drahtlosen Alarmanlage. Neben einer Handvoll Bauteile, einem LC-Display und einem Stück Lochrasterleiterplatte werden keine zusätzlichen Komponenten benötigt.

ISDN Schaltungsteil

Prozessorplatine mitentferntem ISDN-Teil

Spannungs-regler für +5V

klassischer Prozessorteilmit µP, ROM und RAM

Tongenerator Dekoder

Lautsprecher

AntenneEmpfänger-

Platine

Signalausgang & Tongeberanlöten

Leiterbahnenausfräsen

Bild 1. Das loben wir uns:

Die Funktionsblöcke des Routers sind säuberlich

getrennt.

Bild 2. Auch bei der Klingel ist

einiges rauszuholen.

Bild 3. Zwischen Signalausgang

und Signalgenerator greifen wir ein.

Page 65: Elektor 447 - 2008-03 (GER)

653/2008 - elektor

ISDN zuständigen Bauteile erwies sich als sehr zeitraubend. Kurzerhand „bewaffnete“ ich mich mit einer Handbügelsä-ge, nahm Maß und sägte den kompletten ISDN-Teil einfach heraus (siehe Bild 1). Auf der Leiterkarte befanden sich vier Leuchtdioden, die fortwährend leise wimmerten: „Bitte bring uns zum Leuchten!“. Ein einfaches Multimeter half mir, die verantwortlichen Portpins am 80C32 zu identifizieren. Mit einem kleinen Programm in Maschinensprache erfüllte ich schließlich den Wunsch der kleinen Leuchtlinge.

Eine schwere GeburtIm Frühsommer 2007 beunruhigte eine Serie von Keller-einbrüchen unser Viertel. Plötzlich schoss mir ein Gedan-ke durch den Kopf. Wie wäre es mit einer Alarmanlage? Das stockwerkübergreifende Verlegen von Kabeln ist eine sehr aufwendige und unschöne Angelegenheit, also kam nur ein drahtloses System in Frage. Beim Durchblättern der einschlägigen Kataloge traf mich fast der Schlag: Die Ein-stiegspreise lagen im dreistelligen Bereich! Meine Recher-chen wurden durch das Klingeln des Telefons unterbrochen. Ein Bekannter ließ mich wissen, dass er eine für ihn bestellte Funktürklingel nicht mehr benötigte. Plötzlich klingelte es auch bei mir: Das war die gedankliche Geburtsstunde für das Projekt „Funkalarmanlage“!Jetzt ging alles ganz schnell. Genau wie den LC-Router zerlegte ich auch die Klingel in ihre Einzelteile (siehe Bild 2) und war wieder einmal angenehm überrascht. Trotz des geringen Einstandspreises von nur 4,95 Euro verfügte das Modell über eine (einfache) Kodierung. Ich isolierte den Signalausgang des Dekoder-Schaltkreises. Dieser Ausgang war direkt mit einem kleinen Signalgene-rator verbunden, so dass ich die betreffende Leiterbahn nur noch auftrennen und je ein etwa 15 cm langes Stück Draht anlöten musste (Bild 3).

Diese beiden Leitungen verband ich direkt mit der Router-Prozessorplatine an genau den Stellen, wo zuvor zwei LEDs eingelötet waren. Schnell noch ein kleines Programm zur „Klingel-Detektion“ geschrieben und schon konnte ein erster Test erfolgen. Nach dem Einlegen der Batterie in den Hand-sender drückte ich erwartungsvoll auf den Klingelknopf. Am Handsender selbst leuchtete auch eine rote LED, an meinem Versuchsaufbau tat sich jedoch nichts. Mit meinem Multimeter maß ich den Pegel am Ausgang des Dekoders bei gedrücktem Klingelknopf. Er war ausreichend. Auch direkt am Prozessor kam das Signal an. In diesem Moment verrutschte ich mit der Prüfspitze und schloss zwei neben-einander liegende Portpins kurz. Als Folge ertönte das Klin-gelsignal und die rote LED auf der Prozessorplatine begann zu blinken. Ich maß den betreffenden Anschluss mit 0 Volt. Sehr sonderbar: Der Alarm sollte doch nur durch Logisch „1“ ausgelöst werden? Beim Abklemmen des Messgeräts fiel mir auf, dass ich den Potential-Ausgleich vergessen hat-te. Nachdem alle Massen miteinander verbunden waren, funktionierte die Schaltung wie erwartet. Somit war der erste Prototyp meiner Anlage funktionsfähig.

Erste AnwendungIn den nächsten Tagen erweiterte ich den Versuchsaufbau um eine Rücksetztaste. Auch die Platine des Signalgebers

Router + Funk-Klingel = Alarmanlage!Ausfräsen

R = 4,7k einlöten

Senderplatine

Kabel mit“Zugentlastung”

Kabel hieranlöten

Vorderseite

Bild 4. Der Signalton-Chip wird entfernt. Die Töne machen wir selbst!

Bild 5. Ein Kabel führt von einem Reedkontakt zur Senderplatine. Fertig ist der Funksensor!

Bild 6. Ein LC-Display und drei Tasten sind unser User-Interface.

Bild 7. An diese zehn Anschlüsse kommt das User-Interface dran.

Page 66: Elektor 447 - 2008-03 (GER)

praxis workshop

66 elektor - 3/2008

musste Federn lassen. Der Steuerchip wurde komplett her-ausgefräst und der Treibertransistor für den Lautsprecher

mit einem 4,7-k-Basiswiderstand ergänzt (siehe Bild 4). Nun bestand die Möglichkeit, eigene Signaltöne auszuge-

K1

10

1

2

3

4

5

6

7

8

9

IC1.BQ1

Q2

Q3

Q4

I1

I2

I3

I4

EN

11

13

15

17

19

070555 - 13

9

7

5

3

IC1.A18

Q116

Q214

Q312

Q4

I1

I2

I3

I4

EN

2

4

6

8

1

R3

10

k

S3

Ja

R2

10

k

S2

Nein

R11

0k

S1

Abbruch

+5V

IC1 = 74LS241

LCD1

+5V

R/W

0V

LCD16x1 (2x8)

VO

RS

10

11D4

12D5

13D6

14D7

1

2

3

4

5

6E

7

8

9

+5V

R4

10k

R5

470Ω

Ko

ntr

ast

K2 21

R6

4k7

T1

BC337-16

LS1

+5V

P1.3

P1.2

P1.1

P1.0

P3.3

P1.4

P3.0

P3.5

P3.4

P3.1

LCD

- D

ISP

LAY

zur

Pro

zess

orp

lati

ne

Türklingelplatine

IC1

20

10

+5V

KomponentenAls „Herz“ dient ein von der Firma Teles unter der Bezeich-nung „Teles.iLCR Box“ vertriebener Least-Cost-Router (LCR) für den ISDN-Mehrgeräteanschluss, heute oft für weniger als 10 Euro zur bekommen (nicht zu verwechseln mit der S0-Box, 2S0-Box usw. des gleichen Herstellers). Telefon-Router des Typs „Teles.iLCR-Box“ TAG 9552 werden oft im Internet an-geboten. Wer gar nicht weiterkommt, darf auch beim Autor anfragen ([email protected]).

Die zweite Ingredienz ist ein Funktürklingelsatz. Er besteht aus einem Handsender und einem Empfänger mit eingebau-ter Signaleinrichtung. Der verwendete Funktürklingelsatz ist selbstverständlich durch ein identisches Produkt austauschbar. Aufgrund des geringen Preises für Neugeräte (ein Set ist z.B. ab 5 Euro zu haben) empfiehlt sich der Neukauf im Baumarkt um die Ecke oder beim Elektronik-Restpostenversender.

Neben einer Handvoll Bauteile (siehe Stückliste), einem LC-Display und einem Stück Lochrasterleiterplatte werden keiner-lei zusätzliche Komponenten benötigt. Alles in allem sollten sich die Materialkosten im Bereich von 25-35 Euro bewegen. Die Leiterplatte ist einseitig und lässt sich kostengünstig selbst herstellen. Die entsprechenden Vorlagen befinden sich im Zip-File, das man von der Elektor-Website kostenlos downloa-den kann [3]. Die Realisierung erfordert neben den üblichen Gerätschaften lediglich einen EPROM-Brenner, welcher in der Lage ist, MTP-EPROMs zu löschen und zu brennen. Einfachere Modelle, die 27C512 schreiben können, tun es zur Not auch. In diesem Fall benötigt man neben ein paar EPROMs vom Typ 27C512 noch ein UV-Löschgerät.

StücklisteWiderstände:R1..R4 10 kR5 470 OhmR6 4,7 k

HalbleiterIC1 74LS241T1 bereits vorhanden

Sonstiges:S1..S3 Kurzhubtaster (6x 4 mm, 9 mm Höhe)LCD1 LC-Display 1x16 (8x8)Lochrasterplatine20-polige Fassung für ICdiverse Abstandshalter 5 mmdiverse Schrauben (Länge 15 mm) und Muttern M3-M3,5

Bild 8. Dank des Logik-Bausteins

reichen vier Portpins für das Display und die Tasten.

Page 67: Elektor 447 - 2008-03 (GER)

673/2008 - elektor

ben. Ich entfernte die Empfängerplatine und den Lautspre-cher der Funktürklingel endgültig aus ihrem Gehäuse und baute sie am frei gewordenen Platz im LCR-Gehäuse ein. Außerdem verband ich die Spannungsversorgung direkt mit der Prozessorplatine. Um die Lebensdauer der Bauteile durch die erhöhte Spannung nicht zu vermindern, wurde die Empfängerplatine über zwei zwischengeschaltete Dio-den versorgt.

Nach einer Anpassung des Steuerprogramms bekam der Handsender ein Kabel (siehe Bild 5) mit einem vergos-senen Reedkontakt spendiert. Zu Versuchszwecken mon-tierte ich einen Magneten, den Kontakt und den Sender an meinem Briefkasten. Die Anlage zeigte nun an, ob der Post-bote die Klappe geöffnet hatte, um etwas einzuwerfen.

Es geht voran…Obwohl meine erste Anlage gut arbeitete, störte etwas. Die Alarm-LED war bei Wandmontage nicht oder nur schlecht zu sehen. Deshalb entschied ich mich für die Erweiterung des Projektes um ein LC-Display und ein kleines Bedienfeld. Gut, dass sich ein schon etwas älteres 1x16-LC-Display in meiner Bastelkiste befand (Bild 6). Um die Bedienung so einfach wie möglich zu halten, sollten lediglich drei Tasten zum Einsatz kommen. Alle Funktionen können mit einfachen „Ja/Nein/Abbrechen“-Entscheidungen vorgenommen wer-den. Damit war das „Pflichtenheft“ erstellt.

Zum Betrieb eines HD44780-kompatiblen LC-Moduls wer-den (im 4-bit-Modus) minimal sieben Portpins benötigt. Drei

kommen noch für die Tasten und je ein Anschluss für die Signalaufnahme und -ausgabe hinzu. Zusammen erfordert dies zwölf freie Anschlüsse an der Prozessorplatine. Ohne weiteres lassen sich jedoch nur zehn Portpins nutzen (siehe Bild 7). Daraus ergab sich die Notwendigkeit, Anschlüsse doppelt zu verwenden. Ich beschloss, die vier Datenbits (D7-D4) des LC-Displays und die drei Eingabetasten über eine entsprechende Logik an vier Portpins des Prozessors zu legen (siehe Bild 8). So ergab sich ein Bedarf von ins-gesamt zehn Leitungen, einschließlich des Anschlusses zum Umschalten der vier gemeinsam verwendeten Portpins von Ein- auf Ausgabe und umgekehrt.

Das Bedienteil bestückte ich beidseitig. Alle Taster, Wi-derstände und Brücken wurden auf der Bestückungs-, ein 74LS241 (mit Fassung) und die „Verdrahtung“ dagegen auf der Leiterseite untergebracht.

Gehäuse-Oberschale

fertig bearbeitet

mit montiertemBedienteil

Start

Meldung:Scharfschalten ?

Meldung:Scharf in xx Sek

Sekundenerniedrigen

“Abbruch“gedrückt?

Sekundenauf Null?

Meldung:Abbrechen ?

Welche Tastegedrückt?

Nein

Ja

Ja

Ja

Ja

Nein

Nein

Meldung:Anlage Scharf !

Taste oderAlarm?

Meldung:Unscharfschalt.?

Welche Tastegedrückt?

Nein

Abbruch

Abbruch

Meldung:Alarm in xx Sek

Meldung:Abbrechen ?

“Abbruch“gedrückt?

Welche Tastegedrückt?

Sekundenerniedrigen

Sekundenauf Null?

Nein

Nein

Ja

Ja

Ja

Alarm

Nein

Ja

Meldung:**** Alarm ****

Meldung:Abbrechen ?

Welche Tastegedrückt?

Nein

Bild 9. Auch das Gehäuse wird ein wenig „behandelt“.

Bild 10. Die Firmware ist bewusst einfach gehalten.

Page 68: Elektor 447 - 2008-03 (GER)

praxis workshop

68 elektor - 3/2008

… und fertig!Die Oberschale des Gehäuses musste ich nun nur noch mit allen notwendigen Bohrungen und Aussparungen versehen (Bild 9). Alle Maße nahm ich einfach vom LC-Display und der bereits bestückten Platine des Bedienteils ab.Die Firmware hielt ich bewusst sehr einfach. Wie man in Bild 10 erkennt, verfügt die Anlage über eine Scharfschalt-verzögerung, welche auf 60 Sekunden, und eine Alarm-verzögerung, die auf 30 Sekunden voreingestellt ist. Das Tonsignal wird nach zwei Minuten abgeschaltet.Alle, die es mir nachtun wollen, finden einen Bestückungs-plan, eine Platinenvorlage sowie die Software als ASM-und HEX-File zum Herunterladen auf der Elektor-Website [3]. Die

nötigen Komponenten und die Umbau-Details sind in den Kästen zusammengefasst.Natürlich kann jeder noch individuelle Änderungen vorneh-men. Die Prozessorplatine des LCR bietet durch das bislang ungenutzte RAM und EEPROM noch reichlich Reserven!

Weblinks[1] www.alldatasheet.com/view.jsp?Searchword=80C32

[2] www.alldatasheet.com/view.jsp?Searchword=MX26C512A

[3] www.elektor.de/funkalarm

(070555)

Bau-Details und Test

Um die Prozessor-Platine zu isolieren, benutzt man am besten eine kleine Handbügelsäge, die mit einem Eisensägeblatt be-stückt ist. Nach dem Aussägen sind die Kanten sorgfältig mit feinem Schleifpapier zu glätten und im Anschluss mit einer Lupe auf ungewollte Berührungen von Leiterbahnen unterein-ander und gegen +5 V oder Masse zu kontrollieren. Danach entfernen Sie zunächst die in Bild 7 abgebildeten SMD-Wider-stände 1 und 6 (gelb). Im Download-File [3] befindet sich ein einfaches Diagnoseprogramm namens „TEST1.HEX“, mit dem man die Funktion der Leiterkarte überprüfen kann. Anschluss 5 führt dauerhaft einen Pegel von etwa +2,5 V. Weitere De-tails finden sich im Quelltext „TEST1.ASM“. Funktioniert alles, werden nun auch alle LEDs (weiße Anschlusspunkte 1-4) entfernt und die SMD-Widerstände 2-5 (gelb) durch Brücken ersetzt.

An der Empfängerplatine der Klingel (siehe Bild 2) müssen Sie die bestehenden Versorgungsleitungen gegen etwa 15 cm lange Drahtstücke tauschen und die Platine dann an der frei-en Stelle in der Gehäuseunterschale des Routers einpassen (siehe Bild im Kasten). Die Fixierung erfolgt mittels Schraube über ein 5-mm-Distanzstück direkt am Gehäuse. Dabei ist zu beachten, dass sich die Nasen der Oberschale noch in die dafür vorgesehenen Aussparungen einführen lassen. Befe-stigen Sie den kleinen Lautsprecher mit Heißkleber zwischen Platine und Unterschale. Damit der Kleber nicht herausläuft, kann man ein kleines Stück Pappe an der entsprechenden Stelle auf der Gehäuseaußenseite einschieben.

Entnehmen Sie die Prozessorbaugruppe aus der Gehäuseun-terschale. Verbinden Sie die Datenleitungen des Anzeige- und Bedienteils (man benötigt acht Daten- und zwei Versorgungs-leitungen mit etwa 20 bis 30 cm Länge) sowie die Empfänger-platine mit der Prozessorplatine. Wo welcher Draht hingehört,

ist in der Tabelle dargestellt (Nummerierung siehe Bild 7). Nicht aufgeführt sind die Drähte zur Spannungsversorgung. Es hat sich bewährt, diese Kabel zu verdrillen (+5 V an +5 V, Masse an Masse) und direkt auf die Anschlussdrähte des Spannungsreglers zu löten. Arbeiten Sie sorgfältig, damit kein Kurzschluss entsteht.

Im Download-File befindet sich ein weiteres Dia-gnoseprogramm namens „TEST2.HEX“, mit dem man die Funktion der „Verdrahtung“ überprüfen kann. Haben Sie alles richtig gemacht, erscheint auf der Anzeige „Warten auf Taste“. Je nachdem, wel-che Taste (S1-S3) man drückt, wird die Meldung „Ta-ste X gedrückt“ angezeigt. Wurde der Alarmgeber ausgelöst, muss „Alarm-Signal EIN“ ausgegeben werden. In letzterem Fall ist zusätzlich ein Tonsignal im Lautsprecher hörbar. Alle Tasten und der Alarm-geber können in beliebiger Reihenfolge und beliebig oft betätigt werden. Wenn alles funktioniert, wird

unser Projekt durch die Programmierung mit „FUA51.

HEX“ (siehe Download-File) zur Funkalarmanlage. Zu guter Letzt erfolgt die Beschriftung der Tasten von links nach rechts mit „Abbruch“, „Nein“ und „Ja“ (siehe Bild links).

Anschluss Port Bemerkung01 P1.3 D702 P1.2 D603 P1.1 D504 P1.0 D405 P3.3 Tongeber06 P1.4 Signaleingang07 P3.0 R/W08 P3.5 RS09 P3.4 Steuerung Eingang/Ausgang10 P3.1 E

Page 69: Elektor 447 - 2008-03 (GER)

Sichern Sie sich jetzt Ihren Wissensvorsprung durch ein Abo!

Preisvorteil: Schüler und Studenten sparen 29%gegenüber dem Einzelkauf

Abonnenten erhalten exklusiv auf spezielle Elektor- Produkte bis zu 40% Rabatt

Keine Ausgabe verpassen: Elektor kommt pünktlich, bequem und zuverlässig frei Haus

Immer up-to-date: Lesen Sie jede Elektor-Ausgabe vor allen anderen

Ihre Vorteile im Abo:

www.elektor.de/abo · Tel. 02 41/88 909-0

Elektor ist Wissen für Profi s.

„Elektor? Wenn mancher Prof wüsste, wie einfach bestimmte Sachverhalte erklärt werden können...“

– Daniel Gerdes, 23 Jahre, Student –

the world-leading network for electronics

RZ 3+4+5+6 2007 D indd 1 31 01 2007 13:32:05 Uhr0803_elektor_adv_DU 69 11-02-2008 09:23:47

Page 70: Elektor 447 - 2008-03 (GER)

info & markt review

70 elektor - 3/2008

Für das Starterkit „CY3270 - PSoC First touch“ von Cy-

press muss man etwa 22 Euro ausgeben. Mit diesem Starterkit kann man laut Cypress die Welt

der PSoCs auf spannende Art selbst entdecken.Zum Starterkit gehören zwei Hardware-Komponenten, eine Mini-CD-ROM, ein Quick-Start Guide sowie ein Stück Kabel. Das alles befindet sich in einer handlichen Plastik-schachtel, die später noch zum Zweck der Aufbewahrung dienen kann. Bis auf ein USB-Kabel, das eigentlich dazu-gehören müsste, ist das Kit vollständig. Die Entdeckungs-reise kann ohne Startverzögerung beginnen.

PSoC - was ist das?Die vier Buchstaben „PSoC“ stehen stellvertretend für die vier englischen Wörter Programmable System on Chip. Cypress ist nicht der einzige Hersteller, der Produkte unter diesem Etikett auf den Markt bringt. Meistens geht es dabei um spezielle Mikrocontroller einschließlich Massenspeicher und zugehöriger Peripherie. Die von Cypress angebotenen PSoCs haben Eigenschaften, die darüber hinausgehen. Hier gehören außer dem Mikrocontroller und der Periphe-rie auch diverse analoge Komponenten dazu. Die analo-gen Komponenten sind konfigurierbar, mit ihnen können Verstärker, Filter, Modulatoren und andere analoge Subsy-steme realisiert werden. In den für eingebettete Systeme be-stimmten PSoCs von Cypress sind analoge Funktionen zu-

sammen mit dem Mikrocontroller auf einem gemeinsamen Chip untergebracht. Dadurch wird die Anzahl der

Bauelemente reduziert, so dass die Kosten sinken.Die Eingänge und Ausgänge der analogen Blök-ke können mit beliebigen Schaltungspunkten auf dem Chip, also auch mit der digitalen Peripherie verbunden werden. Das Layouten der Platine wird vereinfacht.

Kit-HardwareDie Hardware des Starterkits CY3270 ist zweiteilig. Eine Komponente ist die so genannte FTPC-Bridge, die zweite Komponente ist die Erweiterungsplatine. Auf der Erweiterungsplatine sind der PSoC, Typenbezeichnung CY21434, sowie eine RGB-LED, ein Mini-Lautsprecher und ein Thermistor untergebracht. Mit diesen Hardware-Komponenten können die in der Anleitung vorgeschlage-nen Beispiele erprobt werden.Auf der Erweiterungsplatine sind zwei Leiterstreifen aufge-druckt, an die das mitgelieferte Kabelstück angeschlossen werden kann. Die kupfernen Leiterstreifen dienen dazu, mit dem PSoC einen Berührtaster aufzubauen. Wenn das Kabel angeschlossen ist, wirkt es als Antenne, so dass ein Näherungsschalter entsteht.Für die Kommunikation zwischen der Erweiterungsplatine und dem USB-Port eines PC sorgt die FTPC-Bridge. Über diese Schnittstelle wird der PSoC mit Hilfe des PC pro-grammiert. Außerdem arbeitet die Schnittstelle als USB-I2C- und SPI-Bridge. Das vereinfacht das Debuggen von Applikationen, die diese Schnittstellen verwenden.

Kit-SoftwareAuf der mitgelieferten CD-ROM sind die Entwicklungsum-gebung und die Programmer-Software untergebracht. Die Entwicklungsumgebung läuft problemlos auch unter Win-

µC goes analogCypress PSoC Development Kit

Eingebettete Systeme bestehen überwiegend aus digitalen Komponenten. Daneben müssen analoge Komponenten Signale verstärken, filtern oder auf andere Weise verarbeiten. In den PSoCs von Cypress sind Mikrocontroller und analoge Komponenten unter einem Dach vereint. Für die nähere Bekanntschaft mit diesen Chips ist das Development Kit CY3270 der passende Einstieg.

Von Paul Goossens

Page 71: Elektor 447 - 2008-03 (GER)

713/2008 - elektor

dows Vista, während der Programmer leider noch nicht vista-tauglich ist. Davon betroffen ist jedoch nur die Versi-on auf der CD-ROM. Auf der Cypress-Website ist inzwi-schen eine neue Version erschienen, bei der die Kompati-bilitätsprobleme beseitigt sind.Unter der Entwicklungsumgebung kann der Anwender den Mikrocontroller in C programmieren, ferner kann er sich eines Simulators bedienen. Vom Gewohnten unterschei-det sich die Entwicklungsumgebung dadurch, dass mit ihr auch die analogen PSoC-Blöcke konfi guriert werden kön-nen. Das Anschließen diverser Sensoren unterschiedlichen Typs ist völlig unkompliziert. Der Anwender hat die Wahl unter einer Vielzahl vordefi nierter Blöcke. Viele Sensor-Ty-pen können mit dem Chip unmittelbar verbunden werden. Zur mitgelieferten Software gehören auch C-Routinen, die Sensor-Werte lesen und für die Weiterverarbeitung bereit-stellen. Auf dem Bildschirm ist sogar ein Schema darge-stellt, das Beispiele mit diversen Sensoren zeigt.Aufgebaut werden Schaltungen im Drag-and-drop-Verfah-ren, die analogen Funktionen werden einfach in den Ent-wurf hineingezogen. Die Eigenschaften der Blöcke lassen sich durch Mausklicks an die Erfordernisse anpassen.

BeispieleVier Beispiele für die Erweiterungskarte ergänzen die Software. Ein Beispiel demonstriert, wie mit dem PSoC ein kapazitiver Berührtaster (Touch-Sensor) aufgebaut werden kann. Auch der Näherungsdetektor, der durch Anschlie-ßen des Kabelstücks entsteht, ist ein anschauliches Experi-ment. In den beiden übrigen Beispielen kommen ein Licht-sensor und ein Temperaturfühler zum Einsatz.

Unsere MeinungDas Starterkit CY3270 bietet viel für wenig Geld. Die Hardware ist zwar simpel, aber voll funktional. Die FTPC-Bridge kann auch als Programmierschnittstelle für eigene Projekte dienen.Das Ausprobieren der mitgelieferten Beispiele ist eine spannende und lehrreiche Übung. Es könnte durchaus sein, dass sie zum Entwerfen eigener PSoC-Applikationen inspiriert. Auch die Entwicklungsumgebung mit ihrer Routi-nen-Bibliothek und den vordefi nierten Sensor-Schnittstellen verdient ein großes Lob.

(070950)gd

MarktKontakt : Telefon: 0511/3348-436 – Telefax: 0511/3348-481 – [email protected]

Verkäufe Web-Shops

Die Buchung einer Anzeige beeinhaltet

einen kostenlosen Eintrag auf der Website von

Elektor, inclusive eines Links zu Ihrer Seite.

Reservieren Sie jetzt ihre Jahresbuchung

Preisgünstige Bauteile zusätzlich über

4000 Auslaufartikel zum Super-Sonderpreit

www.elcomp.at

Gravuren / Schilder / Frontblenden

www.webgrav.de

Verschiedenes

Entwicklung industrietauglicher

Software und Hardware sowie Elektronik

03303/212166 oder www.jasys.de

www.ibklose.de- Ing.-Büro für Elektronik und Nachrichten-

technik -

VTS – ELEKTRONIK GbRPreiswerter

Leiterplatten [email protected]

Lichtleiter und Zubehörwww.fi ber-shop.de

Leiterplatten-Fertigung

Industrie-Elektronikwww.thale-elektronik.de

Aktive, passive und mechanische Bauteile.

AVR und ARM Mikrocontroller.

Mikrocontrollerboards.

www.embedit.de

Teilesätze, Platinen, programmierteKontroller sowie Cds zu fast allen Elektor-Projekten vom Spezialist.Alle Elektor-Artikel zum Verlagspreis.

Geist Electronic-Versand GmbHTel.: 07720/36673Fax: 07720/36905

Mail: [email protected]: www.geist-electronic.de

Bausätze zu ELEKTOR1986 bis heute!

Ihr zuverlässiger Partner für aktive und passive elektronische Bauteileund Komponenten:

schlanke Preise - fettes AngebotSchnellversand ohne

Mindestumsatz Bauteile - Ersatzteile - Zubehör

Fernbedienungen - ZeilentrafosHDTV DVB-T Sat Audio/Video

Überwachungstechnik und www.Laehn-Versand.de

Anzeigenschluss: 26.02.2008

Erscheinungs termin:19.03.2008

Alles Spule! Drähte, HF-Litzen, Ferrit- und Eisenpulverkerne, Isoliermaterial, Klebebänder,

Tränklacke, Spulenkörper.Know-How-Hotline: Mo-Do, 14-16Uhr

09001101234 0,99€/min www.spulen.com

Heldt-Electronicwww.heldt-electronic.de

10.000.000 Bauteile und Zubehör ab Lager.

Page 72: Elektor 447 - 2008-03 (GER)

praxis steuerung

72 elektor - 3/2008

Eine programmierbare Steuerung auf einer Platine mit isolier-ten Ein- und Ausgängen, LCD und CAN-Bus ist schon keine schlechte Idee. Wenn so ein Board dann auch noch preiswert und dank ECIO-Modul besonders einfach und schnell mittels Flowcode grafisch zu programmieren ist, dann ist es universell einsetzbar und einfach zu handhaben.

SPSUnter einer SPS (Speicherprogrammierbare Steuerung) ver-steht man ein Stück programmierbarer Hardware, mit der man in der Regel Maschinen, Anlagen und Prozesse in industriellen Anwendungen steuert. Auch Rolltreppen und Fahrstühle sind üblicherweise mit SPS ausgerüstet.Kommerzielle SPS gibt es in vielen Leistungsklassen und ihre Programmierung (in Hochsprachen) ist teilweise stark standar-disiert. Unglücklicherweise sind SPS für industrielle Zwecke eher in den oberen Preisregionen angesiedelt und liegen damit für private Zwecke außerhalb eines vernünftigen Budgets.Typische SPS-Befehle ähneln gewöhnlichen Computer-Pro-grammen: Es werden vordefinierte Events abgearbeitet und all die üblichen Kontroll-Strukturen wie bedingte Schleifen, Verzweigungen, Timer, Zähler sowie Events für analoge Wer-te sind verfügbar. Auch ein Logging von Werten/Ergebnissen ist möglich.

Immer wenn ein etwas komplexerer Prozess elektronisch ge-steuert werden soll, ist eine SPS eine gute Wahl. Eine solche Steuerung ist nämlich elektrisch robust, deterministisch und auch in Sachen Konnektivität flexibel.Um eine Steuerung zu programmieren, also eine Sequenz von Ereignissen abzuarbeiten, muss ein passendes Programm geschrieben werden. Nach Debugging und Simulation auf einem PC wird das fertige Programm dann auf den Control-ler der SPS übertragen und ein Stoßgebet Richtung Himmel geschickt.Ein SPS-Programm kann wie andere Software auch editiert, debugged, erweitert, optimiert und natürlich gespeichert wer-den - und es kann genauso unerwartetes Verhalten zeigen...

SchaltungBild 1 beweist, dass eine ECIO-basierte SPS nicht übermä-ßig aufwendig sein muss. Im Einzelnen besteht die Schaltung aus:

ECIODas ECIO-Modul („Easy-Control-IO“) ist das Gehirn der Steue-rung. Es steuert alle auf der Platine vorhandene Peripherie. Die in der Oktober-Ausgabe letzten Jahres [2] vorgestellten ECIO-Module stellen gleichzeitig einen preiswerten Einstieg in die Welt der Mikrocontroller-Programmierung dar. ECIOs gibt es in verschiedenen Ausführungen über den Elektor-On-line-Shop. Bei größeren Stückzahlen gewährt der Hersteller auch entsprechende Rabatte. In unserem Projekt kommt die 40-polige Variante zum Einsatz.

RelaisRelais werden zum Schalten größerer elektrischer Verbraucher verwendet. Die Relais werden dabei (verstärkt von Transisto-ren) durch die ECIO-Pins RB4...RB7 angesteuert. Eine logische „0“ schaltet das entsprechende Relais sowie die zugehörige Kontroll-LED aus und umgekehrt aktiviert eine logische „1“ bei-de Bauteile. Via Relais erreicht man gleichzeitig eine elektri-sche Isolation, sodass auch Verbraucher bei 230 V geschaltet

ECIO-SPSPreiswert, selbst gebaut und mit CAN!Von Ben Rowland (Matrix Multimedia) und Luc Lemmens (Elektor-Labor)

Nun gibt es die erste praktische Anwendung der in der Oktober-Ausgabe vorgestellten Easy-Control-IO-Module. Ein ECIO fungiert dabei gewissermaßen als Gehirn eines „SPS“-Boards mit Relais, optischer Isolation, CAN-Bus und LCD. Die Kombination mit Flowcode macht dieses Board zu einer universellen und leistungsfähigen programmierbaren Steuerung auch für komplexere Projekte. Während der Entwicklungsphase erleichtert ein LCD die Fehlersuche und beim fertigen Projekt erlaubt es die Ausgabe von Statusmeldungen.

Features• CAN-Bus• 4 optoisolierte Eingänge• 4 Relais-Ausgänge• LCD mit 2x16 Zeichen• Flowcode-kompatibel und via PIC18-Hex-Datei

programmierbar• Kostenlose Flowcode-Version für ECIO• USB-Anschluss zur Programmierung

Page 73: Elektor 447 - 2008-03 (GER)

733/2008 - elektor

werden können. Bei jedem Relais sind jeweils alle drei Kontak-te des Umschalters über Schraubklemmen zugänglich.

Optische IsolationDas Board ist über Optokoppler auch am Eingang potential-getrennt. Da die verwendeten Optokoppler senderseitig über zwei antiparallele LEDs verfügen, sind die Eingänge des Boards nicht gepolt. Die Ausgangstransistoren der Optokopp-ler steuern über Serienwiderstände die ECIO-Pins RA0...RA3 an. Da die Kollektoren an VCC liegen, ergibt sich keine Pegel-invertierung. Über die Transistoren T1...T4 werden zusätzlich

noch Kontroll-LEDs für die Eingänge angesteuert. Die Basis-Wi-derstände R2A...R2D dienen gleichzeitig als Pull-Down-Wider-stände für die ECIO-Eingänge. Die Ausgänge der Optokopp-ler schalten durch, wenn die Eingangsspannungen an den zweipoligen Schraubklemmen des Boards etwa 3,5 V über-schreiten. Der eingesetzte vierfache Optokoppler verfügt über eine Spitzen-Isolationsspannung von immerhin 5.000 V.

CANDurch das CAN-Interface (Controller Area Network) kann das Board in CAN-Netzen eingesetzt werden. CAN ist zwar der

Preiswert, selbst gebaut und mit CAN!

TXCAN1

RXCAN2

CLKOUT/SOF3

TX0RTS4

TX1RTS5

TX2RTS6

OSC

27

OSC

18

VSS

9

RX0BF10

RX1BF11

INT12

SCK13

SI14

SO15

CS16

RESET17 VD

D18

IC3

MCP2515

TXD1

VSS

2VD

D3

RXD4

RS

8

CANH7

CANL6

VREF

5

IC4

MCP2551

X1

20MHz

C4

22p

C2

22p

RESET

25V

C7

10u

VDD USB

VDD USB

JP1

2

3

1

K6

1

2

3

4

5

6

7

8 9

10

11

12

13

14

15

16

IC1

TLP620-4

K1

K2

K3

K4

VDD USB

RA0

RA1

RA2

RA3

K9

D1

T1

BC547

VDD USB

D2

T2

BC547

VDD USB

D3

T3

BC547

VDD USB

D4

T4

BC547

VDD USBOI0

OI1

OI2

OI3

1

2

3

4

5

67

8

9

10

11

12

13

1415

16

17

18

19

20

40

39

38

37

36

3534

33

32

31

30

29

28

2726

25

24

23

22

21

VDD USB

RESET

RA0

GND

RA1

RA2RA3

RA4

RA5

RD0

RD1RD2

RD3

RD4

RD5

RD6

RD7

VDD_EXT

RE0

RE1

RE2GND

RC0

RC1

RC2

RC6

RC7

RB0

RB1

RB2RB3

RB4

RB5

RB6

RB7

12

34

56

78

9101112

1314

K5

VDD USB

RC6

RC0

RC1

RC2

RD6RD7

RE0

RE1RE2

RA4

RA5

RESETB40C1500

2

1

4

3 B1

25V

C1

10u

C3

100n

C5

100n

1 3

2

IC2µA78M05CKC

+12V

VDD_EXT

D5

VDD USB

25V

C6

10u

RB1

RB2

RB3

RC7

RB0

VDD USBP1

10k

RD4

RD5

RD0

RD1

RD2

RD3

T5

BC547

D8D6

1N4001Re1

+12VK14

T7

BC547

D12D10

1N4001Re3

+12VK18

T6

BC547

D9

D7

1N4001Re2

+12VK15

T8

BC547

D13

D11

1N4001Re4

+12VK19

RB5RB4

RB7RB6

R7

390R

R8120R

R6220R

R1A

R1B

R1C

R1D

R4A

R4B

R4C

R4D

R5A

R5B

R5C

R5D

R2A R2B R2C R2DR3A R3B R3C R3D

R9A

R9B

R9C

R9D

R10A

R10B

R10C

R10D

OI0

OI1

OI2

OI3

1

2

3

4

5

6

7

89

10

11

12

13

14

15

16

LCD1

VDD USBR11

33R

CA

N H

CA

N L

CONTRAST

NOC

END

NOC

NC

NOC

NC

NOC

NC

ECIO

+9V - +20V

R1 = 4x 4k7R4 = 4x 220R R5 = 4x 220R

R2 = 4x 10kR3 = 4x 330R

R10 = 4x 1k

NC

LC D

isplay

2 x 1

6

NODE

R9 = 4x 2k2

070786 - 11

Bild 1. Schaltung des ECIO-SPS-Boards. Viel I/O mit wenig Hardware.

Page 74: Elektor 447 - 2008-03 (GER)

praxis steuerung

74 elektor - 3/2008

neue Trend bei SPS, doch sind noch nicht viele Boards da-mit ausgerüstet. Dieser Netz-Typ wird vom CAN-Controller MCP2515 in Kombination mit dem Leitungstreiber MCP2551 erschlossen. Die Verbindung von CAN-Controller und ECIO-Modul erlaubt eine SPI-Kommunikation. Ein Interrupt-Pin ist außerdem mit dem ECIO-Pin RB2 und ein Chip-Select-Pin mit dem ECIO-Pin RB3 verbunden. Der CAN-Controller verfügt über seinen eigenen Takt (20-MHz-Quarz). Ein externer CAN-Bus wird via K9 an das Board angeschlossen, bei dem es sich ebenfalls um ordinäre Schraubklemmen handelt. Jumper JP1 muss nur dann gesteckt werden, wenn das Board ein Ende des CAN-Busses darstellt.

LCDZur Ausgabe von Texten während der Entwicklung oder später zur Information des Anwenders wird ein handelsübliches LCD-Modul mit zwei Zeilen à 16 Zeichen verwendet. Das LCD ist

an die ECIO-Pins RD0...RD5 angeschlossen und wird im 4-bit-Modus betrieben. Neben den Daten (D0...D3) wird „RS“ via D4 und das Signal „Enable“ via D5 übertragen. Mit P1 lässt sich der Kontrast der Anzeige einstellen.

StromversorgungHier geht es mit einem 7805 als Spannungsregler-IC in Stan-dard-Beschaltung eher konventionell zu. Der zusätzliche Brückengleichrichter macht die Schaltung verpolungssicher und erlaubt den Betrieb mit einfachen Steckernetzteilen, die Gleich- oder Wechselspannungen um 12 V bei etwa 200 mA liefern.

Um die Übersicht über die Verbindungen des ECIO-SPS-Boards zur Außenwelt und die jeweilige Verknüpfung mit Mikrocontroller-Pins zu wahren, beinhaltet Tabelle 1 eine Zusammenfassung.

T5R9

C7

R10 D8

K2

K4

K3

K1

R11

D13

R5

Re4

P1

T8

D9

T6

T7

D12

Re2

Re3

D4

D3IC1

R1 R3

D1

D5

T4

T3

T2

R2

D2

T1

R4R7

R8

IC3

X1

IC4

C4

C2

R6

D11

JP1

K9

K7

D7

K10

K8

D10

D6K11K6

C1

B1IC2

C3 C5C6

14

Re1

213

K5

1

Bild 2. Die Platine des ECIO-PLC-

Boards ist via Elektor-Online-Shop erhältlich.

Stückliste

Widerstände:R1 = achtpoliges SIL-Array 4 x 4k7*R2 = achtpoliges SIL-Array 4 x 10 k*R3 = achtpoliges SIL-Array 4 x 330 Ω *R4, R5 = achtpoliges SIL-Array 4 x

220 Ω *R6 = 220 ΩR7 = 390 ΩR8 = 120 ΩR9 = achtpoliges SIL-Array 4 x 2k2*R10 = achtpoliges SIL-Array 4 x 1 k*R11 = 33 ΩP1 = 10-k-Trimmpoti* siehe Text

Kondensatoren:C1, C6, C7 = 10 µ/25 V, radialC2, C4 = 22 pC3, C5 = 100 n

Halbleiter:D1..D5, D8, D9, D12, D13 = LED,

3 mmD6, D7, D10, D11 = 1N4001B1 = B80C1500, rundT1...T8 = BC547IC1 = TLP620-4IC2 = 7805IC3 = MCP2515-I/PIC4 = MCP2551-I/P

Außerdem:Re1..Re4 = 12-V-Relais, z.B. Omron

G5LE-1

X1 = 20-MHz-QuarzK1, K4, K9 = zweipolige Schraub-

klemme für Platinenmontage, Raster-maß 5 mm

K5 = 14-poliger PfostensteckerK6 = Buchse zur Stromversorgung für

Platinenmontage, z.B. Digikey CP-002B-ND oder Farnell 224960

K7, K8, K10, K11 = dreipolige Schraub-klemme für Platinenmontage, Raster-maß 5 mm

ECIO = ECIO-40P-Modul (www.elektor.de)

LCD1 = LCD, alphanumerisch 2x16 Zeichen, z.B. Displaytech 162

JP1 = dreipoliger SIL-Pinheader mit Jumper

Platine 070786-1 oder Bauteilsatz 070786-71

Page 75: Elektor 447 - 2008-03 (GER)

753/2008 - elektor

Aufbau

Bild 2 zeigt den Bestückungsplan der Platine. Wie immer kann das Platinen-Layout von der Elektor-Webseite zu diesem Artikel kostenlos herunter geladen werden. Wer nicht besonders auf den Umgang mit Chemikalien steht, der kann die fertige unbe-stückte Platine auch vom Elektor-Online-Shop beziehen.Da keine SMDs verwendet werden, reichen mittlere Lötfer-tigkeiten durchaus für die Bestückung der Platine aus. Etwas Vorsicht ist bei den diversen achtpoligen Widerstands-Arrays angebracht: Drin stecken je vier individuelle Widerstände und eben nicht sieben mit einer gemeinsamen Verbindung, wie sie handelsüblicher sind. Bei Bezugsschwierigkeiten kann man er-satzweise also auch einzelne Widerstände stehend einlöten. Wie immer sollte man die Platine vor dem ersten Anlegen der Versorgungsspannung ausgiebig auf Bestückungsfehler, feh-lerhafte Lötstellen und Lötbrücken überprüfen.

Hardware-Test: I/O & CANDie Überprüfung der Funktion wird durch ein simples und instruktives ECIO-Test-Programm erleichtert. Das zugehörige Flowcode-Listing ist in Bild 3 zu sehen. Nach dem Download kann man es in Flowcode laden und nach einer Simulation einen Compiler-Lauf starten. Wenn alles gut geht, wird das Resultat in das ECIO-Modul übertragen und geschaut, was sich tut.Das Programm enthält zunächst eine allgemeine PIC-Setup-Routine, welche die Ports und Pins des Controllers richtig konfi-guriert. Darin werden die ECIO-Leitungen RB4...RB7 beispiels-weise als Ausgänge definiert. Ansonsten ist das Test-Programm einfach: Eine Spannung am Eingang K1 wird zum Anziehen von Re1 führen. Entsprechend steuert K2 das Relais Re2 usw. Auf dem Display ist einfach die Meldung „Elektor-ECIO-PLC

Board“ (PLC ist der englische Begriff für SPS) zu lesen. Falls nicht, sollte man an P1 (Kontrast) drehen. Mit dieser „Funktio-nalität“ kann man zwar niemand beeindrucken, doch wenn es läuft wie beschrieben, dann funktioniert das Board auch.Im Kasten wird ein CAN-Test-Tool beschrieben, das ebenfalls

Die ECIO-Familie von via USB programmierbaren Mikrocon-trollern stellt gleichzeitig eine einfache Methode dar, Mikro-controller-Technik in eigene Projekte zu integrieren. So ein Modul verhält sich normalerweise wie ein gewöhnlicher Mikro-controller - doch wenn man ein USB-Kabel anschließt und den Reset-Taster betätigt, dann kann man neue Software aufspie-len. Diese zusätzliche Eigenschaft macht ein ECIO-Modul zum preiswertesten USB-kompatiblen PIC-Programmer überhaupt: Ein extra Programmer ist nämlich überflüssig.

Momentan gibt es zwei Ausführungen: Das Modul ECIO-28P und ECIO-40P. Beide ba-sieren mit den Typen 18F2455 und 18F4455 auf Controllern der PICmicro-18-Serie.

Ein ECIO-Modul ist schon mit einem Boot-

loader vorgeladen. Diese Software erlaubt die Übertragung eines neuen Anwendungsprogramms via USB. Man kann die eigentliche Software des Controllers also leicht ohne zusätzli-che Hardware und fast beliebig of verändern. Ein ECIO-Mo-dul ist auch direkt mit den klassischen Hex-Dateien anderer Compiler kompatibel. Man ist nicht zwingend auf Flowcode angewiesen, obwohl die Verwendung dieser grafischen Pro-grammiersprache Technikern sehr entgegenkommt. Trotzdem

kann man problemlos be-währte C-Compiler oder mit MPLAB auch die Ent-wicklungsumgebung von Microchip einsetzen.

ECIO-Module werden also gut durch Software unterstützt und es exis-tiert eine breite Palette an Tools. Hinzu kommt die kostenlose Verfüg-barkeit einer passenden Flowcode-Version.

ECIO - einer der preisgünstigsten PIC-Programmer mit USB

GND

RC1

RC0

/RESET

VDD USB

GND

ECIO40 CONNECTIONS

RA0/AN0

RA1/AN1RA2/AN2

RA3/AN3

RA4/AN4RA5/AN5

RE0/AN5

RE1/AN6RE2/AN7

RD0

RD1RD2

RD3RD4

RD5

RD6RD7

RC7/RX/SDORC6/TX/CK

RB1/AN10/INT1/SCK

RB0/AN12

RB3/AN9

RB2/AN8/INT2

RB5

RB4

RB7RB6

RC2

VDD EXT

EC

IO40P

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

40

39

38

37

36

35

34

33

32

31

30

29

28

27

26

25

24

23

22

21

RC1

RC0

/RESET

VDD USB

GND

ECIO28 CONNECTIONS

RA0/AN0

RA1/AN1RA2/AN2

RA3/AN3

RA4/AN4RA5/AN5

RC7/RX/SDORC6/TX/CK

RB0/AN12

RB3/AN9

RB2/AN8/INT2

RB5

RB4

RB7RB6

RC2

VDD EXT

EC

IO28P

1

2

3

4

5

6

7

8

9

10

11

12

13

14

28

27

26

25

24

23

22

21

20

19

18

17

16

15

RB1/AN10/INT1/SCK

Tabelle 1. Übersicht der Ein- und Ausgänge der ECIO-SPS Relais-Ausgang ECIO-I/O-PinRelais Re1 (K14) RB4Relais Re2 (K15) RB5Relais Re3 (K18) RB6Relais Re3 (K19) RB7Optoisolierte Eingänge ECIO-I/O-Pin / LEDK1 RA0 / D1K2 RA1 / D2K3 RA2 / D3K4 RA3 / D4CAN (Controller) ECIO-I/O-PinSerial Data Out RC7Serial Data In RB0Serial Clock RB1/Interrupt RB2/Chip Select RB3LCD ECIO-I/O-PinD0 RD0D1 RD1D2 RD2D3 RD3RS RD4Enable RD5

Page 76: Elektor 447 - 2008-03 (GER)

praxis steuerung

76 elektor - 3/2008

in der kostenlosen Software enthalten ist. Die beiden Program-me bilden gleichzeitig die Basis für Erweiterungen, mit denen Sie einfach, schnell und ohne Urheberrechte und Patente zu verletzen Ihre eigenen Projekte realisieren können. Die Be-zeichnung der gepackten Datei ist „070786-11.zip“.

SPS-ProgrammierungDie Software zum ECIO-SPS-Board basiert auf dem E-blocks-System und Flowcode – wenn man hier etwas Erfahrung ge-sammelt hat, dürfte der Umgang mit diesem Board kein Pro-blem sein. Und wenn Sie noch keine solche Erfahrung haben: Es gibt sehr viele Informationen dazu im Internet [1], in frühe-ren Ausgaben von Elektor und im Lieferumfang von Flowcode. Die vielleicht interessanteste Nachricht ist aber, dass Hersteller Matrix-Multimedia die Flowcode-Version für ECIO kostenlos zur Verfügung stellt [1].Beim Schreiben von Steuer-Software für das ECIO-SPS-Board kommen die Stärken des Ansatzes von Flowcode besonders zum Tragen: Statt sich mit Syntax-Fehlern herum zu ärgern, kann man auf hoch abstrakter Ebene Flussdiagramme in Soft-ware umsetzen. Flowcode kümmert sich dann um das Über-tragen in Maschinensprache (Compiler) sowie Simulation der Hardware und unterstützt tatkräftig bei der Fehlersuche. Da man normalerweise direkt auf der Ebene von Flussdiagram-men arbeitet, ist die Chance hoch, dass die Software für das ECIO-Board auf Anhieb funktioniert.Hartgesottene und erfahrene Mikrocontroller-Programmierer werden aber dennoch nicht davon abgehalten, den PIC18-Code auf vertraute Weise mit C++-Compilern und derglei-chem zu generieren. Das ECIO-Modul akzeptiert auch ge-wöhnlichen, via Assembler selbst gestrickten Hex-Code. Um diese Dateien zum Board zu schicken, kann man die kosten-losen USB-I/O-Treiber zur Verbindung von ECIO und PC verwenden.

(070786-I)

Weblinks[1] www.matrixmultimedia.com/ECIO-X.php

[2] EasyControl-I/O, Elektor Oktober 2007:

www.elektor.de/easycontrolD

Bild 3. Mit diesem Flowcode-

Programm kann man die Grundfunktionen des ECIO-

PLC-Boards testen.

CAN-TestCAN ist eine gute Wahl zum Austausch von komplexen In-formationen zwischen intelligenten Bus-Teilnehmern. Das in Flowcode geschriebene Test-Programm lauscht im Prinzip lediglich auf ein Echo ausgehender CAN-Messages. Damit kann man die Anzahl der Netzteilnehmer ermitteln oder aber die Netzdistanzen anhand der Echo-Laufzeit ermitteln und andere Dinge mehr.

Das Test-Programm schickt eine spezifische CAN-Message mit der Standard-ID 12 los. Wenn zum Beispiel der Multipro-grammer eine CAN-Message detektiert, dann überprüft er die ID. Wenn diese 12 ist, schickt er ebenfalls eine Message mit der ID 12 los. Solche Messages werden so lange ausgesandt, bis er eine Message mit der ID 12 zurück erhält. Je nach ID-Check bestätigt er dann, ob das Echo erfolgreich war.

Für einen CAN-Test braucht man mindestens zwei Bus-Teil-nehmer. Also entweder zwei ECIO-PLC-Boards oder eines davon und als Kompagnon einen Multiprogrammer, der mit einem E-blocks-CAN-Modul verbunden ist. Ein ECIO-PLC-Board schickt dann die Messages und das Gegenüber lauscht am Bus bis eine vorbestimmte Message eintrifft und antwortet im Erfolgsfalle. Nach dem Einschalten zeigt der CAN-Sender die Meldung „Starte“ auf seinem LCD. Kurz darauf erscheint „Fertig“, wenn das Modul initialisiert ist. Wenn die CAN-Verbindung funktioniert, ist „Message zurück“ zu lesen - andernfalls „Message falsch“.

Page 77: Elektor 447 - 2008-03 (GER)

MitMachen und gewinnen!Unter allen Einsendern mit der richtigen Lösung verlosen wir ein

E-blocks Starter Kit Professional im Wert von

365,75 e

und drei ELEKTOR- Gutscheine im Wert von je 50 e.

Der Rechtsweg ist ausgeschlossen. Mitarbeiter der in der Unternehmensgruppe Segment B.V. zusammengeschlos-senen Verlage und deren Angehörige sind von der Teilnah-me ausgeschlossen.

Die Regeln dieses Rätsels sind ganz einfach zu verstehen: Bei einem Hexadoku werden die Hexadezimalzahlen 0 bis F ver-wendet, was für Elektroniker und Programmierer ja durchaus passend ist. Füllen Sie das Diagramm mit seinen 16 x 16 Käst-chen so aus, dass alle Hexadezimalzahlen von 0 bis F (also 0 bis 9 und A bis F) in jeder Reihe, jeder Spalte und in jedem Fach

einSendenSchicken Sie die Lösung (die Zahlen in den grauen Kästchen) per E-Mail, Fax oder Post an:

Elektor - RedaktionSüsterfeldstr. 25 - 52072 AachenFax: 0241 / 88 909-77 - E-Mail: [email protected]

Als Betreff bitte nur die Ziffern der Lösung angeben!

Einsendeschluss ist der 31. März 2008!

Hexadoku Sudoku für elektroniker

auch in dieser Märzausgabe darf das monatliche hexadoku natürlich nicht fehlen. Lassen Sie den Fernseher mal einen abend aus und setzen Sie sich gemütlich hin. Vielleicht ist das Rätseln sogar mit einer schönen Belohnung verbunden? auf jeden Fall sollten Sie ihre Lösung bei elektor einsenden – denn es warten hier vier Preise auf ihren gewinner: ein e-blocks Starter Kit Professional und drei elektor-gutscheine!

die gewinneR deS januaR-hexadoKuS Stehen FeSt!Die richtige Lösung (siehe unten) ist: D148B.

Das E-blocks Starter Kit Professional geht an: Reinhard Rindt aus Langenstein.

Gutscheine über je 50 € gehen an: Hans-Rudolf Häfliger, Torsten Mahling und Hartwig Wander.

Herzlichen Glückwunsch!

mit 4 x 4 Kästchen (markiert durch die dickeren schwarzen Lini-en) genau einmal vorkommen. Einige Zahlen sind bereits ein-getragen, was die Ausgangssituation des Rätsels bestimmt.Wer das Rätsel löst - sprich die Zahlen in den grauen Kästchen herausfindet - kann wie jeden Monat einen Hauptpreis oder ei-nen von drei Trostpreisen gewinnen!

rätsel infotainment

773/2008 - elektor

Page 78: Elektor 447 - 2008-03 (GER)

infotainment retronik

78 elektor - 3/2008

Von Jean Herman

Dieser Röhrentyp wurde um 1950 entwickelt und war bis in die 70er Jahre hinein in Gebrauch. Man realisierte damit dekadische Auf-/Abwärts-Zähler bei Rechenmaschinen und Zähl-anwendungen aller Art. In der Nuklear-Industrie diente sie als Partikel-Zähler zur Messung von Radioaktivität. Erst neulich kam mir ein altes Digitalvoltmeter in die Hände, das ich reparieren sollte. Der komplette Messvor-gang wurde durch ein zyklisch operierendes Dekatron (eine eingetragene Marke von Erics-son) gesteuert: Null-Abgleich, Messung, Bereichswahl, Anzeige und was sonst noch so anfiel.

FunktionEin so genanntes Doppel-Puls-Dekatron (siehe Bild 1) besteht aus einer zentralen Anode (a) umgeben von zehn Kathoden (k), die von 0 bis 9 nummeriert sind. Zwischen benachbarten Elektro-den befinden sich zwei Transfer-Elektroden, die in der Schaltung mit (A) und (B) bezeichnet sind.

Die Röhre ist mit Gas gefüllt. Bei ausreichender Spannung zwi-schen Anode und den Katho-den ionisiert sich das Gas zufäl-lig an einer Kathode und man kann diese dann leuchten sehen. Um den Lichtfleck zur nächsten Kathode „aufwärts“ zu bewegen, erhält erst die Transfer-Elektrode (A) einen negativen Impuls und dann die Transfer-Elektrode (B). Kommt zuerst (B) und dann (A), dann geht es rückwärts. Um ein solches Dekatron anzusteu-ern, benötigt man also Phasen-verschiebung und daher eine Triode, einen Transistor oder einen Trafo in Kombination mit RC-Gliedern.Hinweis: Das Dekatron von Bild 1 hat

eine andere Anschlussbelegung als der

in der Schaltung verwendete Typ.

AnwendungIrgendwann stieß ich auf ein Dekatron vom Typ GS10D und dachte mir, dass es interessant wäre, so ein Ding wieder zum Leben zu erwecken. Daher ent-warf ich ein anschauliches Zäh-ler-Modul (Bild 2).

StromversorgungDie Röhre benötigt eine Anoden-spannung von 475 V bei 1 mA (und 20 °C). Es ist nicht immer leicht, sie im kalten Zustand zün-den zu lassen. Immerhin hatte das Exemplar gut 50 Jahre auf dem Buckel, sodass es nicht wun-dert, wenn sie sich etwas zickig anstellt. Ein Trafo und ein erster Gleichrichter ergab 250 V. Der Spannungsvervielfacher macht daraus 600 V im Leerlauf. Zur

Die Dekatron-Zählröhre

Ansteuerung der Anzeige die-nen Doppeltrioden vom Typ 6J6. Ihre Heizungen (6,3 V/0,4 A) sind alle in Serie geschaltet und von der 40-V-Wicklung des Tra-fos gespeist.

SteuerspannungenEine weitere Doppeltriode wurde als stark unsymmetrischer astabi-ler Multivibrator (AMV) geschal-tet (250 kΩ/500 pF/500 kΩ und 250 kΩ/100 nF/10 MΩ).

Das ausgekoppelte Anodensi-gnal hat eine Frequenz von ca. 5 Hz, sodass man den wandern-den Lichtpunkt des Dekatrons schön sehen kann. Maximal ver-trägt die Röhre etwa 10 kHz. In Ruhe haben die Transfer-Elektro-den ein Potential von 51 V, was grob dem Spannungsabfall am Arbeitswiderstand einer ionisier-ten Kathode entspricht. Wenn der AMV über den 100-nF-Kon-densator einen negativen Impuls liefert, erhält Elektrode (A) den Impuls sofort, aber Elektrode (B) über den Integrator 51 kΩ/10 nF erst etwas später. Bei dieser Rei-henfolge springt der Lichtpunkt von Kathode n auf Kathode n+1. Wenn man die Signale an den Elektroden (A) und (B) vertauscht, geht es in die andere Richtung.Das Dekatron zeigt diesen Zählvorgang zwar direkt an, doch wenn so eine Röhre in ein Gehäuse eingebaut ist, braucht es eine dezidierte Anzeige. Ich entschied mich der Optik halber zu einer großen Anzeige-Röhre vom Typ ZM1040 mit immer-hin 31 mm hohen Ziffern. Diese Röhre benötigt eine Spannung von 170 V bei einem Strom von 4,5 mA, der durch 22-kΩ- Katho-denwiderstände eingestellt wird. Leider kann das Dekatron das Display nicht direkt ansteuern. Aus diesen Gründen ist pro Zif-fer eine halbe Doppeltriode zwi-schengeschaltet. An den Katho-denwiderständen des Dekatrons fallen bei Ionisierung etwa 40 V ab. Die Kathoden der steuern-den Doppeltrioden sind über eine Z-Diode auf 24 V gelegt. Dies ergibt zwei Zustände: Kein Strom am Kathodenwiderstand des Dekatron ergibt eine Gitter-spannung einer Doppeltrioden-hälfte von -24 V und die ange-steuerte Ziffer bleibt dunkel. Ist die Kathode des Dekatrons aber ionisiert, liegt die zugehörige Tri-oden-Gitter-Spannung bei +15V und der fließende Strom lässt die angesteuerte Ziffer leuchten. Die Ionisierungsspannung der Anzeige-Röhre liegt bei 140 V. Der fließende Strom errechnet sich zu: 250 V – (140 V + 24 V) = 81 V/22 kΩ = 4 mA.All dieser Aufwand war für eine einzige Dezimalstelle notwendig. Man stelle sich einen sechsstel-ligen Zähler vor! Der Energie-

12

k5

k4

k2

k1k0

k9

k8

k7

k6

k3

27...30

max. 46.25

32...

36

24(10x) gdB

(10x) gdA

3

4

5678

9

10

11

12

13

aa

1

Page 79: Elektor 447 - 2008-03 (GER)

793/2008 - elektor

Retronik ist eine monatliche Rubrik, die antiker Elektronik und legendärer ELEKTOR-Schaltungen ihre Referenz erweist. Beiträge, Vorschläge und Anfragen schicken Sie bitte an: [email protected]

verbrauch für die Anzeige von sechs Stellen dürfte locker bei 25 W liegen.Es gibt (gab) mehrere Hersteller und etliche Typen von Dekatrons auf dem Markt:

• Ericsson: GS10C (4 kHz), GC10D (20 kHz)• Philips: Z502S (4 kHz), Z504S (5 kHz) und Z505S (50 kHz)

• Hivac: GS10D (10 kHz), GCA10G (5 kHz) und GS10H (5 kHz)• Elesta: ECT100 (100 kHz) und EZ10B (100 kHz)• Cerberus: Der Typ GZ22 konnte die Anzeigen GA11 und GA21 treiben• Beeston: VS10K (Trochotron mit 200 kHz) und die Anzeige GR10H

PS. Ich bin immer noch auf der Su-che nach Dekatrons, da ich damit ein Digital-Voltmeter zu Demon-strationszwecken bauen möchte.

Wenn Sie, lieber Leser, so eine Röhre besitzen, dann wäre es sehr freundlich, wenn Sie mich über Elektor ([email protected]) kontaktieren würden.

(070861-I)

Links

nixietube.info/Nixie.htmlwww.wps.com/projects/decimal-tubes/index.htmlwww.jogis-roehrenbude.de/Roehren-Geschichtliches/Nixie/GC10B.htmhttp://www.jogis-roehrenbude.de/Roehren-Geschichtliches/Nixie/Dekatron-EZ10/EZ10A.htm

3

7

5

2

4

1

6

6J6

3

7

6

1

4

2

5

6J6

3

7

6

1

4

2

5

6J6

3

7

6

1

4

2

5

6J6

3

7

6

1

4

2

5

6J6

3

7

6

1

4

2

5

6J6

1M 1M 1M 1M 1M 1M 1M 1M 1M 1M

22k

22k

22k

22k

22k

22k

22k

22k

22k

22k

+250V

ZM1040

13 12 11 104 3 9 7 6 5

2

47k

47k

47k

47k

47k

47k

47k

47k

47k

47k

DEKATRON GS10D

10

12

+500

-100

11

9 8 7 61 5 4 3 2

A

B

t

220k

+600V

250k

250k

500p 100n

100n

500k

10M

47k

51k

51k

100k

BZY51

BYV95

10n

+250V

230V

070861 - 11

BZYC24

+24V

+51V

10025V

25250V

4

400V

4

400V

1N4007

filament

6 tubes 6J6en série

1N40071N4007

4

400V

4

400V

+600V

+250V

50VA

250mA

200V

180V

160V

140V

125V

40V

0V

+500

-100

Anzeige

2

Page 80: Elektor 447 - 2008-03 (GER)

80

Starke StückeDie ganze Welt der Elektronik in einem Shop!

Büch

er Burkhard Kainka in Top-Form

Software Defi ned RadioIm Mai 2007 wurde von Elektor das „Software Defi ned Radio mit USB-Schnittstelle“ vorgestellt.

Ziel war ein möglichst einfacher Empfänger, der durch den Einsatz geeigneter Software über-

zeugende Empfangsergebnisse liefert. Schon nach wenigen Monaten hatte dieser neue

Empfänger eine weite Verbreitung gefunden. Zahlreiche Software-Autoren unterstützten das

Projekt. Die Vielfalt der Möglichkeiten erschwert jedoch die Orientierung.

Top-Autor Burkhard Kainka gibt mit diesem Buch einen Überblick über Aufbau, Software und

Bedienung des SDR. Außerdem stellt er Selbstbauprojekte vor, die es erlauben, mit geringsten

Kosten eigene Empfänger zu entwerfen; denn das Thema entwickelt sich laufend weiter.

174 Seiten (kart.) • ISBN 978-3-89576-192-8€ 29,80 • CHF 50,70

Preisänderungen und Irrtümer vorbehalten!

SHOP BÜCHER

elektor - 03/2008

NEU! Neues vom Top-Autor Burkhard Kainka

Basiskurs R8C/13Mit dem Dezemberheft 2005 stellte die

Firma Glyn allen Elektor-Lesern eine Pro-

zessorplatine mit dem R8C/13 und der

nötigen Software zur Verfügung. Elektor

war damit die erste Elektronik-Zeitschrift

in Deutschland, die ihren Lesern ein kos-

tenloses und vollständiges Mikrocontrol-

ler-System überreichte. Dieses Buch gibt

einen Überblick über den 16-bit-R8C;

es erleichtert dem Einsteiger die ersten

Schritte und erschließt dem erfahrenen

Anwender weitere Anwendungsbereiche.

231 Seiten (kart.) • ISBN 978-3-89576-177-5 € 39,80 • CHF 67,70

inkl. CD-ROM

Der einzig wahre Realist

Computer VisionComputer Vision ist das wohl spannendste

Gebiet der Bildverarbeitung und die Zahl

der Anwendungen in der Robotik, Automa-

tisierungstechnik und Qualitätssicherung

nimmt stetig zu. Leider gestaltet sich der

Zugang zu diesem Forschungsbereich

bisher nicht einfach. Interessierte müssen

sich zunächst durch viele Bücher, Publika-

tionen und Software-Bibliotheken arbei-

ten. Mit dem vorliegenden Buch fällt der

Einstieg dagegen leicht.

319 Seiten (geb.) • ISBN 978-3-89576-165-2 € 42,80 • CHF 72,80

ELEK DU0803 Shop.indd Sec1:80 04-02-2008 13:10:23

Page 81: Elektor 447 - 2008-03 (GER)

81

Weitere Informationen zu unseren Produkten sowie das gesamte Ver-lagssortiment fi nden Sie auf der neu gestal-teten Elektor-Website:

www.elektor.deElektor-Verlag GmbH

Süsterfeldstraße 25

52072 Aachen

Tel. +49 (0)241 88 909-0

Fax +49 (0)241 88 909-77

E-Mail: [email protected]

03/2008 - elektor

Schluss mit Phonen und Simsen

Java ME fürs Handy Viele Handys verfügen über eingebaute

Zusatzfunktionen wie GPS-Navigation

oder MP3-Player. Eine der interessan-

testen Zusatzfunktionen ist die Möglich-

keit der Java-Programmierung. Hiermit

lassen sich gerade in den Bereichen Elek-

tronik und Computertechnik viele Anwen-

dungen fi nden, die ein Mobiltelefon zum

praktischen Helfer für den Laboralltag

machen.

203 Seiten (kart.) • ISBN 978-3-89576-174-4€ 29,80 • CHF 50,70

Von Mikro zu Makro

Programmiertechniken für AVR-MikrocontrollerDieses neue Buch behandelt Software-

techniken, die es gestatten, auch anspruchs-

vollere Programme für AVR-Mikrocontrol-

ler zu entwickeln. Im ersten Teil wird auf

die Harvard-Architektur der Controller

und die daraus resultierenden Program-

miertechniken eingegangen. Im zweiten

Teil des Buches wird die Arithmetik der

Controller analysiert.

214 Seiten (kart.) • ISBN 978-3-89576-176-8€ 39,80 • CHF 67,70

„Test... 1, 2, 3... Test“

Mikrofone in Theorie und Praxis

Das Geheimnis des guten Klangs liegt im

Zusammenspiel von Mikrofon, Aufnahme-

raum und Instrument. Das richtige Mikrofon

am richtigen Ort ist der Schlüssel zur ge-

lungenen Aufnahme. Dieses Buch vermit-

telt die Grundlagen von Mikrofontechnik

und Studioakustik sowie die Anwendung

im Tonstudio, auf der Bühne und bei der

Filmtonproduktion.

278 Seiten (kart.) • ISBN 978-3-89576-189-8€ 34,80 • CHF 59,20

Überarbeitete

und erweiterte

Neuaufl age

Neues vom Top-Autor Hans-J. Geist

Photovoltaik-AnlagenDieser Ratgeber wendet sich an alle, die

sich für die Technik, Planung, Montage

und den Profi t von Solarstromanlagen in-

teressieren. Angefangen mit den Grund-

lagen der solaren Stromerzeugung über

die Funktion und Dimensionierung von

Leitungen, Wechselrichtern, Ladereglern

und Akkus bis hin zu Photovoltaik-Gene-

ratoren, die Sie für den Einsatz in netz-

gekoppelten Anlagen oder Inselanlagen

benötigen, enthält das Buch viele wichtige

und gewinnbringende Informationen.

160 Seiten (kart.) • ISBN 978-3-89576-191-1€ 19,90 • CHF 33,90

Bestseller!

Perfekte Audioqualität garantiert

High-End-RöhrenverstärkerRöhrenverstärkern klingen lebendig, durch-

zeichnet, produzieren räumliche Tiefe, ihr

Klangbild ist unaufdringlich angenehm,

und im Hinblick auf die entwickelte Dynamik

scheinen sie keinerlei Einschränkungen zu

kennen. In einer systematisch-theoretischen

Untersuchung geht der Autor den Ursachen

dieser Kennzeichen nach. Die Kopplung

zwischen Endröhren und Ausgangsüber-

tragern wird mit der erforderlichen Tiefe

dargestellt. Die formulierten Stabilitätsbe-

dingungen müssen moderne, hochwertige

Verstärker mindestens erfüllen.

415 Seiten (kart.) • ISBN 978-3-89576-182-9 € 54,00 • CHF 91,80

ELEK DU0803 Shop.indd Sec1:81 04-02-2008 13:10:31

Page 82: Elektor 447 - 2008-03 (GER)

SHOP CD- & DVD-ROMs, BAUSÄTZE & MODULE

82

Surround-Light(Elektor Februar 2008)

Einige Flachbildschirme von Philips

sind mit einer Hintergrundbeleuchtung

erhältlich, deren Farbe sich kontinuier-

lich dem Bildinhalt anpasst. Leider gibt

es noch keine Fernseher von anderen

Herstellern oder auch Computermoni-

tore, welche dieses attraktive Feature

aufweisen. Mit diesem Selbstbau-

System kann man den gleichen Effekt

erreichen. Es eignet sich hervorragend

für PC-Monitore und wartet mit einem

sehenswerten Ergebnis auf!

Platine mit SMD-Teilbestückung + Gehäuse

Art.-Nr. 070491-91 • € 169,00 • CHF 287,30

NEU!

Preisänderungen und Irrtümer vorbehalten!

CD- &

DVD

-ROM

sBausätze & M

oduleSHOP CD- & DVD-ROMs, BAUSÄTZE & MODULE

elektor - 03/2008

Refl ow Control(Elektor Dezember 2007)

Wie woanders auch müssen im Elek-

tor-Labor immer häufi ger SMDs gelötet

werden. Der im Januar 2006 in Elek-

tor beschriebene SMD-Lötofen bestand

aus einem handelsüblichen Mini-Pizza-

Backofen und einer nachzurüstenden

elektronischen Regelung. Zahlreiche

Leserreaktionen bestätigten das hohe

Interesse an diesem Projekt. Mit dem

„Refl ow Control“ bieten wir Ihnen eine

neue Regelelektronik an.

Schnell-Bausatz mit 2 fertig bestückten Platinen sowie Temperatursensor, Einbau-steckern, Netzschalter, Kabel + Gehäuse

Art.-Nr. 060234-91 • € 249,00 • CHF 423,30

Alle Elektor-Artikel der “90er-Jahre” auf DVD

Elektor-DVD 1990-1999Diese DVD-ROM enthält alle Elektor-Aus-

gaben der Jahr gänge 1990 bis 1999 in

digitaler Form (komplett und in gleicher

Ansicht wie die Printausgabe) im druck-

fähigen PDF-Format – mit allen Themen

im Original-Layout. Ideal zum Archivie-

ren, Lesen, Ausdrucken und Durchsu-

chen. Ein Muss für jeden Elektor-Leser!

Zusätzlich fi nden Sie gratis auf dieser

DVD die komplette CD-ROM-Reihe

„The Elektor Data sheet Collection 1 bis 5“

(im Wert von über € 90,-) mit origi-

nalen und vollständigen Datenblättern

zu Halb leitern, Speicherchips, Mikro-

controllern u. a.

ISBN 978-3-89576-179-9 • € 89,00 • CHF 151,30

Alle Artikel

von 2007 auf

CD-ROMCO2-Messer(Elektor Januar 2008)

CO2 ist nicht nur eine Gefahr fürs Klima,

sondern auch ein wichtiger Faktor für die

Luftqualität in Büro- und Wohnräumen,

der oft nicht beachtet wird. Eine zu hohe

CO2-Konzentration führt zu Ermüdungs-

erscheinungen, Konzentrationsstörungen

und auch zu Kopfschmerzen. Mit diesem

CO2-Messer lässt sich die Kohlendioxid-

Konzentration in der Luft einfach ermit-

teln. Ein Mikrocontroller überwacht den

Messwert und kann bei Überschreiten

eines Grenzwerts einen Alarm auslösen

oder ein Belüftungssystem einschalten.

Bausatz mit allen Bauteilen inkl. Haupt-platine, Sensor-Platine mit Sensor, progr. Controller ATtiny26 und Display

Art.-Nr. 070802-71 • € 149,00 • CHF 253,30

Aus der Longseller-Reihe

Elektor-CD 2007Die neue Elektor-CD 2007 enthält alle

Elektor-Beiträge des Jahrgangs 2007.

Sie verfügt über eine sehr übersichtlich

gestaltete HTML-Benutzeroberfl äche, die

archivumfassende Inhalts übersichten

und Recherchen ermöglicht.

ISBN 978-90-5381-218-1 • € 26,50 • CHF 45,10

Volle Werkzeugkiste

Ethernet ToolboxDiese neue CD-ROM enthält Datenblät-

ter von ethernetfähigen Mikroprozes so-

ren, Mikrocontrollern, Hubs, Switches,

Umsetzern aller Hersteller. Neben der

technischen Dokumentation, wie z. B.

application notes, Protokolle (fi eld bus,

TCP/IP, usw.) für Netzwerkverbindungen

mit den Normen IEEE 802.3 und natür-

lich 802.11 fi nden Sie auch praktische

Tools, um sofort arbeiten zu können. Au-

ßerdem umfasst die CD-ROM alle Elek-

tor-Artikel zum Thema Ethernet (inkl.

Mini Web-Server) mit Platinen layout und

Software.

ISBN 978-90-5381-214-3 • € 27,50 • CHF 46,80

Topseller!

ELEK DU0803 Shop.indd Sec1:82 04-02-2008 13:10:35

Page 83: Elektor 447 - 2008-03 (GER)

83

BestsellerLie

ferp

rogr

amm

Elektor-Verlag GmbHSüsterfeldstraße 25, 52072 AachenTel. +49 (0)241 88 909-0Fax +49 (0)241 88 909-77E-Mail: [email protected]

Büch

er

Basiskurs R8C/13ISBN 978-3-89576-177-5 ............... € 39,80 • CHF 67,70

Photovoltaik-AnlagenISBN 978-3-89576-191-1 ............... € 19,90 • CHF 33,90

Visual BasicISBN 978-3-89576-178-2 .............€ 59,00 • CHF 100,30

High-End-RöhrenverstärkerISBN 978-3-89576-182-9 ............... € 54,00 • CHF 91,80

Computer VisionISBN 978-3-89576-165-2 ............... € 42,80 • CHF 72,80

Elektor-CD 2007ISBN 978-90-5381-218-1 ............... € 26,50 • CHF 45,10

ECD 4ISBN 978-90-5381-159-7 ............... € 24,50 • CHF 41,70

Elex-DVDISBN 978-3-89576-164-5 ............... € 23,00 • CHF 39,10

Ethernet-ToolboxISBN 978-90-5381-214-3 ............... € 27,50 • CHF 46,80

Elektor-DVD 1990-1999ISBN 978-3-89576-179-9 ............. € 89,00 • CHF 151,30

USB-FlashboardArt.-Nr. 070125-71 .......................... € 52,50 • CHF 89,30

Kompakter OBD-2-Analyser (Bausatz)Art.-Nr. 070038-71 ........................ € 79,95 • CHF 136,00

CO2-MesserArt.-Nr. 070802-71 ...................... € 149,00 • CHF 253,30

Surround-LightArt.-Nr. 070491-91 ...................... € 169,00 • CHF 287,30

Vierkanal-Logik-AnalysatorArt.-Nr. 060092-71 ...................... € 112,50 • CHF 191,30

Baus

ätze

& M

odul

e

1

2

3

4

5

1

2

3

4

5

1

2

3

4

5

Bestellen Sie jetzt einfach und bequem online unter www.elektor.de/shop oder mit der portofreien Bestellkarte am Heftende!

CD- &

DVD

-ROM

s

03/2008 - elektor

März 2008 (Nr. 447)+++ Das Lieferprogramm zu dieser Ausgabe fi nden Sie auf www.elektor.de +++

Februar 2008 (Nr. 446)LEDBUS-System070459-1 .........Platine (Leistungsmodul) ............................siehe www.thePCBshop.com070459-2 .........Platine (Zentraleinheit) ...............................siehe www.thePCBshop.com070459-41 .......Prog. PIC12F638-I/SN (Leistungsmodul) .........................................4,50070459-42 .......Progr. ATmega32-16PC (Zentrale) .................................................19,95TV-Light070487-1 .........Platine ............................................................................................29,95070487-41 .......Prog. PIC18F4550 ...........................................................................17,50070487-42 .......Prog. PIC16F628 .............................................................................14,50070487-81 .......Software-CD .....................................................................................7,50Surround-Light070491-1 .........Hauptplatine ..................................................................................29,95070491-2 .........LED-Platine ......................................................................................6,95070491-91 .......Platine mit SMD-Teilbestückung + Gehäuse ...............................169,00LED-Ringblitz070612-1 .........Platine .........................................................siehe www.thePCBshop.com070612-41 .......Prog. PIC16F628 .............................................................................14,50RGB-LED-Stimmungslicht070892-1 .........Platine (Lumiled REBEL LED) ......................siehe www.thePCBshop.com070892-2 .........Platine (Osram Golden Dragon LED) ..........siehe www.thePCBshop.com070892-3 .........Platine (CREE XLAMP LED) ..........................siehe www.thePCBshop.com

Januar 2008 (Nr. 445)CO2-Messer070802-1 .........Platine ............................................................................................19,95070802-41 .......Progr. Controller ATtiny26 ................................................................9,95070802-71 .......Bausatz mit allen Bauteilen inkl. Hauptplatine, Sensor-Platine mit Sensor, progr. Controller ATtiny26 und Display ......................149,00070802-81 Software-CD .....................................................................................7,50Anti-Standby-Switch070797-1 .........Platine ............................................................................................19,95070797-41 .......Progr. Controller ATtiny25 ................................................................7,50DC-Power-Meter070559-1 .........Platine ............................................................................................12,95070559-41 .......Progr. Controller ATmega8-16P......................................................12,50Steuerelektronik für Energiesparlampen070638-71 .......Platine mit IC FAN7710N und 2,5-mH-Spule ..................................19,95

Dezember 2007 (Nr. 444)Refl ow Control060234-91 .......Schnell-Bausatz mit 2 fertig bestückten Platinen sowie Temperatur- sensor, Einbausteckern, Netzschalter, Kabel + Gehäuse ..............249,00AVR-Webserver060257-1 .........Platine ............................................................................................13,95060257-41 .......Progr. Controller ATmega644 .........................................................19,95Bohrmaschinen-Controller060291-1 .........Platine .........................................................siehe www.thePCBshop.comWeihnachtsblinker010032-91 .......Bausatz .............................................................................................5,25LED-Tauchlampe070011-1 .........Platine .........................................................siehe www.thePCBshop.com

November 2007 (Nr. 443)Datenakquisition über USB070148-1 .........Platine ............................................................................................13,75070148-41 .......Progr. PIC18F4550 DIP40 ...............................................................22,50070148-81 .......Software-CD .....................................................................................7,50USB-Flashboard070125-1 .........Platine ............................................................................................25,95070125-71 .......Bausatz mit allen Bauteilen inkl. Platine ...........................................52,50070125-81 .......Software-CD .....................................................................................7,50Telefon-Umschalter060288-1 .........Platine .........................................................siehe www.thePCBshop.com

für Elektroniksteuerungen u. Entwicklung

ELEK DU0803 Shop.indd Sec1:83 04-02-2008 13:10:44

Page 84: Elektor 447 - 2008-03 (GER)

ElEktor April 2008 erscheint am 19. März 2008.ElEktor gibt es im Bahnhofsbuchhandel, Elektronik-Fachhandel, an ausgewählten kiosken und garantiert beim Presse-Fachhändler.

Ein Verzeichnis finden Sie unter: http://www.blauerglobus.de Sie können ElEktor auch direkt bei www.elektor.de bestellen.Änderungen vorbehalten!

Abo-Service: Marleen Brouwer, Riet MaussenE-Mail: [email protected]

Bestellannahme und Bestellservice: Peter CustersE-Mail: [email protected] Tel. +49 241 88 909-66

GeschäftszeitenMontag – Donnerstag von 08:30 bis 17:00 UhrFreitag von 08:30 bis 12:30 UhrTel. +49 241 88 909-0Fax +49 241 88 909-77

Unser Kundenservice berät Sie bei allen Fragen zu Bestellungen, Lieferterminen und Abonnements. Änderungen, Reklamationen oder besondere Wünsche (wie z. B. Geschenkabonnement) richten Sie ebenfalls an den Kundenservice. Vergessen Sie bitte nicht, Ihre Kundennummer anzugeben – falls vorhanden.

Technische Fragen bitten wir per E-Mail an [email protected] zu richten.

EinzelheftDeutschland e 6,70Österreich, Belgien, Luxemburg e 7,35Schweiz CHF 12,90

Jahresabonnement-StandardDeutschland e 69,95Österreich, Belgien, Luxemburg e 76,00Schweiz CHF 134,00Andere Länder e 92,00

Jahresabonnement-PLUSDeutschland e 79,95Österreich, Belgien, Luxemburg e 86,00Schweiz CHF 157,00Andere Länder e 102,00

ProbeabonnementDeutschland e 12,50Österreich, Belgien, Luxemburg e 12,50Schweiz CHF 22,00Andere Länder e 12,50 (zzgl. Porto)

Studentenabo-StandardDeutschland e 55,95Österreich e 60,80Schweiz CHF 107,20

Studentenabo-PLUSDeutschland e 65,95Österreich e 70,80Schweiz CHF 130,20

Upgrade zum Abo-PLUSAlle Länder e 10,00Schweiz CHF 23,00

Jahres- und Studentenabonnements (11 Hefte) dauern immer 1 Jahr und verlängern sich automatisch um weitere 12 Monate, wenn nicht spätestens 2 Monate vor Ablauf schriftlich gekündigt wird.

Änderungen und Irrtümer vorbehalten.

BankverbindungenCommerzbank AachenKonto 1 201 102 (BLZ 390 400 13)IBAN/BIC: DE89 3904 0013 0120 1102 00/COBADEFF

Postgiro KölnKonto 229 744-507 (BLZ 370 100 50)IBAN/BIC: DE17 3701 0050 0229 7445 07/PBNKDEFF

Bestellungen & Abos für ÖsterreichElektor-Verlag GmbHSüsterfeldstraße 25, 52072 AachenPeter CustersE-Mail: [email protected]

electronics worldwide

USB-nach-S/PDIF-KonverterNicht jede PC-Soundkarte verfügt über einen gut klingenden A/D-Wandler, und das Gleiche gilt auch für die Soundchips auf PC-

Mainboards. Für eine qualitativ hochwertige Wiedergabe digitaler Audiosignale über den Computer ist ein guter externer D/A-Umsetzer noch immer eine der besten Lösungen. Der Ausgang des D/A-Wandlers kann dann mit dem (analogen) Eingang

der vorhandenen HiFi-Anlage verbunden werden.Wir stellen im nächsten Heft eine ideale Lösung für Audio-Anlagen vor, die über einen digitalen S/PDIF-Eingang und somit über einen eigenen (hochwertigen) Audio-DAC verfügen. Am PC erfolgt der Anschluss an den USB-Port. Der

Ausgang des USB/S/PDIF-Wandlers kann dann direkt mit dem digitalen Eingang der Audioanlage verbunden werden, so dass Soundkarte oder Soundchips des PCs keinerlei Einfluss auf die Klangqualität haben.

Universeller Domotik-ServerIm Mittelpunkt dieses Projekts steht eine Platine mit einem Coldfire-Mikrocontroller von Freescale mit zugehöriger PC-Software, die ein LAN-Interface für Mess- und Steuerzwecke darstellt. Dieses Board ermöglicht ein Fernschalten und Fernsteuern über ein Netzwerk oder sogar über das Internet. In Zusammenarbeit mit Freescale stellen wir die Controller-Platine mit 32-bit-Technologie, kostenloser Software und einem preiswerten Hardware-Kit vor. Die verfügbaren Tools erlauben es Ihnen, das System mit eigenen Funktionen zu erweitern und eigene Anwendungen zu realisieren. Im ersten Teil beschreiben wir die Hardware und den optionalen Turbo-BDM-Programmer für Coldfire-Controller.

PaX, eine Audio-Endstufe mit „Fehlerkorrektur“Die meisten heutigen NF-Endstufen verwenden eine “Über-alles-Gegenkopplung”, um Verzerrungen und Ausgangsimpedanz so niedrig wie möglich zu halten. In der Audiowelt ist diese (sehr effektive) Methode allerdings nicht unumstritten, weil nach Meinung der einschlägigen Experten eine starke Gegenkopplung die Klangqualität auch beeinträchtigen kann.Im nächsten Heft stellen wir einen Verstärker vor, die ein ganz anderes Prinzip verwendet, nämlich eine Fehlerkorrektur („error correction“). Dieses Konzept wurde bereits 1984 durch Malcolm Hawksford beschrieben, aber bis jetzt noch nicht praktisch ausgeführt. Das ändert sich mit dem Selbstbau-Projekt, das Sie in den nächsten beiden Elektor-Ausgaben verfolgen können. Der neuartige Verstärker weist bemerkenswert gute Eigenschaften auf und ist im Vergleich zu Verstärkern mit konventioneller Gegenkopplung außergewöhnlich stabil.

info & markt vorschau

84 elektor - 3/2008

Page 85: Elektor 447 - 2008-03 (GER)

Diesen S

treifen an den oberen S

treifen kleben!

Elektor-Bestellkarte03/2008

(11 Hefte / inkl. D

oppelheft Juli/August) pünktlich und zuverlässig frei H

aus beziehen*. Im

Vergleich zum

Einzelheftkauf am

Kiosk spare ich beim

Standard-A

bonnement e 8,95

(bei der PLU

S-V

ariante sogar mehr als e 30,-).

Als D

ankeschön erhalte ich den attraktiven 1 GB

MP

3-Player (sofort nach Z

ahlung der A

bonnements rechnung) gratis zugeschickt.

Zah

lun

gsw

eise R

echnung B

ankeinzug

Bank

Konto

BLZ

Datum

, Unterschrift

*Das A

bonnement verlängert

sich automatisch um

12 Monate,

wenn nicht spätestens zw

ei M

onate vor Ablauf schriftlich gekündigt w

ird.**D

iese CD

-RO

M w

ird Ihnen sofort nach E

rscheinen (F

ebruar 2009) zugeschickt.

ich m

öch

te Elekto

r kenn

enlern

en!

Ich erh

alte die n

ächsten

3 Au

sgab

en fü

r nu

r g 12,50 p

ün

ktlich u

nd

zuverlässig

frei Hau

s*.

Wen

n S

ie inn

erhalb

von

1 Wo

che n

ach E

rhalt d

er dritten

A

usg

abe n

ichts vo

n m

ir hö

ren, m

öch

te ich E

lektor im

Jah

resabo

nn

emen

t für n

ur g 69,95 w

eiter bezieh

en.

*Dieses A

ngebot gilt nur, w

enn Sie w

ährend der letzten 12 M

onate noch nicht A

bonnent waren.

Ich bestelle folgende Elektor-P

rodukte:

Bezeich

nu

ng

Preis Anzahl

Gesamtpreis

Surro

und-L

ight

e 169,00

Softw

are

Defin

ed R

adio

e

29,80

Elektor-C

D 2007

e 26,50

CO

2 -Messer

e 149,00

Reflow

Control

e 249,00

Basiskurs R

8C/13

e 39,80

Ele

kto

r-Gesa

mtk

ata

log 2

008

zzg

l. Po

rto- u

nd

Versan

dko

sten

g 5,0

0

GE

SA

MTB

ETR

AG

g

Tragen

Sie b

itte Ihre A

nsch

rift auf d

er Rü

ckseite ein! D

iesen Streifen an den unten stehenden

Streifen kleben!

Datu

m: U

nte

rschrift:

Ja,

ich m

öch

te Elekto

r im Jah

resabo

nn

emen

tJa,

Jahresab

on

nem

ent-S

tand

ard fü

r nu

r g 69,95

Jahresab

on

nem

ent-P

LU

S (in

kl. Jahrg

ang

s-CD

-RO

M 2008**) fü

r nu

r g 79,95

Bitte w

ählen Sie Ihr Jahresabonnem

ent aus:

03/08 03/08

G3078 E

ww

w.elektor.de Februar 2008 (D

) 6,70 • C

HF 12,90 • (A

, B, L)

7,35

electronics w

orldw

ide

Surround Light

für PC und TV

Uni-G

uideE-Technik auf neuen W

egenLED-Ringblitz für M

akro-FotosBussystem

für LED-BeleuchtungGehackt & gecrackt: Philips LivingColors

NE

U

NE

U

NE

U

(gilt nur für D)

Zah

lun

gsw

eise R

echnung B

ankeinzug

Bank

Konto

BLZ

Datum

, Unterschrift

(gilt nur für D)

ELE

K D

U0803 kaart.indd 1

04-02-2008 13:08:29

Page 86: Elektor 447 - 2008-03 (GER)

Ford

ern

Sie

jetz

t den n

euen E

lekto

r-G

esa

mtk

ata

log 2

00

8 G

RATIS

an!

Inne

rhal

b

Deu

tsch

land

s

kein

Por

to

nötig

!

Ant

wor

t

Ele

kto

r-V

erla

g G

mb

HS

üst

erfe

ldst

raß

e 25

5207

2 A

ach

en

Hie

r is

t m

ein

e A

nsc

hri

ft:

Nam

e, V

orna

me

Str

aße,

Nr.

PLZ

, Ort

Land

Kd-

Nr.

Tele

fon

E-M

ail

Ant

wor

t

Ele

kto

r-V

erla

g G

mb

HS

üst

erfe

ldst

raß

e 25

5207

2 A

ach

en

Hie

r is

t m

ein

e A

nsc

hri

ft:

Nam

e, V

orna

me

Str

aße,

Nr.

PLZ

, Ort

Land

Kd-

Nr.

Tele

fon

E-M

ail

Inne

rhal

b

Deu

tsch

land

s

kein

Por

to

nötig

!

Ant

wor

t

Ele

kto

r-V

erla

g G

mb

HS

üst

erfe

ldst

raß

e 25

5207

2 A

ach

en

Inne

rhal

b

Deu

tsch

land

s

kein

Por

to

nötig

!

Hie

r is

t m

ein

e A

nsc

hri

ft:

Nam

e, V

orna

me

Str

aße,

Nr.

PLZ

, Ort

Land

Kd-

Nr.

Tele

fon

E-M

ail

Fax

+49

(0)2

41 8

8 90

9-77

E-M

ail:

vert

rieb

@el

ekto

r.d

e

Der

Kat

alo

g k

ann

au

ch u

nte

rw

ww

.ele

kto

r.d

e/ka

talo

g a

ls P

DF

-D

atei

her

un

terg

elad

en w

erd

en.

Büch

er

• C

D-R

OM

s •

DV

Ds

Sond

erh

eft

e •

E-b

locks

Bausä

tze •

Mod

ule

DE DEDE

ELE

K D

U08

03 k

aart

.indd

2

04-0

2-20

08

13:0

8:47

Page 87: Elektor 447 - 2008-03 (GER)

873/2008 - elektor

INSERENTENVERZEICHNIS MÄRZ 2008

Atlantik Elektronik . . . . . . . www.atlantikelektronik.com . . . . 11

Beta-Layout . . . . . . . . . . . . www.pcb-pool.com . . . . . . . . . . . 14

Cadsoft Computer . . . . . . . www.cadsoft.de . . . . . . . . . . . . . . 15

Decision-Computer . . . . . . www.decision-computer.de . . . . . 27

EMIS . . . . . . . . . . . . . . . . . www.emisgmbh.de . . . . . . . . . . . 51

Eurocircuits . . . . . . . . . . . . www.eurocircuits.com . . . . . . . . . 79

GTU Laser Technik . . . . . . . www.gtu-laser.de . . . . . . . . . . . . 27

Haase Computertechnik. . . www.team-haase.de . . . . . . . . . . 27

HM Funktechnik. . . . . . . . . www.hmradio.de . . . . . . . . . . . . . 27

Kleinanzeigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

LeitOn . . . . . . . . . . . . . . . . www.leitongmbh.de . . . . . . . . . . . . 9

Markt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

MikroElektronika . . . . . . . . www.mikroe.com . . . . . . . . . . . . 17

Reichelt . . . . . . . . . . . . . . . www.reichelt.de . . . . . . . . . 2, 3, 88

Schaeffer AG . . . . . . . . . . . www.schaeffer-ag.de . . . . . . . . . 51

Top-Tec-PCB . . . . . . . . . . . www.top-tec-pcb.de . . . . . . . . . . 13

Wei te re In fos un te r www.e lek to r.de/shop

ECD 4Elektor’s Components Database

NEU!

Elektor’s erfolgreiche Bauteilbibliothek jetzt in neuer überarbeiteter Version mit noch mehr Bauteilen!

ISBN 978-90-5381-159-7 • € 24,50 • CHF 41,90

Elektor-Verlag GmbH

Süsterfeldstraße 25 • 52072 Aachen

Tel. +49 (0)241 88 909-0

Fax +49 (0)241 88 909-77

[email protected] • www.elektor.de

Das Programmpaket besteht aus acht Datenbanken

für ICs, Germanium- und Silizium-Transistoren, FETs,

Thyristoren, Triacs, Dioden und Optokoppler.

Weitere elf Anwendungen zur Berechnung von Vor -

widerständen bei LEDs, Spannungsteiler, Ohmsches

Gesetz sowie Farbcodeschlüssel für Widerstände und

Induktivitäten etc. runden das Paket ab.

Mit dieser CD-ROM verfügen Sie über die Daten von

mehr als 5.000 ICs, knapp 36.000 Transistoren, FETs,

Thyristoren und Triacs, etwa 25.000 Dioden und über

1.800 Optokopplern.

KLEINANZEIGENLorenz-Entwicklung.de

LEITERPLATTENFERTIGUNGBestückung, Montage. Angebot an for dern unter Fax 06645/7164. Fa. LEISE Schulstraße 21, 36369 Engelrod

Preiswerte elektronische Bauteile http://www.darisus.de

kostenlose-platinen-software.de

Elektronikfertigung 06851-9399950 Audioentwicklung ASSEMTEC.de

Gesucht: Schaltungsentwickler analog + digital Technik. [email protected]

SMD-Lochraster-, SMD-Adapter-

Platinen, Verbindungskabel für

EvalBoards, LED-Treiber und

Aluminium-Platinen für Hochleistungs-

LEDs bekommen Sie bei Fa. GK

Technik, Bürgermeister-Bohl-Str. 31,

86157 Augsburg. Tel. 0821-2183461,

Fax. 0821-2193344. WWW: elektro-

nik-von-gk.de

LTP-Filme, cadgrafik-bauriedl.de

Lasershows als Hobby???

www.mylaserpage.de

www.sovonja-elektronik.de

Entwickler (Analogtechnik) für

Trennverstärker nebenberuflich gesucht

08151/78868(AB)

0803_elektor_adv_DU 87 11-02-2008 09:24:06

Page 88: Elektor 447 - 2008-03 (GER)

Elektronikring 1 26452 Sande

... besser gleich bei reichelt.de!Fordern Sie Ihren Gratis-Katalog an!

Speakon®-Stecker

Stand: 7. 2. 2008

für die professionelle Lautsprechertechnik

NEUTRIK NLT4-FX• Speakon Quick-Lock System• Touring-Serie• 4-polig, gerade • Kabeleinlass: Ø 9-16 mm

NEUTRIK NL-4FX• für Litze 2,5 mm2 • Kabeleinlass: Ø 5-15 mm• 4-polig, gerade

NLNL-4-4FXFX

Gesetzliches Widerrufsrecht innerhalb zwei Wochen nach Erhalt der Ware. Alle angegebenen Preise in € einschl. gesetzl. MwSt., ab Lager Sande, zzgl. Versandspesen für den gesamten Warenkorb. Es gelten ausschließlich unsere AGB (unter www.reichelt.de/agb, im Katalog oder auf Anforderung). Zwischenverkauf vorbehalten. Alle Produktnamen und Logos sind Eigentum der jeweiligen Hersteller. Abbildungen ähnlich. Druckfehler, Irrtümer und Preisänderungen vorbehalten. Reichelt Elektronik e. Kfr., Elektronikring 1, 26452 Sande (HRA 130689 Oldenburg)

Bestell-Hotline: 04422 - 955 333

8.55

4.15

Preis-Tipp

R i h l I i dd 1 07 02 2008 09 17 100803_elektor_adv_DU 88 11-02-2008 09:24:17