Vous êtes sur la page 1sur 9

App-

Anwenden des AN10E40


Anmerkung
Magnetstreifen-Lesekopfverstärker006
Einleitung
Hin und wieder kommt eine Technologie, die einfach zu bedienen, robust und an viele Anwendungen anpassbar ist.
Magnetische Datenstreifen sind eine solche Technologie. Das naheliegende Beispiel ist die Kreditkarte. Aber es gibt
noch viele andere Beispiele, darunter: Flugtickets aus Papier, Shopping-Club-Karten, Ausweise von
Videomietgeschäften, Führerscheine, Debitkarten von Automaten, und die Liste geht weiter.

Diese Anwendungshinweis beschreibt kurz, wie ein Anadigm Field Programmable Analog Array (FPAA) verwendet
werden kann, um einen vollständigen Magnetstreifen-Leseverstärker/ Decoder zu konstruieren und wie er leicht an
einen Host-Prozessor angeschlossen werden kann. Der Hinweis beschreibt auch die Vorteile der festen Funktion
programmierbarer analoger Verse in einer solchen Anwendung.

Die Standardkarte
"Das Schöne an Standards ist, dass es so viele zur Auswahl gibt." Wie wahr. Es gibt viele Standards, aus denen man
wählen kann, wenn man Magnetstreifentechnologien diskutiert, und ich werde nicht versuchen, sie alle hier
aufzuzählen. Es genügt zu sagen, dass die am häufigsten referenzierte Spezifikation ISO/IEC-7811 ist. Ich werde hier
nur die Highlights festhalten, mit dem Verständnis, dass wir einen Lesekopf und ein Gehäuse verwenden, die für
Kunststoffkarten-Magnetstreifen-Leseanwendungen bestimmt sind. Es gibt viele Qualitätslieferanten, in diesem Fall
wurden Magtek-Produkte verwendet.

Für diese Diskussion stellt die Abbildung links die Rückseite einer
typischen Plastikkreditkarte dar. Mit dem Magnetstreifen oben, wie
gezeigt, ist die erste (obere) Spur in einem von der International Air
Transport Association festgelegten Format kodiert. Auf dieser Spur
ist normalerweise Ihr Name kodiert.

Der zweite Track (und dies ist das eigentliche Arbeitspferd der
Gruppe) befindet sich in einem von der American Bankers
Association definierten Format. Es enthält Ihre Kreditkartennummer.
Das dritte Spurformat heißt SPARSAMKEIT und war ursprünglich
für die Verwendung mit Geldautomaten (ATMs) vorgesehen. Im
Gegensatz zu den schreibgeschützten Spuren 1 und 2 war die
Sparsamkeitsspur für Lese- und Schreibanwendungen gedacht. Dies hat sich nie wirklich durchgesetzt und die Strecke
wird nicht oft verwendet, außer in den Anwendungen, in denen die Anforderung, Daten zurückzuschreiben, Teil des
Designs ist. Typische Beispiele sind Kopierautomaten und Automaten-Debitkarten.

Wenn Sie die Karte wie oben gezeigt betrachten, werden die Daten von rechts nach links kodiert. Die Codierung
beginnt immer mit dem niederwertigsten Bit. (Das rechte Bit ist das LSB des ersten Zeichens für den Streifen.) Die
Definition für jeden Track ist unterschiedlich und in der folgenden Tabelle zusammengefasst.

Alpha - 6 Daten + 1 Parität 210


BCD - 4(ungerade)
Daten + 1 Parität 75
BCD - 4 Daten + 1 Parität 210
(ungerade) Bits pro Zeichen Bits pro Zoll
Track 1 - IATA
Track 2 - ABA
Track 3 -
Thrift
Vom MAG-Streifen zum ASCII-Typ...
Es sind eine Reihe von Schritten erforderlich, um vom Magnetlesekopfsignal zu ASCII-Daten zu gelangen, die von den
meisten Prozessoren verdaulich sind. Das folgende Diagramm zeigt diese Übersetzungsschritte, während wir uns von
oben nach unten bewegen.
Lesekopf fährt in dieser Richtung über den Streifen.

Der Magnetstreifen

]SN21NS2SN2NS2SN] NS] SN] NS] SN2NS] SN] NS3 Magnetstreifen

Lesekopfsignal

Umstellung auf
F2F

4 Taktbits (führende Nullen) Start Sentinal ";"


