Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Zasilanie lini I2C (TWI) innym napięciem niż uC

squeze 30 Lis 2012 00:46 1167 5
  • #1 30 Lis 2012 00:46
    squeze
    Poziom 12  

    Mam układ, który poskładałem jakiś czas temu. Z biegiem czasu chciałbym go nieco zmodernizować i dodać obsługę I2C piny uC (SDA, SCL) do obsługi magistrali mam wyciągnięte na goldpiny, tu nie ma problemu mogę się "wpiąć".

    Rzecz, która mnie nurtuje to zasilanie.
    uC (Atmega8) układu, który już mam jest zasilany przez stabilizator liniowy 3,3V. Komunikacja ma się odbywać między dwoma lub trzema uC. Tak więc każdy układ (nowy jaki chcę zrobić) też musi być zasilany 3,3V? czy mogę je zasilać 5V i takie napięcie podać na magistralę komunikacyjną?

    0 5
  • #2 30 Lis 2012 01:01
    mirekk36
    Poziom 42  

    oczywiście że nie można łączyć bezpośrednio magistrali I2C układu zasilanego +5V z magistralą układu zasilanego innym napięciem np +3,3V. Zresztą to przecież dotyczy nie tylko I2C ale KAŻDEGO rodzaju magistral czy linii łączących takie dwa różnie zasilane układy. Trzeba KONIECZNIE zrobić konwersję napięć. Na szczęście w przypadku I2C wystarczy do tego kilka rezystorów i dwa tranzystorki np BSS138. Spójrz sobie na schemat urządzenia na tej stronie LINK, w jego prawym dolnym rogu jest sobie układ STMPE811 zasilany +3,3V i widać te dwa tranzystory na magistrali I2C, oczywiście po stronie +5V obie linie magistrali też muszą być podciągnięte do VCC rezystorami 4,7K.

    Rozwiązanie łatwe, proste i skuteczne, co więcej zapewnia bezproblemową pracę na magistrali I2C z częstotliwością 400kHz. Sprawdzone m.in na tym właśnie module z linku.

    0
  • #3 30 Lis 2012 10:47
    squeze
    Poziom 12  

    Dziękuję za odpowiedź.
    Przepraszam najmocniej za brak schematu ale nie mam teraz możliwości go załączyć. Pokarzę fragment PCB z opisem. Czy dobrze to zrobiłem.

    Zasilanie lini I2C (TWI) innym napięciem niż uC

    Jeszcze raz przepraszam za tą "laurkę" ;)

    0
  • #4 30 Lis 2012 11:21
    mirekk36
    Poziom 42  

    no bez schematu to tak na słowo honoru można powiedzieć że jest chyba ok ;)

    Dodano po 1 [minuty]:

    ale pamiętasz o tym, że te same linie SDA i SCL po stronie +5V mają być koniecznie podciągnięte z kolei tak samo rezystorami tyle że 4,7K do +5V ? tutaj ich nie widać - masz je gdzieś dalej ?

    0
  • #5 30 Lis 2012 14:05
    squeze
    Poziom 12  

    tak pamiętam. Koniec linii będzie na innym urządzeniu które dopiero będzie projektowane.
    Dokładnie to centralka do sterowania rolet i oświetlenia.

    Wcześniej robiąc "sterownik" do rolet zrobiłem go z klawiszami i na podczerwień ale na wszelki wypadek na goldpiny dałem nieużywane piny uC. Teraz zamierzam z nich skorzystać. Dorobić małą płytkę (widoczny fragment) i połączyć to z centralką którą będę mógł zasilać +5V.

    Jeszcze raz serdecznie dziękuję z I2C dopiero zaczynam przygodę więc jeszcze trochę pracy po stronie kodu ;)

    PS. linie I2C podciągnięte do +5V przez same rezystory 4,7k Ohm już bez tranzystorów które w przypadku 3,3V służą do konwersji napięcia z +5V?

    0
  • #6 30 Lis 2012 14:13
    mirekk36
    Poziom 42  

    tak dokładnie te tranzystory służą do konwersji napięć z TTL na 3,3V i odwrotnie - przeanalizuj sobie ich podłączenie ale weź jeszcze pod uwagę ich dokładnych schemat z PDF bo wewnątrz mają jeszcze diodę podłączoną w kierunku zaporowym - i ona też jest do tego celu wykorzystywana ;)

    0