Atmega32 i stan portów w czasie programowania

Sep 25, 2012 6 Replies

=_NextPart_000_0047_01CD9B48.3B7AB320 Content-Type: text/plain; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable



Prosz=EA o pomoc bo nie mog=EA znale=BC=E6 informacji, kt=F3ry port nie = b=EAdzie zmienia=E6 stanu od podania zasilania, przez programowanie a=BF = do uruchomienia programu. Musz=EA w uk=B3adzie da=E6 przeka=BCnik, = kt=F3ry ma ca=B3y czas zwiera=E6 styki wi=EAc wykorzystam te normalnie = zwarte. Jednak musze mie=E6 pewno=B6=E6, =BFe pin, kt=F3ry b=EAdzie = sterowa=E6 tym przeka=BCnikiem b=EAdzie mia=B3 stan zawsze stabilny nie = zale=BFnie od tego co si=EA dzieje z procesorem. Wiem, =BFe jeden port = si=EA nie nadaje ale nie mog=EA znale=BC=E6 kt=F3ry.



PC



Tak długo jak układ jest w resecie porty mają "stan domyślny" co oznacza chyba zawsze wysoką impedancję na normalnych portach a pull-up jak masz włączony jtag.

Zależy jakim napięciem/prądem sterujesz ten przekaźnik, ale jego bezwładność jest zazwyczaj taka duża, że "szpilka" i tak go nie przełączy. Prawdopodobnie sterujesz jakimś tranzystorem a wtedy i tak dobrą praktyką jest danie rezystora(pull-up/down), który wymusi ustalony stan przy włączaniu.

A skąd ta wiedza?

A skąd ta wiedza?

Wydaje mi się, że kiedyś czytałem coś o tym ale mogę się mylić. Ostatecznie dam 2 tranzystory i będę wyłączać przekaźnik przez wymuszenie niskiego stanu.

PC

W dniu 25.09.2012 19:39, PC pisze:

AVR to nie '51 ani ARM od NXP, żebyś musiał tak kombinować. Wystarczy wymusić stan początkowy rezystorem, tak jak ci napisał Michoo.

Jeszcze warto pamiętać o ustawieniu brownout, albo mogą dziać się naprawdę nieciekawe rzeczy gdy zasilanie jest blokowane dużym kondensatorem - łącznie ze zmianą zawartości flash i eeprom.

O ile pamiętam, to ATmega8 robi jakieś dziwne rzeczy na porcie D podczas programowania przez SPI, co mnie kiedyś bardzo zaskoczyło. W nocie katalogowej nie ma o tym ani słowa. W ATmega32 chyba już tego problemu nie ma, wydaje mi się że sprawdzałem, ale nie pamiętam, czy w zwykłej, czy w U4.

O to właśnie chodzi. Jakiś cyrk w czasie programowania przez ISP.

PC

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required