Das Verständnis des Konvertierungsprozesses beginnt mit dem Wissen, wie Daten auf der Karte gespeichert werden.
Stellen Sie sich eine lange Kette von Stabmagneten vor, einige sind eine Einheit lang (und immer paarweise zu finden),
der Rest sind zwei Einheiten lang. Ferner ist jeder dieser Stabmagnete im Gegensatz zu dem Zustand angeordnet, den
sie bevorzugen würden, so dass Norden immer Norden und Süden immer Süden berührt. In diesen Bereichen, in
denen gleiche Pole aneinanderstoßen, gibt es große Konzentrationen von magnetischen Flusslinien.

Das Lesekopfsignal
Der Magnetstreifen wird am Lesekopf vorbeigewischt. Wenn jeder dieser Bereiche mit hoher Flusskonzentration
durchläuft, wird ein Strom induziert. N-N induziert einen Strom in eine Richtung und S-S induziert einen Strom in die
entgegengesetzte Richtung. Wie sich herausstellt, spielt die Polarität des Lesekopfsignals keine Rolle. Für die
Umwandlung in eine F2F-Wellenform ist nur der zeitliche Abstand der Übergänge relevant.

F2F oder Aiken Biphase


Im Moment werden wir die Diskussion darüber, wie man die F2F-Wellenform aus dem Lesekopfsignal erstellt,
aufschieben und uns stattdessen nur darauf konzentrieren, was F2F-Kodierung ist. Auch bekannt als Aiken Biphase,
nutzt die F2F-Kodierung den Raum zwischen den Flussübergängen, um ein Bit zu kodieren. Ein Stabmagnet mit zwei
Einheiten repräsentiert eine Null, und ein Paar von Stäben mit einer Einheit repräsentiert eine Eins.

Um es anders auszudrücken, nimmt jedes Bit die gleiche physische Länge auf dem Streifen ein. Ein Bit mit einem
"zusätzlichen" Flussübergang in der Mitte seiner Länge wird als Eins bezeichnet. Auch hier ist die Polarität dieser
Übergänge willkürlich, es ist der relative Raum zwischen den Übergängen, der eine Eins oder eine Null bedeutet.

Konvertierung von Kartendaten in ASCII


Jeder Track beginnt und endet mit „Taktbits“. Taktbits sind nichts anderes als eine Reihe von Nullen. Wie sich
herausstellt, ist ein manueller Kartenwischvorgang ein ziemlich konstantes Geschwindigkeitsereignis. Somit ist eine Bit-
Periode vom Beginn eines Wischens sehr nahe an einer Bit-Periode am Ende eines Wischens. Die "taktenden Bits"
werden auf Länge (die Bit-Periode) untersucht und das Tempo des jeweiligen Wischens eingestellt. Eine Null wird
erkannt, wenn die zwischen Flussübergängen verstrichene Zeit nahe einer Bitperiode liegt. Eine Eins wird erkannt,
wenn die zwischen den Flussübergängen verstrichene Zeit in der Nähe einer halben Bitperiode liegt.

Für Prozessoren, die mit einer Timer-Peripherie ausgestattet sind, ist es möglich, den FPAA-Ausgang (der während
eines Kartenwischvorgangs zwischen 0 und 5 V umschaltet) mit dem Eingangspin des Timer-Ports zu verbinden. Bei
jedem Übergang werden Interrupts generiert, und das Speichern der Timerwerte in einem Array ist alles, was von der
Interrupt-Service-Routine erforderlich ist. Ein schnelles Nachbearbeiten des Wertefelds entschlüsselt leicht die Einsen
und Nullen.

Bei kostengünstigeren Prozessoren müssen Sie stattdessen den FPAA-Ausgang mit einem Universal-Eingangspin am
Prozessor verbinden. Sobald ein erster Übergang erkannt wird (in der Regel als Interrupt), muss sich der Prozessor
dann vollständig der Zeiterfassung widmen, den Eingangspin in regelmäßigen Abständen abfragen und aufzeichnen,
wann die Übergänge auftreten. Auch hier wird die Nachbearbeitung des Arrays von Zeitstempeln die Einsen und Nullen
entschlüsseln.
Denken Sie daran, dass die Karte möglicherweise nach hinten gezogen wurde. Das Umdrehen der Daten ist in der
Software einfach zu handhaben.

