Styra lampor/solenoider från en PC ?

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
Användarvisningsbild
SvenPon
Utsparkad, på semester
Inlägg: 724
Blev medlem: 26 augusti 2004, 10:53:39
Ort: Haninge

Budskapet är att du kan inte belasta Parallellporten

Inlägg av SvenPon »

Jag har läst och begrundat........ men det blev inget.

Du måste ha en buffer taransistor eller optokopplare
kopplade till de olika pinnarna för att inte kortsluta den högohmiga utgången.

Om du kortsluter så skadar du inte Datorn
men å andra sidan så funkar det inte. :wink:

Med kortsluta menar jag att du tar ut mer ström än porten kan leverera
utan att komma ner under 2.4 V i spänning.
Senast redigerad av SvenPon 6 oktober 2006, 18:51:31, redigerad totalt 2 gånger.
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Inlägg av dar303 »

Alltså, innan reläerna så är det ju vanlig 5v-logik (som man kan tappa av) och så kan man expandera och få 32 I/O från varje kort (lista ut vad som kommer på expansionsportarna och koppla in sig)...dessutom har de den lilla fördelen att det finns färdig .ocx till den också med VB applikationsexempel.

nåja, nånting ska jag göra med dom. nångång. :)
Användarvisningsbild
SvenPon
Utsparkad, på semester
Inlägg: 724
Blev medlem: 26 augusti 2004, 10:53:39
Ort: Haninge

Ytterligare en liten kommentar.

Inlägg av SvenPon »

På alla moderna datorer kan du både skriv(default) och läsapå D0 - D7.

Om adress Lpt1 + 2 Register (låt oss säga 888 + 2) blir adress 890
så kan du läsa från porten om du skickar 32 till adress 890. Bit 5 blir hög.
Skicka 0 till 890 och du står i skrivläge (normalt default)
Användarvisningsbild
Tony
Inlägg: 1038
Blev medlem: 9 november 2003, 16:08:47

Inlägg av Tony »

Windman> Jag undrar varför du inte ens överväger att prova mux?
Varken hård eller mjukvara är särskilt svår eller dyr att konstruera.
För att få ut 32 bitar från en LPT behöver du bara 4 st 8-bit D-vippor t.ex 74HC377 à 13kr st

Prototypen> Javisst LPT kör TTL-nivåer använd t.ex. 74LS, 74F eller 74HCT
Användarvisningsbild
Windman
Inlägg: 178
Blev medlem: 27 september 2006, 23:57:09
Ort: Uppsala
Kontakt:

Inlägg av Windman »

Jag provar gärna en mux-lösning.
Men jag är en total noob, och behöver hjälp från scratch med hur jag skall göra. Både med hårdvaran och i VB.
Användarvisningsbild
Tony
Inlägg: 1038
Blev medlem: 9 november 2003, 16:08:47

Inlägg av Tony »

Nja, portstyrningen har jag hyfsad koll på...
Lite motstridiga uppgifter...
Grejar du at blinka en lysdiod kopplad till en pinne på LPT?

Utporten (8 bitar på basadress) kopplas till ingångarna på D-vipporna.
Bitnumreringen skiljer så D0 på LPT blir 1D, D1 blir 2D osv.
D0 kopplas till 1D på alla 4 74LS377 chippen, likadant för samtliga bitar.

De data vi nu lägger ut på D0...D7 tas emot av alla chip men vi vill bara att ett av dem skickar informatioen vidare till lamporna, magneterna, whatever.
Alltså måste vi skicka en klockpuls till D-vippans klockingång.
Klockingångarna kopplar vi till select, init, auto, & strobe.
(alltså clock på ett av chippen till en av ovanstående)

Dessa 4 signaler (bidirektionella) hittar vi på basadress +2.
(Notera att samtliga utom init är inverterade, minns dock inte om det var vid in / ut eller både och.)

Klockpulsen får vippan att lägga det som finns på ingången till respektive utgång (1Q....8Q).

Förutom Vcc (+5V), GND ( jord) och ovanstående har vi en till anslutning: Enable, den aktiverar kretsen.
Med fel värde på enable så är samtliga utgångar låga oavsett vad man gör.
På 74**377 är den aktivt låg så vi kopplar den till jord.

Alternativt så gör vi en krets som håller den hög tills datorn har bootat ordentligt.
Om du kopplar lite lysdioder till LPT så ser du att det finns skräpdata på linjerna innan programmen kommit igång.

Tips: öven om du inte använder enable till en början så koppla samtliga enable till en byglingspinne eller skruvplint, och jord till den andra pinnen.
Med bygel på plats är enable låg eller så kan man koppla in en krets i ett senare skede.
Användarvisningsbild
Windman
Inlägg: 178
Blev medlem: 27 september 2006, 23:57:09
Ort: Uppsala
Kontakt:

