|
Svet elektronike Revija za prave elektronike
|
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
edo Začetnik
Pridružen/-a: Tor Jan 2004 1:15 Prispevkov: 13 Kraj: Komen
|
Objavljeno: Čet Jun 10, 2004 9:03 am Naslov sporočila: |
|
|
Mogoče pa upori ščitijo le I2C vodilo. Če je na vodilu več sužnjev in eden spreže, ostali še vedno lahko poslušajo Gospodarja, ker se I2C vodilo ne zruši zahvaljujoč serijskim uporom pred omaganim sužnjem.
Vsaj mislim da je tako. _________________ LP Edo. |
|
Nazaj na vrh |
|
|
Silvo Profesionalec
Pridružen/-a: Tor Jan 2004 19:06 Prispevkov: 234
|
Objavljeno: Čet Jun 10, 2004 12:30 pm Naslov sporočila: |
|
|
Ker mi vse skupaj ni dalo miru - vedel sem, da se je o I2C nekoč pisalo v SE sem šel danes listat stare revije. Upam, da mi Jure ne bo zameril - v prilogi kompleten vsaj za moje pojme zelo dober članek g. Branka Badrljica.
Koliko sem bežno pogledal nikjer ni omenjenih serijskih uporov
SimonS,
Sam nisem ravno začetnik kar se tiče I2C. Ena iz med resnejših aplikacij, ki sem jo naredil je sistem ogrevanja proizvodnje hale v podjetju. Na vodilu imam serijski eeprom, PCF8583 (ura), SAA1064 (driver za LED displej) Vse skupaj deluje že več kot 5 let nonstop. Do sedaj še ni nič crknilo, če prav nisem uporabil kakih serijskih uporov. V funkciji so 3 take aplikacije. Del (termometer je bil nekoč objavljen v SE)
Pullup upori samega procesorja? Načeloma ni ovir, Težava se pojavi, če le ti postavljajo pullup upore iz lacha. Pomeni, če se vklučjo le, če je v lachu visko stanje. Sam v vsakem primeru raje uporabim zunaje pullup upore in to z enostavnega razloga - zakaj bi po nepotrebnem dodatno tokovno obremenjeval procesor.
Glede philipsovih strokovnakov red mamba - bom preštudiral philipsovo literaturo - na strani sem videl neke aplikacije z serijskimi upori a do sedaj
nisem uspel vsega preštudirat.
P.S.
Jure, mogoče dovoliš, da tale preskan objavim tudi pri nas na www2.maxi.si
Ravno sem namreč pripravil nekaj na to temo.
***Klik***
Nazadnje urejal/a Silvo Čet Jun 10, 2004 12:42 pm; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
|
Silvo Profesionalec
Pridružen/-a: Tor Jan 2004 19:06 Prispevkov: 234
|
Objavljeno: Čet Jun 10, 2004 12:35 pm Naslov sporočila: |
|
|
2.del |
|
Nazaj na vrh |
|
|
SimonS Profesionalec
Pridružen/-a: Pon Jan 2004 17:52 Prispevkov: 181 Kraj: Kobarid
|
Objavljeno: Čet Jun 10, 2004 2:31 pm Naslov sporočila: |
|
|
Ziv Silvo
Saj nisem hotel nikogar zaliti. Sicer pa niti ne poznam Picov in njihovih portov. Kolikor sem jaz razumel Philipsa je imel v mislih da bi bili v sistemu vsi cipi brez internih pull upov. (Si predstavljas kaj bi se zgodilo ce bi bilo v sistemu vec cipov s pull up upori. Koliko bi bila njihova koncna vrednost? Par ohmov... kako bi le delalo vse skupaj...). Sicer pa imam original Philipsovo gradivo s I2C protokolom. Na zalost ne PDF. Lahko ti sfotokopiram in posljem, ce te zanima. (daj mi naslov) _________________ Skupaj smo mocnejsi
LP Simon |
|
Nazaj na vrh |
|
|
vilko Profesionalec
Pridružen/-a: Pon Jan 2004 11:54 Prispevkov: 807 Kraj: Ljubljana
|
Objavljeno: Čet Jun 10, 2004 2:46 pm Naslov sporočila: Hvala Silvo! |
|
|
Hvala Silvo, za izčrpen odgovor. Kar malo zoprnega se čutim, saj bi očitno lahko poiskal razlago o i2c vodilu sam na internetu, namesto, da sprašujem take stvari tukaj. No, pričakoval sem, da bom na hitro dobil jasen odgovor, ki ga bo nekdo stresel iz rokava, sedaj se pa čutim kar malo krivega, da sem dal razlog, da se spremo, kot naši politiki v parlamentu. Res je, v moji praksi, (ki ni tako obsežna kot tvoja) sem živel brez teh serijskih uporov, vendar se spominjam, da sem nekje videl tudi serijske, pa me je malo begalo, ali delam prav. Nisem profesionalec, sem amater.
Pozdrav vsem sodelujočim
Vilko _________________ Sliši se paradoksalno, a je vendarle res:
Nekateri ljudje imajo vedno vse prav. No, včasih. |
|
Nazaj na vrh |
|
|
Silvo Profesionalec
Pridružen/-a: Tor Jan 2004 19:06 Prispevkov: 234
|
Objavljeno: Čet Jun 10, 2004 4:39 pm Naslov sporočila: |
|
|
Citiram: | Kolikor sem jaz razumel Philipsa je imel v mislih da bi bili v sistemu vsi cipi brez internih pull upov. |
SimonS,
Tukaj ni bilo govora o "pullup" uporih ampak o serijskih uporih - torej uporih, ki bi so vezani zaporeno z pini, ki se pripenjajo na vodilo. Polemika se je začela, ko sem sam napisal, da ti upori niso potrebni. Sam jih do sedaj še nikoli nisem uporabljal. Če prebereš pripet čanek vidiš, da nisem napisal nič narobe. Vsa standardna "butasta" (sam tako imenujem elemete ki že imajo vgrajeno I2c vodiilo ter jih avtor članka imenuje "sužnji" Vhodi le teh so tipa odprtega kolektorja. Torej kot sem že napisal v postu pin lahko potegnejo le nadol. Nikakor pa NE MOREJO na vodilo spravit polno napetost logične enke. To dela le par pullup uporov (na vodilu rabimo le dva ne glede koliko je na njem periferije) Edini, ki lahko spravi na vodilo polno logično 1 je v našem primeru mikrokontroler. Zgoraj sem tudi napisal, da ne vem kako to delajo višji jeziki. Če le ti pretikajo stanje z nizkega na visoko na "polno" torej ko so le ti definirani kot izhodi bodo vsekakor potrebni serijski upori sicer sicer drug uporabnik ki bi želel na vodilo (recimo vodilo je prosto SDA ter SCL sta visoka - gor ju drži mikrokontroler ) pina ne bo spravil dol. Če pa to delaš kot sem zgoraj opisal : Ko želiš nizko stanje pin definraš kot IZHOD z nizkim stanjem. Ko pa želiš visoko stanje pin le preklopiš iz IZHODA na VHOD - zunanji pullup upor pa bo potegnil linijo na gor. V tem primeru v nobenem primeru NE MORE priti do preobremenitve.
lp
Silvo |
|
Nazaj na vrh |
|
|
Jure Urednik
Pridružen/-a: Pon Jan 2004 12:51 Prispevkov: 2132 Kraj: Ljubljana
|
Objavljeno: Pet Jun 11, 2004 8:14 am Naslov sporočila: |
|
|
Hoj,
na Philipsovi strani sem našel dokument, kjer je specificiran I2C in tam piše:
Citiram: | Optional series resistors Rs protect the I/O stages of the
I2C-bus devices from high-voltage spikes on the bus lines
and minimize ringing and interference.
Pull-up resistors Rp maintain the SDAH and SCLH lines at
a HIGH level when the bus is free and ensure the signals
are pulled up from a LOW to a HIGH level within the
required rise time. For higher capacitive bus-line loads
(>100 pF), the resistor Rp can be replaced by external
current source pull-ups to meet the rise time requirements.
Unless proceeded by an acknowledge bit, the rise time of
the SCLH clock pulses in Hs-mode transfers is shortened
by the internal current-source pull-up circuit MCS of the
active master. |
Dokument se nahaja na:http://www.semiconductors.philips.com/buses/i2c/
Torej so serijski upori zazeleni, niso pa nujni...
Lp
Jure |
|
Nazaj na vrh |
|
|
Silvo Profesionalec
Pridružen/-a: Tor Jan 2004 19:06 Prispevkov: 234
|
Objavljeno: Pet Jun 11, 2004 9:09 am Naslov sporočila: |
|
|
... in to v hs-modu ....
Seveda ni nič narobe, če so na CPU postavljeni seriski upori. (sploh na kaki testni plošči ali razvojnem orodju. Kajti dokaj hitro se lahko zgodi, da se na vodilo "spusti" visok nivo. Sploh če se programira v nizkem jeziku, kjer je treba celo I2C rutino napisati) Le razmerje med njimi ter pullup mora biti tako, da ko CPU potegne linijo na LO je na vodilu I2C tudi logičen nizek nivo. Pomeni, če bi bila pullup ter serijski upor enaka bi v trenutku logične 0 bilo na vodilo še vedno logična 1. (polovična napetost) |
|
Nazaj na vrh |
|
|
S57BIC Začetnik
Pridružen/-a: Pon Jan 2004 20:24 Prispevkov: 13 Kraj: Ljubljana
|
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu You cannot attach files in this forum You cannot download files in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|