Jetzt, da Sie eine Reihe von Einern und Nullen haben, müssen Sie erkennen, wo die Daten begonnen haben und wie
sie zu interpretieren sind. Eine Einführung in diesen Teil des Prozesses finden Sie im Anhang dieses Hinweises.

Anwenden des AN10E40 als Magnetlesekopfverstärker und F2F-Generator


Es werden nur G01-Verstärkungsstufen und C02-Komparatoren benötigt. Bei der hier vorgestellten Schaltung handelt
es sich um eine Art „analoges S-R-Flip-Flop“. Die Komparatoren und ihre Rückkopplungspfade bilden eine bistabile
Schaltung. Die Schaltung stabilisiert sich nur in zwei Zuständen.
+2,5 V Logic High
[-100] [-100]
0V E/A-Zelle -25 mV
E/A-Zelle> 0 V Logik niedrig
+2,5 V
1 E/A- —I E/A-
Zelle> Zelle>
+1,25 V

IO CellK 0 V E/A-
Lesen I (VMR) Zelle
Kopf -1,25 V

-2,5 V

[-10] [-10] [-10] [-10]

Blick auf den Schaltplan links. Die Spannungen sind fett und die Verstärkerverstärkungen in eckigen Klammern
dargestellt. Die Verstärker sind mit einer Blase an ihren Ausgängen dargestellt, um optisch daran zu erinnern, dass es
sich um invertierende Verstärker handelt. Angenommen, es ist keine Karte vorhanden und alle Knotenspannungen sind
wie abgebildet. (Zur Erinnerung: Die gesamte analoge Signalverarbeitung innerhalb der FPAA erfolgt in Bezug auf
Voltage Mid-Rail (VMR), und dies wird konventionell als 0 V bezeichnet. VMR liegt tatsächlich 2,5 V über der Masse
des Chips... also würde ein Prozessor für das obige linke Diagramm die Ausgabe von +2,5 V als +5 Volt (logisch hoch)
und eine Ausgabe von -2,5 V als 0 Volt (logisch niedrig) sehen.)

Untersuchen Sie die Knotenspannungen für einen Moment und Sie werden sehen, dass sich die Schaltung in einem
stabilen Zustand befindet. Der Ausgang ist ein Logik-High.

Überlegen Sie nun, was passiert, wenn eine Karte über den Lesekopf gezogen wird. Für das oben rechts gezeigte
Beispiel passierte ein S-S-Flussfeld die Lücke im Lesekopf. Dies induzierte einen kleinen negativen Signalanstieg. Die
Eingangsstufen mit hoher Verstärkung wandeln diese kleine Spitze in ein vollständiges Schienensignal um. (Jedes
Eingangssignal mit einer Amplitude von mehr als 25 mV führt einfach zu einem abgeschnittenen Signal, wie gezeigt.)
Dieser positive Impuls, der dem negativen Anschluss des oberen Komparators zugeführt wird, führt dazu, dass sich der
Zustand ändert, wie die abfallende Ausgangskurve zeigt. Genau das Gegenteil geschieht auf dem unteren Komparator,
wenn die gesamte Schaltung in ihren anderen stabilen Zustand übergeht. Der Ausgang ist jetzt ein Logik-Low.

Die obige Abbildung ist eine Scope-Aufnahme der Schaltung in Aktion. In diesem speziellen Fall wurde ein Lesekopf
direkt an einen AN10E40 angeschlossen. Die obere Kurve zeigt den Roh-Lesekopf-Eingang... Rauschen und alles. Die
untere Kurve zeigt das Ausgangssignal der Schaltung (eine logische Wellenform von 0 - 5 V F2F). Es wurden keine
weiteren Komponenten verwendet. Nichts dabei; es ist so einfach mit programmierbarem Analog.
Die Schaltung wie oben gezeigt verbrauchte nur 9 der 20 verfügbaren KABINEN in einem AN10E40. Tatsächlich sind
die beiden Serienverstärker im unteren Zweig der Schaltung wirklich nicht erforderlich, vorausgesetzt, dass der
Minuspol des unteren Komparators stattdessen mit VMR verbunden ist, und dies reduziert den KABINENVERBRAUCH
um zwei. In einem AN10E40 ist viel Platz für einen zweiten Lesekanal mit Platz zur freien Verfügung.

Vorteile der Verwendung von programmierbarem Analog


