Hat noch niemand mit diesem IC gearbeitet?
Hallo alle zusammen,
ich habe da so ein Problem, das ich seit Tagen nicht lösen kann. Ich habe diese Schatung gebaut
http://www.franksteinberg.de/e-tlc549.htm
und dazu dieses Programm geschrieben.
Ich bin seit fast 4 Tagen da dran, aber ich bekomme das nicht hin, eine Spannung zu messen. Am Computer wird immer ein Wert von 5,3 Volt angezeit. Das ist nähmlich die Eingangsspannung. An der Platine kann es ja nihct liegen, das habe ich oft überpfrüft und es sind ja nur 2-3 Teile. Die Versorgungsspannung kommt extern von einem Computernetzteil. Meiner Meinung könnte es an dem Programm liegen, aber so genau habe ich das im Interenet gesehen. Zusätzlich habe ich ein Buch, wo die Programmierung ähnlich ist. (aber auf der seriellen Schnittstelle)Code:Module Module1 Public Declare Function Inp Lib "inpout32.dll" Alias "Inp32" (ByVal PortAddress As Short) As Short Public Declare Sub Out Lib "inpout32.dll" Alias "Out32" (ByVal PortAddress As Short, ByVal Value As Short) Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Dim BA As Double Sub Main() Dim WDat As Integer Dim i As Integer Dim Volt As Double Do Out(890, 2) 'CS an Sleep(10) Out(890, 0) 'CS aus Sleep(10) WDat = 0 Volt = 0 For i = 7 To 0 Step -1 If (Inp(889) And 8) Then WDat = WDat + 2 ^ i End If Out(890, 4) 'Clock an Sleep(10) Out(890, 0) 'Clock aus Next Sleep(30) Volt = 5.26 / 256 * WDat MsgBox(Volt) WDat = 0 Volt = 0 Loop End Sub End Module
Habt ihr vielleicht keinen Fehler entdeckt ?
Gruss
Yusuf
Hat noch niemand mit diesem IC gearbeitet?
Bist du dir sicher das die Schaltung am Port 890 hängt?
Schau bitte mal in der Hardwarekonfiguration deines Rechners nach welche Portnummer dein LPT hat, wo die Schaltung dran hängt
Ich sehe auch gerade noch etwas:
du schreibst "Out(890, 0)" und später wiederum "(Inp(889) And "
Also du müsstest dich schon einigen an welcher Portnummer deine Schaltung angeschlossen ist: 890 oder 889
Hi,
das hängt am Port 888. Das Out ist ja an Pin 14 und 16. Diese Pins sind Control-Ports. Daher muss man bei diesen 2 dazu zählen. Und bei Pin 15 muss ich 1 zuzählen, weil das ein Statusport ist.
//Register LPT1 Dezimal
// Register (Basis-Adresse + 0) 0x378 888
// Status Register (Basis-Adresse + 1) 0x379 889
// Control Register (Basis-Adresse + 2) 0x37A 890
Gruss Yusuf
Ich nehme die Versorgungsspannung jetzt von dem Parallelen Port. Dazu habe ich einen Kondensator daschwichen geschaltet. Um eine Spannung messen zu können habe ich eine 1,5V Batterie benutzt.
Nun bekomme ich auch Messwerte, nur bei jeder Messung bekomme ich komplatt anderer Werte. Auch ohne Batterie bekomme ich wilde Messwerte zwischen 0- 3,6 V. 3,6 V ist die Versorgungsspannung.
Ich habe mit so einem Programm auch gesehen, dass dieser IC Daten an den PIN 15 am Parallelport gibt.
Entweder lese ich die Daten falsch oder es liegt ein anderer Fehler vor. Wisst ihr vielleicht, wo der Fehler sein kann ?
Hallo
Da die Versorgung über eine Datenleitung erfolgt, mußt Du dafür sorgen, daß diese Datenleitung stabil auf high bleibt.
Aus einem Ausgang 40-60mA ziehen zu können halte ich für ein Gerücht.
20% davon sind eher realistisch, dieses ist aber wieder stark vom Mainboard abhängig.
Mit freundlichen Grüßen
Benno
Wo man nicht mit Vernunft handelt, da ist auch Eifer nichts nütze; und wer hastig läuft, der tritt fehl.
Ein König richtet das Land auf durchs Recht; wer aber viel Steuern erhebt, richtet es zugrunde
Lesezeichen