Amega8 i reset

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From Polish to

Threaded View
Witam
Atmega8 steruje tranzystorem polowym w trybie PWM .Niestety po włączeniu
następuje krotki impuls do bramki FET . Bramka jest podłączona
bezpośrednio do pinu bez opornika podciągającego . Jak zapobiec takiemu
stanowi nieustalonemu ?

Re: Amega8 i reset
Marek S pisze:
Quoted text here. Click to load it

Źródła tego impulsu mogą być co najmniej dwa:
1) zakłócenia lub prądy wyjściowe w stanie Hi-Z
2) zła kolejność instrukcji w programie

AD1
      Proc po i w trakcie resetu ustawia wszystkie porty w stanie Hi-Z.
Wówczas jakieś prądy upływu z tego wyjścia (zawsze jakieś są) lub
zakłócenia mogą powodować pojawienie się napięcia bramka-źródło i
włączenie tranzystora. W takiej sytuacji jedynym wyjściem jest
zastosowanie rezystora bocznikującego między bramkę a źródło. Nie da się
tego zrobić inaczej. Proc po włączeniu resetuje się z pewnym
opóźnieniem, tzn. jest utrzymywany w czasie resetu pewien czas. To ni są
nanosekundy, a raczej milisekundy. I w tym czasie bramka Twojego
tranzystora wisi albo dostaje jakieś nA z wyjścia :/...

AD2
    Jeśli winny jest jednak nie stan Hi-Z tylko kolejność rozkazów, to ja
zasugerowałbym taką kolejność:

1) ustaw ten pin na stan nieaktywny (nie wiem, czy włączasz tranzystor 0
  czy 1, ale masz go wyłączyć)
2) ustaw pin jako wyjście
(te 2 instrukcje są może zbędne, ale wymuszą wyłączenie tranzystora na
starcie!!)
3) skonfiguruj timera z PWMem, wpisz wartość startową dla PWMa
4) TU KONIECZNA JEST PEWNA ZWŁOKA CZASOWA!!!!!!! chodzi o to, że jeśli
timer po starcie "minie" wartość, do jakiej miał zliczać być może będzie
się musiał "przekręcić" żeby zacząć poprawnie pracować!! Można
ewentualnie go wyzerować, ale i tak chyba lepiej odczekać 1 pełny cykl
timera ;)...
5) na samym końcu ustaw sterowanie pinem wyjściowym z PWMa

Dzięki temu tranzystor najpierw będzie wyłączony, a potem będzie
sterowany w poprawny sposób - nie będzie żadnych stanów przejściowych w
postaci sterowania z nieskonfigurowanego PWMa ;)...

Swoją drogą na Twoim miejscu przemyślałbym dokładnie punkt 1!! NAwet
jeśli brak rezystora nie odpowiada za Twoje obecne problemy z układem -
zauważ, że w bardziej zakłóconym środowisku przy innym egzemplarzu
procesora - mogą być jaja!! Ten rezystor nie jest chyba ani zbyt drogi
ani zbyt duży, żeby go tam dodać, prawda??

Pozdrawiam!
Konop

Re: Amega8 i reset
Quoted text here. Click to load it


Rozbraja mnie zawsze odpowiedz, że wszystkiemu są winne zakłócenia. A co to
właściwie są te zakłócenia??
Albo prądy wyjściowe? A co mają prądy wyjściowe  do sterowania FETa?

A



Re: Amega8 i reset
Quoted text here. Click to load it

Prady wyjsciowe to akurat maja. Plywanie/prowadzenie masy i/lub Miller.

--
Jerry1111

Re: Amega8 i reset
Marek S pisze:
Quoted text here. Click to load it

Jak napisał Konop załóż rezystor między bramkę, a źródło.
A przyczyną nie są zakłócenia, czy prądy wytwarzane przez procesor, ale
bramka jest ładowana przez upływności samego tranzystora. MOSFET czy FET
z odłączoną bramką sam zaczyna przewodzić.

Re: Amega8 i reset
Bogdan G pisze:
Quoted text here. Click to load it
Zrobiłem wg wskazówek i:
tranzystor nadal " miga "
- tranzystor bramkę ma podłączona do masy , czyli otwarty jest 1 zamknięty 0
- probowałem dać opornik do masy i do Vcc jako podciągający i nic sie
nie zmieniło, opornik w szereg tez nie zmienił niczego .
stan na stracie okładu powinien być zawsze 0 a jednak stan przechodzi
podczas statu programu poprzez 1
- w programie ustawiłem pin na 0 , PWM na 0 , też bez efektów
Natomiast zmiana jest wyraźna na diodzie sygnalizacyjne sterowanej 0 nie
mam stanu 0
- czyli dioda podłączona do Vcc poprze opornik nie błyska

Site Timeline