Die beschriebene Schaltung ist einfach genug und kann natürlich mit etwa zwanzig Standardkomponenten aufgebaut
werden. Warum also programmierbares Analog?

Die offensichtliche Antwort ist die Anzahl der Komponenten. Es wurden keine zusätzlichen Komponenten jeglicher Art
in dieser Anwendung verwendet. Der Lesekopf wurde direkt an die FPAA angeschlossen. Die wirklichen Vorteile
werden jedoch erst offensichtlich, wenn Sie die Schaltung aus dem Labor in das raue Licht der realen Welt bringen.

In der realen Welt sind Kreditkarten-Streifenleser, die ohne programmierbares Analog aufgebaut sind, nicht alles, was
sie sein sollten. Du hast Beweise dafür so oft gesehen, dass du wahrscheinlich taub dafür geworden bist. Nehmen Sie
sich einen Moment Zeit und erinnern Sie sich an all die Kassen- "Swipe" -Techniken, die Sie miterlebt haben. Der
„langsame und bewusste“ Wisch. Der „schnelle Wisch“. Der „Run it backwards“ Swipe. Die „run it back and forward and
back and forward“ -Technik (einer meiner persönlichen Favoriten). Wischen Sie auf "Karte reinigen und erneut
versuchen". Wickeln Sie die Karte in eine Plastiktüte und versuchen Sie es erneut. Die Technik "Probieren Sie den
anderen Kartenleser aus". Und dann gibt es natürlich den ultimativen Notfallplan, bei dem der Kassierer die Karte
genau richtig ans Licht hält, damit die stark abgenutzten erhöhten Zahlen von Hand erkannt und eingegeben werden
können (normalerweise, während er einen angewiderten Blick mit Ihnen teilt).

Schmutz, Verschleiß, Temperatur und die Exposition gegenüber unbeabsichtigten Magnetfeldern führen dazu, dass
Magnetstreifenkarten schwer lesbar sind. Ebenso Schmutz-, Verschleiß- und Korrosionsarbeiten, um die Leseköpfe
immer weniger effizient zu machen. Wie kann also programmierbares Analoges die Situation beheben? Der Host-
Prozessor kann eine komplette neue Schaltungskonfiguration in weniger als 125 Mikrosekunden auf einen AN10E40
herunterladen. Wenn also ein Wischen fehlschlägt, können Sie die Verstärkung der Eingangsverstärker in nur einem
Bruchteil einer Sekunde anpassen. Tatsächlich können Sie in einem sorgfältig entwickelten System die Leseverstärker
während der führenden Taktbits einstellen! Ein zweiter Wisch ist nicht erforderlich.

Die Schaltung kann auch für Lesekarten mit unterschiedlicher Magnetstreifenkoerzitivkraft eingestellt werden. Obwohl
dies für Leseköpfe normalerweise nicht wichtig ist, ist die Einstellung der Schreibkopfansteuersignale unerlässlich, um
solche Koerzitivitätsunterschiede auszugleichen.

Dies sind einige der Vorteile der Anwendung von programmierbarem Analog nur in Standardkartenanwendungen. In
kundenspezifischen Anwendungen bietet die Verwendung von programmierbarem Analog noch mehr Vorteile. Für
Hochsicherheitsanwendungen kann die FPAA dazu konfiguriert sein, verschiedene Datencodierungstechniken zu
handhaben, einschließlich Tonerzeugung und Decodierung. Lese- und Schreibfunktionen und mehr.
Nachtrag - Kreditkarten-Track-Kodierung und Datenstandards
Es gibt viele Schritte, um Daten von einem einfachen Magnetstreifen wiederherzustellen. Bisher haben wir die
Lesekopfverstärkung, die Erzeugung einer F2F-Wellenform und ihre Interpretation in eine Reihe von Einsen und Nullen
behandelt. Der nächste Schritt im Wiederherstellungsprozess besteht darin, die Binärdaten in Zeichendaten, in der
Regel ASCII, umzuwandeln. Die Regeln für die Interpretation der Daten variieren je nachdem, welchen Titel Sie lesen.

Datenkodierung und Parameter nachverfolgen

1 IATA 210 Alphanumerisch 79 6 Bits + ungerade Schreibgeschützt


