Knåpade nyss ihop ett project som jag har haft över mig ett tag (binärklocka med tvåfärgade leds). Då jag använde en PIC16F84A och behövde använda alla utgångar tänkte jag inte på att en port va en open drain när jag gjorde mitt kretskort. Dock löste det sig genom att jag lödde på ett pullup motstånd på open drain benet.
Jaja, nog med skit snack Vad finns det för fördelar med open drain? Kan man "kräma" ur mer ström ur en sådan utgång?
Är det inte samma fördelar som "open collector"? (fast det inte är en bipolär transistor som drar ner utgången), alltså att man kan ha en högre utspänning om man vill (via pullup förståss)
Låt säga att du matar PIC:en med 5 Volt kan duju inte få högre spänning på utgången än just 5 Volt...
Låt säga att du skall aktivera ett relä där spolspänningen skall vara 12V...då kan men klara det utan transistor, förutsatt att spolen inte kräver mer ström än utgången kan sänka.
Man ska nog vara försiktig med att ansluta för höga spänningar till en ingång/utgång via ett pull-up motstånd även om strömmen begränsas av motståndet. Speciellt om man har programmerbara IO:s. Man får nog läsa i databladet vad den klarar av.
Jag tror att en vanligare användning av open-drain med pull-up motstånd är när man har signaler som ska kunna drivas av flera olika kretsar. Då riskerar man nämligen inte att en krets aktivt driver signalen hög och en annan driver den låg vilket kan resultera i att någon drivare bränns om man har otur.
Ett exempel kan vara en buss av master-slave typ där man har en signal som indikerar att en slav vill accessa bussen. Flera slavar kan driva signalen låg samtidigt utan att riskera att förstöra sin egen eller någon annas drivare. Vad som även är viktigt är att man får en entydig logisk funktion, "aktiv hög wired and". Om man har en konflikt där en krets försöker driva hög och någon annan låg vet man inte vad den resulterande spänningen på signalen blir.
Senast redigerad av babbage 26 november 2004, 18:14:47, redigerad totalt 1 gång.