Einzelnen Beitrag anzeigen

Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: [c-lib] Parellelport-Tutorial

  Alt 15. Jun 2006, 18:23
Wer nicht gleich so riesig aufbauen will, hier eine Schaltung mit einem 74LS00 (4 -fach Nand) und 2 zusätzlichen Invertern 74LS06 (6-fach Inverter) zum Beispiel für 4 Kanäle In und 4 Kanäle Out.



Na ja, Zeichnungstechnisch nich so pralle, aber was nutzt euch eine tolle Zeichnung in EPlan oder Autosketch, wenn ihr dafür diese Zeichnung nicht zu Gesicht bekommt. Ich glaube auch so, das ihr erkennen könnt, worauf es ankommt.

Auch hier gibt's für die NAND eine Wahrheitstabelle:

Code:
  Bit A   Bit B   Ergebnis
------------------------------
    0        0         1
    1        0         1
    0        1         1
    1        1         0
Hier die Wahrheitstabelle für die gesamte Schaltung und den Bits 1 und 2 des Steuerregisters:

Code:
Bit 1     Bit 2     Sel 0   Sel 1   Sel 2   Sel 3   Sel 0   Sel 1   Sel 2   Sel 3
Reg Pin  Reg Pin  A  B  A  B  A  B  A  B  Ausg   Ausg   Ausg   Ausg
---------------------------------------------------------------------------------
 0   1     0   1    1   1   1   0   0   1   0   0     0       1       1       1
 1   0     0   1    0   1   1   1   0   0   1   0     1       0       1       1
 0   1     1   0    1   0   0   0   1   1   1   0     1       1       0       1
 1   0     1   0    0   0   0   1   1   0   1   1     1       1       1       1
In den Ausg. Sel 0 bis Sel 3 ist dem Eingangsbitmuster entsprechend immer nur 1 Ausgang auf Low und damit habe ich das benötigte CS invers Signal.


http://dp.matthias-hielscher.de/tuto...lel_tut_10.gif

Dieses muss nur noch mit dem Bit 0 für Ein- oder Ausgabe verknüpft
werden um eine saubere Trennung der Ein- und Ausgangskanäle zu bekommen.



So, das war ja nun eine Menge Theorie, und vielleicht fragt sich der ein oder andere, toll, aber wie bastel ich nun die Elemente auf eine Platine und wie löte ich die Verbindungen zusammen.
Also, auch ich ätz nich gleich ein paar Leiterbahnen aus einem Kupferblech. Für sowas, wo man noch gar nicht so richtig weiß, ob das überhaupt das ist, was man will und ob's so funzt, wie man es sich vorstellt, nehme ich eine Lochrasterplatine mit nur Lötaugen. Da kommen dann entsprechend der Schaltung, die ich mir ausgedacht habe, Fassungen drauf. Nicht zu eng, ruhig ein bißchen Luft lassen. Die Verdrahtung (na ja, vielleicht nicht unbedingt der Bringer, aber durchaus praktikabel) ist die Verwendung einer alten Trafowicklung. Der dünne Kupferdraht ist durch seine Lackierung isoliert, lässt sich auch ganz gut löten und durch die freien Löcher der Lochrasterplatine stecken. Allerdings gibt's auch Kupferlackdraht in verschiedenen Stärken bei Conrad oder anderen Elektronikhändlern. Zum Lötkolben, da benutze ich eine Lötstation von Obi. Die Temperatur der Lötspitze lässt sich gut regeln, und die Spitzen verbrauchen sich nicht zu schnell. Ganz wichtig ist ein gutes Lötzinn. Lasst die Finger von Lötpasten aller Art. Saubere Lötstellen werden mit einem guten dünnen Elektroniklot mit eingebetteten Fließmittel erreicht. Es ist zwar nicht billig, aber man muss eh nicht sonderlich damit umherschlampen und weniger ist oft Masse genug. Wenn die Lötspitze an einem nassen Silikonschwamm regelmäßig gereinigt wird, gibt es auch fast immer gleich einen sauberen Wärmeschluß und man kann das Lötzinn für die Lötstelle exakt dosieren.
Jetzt die Frage: Welche Spannungen werden für Experimente benötigt und wo baue ich die Schaltung hin.
Also, da die alten Rechner sowieso nicht viel bringen, wenn man diese loswerden will, habe ich sie erstmal behalten. Mit dem Erfolg, nun gleich 3 alte Schätzchen herumstehen zu haben. Aber selbst, wenn kein Alter mehr verfügbar ist, die Zeitungen bieten immer mal einen ausrangerten Oldie.
So habe ich meine Schaltung auf alte Slotabdeckungsbleche sowie den 25pol. Verbindungsstecker für den Parallelport geschraubt. Muss man aber nicht, nur meine Slotbleche hatten bereits die Stecker vorgesehen. Platz ist auch für einen Haufen an Relais und sonstigem Schnickschnack und eine pannungsversorgung für 12 V und 5 V ist auch greifbar. Und wenn der max. Ausbau für den LPT Port nich reicht, dann rüstet eben einen 2. 3. oder 4. nach. Vielleicht gibt es noch welche, aber bitte, betreibt damit kein Kernkraftwerk..... oder ein Fließband einer Autoproduktionsanlage.....

