logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Podłączenie portów GSM do ATMEGA 32 przez tranzystor BC547 i rezystory 10k?

mystre 22 Kwi 2008 12:13 1620 4
REKLAMA
  • #1 5064085
    mystre
    Poziom 11  
    Posty: 65
    Witam

    Musze podlaczyc 2 porty ukladu(GSM) do Atmegi.
    1 port GSM ma byc zwierany do masy (wlacz/wylacz).
    2 port GSM chce odczytywać, jaki jest jego stan.

    W przypadku 1 portu, moge ustawic port Atmegi na wyjscie i ustawic stan 0, wtedy port 1 GSM bedzie mial stan niski.
    Tylko boje sie, ze jak dam stan wysoki, to upale ten 1 port GSM.
    Dlatego tez postanowilem robic to przez tranzystor BC547 (dodajac 10k na baze i 10k miedzy baze a emiter).

    Jezeli chodzi o port 2 GSM, to moge podlaczyc, go do atmegi ustawiajac w niej port jako wejscie (bez podciagania). Z tym, ze jak cos zle ustawie w programie, to znow cos moge upalic.
    Moze rezystor 10k miedzy portami zalatwi sprawe?

    Czy te rozwiazania beda dobre? Moze sa jakies lepsze?

    Pozdrawiam
  • REKLAMA
  • Pomocny post
    #2 5064100
    Freddie Chopin
    Specjalista - Mikrokontrolery
    Posty: 13336
    Pomógł: 1712
    Ocena: 870
    daj se spokoj z tymi rezystorami po prostu.... jak boisz sie ze cos upalisz, to predzej przez tranzystor niz bez, z prostej pzyczyny, ze wydajnosc portu uC wynosi moze 20mA, a wydajnosc tranzystora o wiele wiecej. pozaty - czemu mialbys niby cos upalic - jesli port jest jako wejscie, to w zalozeniach ma nieskonczenie wysoka impedancje (w praktyce wystarczajaca duzo, aby prad jaki tam wplynie byl na poziomie uA). z tego prostego wzgledu twoj rezystor 10k zmieni ta impedancje np z 1MR do 1.01MR. czyli w sumie w ogole jej nie zmieni [;

    0x41 0x56 0x45!!
  • REKLAMA
  • Pomocny post
    #3 5064178
    szelus
    Poziom 34  
    Posty: 1508
    Pomógł: 315
    Ocena: 53
    Zależy, jakie są dopuszczalne parametry tego układu GSM. Jeżeli np jest zasilany z 3.3V, a atmega z 5V i wejścia nie są 5V-tolerant to bezpośrednie połączenie może nie być wskazane.
    Tranzystor, jak zrozumiałem, w układzie OC, będzie zawsze bezpiecznym rozwiązaniem, chociaż nie koniecznie jest wymagany. Nawet jak wejścia nie są odporne na 5V, to można emulować wyjście typu otwarty dren przełączając je pomiędzy trybem wejściowym a wyjściem w stanie niskim.

    Jeżeli z kolei obawiasz się ustawienia portu przez pomyłkę w stan wyjścia to rezystor szeregowy możesz dać. Z uwagi na wysoką impedancję wejścia atmega, w praktyce działa poprawnie nawet 100k. Mam tak w swojej aplikacji, chociaż z innego powodu - zależało mi na odporności na ew. impulsy napięcia zaindukowane w dość długich przewodach.
  • REKLAMA
  • #4 5064299
    mystre
    Poziom 11  
    Posty: 65
    Port 1 zwiera sie do masy na pewien czas w celu wylaczenia, badz wlaczenia GSM.
    Z tego co pisza w nocie GSM to Vmax = VBAT = 3,3V-4,2V.
    ATMEGA jest zasilana z 3,3V. Wyglada na to, ze nawet jak dam port atmegi na wyjscie i ustawie stan wysoki to nie upale tego. Duzy prad chyba nie poplynie?

    Co do portu 2(output), to wartosci napiec zmieniaja sie w zakresie V0Lmax 0,2V, natomiast V0Hmax = VDD = 3V.
    Nie wiem co bedzie w sytuacji, jak na port 2 pojawi sie 3V i jednoczesnie na Atmedze32L 3,3V. Czy oba porty sie nie upala?
  • #5 5064312
    Freddie Chopin
    Specjalista - Mikrokontrolery
    Posty: 13336
    Pomógł: 1712
    Ocena: 870
    mystre napisał:
    Duzy prad chyba nie poplynie?

    zapewne tak maly, ze malo ktory miernik to zauwazy. no chyba ze projektanci tego GSMa to idioci, ale to malo prawdopodobne [;

    Cytat:
    Nie wiem co bedzie w sytuacji, jak na port 2 pojawi sie 3V i jednoczesnie na Atmedze32L 3,3V. Czy oba porty sie nie upala?

    1. raczej rowniez nic specjalnego sie nie powinno stac, ale to zalezy od wielu czynnikow
    2. skad zalozenia, ze moga sie tam pojawic takie napiecia? procesory same z siebie nic nie robia, wiec moze po prostu wystarczy napisac odpowiedni kod i gotowe?

    0x41 0x56 0x45!!
REKLAMA