Värde på pullup-motstånd och liknande i digitala koppling

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
bearing
Inlägg: 11265
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Värde på pullup-motstånd och liknande i digitala koppling

Inlägg av bearing »

Jag undrar hur man ska gå till väga när man dimensionerar pullup-motstånd, återkopplingsmotstånd och liknande i digitala kopplingar.
I skolan lärde jag mig inget specifikt om sådant, det var mer om analoga filter och brus.

Jag brukar bara sätta dit 1k, eller 10k, tja det som ligger närmast i lådan. Men jag inser att det borde gå att använda betydligt högre värden i vissa sammanhang, och krävas mindre värden i andra.

En PIC drar ju bara några mA obelastad, så med några 1k pullup som dras låga går det ju mer ström "till spillo" i motstånden än vad hela PICen drar obelastad. Det känns spontant onödigt att använda så små motstånd. Dock kanske de finns olika oväntade kapacitanser/induktanser som gör att höga värden inte funkar med höga frekvenser. En klasskamrat drog t.ex. sladdar från kristallen till PIC:en och då gick inte programräknaren.

Det brukar finnas angivet kapacitansen på kretsars pinnar vilket jag antar att man kan titta på. Men jag undrar om inte kapacitansen mellan raderna på ett kopplingsdäck, banorna på experimentkort eller byglingstrådar i härvor kan ha högre kapacitans.

Vad bör man använda för metoder och tumregler?
Användarvisningsbild
Icecap
Inlägg: 26151
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Inlägg av Icecap »

Om det är en pull-up(/down) bara för att hålla en ingång på ett känd nivå och den inte utsätts för speciella störningar duger 10K helt fint.

Men jag undrar över en sak.... "så med några 1k pullup som dras låga går det ju mer ström "till spillo" i motstånden än vad hela PICen drar obelastad"

Menar du att du monterar pull-up på utgångar? Varför i så fall?

Pull-up(/down) använder jag bara om inte jag kan säkerställa ett lämpligt nivå på annat sätt och en ingång drar "ingen ström", en utgång med totem-pole drivning behöver ingen pull-up(/down), alltså är det bara OC-utgångar som behöver det och som kan dra ström.

I de fall beror det exakta värdet på motståndet på vilken hastighet som önskas, kapacitiv belastning osv.
bearing
Inlägg: 11265
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Inlägg av bearing »

Ja, som en säkerhetåtgärd ifall någon krets skulle gå sönder eller på något sätt lämna en utgång flytande som kan få dåliga följder. T.ex. vid seriekommunikation, eller drivning av stora transistorer.

Om man drar motstånd mellan in/utgångar på kretsar, är det brytfrekvensen/stigtiden på filtret som bildas av motståndet och kapacitanserna som avgör motståndets värde? hur långt över den digitala frekvensen bör man lägga brytfrekvensen?

Är det en bra ide att lägga en liten kondensator över motståndet för att få bättre stigtid?
Användarvisningsbild
Icecap
Inlägg: 26151
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Inlägg av Icecap »

Alltså: om du lägger en konding över en pull-up(/down) motstånd blir den ju avkopplat.

Men du verkar inte skilja mellan "skyddsmotstånd" och pull-up(/down) motstånd och det är förvisso samma sorts komponent men ändamålet är mycket olika.

* En pull-up går mellan VCC och en ut-/ingång för att antingen säkerställa nivå och/eller "hjälpa till" med att dra nog plus.
* En pull-down gör exakt det samma fast till GND.

* Ett skyddsmotstånd sitter i serie med ett signal, kan vara för att begränsa ström, begränsa störningar eller annat samt en kombination därav.

Jag delade dom i 2 grupper då det är 2 mycket olika funktioner de uppfyller.

Sen får du definiera vilka du menar när du börjar prata om snabba upp osv.
bearing
Inlägg: 11265
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Inlägg av bearing »

Det jag tänker är att tråden ska innehålla allmäna råd om val av motstånd i digitala samband. Tror det kan vara andra som undrar det också.
Tänkte inte försöka få svar på specifika frågor från mig. Det borde jag så klart skrivit i första inlägget.

Jag ville inte skilja på motstånden för att hålla ämnet brett, men du har ju nog helt rätt i att man måste dela upp svaren.

Frågan om kondensator gällde med skyddsmotstånd.

Sen undrar jag också hur man ska få fram vilken kapacitans man ska räkna med.

Om man använder en komparator/OP för digitala signaler, vilken storlek på motståndet är lämpligt att välja då?

OK, mycket spridda frågor, men jag tycker det hör till ämnet.
Användarvisningsbild
Icecap
Inlägg: 26151
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Inlägg av Icecap »

Serie(/skydds)motståndets värde beror på vad som ska drivas osv. Jag använder det enbart in i och ut ur färdiga enheter, inte internt om inte det finns speciella skäl.
bearing
Inlägg: 11265
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Inlägg av bearing »

Nu kom jag på en annan anledning till varför jag brukar ha pull-up/-down-motstånd på utgångar. När PIC-kretsen är i reset blir alla pinnar ingångar.

Här kommer mer specifika frågor.
Bild
På J1 och J2 kommer signaler från en PIC på 100 kHz.
Signalerna är:
J1 låg, J2 hög
J1 och J2 hög
J2 låg, J1 hög
J1 och J2 hög

När signalen är låg drivs MOSFETens gate hög och vice versa.

