-
Data: 2009-02-20 09:12:09
Temat: Re: Amega8 i reset
Od: Konop <k...@g...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Marek S pisze:
> 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 ?
Ź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
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
Najnowsze wątki
- 2025-03-12 Ryga => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i Kad
- 2025-03-12 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-03-12 Warszawa => Programista C <=
- 2025-03-12 Chrzanów => Spedytor Międzynarodowy (handel ładunkami/prowadzenie f
- 2025-03-12 64 proc. kierowców zrobi dodatkowo maks. 500 m, aby przy okazji zatankować pojazd
- 2025-03-12 Warszawa => Generative AI Engineer <=
- 2025-03-12 Dęblin => Node.js / Fullstack Developer <=
- 2025-03-12 Warszawa => Gen AI Engineer <=
- 2025-03-12 Warszawa => Data Engineer (Tech Lead) <=
- 2025-03-12 Gdańsk => PHP Developer <=
- 2025-03-12 China-Kraków => Production Coordinator / Representant Product Dev <=
- 2025-03-12 Warszawa => JavaScript / Node / Fullstack Developer <=
- 2025-03-12 China-Kraków => Key Account Manager IT <=
- 2025-03-12 Warszawa => Java Developer <=
- 2025-03-12 Warszawa => Junior Digital Product Manager <=