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

ATmega32 - "Wiszące" wejścia ADC - jak poprawić?

SlawekSok 05 Kwi 2014 16:31 1257 7
  • #1 05 Kwi 2014 16:31
    SlawekSok
    Poziom 9  

    Witam,

    Poniżej przedstawiam fragment schematu mojego urządzenia w którym będę wykorzystywał kilka wejść analogowych.
    Moje pytanie brzmi:
    1. Czy niewykorzystane wejścia analogowe pozostawić "wiszące"? Jeśli nie to jak je ustawić w programie i jak je podłączyć?
    2 Jak widzicie jedno z wejść analogowych wykorzystuje do odczytu stanu switcha - w momencie, kiedy switch nie jest używany ten pin również "wisi" w powietrzu - czy to nie będzie przeszkadzać? jak sobie z tym poradzić?

    Z góry dziękuję za wszelkie cenne wskazówki.

    ATmega32 - "Wiszące" wejścia ADC - jak poprawić?

    0 7
  • Arrow Multisolution Day
  • #2 05 Kwi 2014 16:43
    dondu
    Moderator Mikrokontrolery Projektowanie

    SlawekSok napisał:
    1. Czy niewykorzystane wejścia analogowe pozostawić "wiszące"? Jeśli nie to jak je ustawić w programie i jak je podłączyć?

    Ustaw jako wejścia z włączonym rezystorem pull-up lub jako wyjścia z dowolnym stanem. To dotyczy wszystkich wolnych pinów, a nie tylko ADC.


    SlawekSok napisał:
    2 Jak widzicie jedno z wejść analogowych wykorzystuje do odczytu stanu switcha - w momencie, kiedy switch nie jest używany ten pin również "wisi" w powietrzu - czy to nie będzie przeszkadzać? jak sobie z tym poradzić?

    Co znaczy switch nie używany? Chodzi Ci o to, że nie przyciśnięty?
    Jeżeli tak, to będziesz miał włączony rezystor pull-up więc pin nie będzie wisiał w powietrzu. Poza tym przenieś go na ADC7.

    Przeczytaj dokładnie ten artykuł: http://mikrokontrolery.blogspot.com/2011/03/avr-adc-podlaczenie.html

    0
  • Arrow Multisolution Day
  • #3 05 Kwi 2014 16:51
    SlawekSok
    Poziom 9  

    dondu napisał:
    Co znaczy switch nie używany? Chodzi Ci o to, że nie przyciśnięty?


    Tak, o to mi właśnie chodzi.
    Patrząc na schemat widać, że wejście PA5 "wisi" gdy switch nie jest wciśnięty.

    Dziękuję za pomoc. Jeśli nie trzeba nic modyfikować z podłączeniem tylko wystarczy w programie prze-konfigurować wejścia/wyjścia to ok.

    Oczywiście już się zabieram za czytanie artykułu.

    0
  • #4 05 Kwi 2014 16:57
    dondu
    Moderator Mikrokontrolery Projektowanie

    SlawekSok napisał:
    Patrząc na schemat widać, że wejście PA5 "wisi" gdy switch nie jest wciśnięty.

    Nie wisi, ponieważ do prawidłowego działania przycisku:

    dondu napisał:
    ... będziesz miał włączony rezystor pull-up więc pin nie będzie wisiał w powietrzu.

    Innym słowy rezystor pull-up zapewni Ci stan wysoki, gdy pin nie jest zwarty przyciskiem do masy.

    0
  • #5 05 Kwi 2014 18:45
    SlawekSok
    Poziom 9  

    Zapoznałem się z treścią z linku, który podałeś i mam pytanie odnośnie prawidłowego zasilania.

    Czy takie zasilanie jak poniżej jest prawidłowe? Wszystkie kondensatory prócz C2 i C3 po 100nF.
    Zastosowałem również dławik L1 - czy możesz mi polecić jakiś dławik SMD? może coś w obudowie 0805?

    ATmega32 - "Wiszące" wejścia ADC - jak poprawić?

    I jeszcze jedno pytanie:
    Czy tak podłączona dioda zaświeci? Czy może zmienić wartości rezystorów - mam na myśli głównie ten z PB1 do bazy tranzystora.
    LED czerwona - 3mm - prąd 20mA
    ATmega32 - "Wiszące" wejścia ADC - jak poprawić?

    0
  • #6 05 Kwi 2014 19:10
    dondu
    Moderator Mikrokontrolery Projektowanie

    Generalnie schemat filtrowania OK, aczkolwiek nie widząc całości, ani nie znając przeznaczenia urządzenia dodałbym jeszcze jakiś kondensator elektrolityczny.

    C7 może zostać, ale jeżeli układ nie będzie pracował w jakimś strasznie zakłóconym środowisku, to jest on zbędny. Może także (w specyficznym przypadku) przeszkadzać w programowaniu.

    Dławik - 10µH najlepiej drutowy o prądzie od kilku do kilkudziesięciu mA. Dlaczego tyle? ponieważ nie do końca wiem jaki jest schemat i co zasilać będą piny portu A, które zasilane są właśnie z AVcc. W wersji 0805 znajdziesz ferrytowe - drutowe są nieco większe, a koszt w okolicach 0,5zł, ale może uda Ci się znaleźć także 0805.

    Co do drugiego schematu to tranzystor jest zbędny. Piny tego mikrokontrolera wytrzymują 20mA, a na porcie nie masz innych potrzeb prądowych więc nie przekroczysz ograniczeń: http://mikrokontrolery.blogspot.com/2011/03/datasheet-mikrokontroler-prady-pinow.html

    0
  • #7 05 Kwi 2014 21:46
    SlawekSok
    Poziom 9  

    dondu napisał:
    dodałbym jeszcze jakiś kondensator elektrolityczny


    Mam dobrze filtrowaną przetwornicę napięcia - schemat zamieszczę jak go ukończę. Piszesz, że elektrolityczny a gdyby zastosować jakiś ceramiczny 10uF? Będzie?

    dondu napisał:
    Dławik - 10µH najlepiej drutowy


    Port A to tylko wejścia - żadnych wyjść na tym porcie nie przewiduję.
    Czy ferrytowy będzie nieodpowiedni? Koniecznie musi być drutowy?

    dondu napisał:
    o do drugiego schematu to tranzystor jest zbędny


    A gdybym jednak chciał zastosować ten tranzystor to czy w takim układzie będzie pracował?
    Pomimo tych 20mA, którymi można obciążać piny mikrokontrolera wolałbym aby nie był obciążany nawet tymi 20mA.
    Na tym porcie będę miał jeszcze 3 inne diody - więc w sumie 80mA z portu.

    0
  • #8 05 Kwi 2014 22:14
    dondu
    Moderator Mikrokontrolery Projektowanie

    Jeżeli zależy Ci na miniaturyzacji, to oczywiście może być ceramiczny, a możesz jeszcze pomyśleć na tantalowym.

    Dławik - nie pisałem, że musi być drutowy :)

    Tranzystor - będzie OK.
    Port wytrzymuje dużo więcej niż 4x20mA - we wcześniej załączonym linku opisałem to dokładnie.
    Sprawdź uwagi pod tabelką DC Characteristics Twojego mikrokontrolera - tam będą dodatkowe informacje w tym zakresie.

    0