Parallelporten? Få ur mer portar? Koppla smartare?

Planering och tankar kring eventuella framtida projekt.
watti
Inlägg: 403
Blev medlem: 13 oktober 2008, 15:42:35
Ort: Stockholm

Inlägg av watti »

Hej igen. bumpar lite..

Hittade denna på nätet:

Bild

Är detta de kontroller portar du skrev om? vad är de extra 9 - 12 leds för något? Går de att styra?



Sen såg jag denna:
HowTo: Understand the 74HC595 :
http://computerchristmas.com/index.phtm ... HowToId=89

Och denna

http://www.arduino.cc/en/Tutorial/ShiftOut

Hur fungerar detta som ovan att koppla in i parallelporten, Är jag på rätt väg? sen ska jag koda pulser då? Känner mig ganska vilsen haha, men är tacksam för alla svar jag kan få!
Mindmapper
Inlägg: 7106
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Inlägg av Mindmapper »

Här har du väldigt bra information om parallellportar och övriga portar.
Gå ner en bit på sidan

http://www.beyondlogic.org/

LED 9 - 12 sitter på controlbitarna.
Användarvisningsbild
MadModder
Co Admin
Inlägg: 31444
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Inlägg av MadModder »

Watti: den där telefongrejen ska du inte stirra dig blind på. Det är bara en vanlig DTMF-avkodare kopplad till de fem ingångarna på parallellporten.

En parallellport har 8 datapinnar, 4 kontrollpinnar, och 5 statuspinnar. Kontrollpinnarna är utgångar, statuspinnarna ingångar, och datapinnarna kan vara in eller ut, men är ut som default.
Alltså kan man om man vill ha 12 utpinnar.
watti
Inlägg: 403
Blev medlem: 13 oktober 2008, 15:42:35
Ort: Stockholm

Inlägg av watti »

Ah!..

Men nu när jag startar dataportarna så skickar jag ut "8" "16" "32" "64" osv...
Controllportarna, hur fungerar det med dem då?


Madmodder, åker till efla idag och hanldar delarna, man kan inte göra mer en misslyckas, Allt gick ju inte på så mycket heller :)
Användarvisningsbild
MadModder
Co Admin
Inlägg: 31444
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Inlägg av MadModder »

Kontrollpinnarna är på pinne 1, 14, 16 och 17. Nr 1, 14 och 17 är hårdvaruinverterade. Det betyder att skickar du en etta dit, blir det noll och tvärtom.
Datapinnarna styrs vanligtvis på adress 888, (0x378), och kontrollpinnarna på adress 890 (0x37A). De ligger på bit 0-3.

Här är subrutinen i basic som jag använder för att kunna styra alla 64 bitar :) (det lär inte funka i visual basic, och/eller i windows)
Adressen är alltså numret på respektive 74374-krets.
Så ska du sätta alla 64 bitar krävs 8st anrop av subrutinen.

Kod: Markera allt

SUB set (adress, databits)
   ' --- adress : 0-7  databits : 0-255
   a = adress: D = databits
   ' --- sätt databitar
   OUT 888, D
   ' --- invertera hårdvaruinverterade bitar
   ' --- sätt moduladress och klockbiten låg
   a = a XOR 1
   a = a XOR 2
   a = a XOR 8
   OUT 890, a
   ' --- lägg ut en hög-låg puls på klockbiten
   a = a XOR 8
   OUT 890, a
   a = a XOR 8
   OUT 890, a
END SUB
watti
Inlägg: 403
Blev medlem: 13 oktober 2008, 15:42:35
Ort: Stockholm

Inlägg av watti »

haha tack!!, det funkade de där med Kontroll-bitarna. Men får forska lite mer :) Klart man vill styra fler saker!

Jo juste eftersom de är inverterade.. förut kodade jag så 0 så stängde alla av, och så startade jag bara den jag ville ha.. Men hur startar man och stänger av de individuellt? och hur ser de ut Inverterat?

//Mvh Simon
Användarvisningsbild
MadModder
Co Admin
Inlägg: 31444
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Inlägg av MadModder »

För att enklast slå av och på individuella bitar gör du enklast i att lagra alla bitar i form av bytes i en array (vad 17 blir det på svenska?), t.ex a(0) - a(7), så växlar du en bit mha XOR.

t.ex bitarna för första kretsen lagras i a(0).

Och så ska du tända bit 5: a(0) = a(0) XOR (2^5)
Sen ska du tända bit 2: a(0) = a(0) XOR (2^2)
Sen vill du släcka bit 5: a(0) = a(0) XOR (2^5)

Det här är dock lite knöligt, för man måste hålla reda på om biten är av eller på innan. Men det är bra om man bara ska växla en bit (toggle), t.ex slå av och på en lampa manuellt.

Om du ska slå på en bit, och vill vara säker på att den är på även fast den kanske redan är det, ska du använda OR:

a(0) = a(0) OR (2^6) för att slå på bit 6.

Och om du vill vara säker på att en bit stängs av, använder du AND NOT:

a(0) = a(0) AND NOT (2^6) för att slå av bit 6

använder du sen min rutin SET , behöver du inte tänka på de inverterade bitarna.
watti
Inlägg: 403
Blev medlem: 13 oktober 2008, 15:42:35
Ort: Stockholm

Inlägg av watti »