Inlägg av Windman »

Det är precis vad jag klarar av...
Slå på och av D-pinnarna på LPT-porten från VB.

Men när du snackar klockpulser så hänger jag inte med riktigt.
Lite svårt det här, jag har ingen erfarenhet av sådant här alls.
Vill så jättegärna förstå, men behöver nog ännu grundligare förklaring.
Gärna bilder oxå, hur man skall kopla :)
Användarvisningsbild
Windman
Inlägg: 178
Blev medlem: 27 september 2006, 23:57:09
Ort: Uppsala
Kontakt:

Inlägg av Windman »

Nu har jag surfat runt lite och tror att jag förstår lite bättre.

Med hjälp av klockpulsen kan jag alltså bestämma vilket av chippen som skall skicka vidare den info som kommer från D0-D7 ?

Hur styr jag själva klockpulsen då ?
Den delen får du gärna berätta lite mer om...
Användarvisningsbild
SvenPon
Utsparkad, på semester
Inlägg: 724
Blev medlem: 26 augusti 2004, 10:53:39
Ort: Haninge

Har läst genom tråden

Inlägg av SvenPon »

Än en gång.Intressant projekt. MUX gäller.
Sen fick jag ett gott skratt när jag läste Zyxel615 :s inlägg.
Instämmer helt och fullt med prototypen...

Fjolla var det du kunde bidraga med ! :)

Det är ju inte mitt fel att du inte förstår mA .
Budskapet är att man kan inte belasta parrallellporten max 14 mA(sällsynt)

Tack Daniel för att du snyggade till layouten på strömuttag
Användarvisningsbild
prototypen
Inlägg: 11105
Blev medlem: 6 augusti 2006, 13:25:04
Ort: umeå

Inlägg av prototypen »

<<Sven Pon>>

Varför är du så evinnerligt elak? "Fjolla var det du kunde bidraga med !" Titta på ditt inlägg om parallellportensdrivförmåga första raden,
Normal UM82C11-C IEEE 1284 level II

Jag kan mA och sånt men att det finns tre standards för porten går inte se i din första rad, sedan tabseparerade Danei tabellen så den såg ut som en tabell och då var det hela uppenbart. Far inte ut med ordkväden över andra när du skriver svårtolkat.

Sedan har vi dessa evinnerliga optokopplare, jag har läst en annan tråd där du framhärdat både optokopplare och switchdioder i kopplingar där det inte finns en chans att få det att fungera. Nu kommer dessa optokopplare tillbaka och frågan är om porten orkar driva lysdioderna i optokopplaren, se din egen tabell.

Parallellporten är inte med säkerhet kortslutningsskyddad det finns bärbara som inte tål kortis, praktiska prov har visat detta (kortslutning --> fungerade inte sedan)

Prototypen
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Inlägg av v-g »

Tycker bilden på en mux förklarar det mesta, bilden är på en 74HC377 som Tony föreslog.

Kretsen är mycket enkel att testa på tex experimentkort med lysdioder så får man väldigt klart för sig hur den fungerar.

Bild
Användarvisningsbild
Tony
Inlägg: 1038
Blev medlem: 9 november 2003, 16:08:47

Inlägg av Tony »

Sätt utgång hög, vänta några ms och sätt sedan utgång låg.
Sådär nu har du skickat en klockpuls.

(Linjen är alltså låg hela tiden och så skickar vi en etta till det chip som skall ha den info vi lagt ut på datalinjerna.)
Användarvisningsbild
Windman
Inlägg: 178
Blev medlem: 27 september 2006, 23:57:09
Ort: Uppsala
Kontakt:

Inlägg av Windman »

Okej, det låter ju enkelt :)

Men säg att jag har 4st MUXar då.
Hur gör jag för att MUX nr 2 skall ta emot det jag skickar på datapinnarna ?
Jag förstår att en klockpuls enablar kretsen för mottagning. Men går inte den klockpulsen till alla MUXar ?
Användarvisningsbild
Icecap
Inlägg: 26659
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

ÅTER ett citat från mig: "Lämpligt är att använda en 74xx154 t.ex. då kan man välja 1 av 16 och högsta värdet är då 'ingen'"

Kanske dax att läsa svaren du får?

Edit: Använd den typ av krets som det går att skaffa, LS, HCT eller annat.
Senast redigerad av Icecap 8 oktober 2006, 13:04:24, redigerad totalt 2 gånger.
Användarvisningsbild
prototypen
Inlägg: 11105
Blev medlem: 6 augusti 2006, 13:25:04
Ort: umeå

Inlägg av prototypen »

Icecap

Är det inte dags att du byter ut LS mot HC kretsar, i andra sammanhang så tycker du ju MOS är populärt. Jag konverterade i mitten på 80-talet och var inte först.

Prototypen
Skriv svar