Här lade jag pull-up motstånd vid ingången som säkerhet om kontakten skulle lossna/inte sitta i. Det finns risk att MOSFETen/-erna pajar om en/båda signalerna fastnar låg.

Fråga 1:
ICL 7667 drar 0,1 uA "input current" och >2V räknas som hög ingång. Räcker det då med (12V - 2V) / (0,1 * 10^-6) = 100 kohm som pullup?

Fråga 2:
Jag hade en ide' om att göra J1 och J2 höga genom att göra utgångarna på PICen till ingångar/tristate under dom två delarna av sekvensen. Hur skulle jag ha dimensionerat motstånden då?

Fråga 3:
Skulle det vara en bra ide' att sätta kondensatorer över R5 och R6 för att få snabbare till/frånslag av mosfetarna?
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43178
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Inlägg av sodjan »

Fråga 1.
Ja, men väldigt teoretiskt, kör med t.ex 5 ggr säkerhet eller ca 20 kohm.

Fråga 2 förstår jag inte riktigt...

Fråga 3.
Eller använd "riktiga" mosfet drivers.
(Om ICL7667 *är* det, så förstår jag inte frågan...)
macgyver
Inlägg: 321
Blev medlem: 8 juni 2005, 00:24:09
Ort: Göteborg
Kontakt:

Inlägg av macgyver »

Fråga 2, varför skulle du vilja använda tri-state och pull-up för att toggla utgången? definerar du utgången som en vanlig tomem-pole så får du garanterat bättre utsignal oavsett pull-up resistor

Fråga 3, Nej för då förlorar resistorerna sitt syfte, nämligen att dämpa oscillationerna
bearing
Inlägg: 11265
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Inlägg av bearing »

F1
Bra, tack, det är precis sånt här jag är ute efter.

EDIT: Jag hade räknat fel, det blir 100 Mohm. Skulle det största kolutskicktsmotståndet jag hittade på ELFA, 10 Mohm funka utmärkt som pull-up?
Det blir ju säkerhetsfaktor 10, men det låter ju väldigt stort!

F2
Dåligt skrivet av mig. Sekvensen är alltså de fyra raderna -
J1 låg, J2 hög
J1 och J2 hög
J2 låg, J1 hög
J1 och J2 hög
som repeteras hela tiden.

Jag hade svårt att få processorn att hinna följa den sekvensen i 100 kHz, så ide'n var att göra utgångarna tristate på dom två gångerna i sekvensen J1 och J2 är höga samtidigt för att få effektivare kod. Kodoptimeringen funkade dock inte som jag tänkt, så jag lät pinnarna vara utgång hela tiden. Men det spelar ingen roll här, för det är principen jag är ute efter.

Om utgångarna vore open collector antar jag att man skulle dimensionerat på det sättet jag undrar över. Då drivs ju bara signalerna låga, och dras höga av motståndet. P.g.a kapacitans på kretsens ingång och strökapacitanser borde det ta en stund för signalen att stiga till hög.

Fråga 2.1
Finns det några tumregler/metoder för att uppskatta kapacitansen?

Fråga 2.2
Dimensioneras motståndet för önskad stigtid på signalen som om det vore ett lågpassfilter, eller måste man ta hänsysn till annat, t.ex. ströinduktans?

F3
Ja ICL7667 är det, men vid högre frekvenser kanske snabbare tillslag vore en fördel. Men det var ingen bra ide alltså, tack.
Fransson
Inlägg: 525
Blev medlem: 20 maj 2006, 12:27:55
Skype: magnusfransson1
Ort: Bagarmossen (sthlm)

Inlägg av Fransson »

Intressant tråd, jag tänker följa den ett tag.
Användarvisningsbild
Icecap
Inlägg: 26151
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Inlägg av Icecap »

bearing:
1: Tänk på störningar! 10K-47K ville jag använda.

2.1: Nja....nej. Allt beror på designen, ledningsdragning, exakt vilka komponenter osv.
2.2: Ströinduktanserna är så små att de knappast betyder något om du har vettig kabeldragning.
bearing
Inlägg: 11265
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Inlägg av bearing »

Jag vill kunna känna mig trygg i att välja motstånd. Gillar inte att dra till med värden ur luften, och det gäller allt, inte bara elektronik.
Jag skulle därför vilja ha metod som jag använder när jag dimensionerar motstånd. Metoden tycker jag bör innehålla någon typ av räknande som har samband med det som påverkar motståndet och komponenterna kring det.

10k-47k fungerar kanske, men för mig är det värden tagna ur luften i princip. Om jag ska kunna lite på värdena, och känna mig trygg i att välja dem måste det på något sätt visas att det är lämpliga värden som funkar.

Vad är det för störningar som gör att 10 Mohm inte fungerar?
Användarvisningsbild
Maze
Inlägg: 435
Blev medlem: 8 juni 2004, 18:49:29
Ort: Göteborg

Inlägg av Maze »

Intressant tråd det här som gav svaret på en del frågor man haft när man suttit och konstruerat nåt. Något som jag saknar dock är en tråd i FAQ delen som tar upp lite om EMC, EMI och RFI. Hade varit trevligt att samla lite saker man bör tänkta på inom ämnet vid konstruktion av elektronik. Tex bypasskondingar, resistorer för att minska stig och falltider på signaler osv
bearing
Inlägg: 11265
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Inlägg av bearing »

Roligt att tråden varit till nytta för andra. Jag har fått några svar, men tycker mest jag ställt frågor, och de viktigaste frågorna har lämnats obesvarade. Är det svårt det här?
Skriv svar