Madmodder! har du något kort på ditt io-kort där allt är ihopkopplat osv? Kanske är lättare för mig att förstå då :)

Mvh simon!
Användarvisningsbild
MadModder
Co Admin
Inlägg: 31444
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Inlägg av MadModder »

Nej inte där ALLT är inkopplat, men I/O-kort plus ett reläkort.:
http://madmodders.se/temp/etsning/IO-kort+Relamodul.JPG
watti
Inlägg: 403
Blev medlem: 13 oktober 2008, 15:42:35
Ort: Stockholm

Inlägg av watti »

ah men de där fungerade precis lika bra :) Tackar!
Användarvisningsbild
Ac3T
Inlägg: 186
Blev medlem: 27 november 2007, 02:21:02

Re: Parallelporten? Få ur mer portar? Koppla smartare?

Inlägg av Ac3T »

Sitter och smurfar runt i forumet och snubblade över den här tråden, och kunde inte låta bli att kommentera, trots den här trådens ålder.

Jag är en flitig användare av skrivarporten eftersom den är enkel att hantera och man behöver inte trassla med seriella kretsar.

Personligen skulle jag välja, i ditt fall, att använda 74241 eller 74245 (Finns några olika att välja mellan, med i princip samma funktion) som är en buffer-krets vars egentliga syfte är att förstärka signaler, men även fungera som en switch om man så säger. Det roliga med dessa är att man har 8 bitar in/ut och en styrpinne som bestämmer av eller på helt enkelt.

Behöver man kvarhållning klämmer man emellan några 74373:or, och sätter lämpligtvis en 3-8 eller en decimal-avkodare på "Control"-pinnarna genom inverterare, sedan är det bara att man håller koll på vilken krets man aktiverar. Underbart med parametrar i BASIC =0)

Lätt hänt att det blir rörigt iaf har jag märkt.

Jag gjorde en prototyp som var avsedd för ett projekt jag håller på med, men jag var tvungen att skrota det tills vidare eftersom det var nåt glapp nånstans och det var så in i h-e med kablar (Experimentplatta) och felet kvarstod efter många felsökningar. Jag har beslutat att etsa ett sådant kort framöver "nån gång" när jag skaffat utrustning för det.

Det roliga är att man kan stoppa på ganska många såna där buffer-kretsar iaf =0)
Mitt projekt hade jag ursprungligen tänkt mig 6x8 bitar ut, och 4x5 bitar in mot paralellporten användandes av 7442 (BCD->Decimal decoder). 3 av dessa skulle gå till varsin display, 3 till div. styrning, varav 1 skulle vara för externt bruk som t.ex. jul- eller Halloween-pyntning, ingångarna skulle gå från sensorer (IR, knappar på panelen etc).

Switch-tiderna är förträffliga också =0) Nu har jag inga siffror, men jag kan då säga att funktionen för input var ruskigt snabb iaf =0) körde en DO LOOP och det gick fort...

Men vid det här laget har väl OP redan blivit klar och börjat på sitt femtefjärde projekt sedan sista posten.
watti
Inlägg: 403
Blev medlem: 13 oktober 2008, 15:42:35
Ort: Stockholm

Re: Parallelporten? Få ur mer portar? Koppla smartare?

Inlägg av watti »

Tack för svaret, bättre sen en aldrig :)

Fick den att fungera precis som jag ville till slut iaf, Nu skulle jag säkert kopplat som du skrev men, då löste jag de med ett extra Relä bara, 1 kanal som bryter jorden och switchar den till en annan kanal, svårt att förklara, men då kunde jag styra andra saker. Blir säkert massa konstiga bakströmmar osv, men de fungerar :)

// Mvh Simon
Mindmapper
Inlägg: 7106
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Re: Parallelporten? Få ur mer portar? Koppla smartare?

Inlägg av Mindmapper »

Tänk bara på att relän har en begränsad livslängd. Då kan se i databladet hur många omslag den uppskattade livslängden är. Nu beror livslängden inte på en sak, utan för hög ström, för låg ström, och en massa andra saker spelar in.

Om ett relä har en uppskattad livslängd på 10miljoner omslag och man slår om var 10'e sekund så räcker det relät inte så länge. I sådana fall är halvledare mycket bättre.
Användarvisningsbild
Ac3T
Inlägg: 186
Blev medlem: 27 november 2007, 02:21:02

Re: Parallelporten? Få ur mer portar? Koppla smartare?

Inlägg av Ac3T »

watti skrev:"1 kanal som bryter jorden och switchar den till en annan kanal, svårt att förklara, men då kunde jag styra andra saker. Blir säkert massa konstiga bakströmmar osv, men de fungerar :)"
Låter lite farligt det där... Just nu i skrivande stund minns jag inte vad du skulle med de extra portarna till, men i vilket fall som helst låter det inte bra att bryta jorden. Om något ska den alltid finnas kvar. Sen hänger det åxå såklart på vad du har påkopplat åxå...
Mindmapper
Inlägg: 7106
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Re: Parallelporten? Få ur mer portar? Koppla smartare?

Inlägg av Mindmapper »

Behöver det inte vara! Beror på var man bryter. Alla typer av open collector och mycket i bilen bryter förbindningen med jord. Lite otydligt skrivet, mera tydligt blir det om man skriver att man bryter den låga sidan, eller....... Isåfall är det helt normalt.
Skriv svar