Hoi,
Wie kan me even vlot uit de brand helpen. Ik wil een RTC (real-time clock) met een ATMEL AVR laten "praten" middels aanwezige I2C. Echter draait de RTC op 1,5 Volt (om een niet nader te noemen reden) en de uC op ca 5Volt.
Voor zover ik weet werkt I2C met pull-ups, zodat de power-supply geen issue is, maar klopt dit echt?
Wie kan me er kort meer over vertellen.
Groeten,
Peter.
LaStei
carpe cerevisi
Welke RTC gebruik je? Is die 1.5V de voedingspanning die die maximaal mag hebben, of de laagste voedingsspanning waarbij-ie het doet?
Volgens mij werkt het idd zo, de pullups trekken de lijnen van de bus omhoog meer niet. Overigens is die 1,5V waarschijnlijk afkomstig van de lithium batterij (die wel aan de common gnd moet hangen). In dat geval schakelt mijn i2c clock (ds1307) over in power failure mode. Dan doet hij het wel maar is write protected.
Er was altijd een pdf van phillips zelf met het hele I2C-bus erin beschreven. Daar stond ook niets bij hoe je met verschillende spanningen moest werken. Was iets met enkel 2 mosfets volgens mij, maar ik kan die hele pdf niet meer vinden. Een poosje geleden stond ie er wel gewoon maar deed ie het niet.
Maarja, heb nu wel iets gevonden met een buffer-chip maar die werkt van 2 tot 15v als ik het zo vlug bekijk. Misschien kun je wel iets maken dat lijkt op die chip. Zijn namelijk gewoon twee op-amp's.
http://www.semiconductors.philips.com/acrobat_download/literature/9397…
Oja, de pull-ups trekken de lijnen wel alleen omhoog. Maar ik kan me voorstellen dat als het door iets hoger getrokken wordt dan de voedingsspanning, dat je 1,5v mee omhoog wordt getrokken door eventuele diodes in de uitgangen sda en scl naar die 1,5v. Zo krijg ik lijnen in mijn lcd als ik het i2c spanningsnivo niet aanpas.
[Bericht gewijzigd door Lampie op ]
Op 25 januari 2006 16:13:48 schreef LaStei:
Welke RTC gebruik je? Is die 1.5V de voedingspanning die die maximaal mag hebben, of de laagste voedingsspanning waarbij-ie het doet?
Even een correctie, een LCD display werkt op 5V en de uC en RTC op 3V ...
De RTC is meende ik de PCF8563
Op 25 januari 2006 16:31:57 schreef Lampie:
Er was altijd een pdf van phillips zelf met het hele I2C-bus erin beschreven. Daar stond ook niets bij hoe je met verschillende spanningen moest werken. Was iets met enkel 2 mosfets volgens mij, maar ik kan die hele pdf niet meer vinden. Een poosje geleden stond ie er wel gewoon maar deed ie het niet.Maarja, heb nu wel iets gevonden met een buffer-chip maar die werkt van 2 tot 15v als ik het zo vlug bekijk. Misschien kun je wel iets maken dat lijkt op die chip. Zijn namelijk gewoon twee op-amp's.
http://www.semiconductors.philips.com/acrobat_download/literature/9397…
Oja, de pull-ups trekken de lijnen wel alleen omhoog. Maar ik kan me voorstellen dat als het door iets hoger getrokken wordt dan de voedingsspanning, dat je 1,5v mee omhoog wordt getrokken door eventuele diodes in de uitgangen sda en scl naar die 1,5v. Zo krijg ik lijnen in mijn lcd als ik het i2c spanningsnivo niet aanpas.
Hartelijk dank voor je info ... ik zal er eens goed naar kijken.
Peter.
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
trek die voeding omhoog. dit gaat je iet lukken
er is een levelshifter ic wat dit kan . maxim heeft het maar het is niet verkrijgbaar voor 'de man met de pet'( ook niet in sample )
LaStei
carpe cerevisi
Elektuur December 2004 staat een schema (pag 31) met twee MOSFET's (2xFDV301N) die de level translation doen. Gate op fixed 3V3, source op het signaal (SDA en SCL) en de drain draait 5V via een 10k pull-up. Erachter hebben zij er een P82B715 buffer zitten, en dat hele zaakje werk goed.
Maar nog even het datasheet nagekeken:
http://www.semiconductors.philips.com/acrobat_download/datasheets/PCF8…
Die chip doet het ook met 5 V. kijk maar op pagina 2
[Bericht gewijzigd door LaStei op ]
I2C bestaat maar in 2 versies: 3.3V en 5V en daar zijn level shifters voor. Moet je de I2C lijnen niet via de pull-ups van 1K aan de 5V aansluiten?
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
MIS !!! i2c op 1.2 votl bestaat wel degelijk !!! wordt onderandere in gsm en smartphones gebruikt.
maar dan is gans het systeem op dat nievau.
het is zelfs mogelijk om i2c op 12 volt te doen als het moet
Ik ben er nu achter. Het is een issue. Er is een pdf van Philips genaamd AN97055 die een suggestie voor een level shifter doet. Hieraan is door Lampie gerefereerd. Het is eigenlijk heel eenvoudig. De twee buslijnen worden ieder aanelkaar geknoopt door een mosfet. De gates daarvan hangen dan aan de rail met de lage spanning. Overigens iedere rail heeft eigen pullups.
Dit principe is ook de basis voor het elektuur-ding geloof ik. De suggesties die men doet is BSN10/20 of BSS83/88. Dan kun je volstaan met mosfets. Drain is dan altijd de kant met de hogere spanning. Ik heb ook BSS138 zien gebruiken. De truuk is om een wat steile flank te krijgen. De pullups spelen hier een belangrijke rol in, in het laatste geval was 4.7k een goede keus. De ondergrens van de spanning van de bussen doet er dan niet zo toe, de mosfets bepalen eigenlijk wat de ondergrens is.
[Bericht gewijzigd door Yuroon op ]