2 ABA 75 BCD 40 4 Bits Parität
+ ungerade Schreibgeschützt
3 Sparsam 210 BCD 107 4 Bits + ungerade Lesen & Schreiben (ungewöhnliche
keit Parität
Zeichennummer der Codierung Verwendung)
Spur Standard BPI Typ Zeichen Schema Kommenta
re
Gemeinsame Gleislayouts
Gemeinsam sind jedem Track die „Clocking Bits“. Taktbits befinden sich an beiden Enden jeder Spur. Taktbits sind
kurze Reihen von Nullen, die selbsttaktenden Kartenlesern die Möglichkeit geben sollen, die Wischgeschwindigkeit
festzulegen und eine Bitzellenzeitdauer einzustellen. In unserer Anwendung wird der Mikroprozessor als ersten Schritt
bei der Decodierung der binären Daten die Taktbitperioden untersuchen.

Ebenfalls jedem Track gemeinsam sind die Zeichen Start Sentinel (SS), End Sentinel (ES) und Logitudnal Redundancy
Check (LRC). Auf Spur 1 sind die SS- und ES-Zeichen % bzw.?. Auf den Spuren 2 und 3 sind die SS- und ES-Zeichen;
bzw.?. Feldtrennzeichen (FS) sind den Spuren 1 und 2 gemeinsam.

Wenn du einen Start-Sentinel zunächst nicht erkennst, besteht die Chance, dass die Karte nach hinten gezogen wurde.
Sie müssen Ihren Dekodierungsalgorithmus entsprechend anpassen.

Der LRC ist die Summe aller vorherigen B n -Bits für alle vorherigen Zeichen auf dem Streifen (Überlauf wird ignoriert).
Das ungerade Paritätsbit, das jedem Zeichen zugeordnet ist, kennzeichnet nur ein Problem, bei dem eine ungerade
Anzahl von Bits (wie 1) für dieses Zeichen fehlerhaft war. Es ist unwahrscheinlich, dass es 2-Bit-Fehler in einem
einzelnen Zeichen gibt, aber wenn dies der Fall ist, wird die ungerade Paritätsprüfung das Ereignis nicht erkennen. Die
Aufgabe des LRC besteht dann darin, eine weitere Ebene der Fehlerprüfung für den Datenstrom hinzuzufügen, der der
gesamten Spur zugeordnet ist.

Spur 1 Spezifisches Layout

nullen | SS | FC | Primäres Konto (max. 19 Zeichen) | Name (max. 26 Zeichen) | FS | andere Daten | ES | LRC | Nullen

Spur 2 Spezifisches Layout

nullen | SS | Primäres Konto (max. 19 Zeichen) | FS | Sonstige Daten | ES | LRC | Nullen

