Hallo iedereen. Ik ben nu al een paar dagen aan het experimenteren met ledjes aan te sturen via de parallele printerpoort. En het lukt goed! Maar ik heb er maar één en daar kan ik maar 8 dingen mee aansturen. Nu is mijn vraag: als ik nu meerdere parallelle printerpoort controllers in mijn PC steek, kan ik die dan ook gaan aansturen met mijn PC??? Nu heb ik enkel een LPT1. Ik zou 8 parallele poorten willen hebben, zodat ik 64 dingen kan aansturen. Is dit mogelijk? Bedankt voor alle reacties!!! :-)

Als je zo lekker bezig bent met de LPT-poort, is het je dan ook al gelukt om de control-bits te besturen?
Je zou de LPT-poort daarmee ook extern kunnen uitbreiden. Door wat extra hardware in elkaar te flanzen (met 8bit data-ingang en enkele bits control erbij), zou je zo je eigen LPT-expand kunnen maken. Dit is misschien wel leuker dan een paar standaard kaarten bij te prikken in je compu!

8 poorten gaat niet werken, tenzij je zelf de hardware modificeert. In het ontwerp van de PC is rekening gehouden met 3. De meeste insteekhardware kun je op 1 van de 3 hiervoor bestemde adressen kwijt.

Echter, er bestaat nog veel meer hardware om wat I/O lijntjes uit een PC te peuteren.

Verder zou je met een stel latches en 3 control lijnen ook 64 uitgangen uit 1 kaart kunnen peuteren.

je zou toch ook kunnen multiplexen ??
ik weet daar zelf niet zo veel van
mischien iemand anders ??

Op 27 november 2004 08:07:34 schreef Marco69:
8 poorten gaat niet werken, tenzij je zelf de hardware modificeert. In het ontwerp van de PC is rekening gehouden met 3. De meeste insteekhardware kun je op 1 van de 3 hiervoor bestemde adressen kwijt.

Echter, er bestaat nog veel meer hardware om wat I/O lijntjes uit een PC te peuteren.

Verder zou je met een stel latches en 3 control lijnen ook 64 uitgangen uit 1 kaart kunnen peuteren.

Kan ik deze 64 uitgangen dan ook allemaal apart aansturen? Bedankt voor de reacties! :bow:

Eh.. Waarom niet? Is gewoon 8x8bit geadresseerd met je 3 control lines. Ships.. Heb je waarschijnlijk ook nog een strobe of clk voor nodig... Grmbl... Worden het 8x7bits :)
Of je gebruikt een MM5451; heb je maar 2 (meen ik) lijntjes nodig voor (ik dacht) 35 bits.

Ik gebruik zelf de 74xxx4514 en 74xxx4515 om het adres vast te leggen en de 74xxx573 om de data in op te slaan.
De eerste twee IC's zijn 4 naar 16 decoders. De 573 is een 8-bit transparante latch.

Het idee is simpel: het dataregister van je LPT-poort gebruik je als "adresbus" en als "databus".
Het stuurregister van je LPT-poort gebruik je om eerst een adres op te slaan en vervolgens de data op te slaan.

Zo werkt het:
- Je zet een adres in het dataregister. (alleen de laagste 4 bits sluit je aan op de 4514/4515: heeft immers 4 ingangen)
- Via een lijn van je stuurregister sla je dat adres op in de 4514/4515, maar dit adres geef je nog niet vrij.
- Vervolgens zet je data in het dataregister. (nu gaat het om 8 bits, want de 573 heeft 8 ingangen)
- Via een andere lijn van je stuurregister geef je de 4514/4515 nu de opdracht om het opgeslagen adres vrij te geven. Dan wordt de juiste 573-chip "aangetikt" die dan de data opslaat.

Aangezien de 4514/4515 16 uitgangen heeft, kun je zo 16 573-chips aansturen: 16 x 8bits = 128 bits.

Je kunt dit systeem nog uitbreiden naar 256 x 8bits = 2048 bits door met een master/slave concept te werken.
Ik heb op die manier een lichtkrant met LEDs gemaakt.
Als je een uitgebreider aansluitschema wilt moet je 't laten weten.

Wat volgens mij het simpelste is, is een schuifregister. Ik gebruik zelf de 4094. Hier kun je 8 bits serieel inklokken. Het leuke is echter dat je ze vrijwel oneindig kunt doorschakelen. Dus de 9e bit (eigenlijk de 8e, omdat je begint bij 0) doorschuiven naar een volgend register. Werkt erg simpel, enige nadeel is dat je hoe meer shiftregisters je achter elkaar zit hoe trager het wordt. Dit is voor gewoon schakelen echter geen probleem.

Het nadeel van serieel doorschuiven is wel dat je altijd aan een volgorde vastzit en ik denk niet dat dat de bedoeling is. Als je b.v. LEDs of motortjes aan/uit wilt zetten, dan moet je alle uitgangen onafhankelijk van elkaar kunnen benaderen.

Op 1 december 2004 16:09:19 schreef logic:
Het nadeel van serieel doorschuiven is wel dat je altijd aan een volgorde vastzit en ik denk niet dat dat de bedoeling is. Als je b.v. LEDs of motortjes aan/uit wilt zetten, dan moet je alle uitgangen onafhankelijk van elkaar kunnen benaderen.

vandaar dat er een strobe op de 4094 zit

Op 1 december 2004 16:09:19 schreef logic:
Het nadeel van serieel doorschuiven is wel dat je altijd aan een volgorde vastzit en ik denk niet dat dat de bedoeling is. Als je b.v. LEDs of motortjes aan/uit wilt zetten, dan moet je alle uitgangen onafhankelijk van elkaar kunnen benaderen.

Dit is niet correct, je klokt eerst de data in, dan maak je de strobe even hoog en wordt de inhoud van het register naar de outputpinnen gekopieerd. Dus geen last van schuivende bitjes Voor mij is het tot nu toe de beste oplossing die ik ben tegengekomen. Alleen wil ik hem graag op de compoort gebruiken, weet iemand misschien hoe? Ik neem aan dat ik de stroom moet beperken met een weerstandje en diodes ofzo??

Ok, dat wist ik niet. Ik dacht dat de bits direct op de uitgang te zien waren.
Maar dan is dat dus eigenlijk hetzelfde als wat ik beschrijf, met dien verstande dat je op de seriele manier eerst de bits 1 voor 1 moet inklokken en op mijn manier alle 8 bits in een keer vastzet. Dat laatste is dan toch eenvoudiger? (of op z'n minst iets sneller)

Ach ,misschien is 't ook maar net wat je makkelijk vind of gewend bent.

Met je compoort kan ik je helaas niet helpen, maar is wel interessant. Wil ik zelf ook graag meer over weten.

Je kunt misschien ook eens kijken naar een kitje van Velleman, de K8000 die heeft een heleboel I/O mogelijkheden, ook AD en DA converters enzo.