niedziela, 20 marca 2011

Datasheet: Mikrokontroler - ograniczenia prądu portów


Autor: Dondu

Artykuł jest częścią cyklu: Mikrokontroler vs prądy pinów

Kolejnym ograniczeniem bywa łączny prąd pinów I/O jednego portu lub jego fragmentu. Także w tym zakresie możesz znaleźć w datasheet informacje.


Mikrokontroler AVR ATmega8

W przypadku ATmega8 nie są one jawnie ukazane w żadnej tabelce, ale możesz je znaleźć w notkach do tabeli. I tak pod tabelą DC Characteristics znajdujemy informacje:

1. Maksymalny sumaryczny prąd wszystkich pinów I/O


AVR ATmega8 - Datasheet - Maksymalny sumaryczny prąd wszystkich pinów I/O.


Wskazany fragment datasheet podaje, iż suma prądów sink (IOL) jak i source (IOH), nie powinna przekraczać 300mA.

Ponieważ jednak parametry te są opisane w dwóch osobnych punktach, można mieć wątpliwości, czy ograniczenia te są osobne dla sink i source, czy należy traktować je jako wspólne łączne ograniczenie.

Wątpliwości w tym zakresie wyjaśniam w tym artykule.


2. Maksymalny sumaryczny prąd dla fragmentu portu C (PC0-PC5)

Port C w ATmega8 zawiera siedem pinów PC0-PC6.

W tym samym fragmencie datasheet znajdujemy także punkt, który dotyczy fragmentu portu C:


AVR ATmega8 - Datasheet - Maksymalny sumaryczny prąd dla fragmentu portu C (PC0-PC5).


Ograniczenie to mówi, że suma wszystkich prądów pinów PC0-PC5 nie może przekroczyć 100mA.

Zauważ, że teoretycznie mogliśmy oczekiwać ekstremalnych 40mA z jednego pinu, czyli dla 6 pinów:

Isum = 6 • 40mA = 240mA

a bezpiecznie mogliśmy się spodziewać 20mA z jednego pinu, to dla sześciu:

Isum = 6 • 20mA = 120mA

ale w obu przypadkach przekroczymy graniczne 100mA.


Skąd się bierze podział portu C na dwa osobne fragmenty?


Port C w przypadku ATmega8 na pinach PC0-PC5 jest fragmentem przetwornika analogowo- cyfrowego (ADC), przez co ten obszar wewnętrznej struktury jest zbudowany oraz zasilany w inny sposób.

Pin PC6 pełni natomiast funkcję pinu RESET, o którym pisałem w poprzednim artykule.

W tym zakresie wiedzę możesz znaleźć także w dwóch artykułach:




3. Maksymalny sumaryczny prąd dla  PB0-PB7, PC6, PD0-D7 oraz XTAL2

I kolejne ograniczenie opisane w notce:

AVR ATmega8 - Datasheet - Maksymalny sumaryczny prąd dla  PB0-PB7, PC6, PD0-D7 oraz XTAL2.

Tym razem mamy jedno wspólne sumaryczne ograniczenie dla pozostałych pinów mikrokontrolera, które wynosi 200mA.




Mikrokontroler PIC

W przypadku naszego przykładowego mikrokontrolera PIC18F87K90, dysponujemy właściwie tylko jedną informacją dot. maksymalnego sumarycznego prądu wszystkich pinów I/O:


PIC18F87K90 - Datasheet - Maksymalny sumaryczny prąd wszystkich pinów I/O.

Nie ma także żadnych wykresów. Można więc domniemywać, że trzymając się parametrów pojedynczych pinów (o których pisałem w poprzednim artykule), nie występują ograniczenia w zakresie sumarycznych prądów.



Podsumowanie

Wewnętrzne struktury i sposób podziału funkcjonalności poszczególnych pinów oraz ich specyficzne właściwości, wpływają znacząco na ich możliwości prądowe. Zawsze sprawdzaj datasheet, w celu znalezienia możliwych niespodzianek w tym zakresie.


Prądy pinów: Spis treści

1 komentarz:

  1. Witam, w punkcie "2. Maksymalny sumaryczny prąd dla fragmentu portu C" podajesz, że w przypadku gdy będziesz sourcował 6x20mA to przekroczysz podane 100mA i tutaj całkowita zgoda. Natomiast co w przypadku, gdy będziemy sourcować 3x20mA oraz sinkować 3x20mA ?

    OdpowiedzUsuń