Gleis 3
Es gibt zu viele nicht standardmäßige Verwendungen von Track 3, um sie hier aufzuzählen. Es genügt zu sagen, dass
es sich größtenteils um eine verlassene Spur handelt und folglich die meisten spezialisierten oder benutzerdefinierten
Systeme Daten kodieren. Die ursprüngliche Absicht war, diesen Track als Lese-/Schreib-Track zu verwenden und hier
tatsächlich verschlüsselte Informationen über Ihren Bankkontostand zu führen. Dies ermöglichte es nicht vernetzten
Geldautomaten, Geld auszugeben, ohne wirklich sicher zu sein, wie hoch Ihr tatsächlicher Kontostand zum Zeitpunkt
der Auszahlung war. Es dauerte nicht lange, bis die Bankenbranche erkannte, dass es viel besser ist, stattdessen
Geldautomaten miteinander zu vernetzen und die Idee dynamischer Daten auf Ihrer Geldautomatenkarte aufzugeben.
Track 3 ist jetzt ein Waisenkind.
Track 1 Zeichensatz - 6 Bit Alpha mit ungerader Parität
Charakter P B6 B5 B4 B3 B2 B1 ASCII Charakter P B6 B5 B4 B3 B2 B1 ASCII
Raum 1 0 0 0 0 0 0 20 40
(undefinier 21 A 1 1 0 0 0 0 1 41
t)
22 B 1 1 0 0 0 1 0 42
(OG) 1 0 0 0 0 1 1 23 C 0 1 0 0 0 1 1 43
$ 0 0 0 0 1 0 0 24 D 1 1 0 0 1 0 0 44
%(SS) 1 0 0 0 1 0 1 25 E 0 1 0 0 1 0 1 45
26 F 0 1 0 0 1 1 0 46
27 G 1 1 0 0 1 1 1 47
( 0 0 0 1 0 0 0 28 H 1 1 0 1 0 0 0 48
) 1 0 0 1 0 0 1 29 I 0 1 0 1 0 0 1 49
2A J 0 1 0 1 0 1 0 4A
2B K 1 1 0 1 0 1 1 4B
2C L 0 1 0 1 1 0 0 4C
- 0 0 0 1 1 0 1 2D M 1 1 0 1 1 0 1 4D
. 0 0 0 1 1 1 0 2E N 1 1 0 1 1 1 0 4E
/ 1 0 0 1 1 1 1 2F O 0 1 0 1 1 1 1 4F
0 0 0 1 0 0 0 0 30 P 1 1 1 0 0 0 0 50
1 1 0 1 0 0 0 1 31 Q 0 1 1 0 0 0 1 51
2 1 0 1 0 0 1 0 32 R 0 1 1 0 0 1 0 52
3 0 0 1 0 0 1 1 33 S 1 1 1 0 0 1 1 53
4 1 0 1 0 1 0 0 34 T 0 1 1 0 1 0 0 54
5 0 0 1 0 1 0 1 35 U 1 1 1 0 1 0 1 55
6 0 0 1 0 1 1 0 36 V 1 1 1 0 1 1 0 56
7 1 0 1 0 1 1 1 37 W 0 1 1 0 1 1 1 57
8 1 0 1 1 0 0 0 38 X 0 1 1 1 0 0 0 58
9 0 0 1 1 0 0 1 39 J 1 1 1 1 0 0 1 59
3A Z 1 1 1 1 0 1 0 5A
3B 5B
3C 5C
= 1 0 1 1 1 0 1 3D 5D
3E ^(FS) 0 1 1 1 1 1 0 5E
?(ES) 0 0 1 1 1 1 1 3F 5F
Um in den ASCII-Wert zu konvertieren, ignorieren Sie das P (Paritätsbit) und fügen Sie den Hex-Wert von
B[6:0] zu 20 Hex hinzu. Zum Beispiel für das Zeichen/, 0F + 20 = 2F

Tracks 2 & 3 Zeichensatz - 4 Bit BCD mit ungerader Parität


Charakter P B4 B3 B2 B1 ASCII Charakter P B4 B3 B2 B1 ASCII
0 1 0 0 0 0 30 8 0 1 0 0 0 38
1 0 0 0 0 1 31 9 1 1 0 0 1 39
2 0 0 0 1 0 32 :(AS) 1 1 0 1 0 3A
3 1 0 0 1 1 33 ;(SS) 0 1 0 1 1 3B
4 0 0 1 0 0 34 < 1 1 1 0 0 3C
5 1 0 1 0 1 35 =(FS) 0 1 1 0 1 3D
6 1 0 1 1 0 36 > 0 1 1 1 0 3E
7 0 0 1 1 1 37 ?(ES) 1 1 1 1 1 3F
Um in den ASCII-Wert zu konvertieren, ignorieren Sie das P (Paritätsbit) und fügen Sie den Hex-Wert von
B[4:0] zu 30 Hex hinzu. Zum Beispiel für das Zeichen;, B + 30 = 3B

P = Paritätsbit, in der FS = Feldtrennzeichen


Regel ungerade SS = AS = Kontotrennzeichen (nur Spur 3) OG = Optionsgrafik
Start Sentinel
ES = End Sentinel
Kontaktinformationen 1.00

Anadigm freut sich, unseren Kunden einen


direkten Zugang zu folgenden Büros anbieten
zu können:

WEB
http://www.anadigm.com/

USA
Anadigm Inc. Tel.: +1 408 996 2091
21615 Stevens Creek Fax: +1 408 996 2093
Boulevard Cupertino
CA 95014

Anadigm Inc. Tel.: +1 480 545 6730


155 East Chilton Drive Fax: +1 480 545 2915
Suite 201
Chandler
AZ 85225-1115

Vereinigtes Königreich
Anadigm Ltd. Tel: +44 (0) 1270 531990
Scott House Fax: +44 (0) 1270 531999
Westmere Drive
Crewe
CW1 6ZG

DEUTSCHLAND
Anadigm Ltd.
Tel: +49 (0) 8142 4485830
Gottlieb-Daimler Str. 6
Fax: +49 (0) 8142 4485840
82140 Olching

Vous aimerez peut-être aussi