Hier eine Darstellung der Anschaltung an den Parallelport mit dem Datenbusbuffer SN 74 LS 244.

Auch die Anschaltung der Ein- oder Ausgabebausteine ist in der nachfolgenden Skizze angegeben. Bei den Selektions-Signalen der Ausgabe ist es notwendig, diese mit der Schreibrichtung zu verknüpfen.



So, noch ein bißchen Schalttechnik. Also, TTL-Signale können wir ja schon ganz gut erzeugen, aber wie steht es mit Ansteuerungen von Relais oder Motoren. Wie bringe ich Signale in den Rechner, die nicht von einem Schalter stammen, so z. B. Licht oder Wärme. Wie sieht's aus mit analogen Werten so im Bereich von 0 bis 10 V oder gar negative Potentiale –10 V bis +10 V.
Genug der Frage, fangen wir an, Probleme zu lösen. Also, mal ganz ehrlich, anloge Werte über Parallelport würd ich nicht machen, da geb ich den Ball ganz gern an weitere Experten, die vielleicht schon mal was mit den seriellen Port angestellt haben. Vielleicht werd ich zum Schluß eine kleine Applikation bringen....
Ich liebe die Digitaltechnik. Da weiß man, was einem blüht. Entweder geht oder geht nicht, ein geht vielleicht oder nur ein bißchen ist da ausgeschlossen. Licht an oder aus. So isses.
So können wir jetzt ohne Probleme sagen, komm PC, mach mal den Pin 3 vom LPT auf 5 V und die Pin's 2, 4, 5, 6, 7, 8, 9 auf 0 V.
Das geht. Aber um ein Relais zu schalten, grad die, die in der Bastelkiste sind oder ein Elektronikladen für'n €uro fünfzig im Sonderangebot verscherbelt mit 12 V Spule, ne das geht nich. Oder nur durch Vorschalten eines schweineteuren 5V TTL-Relais, welches trotzdem noch sowas wie'n Treiber vorgeschaltet kriegen sollte.
Ich kann euch nur sagen, wenn ihr sowieso schon bei den Elektronikbuden einkauft, dann schaut euch mal
richtig um. Es braucht für das Schalten einer 12 V Spule lediglich ein paar Cents für einen Transistor, eine Diode (Freilauf, ich erklär's später) und einen Widerstand. In der Regel reicht's schon.
Aber wie krieg ich 5 V TTL Pegel auf 12 V für'n Relais. Dafür nun nochmal zurück zum Anfang...
  • 1. Grundsatz:
    Der Strom fließt immer im Kreis, daher der Name "Stromkreis".
    Dies bedeutet: Wo ein Plus, da muß auch ein Minus her. Bitte merken.

Ich will euch nicht schon wieder mit viel Theorie zuquatschen, aber schaut euch mal folgende Schaltung an:



Gut, nix besonderes, aber sie funktioniert. Die Stromkreise mit dem 5 V TTL-Pegel und der 12 V Lastspannung sind verbunden mit einer gemeinsamen Masse. Der Transistor kann leitend werden, wenn in seinem Emitter ein Strom fließt und das Relais zum anziehen bringen. Oder so ähnlich. Auch hier sind bestimmt nicht alle meiner Meinung, aber so komplizierte Dinge wie Arbeitspunkt und Emitter-Basisstrom und was so ein Transistor sonst noch so alles hat, ich lass es hier weg. Wer will, der kann da gern ein paar Zeilen zu schreiben. Mir geht's nur darum: Das Relais muss anziehen, wenn ein High TTL-Pegel anliegt und bei Low TTL-Pegel V abfallen oder evtl. umgekehrt. Wichtig ist, mein Relais reagiert auf meine Ausgabe per Programm auf die Signale am Port.
Da ein Relais eine Spule hat, in der ein Magnetfeld erzeugt wird, wird auch vom Relais eine Spannung erzeugt, wenn der Magnet sich abschaltet. Und die ist nicht zu ignorieren. Sie kann ein vielfaches von dem haben, was die Elektronik dieser Schaltung abkann. (Kein Mensch käme auf die Idee, diese Schaltung an 50, 80 oder gar 120 V zu hängen....)
Tja, die arme Diode, sie ist nun dazu da, diese Spannung kurzzuschließen und unwirksam zu machen. Gut,
sie kann es und der Rest der Schaltung erfreut sich eines ungestörten Elektroniklebens....
  Mit Zitat antworten Zitat