Forum: PC-Programmierung LED - Steuerung mit GW-Basic


von Maik (Gast)


Lesenswert?

Hallo Leute,
Wie kann ich ein paar LED´s am Druckerport durch GW-Basic ansteuern.
Es wäre nicht schlecht wenn ich Programmiervorschlag
bekomme. Danke schon mal im Vorraus für eure Hilfe

Maik

von Stefan (Gast)


Lesenswert?


von Maik (Gast)


Lesenswert?

Hallo Stefan
ich bekomm es einfach nicht hin, bei mir leutet nichts ich bin bald am
verzfeifeln. such schon tage lang nach so ein zeug aber funktionieren
tut es trotzdem nicht.
gruss maik

von Stefan (Gast)


Lesenswert?

1/ Ferndiagnose ist oft sauschwer.

Beschreibe so gut wie möglich und noch ein Stück besser, was du gemacht
hast.

Sei einfallsreich, mache Digitalfotos, Zeichnungen, hau den
Programmcode hier rein (Anhang)... kurz unternimm alles, was einem
anderen helfen könnte, dir zu helfen.

Manchmal platzt schon der Knoten beim Formulieren der Frage und dem
Zusammenstellen der Informationen und man kommt selbst auf die
Lösung...

2/ Die LED ist mit ihrem Vorwiderstand richtig angeschlossen und nicht
defekt? Welche LED hast du (Kenndaten Spannung/Strom) und welchen
Vorwiderstand?

http://www.elektronik-kompendium.de/sites/bau/0201111.htm
http://www.led-treiber.de/html/vorwiderstand.html

3/ Auf welchem Rechner / Betriebsystem arbeitest du?

Windows NT und andere Multitask- und Multiuserbetriebssysteme erlauben
es einem Programm nicht mehr direkt auf Portadressen zuzugreifen.

4/ Sprichst du die richtige LPT Schnittstelle an?

Kannst du die Schnittstelle mit einem Drucker unter DOS testen (z.B.
dir > LPT1)?

Du siehst eine Menge Fragen, zu denen du im Vorfeld schon eine Menge
Material liefern kannst...

von Maik (Gast)


Angehängte Dateien:

Lesenswert?

1) im testprogramm (anhang) funktioniert alles, lässt sich jede einzelne
led ansteuern, aber dann in gw-basic habe ich es auch versucht:
out888,255   damit müssten eigentlich alle leuchten.

2) das sind alle SuperHelle Gelbe Led´s ohne Vorwiderspannung,
funktionieren auch alle am port mit dem testprogramm.
habe led´s auch son getauscht.

3)ich habe ein K7-M863G von PC-Chips mit einen athlonXP 2200 und
winXP-prof. ein anderer rechner währe auch kein problem, habe noch ein
amd k6-2 mit 400mhz und noch 486...,386... und 286 zur hand


4)und ob ich die unter dos ansprechen kann weiß ich nicht, bekomm es
nicht hin

gruss maik

von Stefan (Gast)


Lesenswert?

Ei das sieht doch gut aus.

1/ Du hast mit dem Parallelport-Debugger eine schöne Testmöglichkeit
für die LEDs und den Port.

2/ Du hast mit dem Parallelport-Debugger einen schönen Quellcode, der
funktioniert.

Der grundlegende Unterschied zwischen deinem Quelltext und dem
Quelltext vom Parallelport-Debugger ist, wie die Portadresse zustande
kommt.

Du nimmst an, dass der Port die 888 (&H378) ist, während der
Parallelport-Debugger diese Adresse zuerst in der Unterroutine
IOAdressen ermittelt.

DEF SEG = 0
BA1 = PEEK(&H408) + PEEK(&H409) * 256  'Basisadresse LPT1

Vergleiche mal die Werte für LPT1 und LPT2 auf dem Bildschirm des
Parallelport-Debuggers mit deinem Wert (888 = &H378). Bei mir ist &H378
LPT2 und &H3BC (dezimal 956) LPT1 ;-)

von Maik (Gast)


Angehängte Dateien:

Lesenswert?

mit diesen programm lassen sich alle ports schalten und bei mir ist auch
im bios die h378 lpt1, an was liegt das nun, hab auch schon mein
zweitrechner aufgebaut um zu gucken ob es am pc liegt aber nix
passiert, wenn ich ein programmbeispiel hätte wäre es bestimmt
einfacher.

nach mein kenntnissen muss vor jeden befehl immer eine zahl schreiben:
    10 out 956,1
                20 out 956,2 usw.
oder liege ich da falsch, so habe ich es in der schule gelernt bei der
Ampelsteuerung in GW-Basic oder brauch ich dazu vielleicht ein anderes
Programm.
Gruss Maik

von Maik (Gast)


Lesenswert?

ich hab es hinbekommen, jetzt hab ich mal das programm gewechselt von
GW-Basic zu Q-Basic zur älteren version, auf einer startdiskette und
siehe da, ich kann sie einzeln ansteuern, aber wie mach ich dann das
sie wie ein lauflicht aufleuchten.
Gruss maik

von Karl H. (kbuchegg)


Lesenswert?

1. Led einschalten
eine zeitlang warten (zb in einer Schleife)
1. Led ausschalten
naechste Led einschalten
eine zeitlang warten
ausschalten
gewuenschte Led einschalten
eine zeitlang warten
usw.

von Stefan (Gast)


Lesenswert?

Klasse Maik! Ich hatte mich schon darauf eingerichtet, dass ich den
Abend mit GWBasic verbringe ;-)

von Maik (Gast)


Lesenswert?

Da mach ich mich ja zum obst, jede einzelne an- und ausschalten.
man kann auch ein programm schreiben:
10 out 956,1
15 for a=0 to 160000: next a
usw.
hab ich gerade von mein techniklehrer erfahren.
Gruss Maik

von Maik (Gast)


Lesenswert?

Stefan danke für deine hilfe, ohne dich hätte ich das nicht hinbekommen.
vielen Dank  ;-)

Gruss MAIK

von Stefan (Gast)


Lesenswert?

nur so ein Gedanke:

out 888 (oder 956)ist der parallele port, hat also gar nix mit dem
controller oder sonst zu tun. 255 ist, und da bin ich mir nicht sicher
aber bei mir ist das so, der puffer. Wenn der Freigeschaltet ist also
out 888, 255 dann tut sich noch gar nix da fließt kein Strom.
Erst wenn man out 888, 255(oder ein anderer portpuffer)+0 oder 2 oder 4
oder 8 usw eingibt fließten 5 volt(ohne verstärker gerechnet).


Hoffentlich funktioniert es bei dir folgendermaßen:

out 888,255+2         Die 2 sagt das 2^1 also pin 1 freigeschaltet
ist.


A la lotw

yo c ya

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.