Goto page 1, 2, 3, 4 Next
Atlantis
Guest
Sat Jan 04, 2014 4:52 pm
Wykonałem na własne potrzeby prostą płytkę prototypową, zawierającą
ATMegę 328P oraz układ ENC28J60 (kontroler Ethernetu). Ceniąc sobie
stabilność wyżej niż wydajność przyjąłem następujące założenia:
1) Praca obydwu układów na napięciu 3,3V - brak buforów na magistrali SPI.
2) ATMega taktowana z wyjścia CLKOUT układu ENC28J60. Z noty katalogowej
wynika, że po podłączeniu zasilania powinno tam być 6,25 MHz (przy
kwarciu 25 MHz).
Całość generalnie wzorowana na tym schemacie:
http://tuxgraphics.org/common/src2/article06061/eth-remote-device.pdf
Po zmontowaniu całości przystąpiłem do pierwszych testów. Ustawiłem
fusebity w MCU na "External Clock". I tu niespodzianka - brak reakcji.
Programator przestał widzieć ATMegę. Podłączam oscyloskop do linii
CLKOUT i widzę płaską linię...
Czy mogę jeszcze coś sprawdzić przed założeniem, że ENC jest uszkodzony?
Jedna rzecz mnie zastanawia. Na różnych schematach widzę różne wartości
kondensatorów przy kwarcu, mieszczące się w przedziale 18-27 pF. Ja
dałem 22 pF 0603 (takie miałem pod ręką). Czy tu może tkwić źródło problemu?
To samo rezystor pomiędzy końcówką RBIAS i masą. Widzę tam różne
wartości pomiędzy 2-2,7k. Ja dałem właśnie 2,7k. Ten rezystor też może
mieć tu coś do rzeczy?
Jakub Rakus
Guest
Sat Jan 04, 2014 5:12 pm
On 04.01.2014 16:52, Atlantis wrote:
Quote:
Po zmontowaniu całości przystąpiłem do pierwszych testów. Ustawiłem
fusebity w MCU na "External Clock". I tu niespodzianka - brak reakcji.
Programator przestał widzieć ATMegę. Podłączam oscyloskop do linii
CLKOUT i widzę płaską linię...
Czy mogę jeszcze coś sprawdzić przed założeniem, że ENC jest uszkodzony?
A sprawdziłeś czy masz te 25MHz na kwarcu?
--
Pozdrawiam
Jakub Rakus
Atlantis
Guest
Sat Jan 04, 2014 5:42 pm
W dniu 2014-01-04 17:12, Jakub Rakus pisze:
Quote:
A sprawdziłeś czy masz te 25MHz na kwarcu?
Niestety, mój oscyloskop pracuje tylko do 15 MHz.
W każdym razie pomiar napięcia na obydwu końcówkach kwarcu pokazuje
1,4V. To samo (płaską linię w tej okolicy) widać na oscyloskopie. Jednak
jak mówiłem - 25 MHz jest już poza jego zakresem.
Na wszystkich pinach zasilania mam prawidłowe napięcie zasilania. W
pobliżu pinów znajdują się kondensatorki 100 nF.
Na RBIAS jest 1,21V.
Na VCAP 2,56V.
Na CLKOUT 0V.
Atlantis
Guest
Sat Jan 04, 2014 5:46 pm
Sprawdziłem też inny egzemplarz ENC28J60 - dokładnie te same objawy.
Tak swoją drogą mam jeszcze jedno pytanie. W międzyczasie wydarzył się
mały "wypadek". Nie wiem nawet czemu spróbowałem skontaktować się z
ATMegą na innym komputerze, za pomocą innego programatora ISP (dziwne
coś z Allegro, niezgodne z żadnym programem poza ProgISP. Okazało się,
że program ma domyślnie ustawione puszczanie zasilania do układu, w
związku z czym układ otrzymał przez chwilę 5V... Zorientowałem się
dopiero po chwili, mierząc napięcia.
Czy ENC28J60 mógł przeżyć takie potraktowanie, czy już jednoznacznie tą
sztukę można spisać na straty?
Jacek Maciejewski
Guest
Sat Jan 04, 2014 5:49 pm
Dnia Sat, 04 Jan 2014 17:42:44 +0100, Atlantis napisał(a):
Quote:
To samo (płaską linię w tej okolicy) widać na oscyloskopie. Jednak
jak mówiłem - 25 MHz jest już poza jego zakresem.
Zmajstruj sobie detektor szczytowy z dwóch diod i kondensatorka 1n. Podłącz
przez ten kond. swój miernik do kwarcu czy gdzieś tam i sprawdzisz czy jest
jakieś w.cz.
--
Jacek
Atlantis
Guest
Sat Jan 04, 2014 6:22 pm
W dniu 2014-01-04 17:49, Jacek Maciejewski pisze:
Quote:
Zmajstruj sobie detektor szczytowy z dwóch diod i kondensatorka 1n. Podłącz
przez ten kond. swój miernik do kwarcu czy gdzieś tam i sprawdzisz czy jest
jakieś w.cz.
Mam sondę w.cz. (szczytowy detektor równoległy), której kiedyś używałem
przy składaniu konstrukcji krótkofalarskich (jeszcze przed zakupem
oscyloskopu). Na wejściu kondensator 6,8 nF.
Próba pomiaru na którejkolwiek z końcówek karcu nie pokazuje żadnego
napięcia.
Mogę uznać, że u tkwi przyczyna? Nie ma taktowania? Kwarc się nie
wzbudza? Powinienem go wymienić, czy może winne są raczej te dwa
kondensatory 22pF? Powinienem dać mniejsze czy większe?
Jakub Rakus
Guest
Sat Jan 04, 2014 6:37 pm
On 04.01.2014 18:22, Atlantis wrote:
Quote:
Mogę uznać, że u tkwi przyczyna? Nie ma taktowania? Kwarc się nie
wzbudza? Powinienem go wymienić, czy może winne są raczej te dwa
kondensatory 22pF? Powinienem dać mniejsze czy większe?
W dokumentacji od ENC nic nie ma na temat tych pojemności? Układu
ścieżek? Dla pewności możesz podmienić każdy z elementów, kwarc,
kondzie, układ.
Kiedyś naprawiałem ustrojstwa do sterowania oświetleniem (kilka
przycisków, kilka przekaźników i atmega16). Bardzo często nie ruszało bo
nie wzbudzały się drgania na kwarcu popędzającym atmegę, czasem pomagało
dodanie równolegle rezystora 1M, a czasem (sic!) kilka cm srebrzanki
dolutowane do nogi atmegi jako "antena".
--
Pozdrawiam
Jakub Rakus
Atlantis
Guest
Sat Jan 04, 2014 6:51 pm
W dniu 2014-01-04 18:37, Jakub Rakus pisze:
Quote:
W dokumentacji od ENC nic nie ma na temat tych pojemności?
Niestety nie. Jest tylko tyle:
"The ENC28J60 is designed to operate at 25 MHz with
a crystal connected to the OSC1 and OSC2 pins. The
ENC28J60 design requires the use of a parallel cut
crystal. Use of a series cut crystal may give a frequency
out of the crystal manufacturer specifications."
Jak mam rozumieć "parallel cut crystal"? Równolegle cięty?
Atlantis
Guest
Sat Jan 04, 2014 6:59 pm
Wymiana układu i kwarcu nic nie zmieniła.
Kondensatory wymieniać w górę czy w dół?
Artur Miller
Guest
Sat Jan 04, 2014 7:00 pm
On Sat, 2014-01-04 at 16:52 +0100, Atlantis wrote:
Quote:
Wykonałem na własne potrzeby prostą płytkę prototypową, zawierającą
ATMegę 328P oraz układ ENC28J60 (kontroler Ethernetu). Ceniąc sobie
stabilność wyżej niż wydajność przyjąłem następujące założenia:
1) Praca obydwu układów na napięciu 3,3V - brak buforów na magistrali SPI.
2) ATMega taktowana z wyjścia CLKOUT układu ENC28J60. Z noty katalogowej
wynika, że po podłączeniu zasilania powinno tam być 6,25 MHz (przy
kwarciu 25 MHz).
Całość generalnie wzorowana na tym schemacie:
http://tuxgraphics.org/common/src2/article06061/eth-remote-device.pdf
Po zmontowaniu całości przystąpiłem do pierwszych testów. Ustawiłem
fusebity w MCU na "External Clock". I tu niespodzianka - brak reakcji.
Programator przestał widzieć ATMegę. Podłączam oscyloskop do linii
CLKOUT i widzę płaską linię...
Hint: pin RESET
a.
Marek
Guest
Sat Jan 04, 2014 7:04 pm
On Sat, 04 Jan 2014 16:52:11 +0100, Atlantis <marekw1986NOSPAM@wp.pl>
wrote:
Quote:
ATMegę 328P oraz układ ENC28J60 (kontroler Ethernetu). Ceniąc sobie
stabilność wyżej niż wydajność przyjąłem następujące założenia:
no to żebyś się nie rozczarował stabilnoscia

, nie wiem jak działa
stos/driver który chcesz użyć, ale jako ciekawostkę podam, że driver
microchipa do encj (użyty w ichnim stosie tcpip) ma (ew. miał, bo nie
wiem jak w najnowszej wersji) w kodzie Reset() (resetowanie mcu)
przy błędach crc. Nie wiem czy ten workaround wynikał z jakiś
słabości samego encj, czy niedoskonałości kodu stosu. Jak encj (stos,
jaką warstwa transportowa) ma działać u Ciebie, możesz zdradzić?
--
Marek
Jakub Rakus
Guest
Sat Jan 04, 2014 7:14 pm
On 04.01.2014 18:51, Atlantis wrote:
Quote:
W dniu 2014-01-04 18:37, Jakub Rakus pisze:
W dokumentacji od ENC nic nie ma na temat tych pojemności?
Niestety nie. Jest tylko tyle:
"The ENC28J60 is designed to operate at 25 MHz with
a crystal connected to the OSC1 and OSC2 pins. The
ENC28J60 design requires the use of a parallel cut
crystal. Use of a series cut crystal may give a frequency
out of the crystal manufacturer specifications."
Jak mam rozumieć "parallel cut crystal"? Równolegle cięty?
Tu masz o cięciu kryształów kwarcu i o tym co z tego wynika:
http://www.abracon.com/Support/qtzcry_glossary.pdf
Generalnie ktoś chciał się popisać przed szefem i napisać mądre zdanie w
dataszicie, bierzesz pierwszy lepszy rezonator ze sklepu i musi działać.
--
Pozdrawiam
Jakub Rakus
Marek
Guest
Sat Jan 04, 2014 7:26 pm
On Sat, 04 Jan 2014 18:22:59 +0100, Atlantis <marekw1986NOSPAM@wp.pl>
wrote:
Quote:
wzbudza? Powinienem go wymienić, czy może winne są raczej te dwa
kondensatory 22pF? Powinienem dać mniejsze czy większe?
Coś źle podlaczyles, u mnie działa encj na takim pająku od roku:
http://83.220.108.211/bins/srv.jpg
Do kwarcu użyłem zwykłe ceramiczne 27pF (zaznaczone w czerwonym
kółku).
--
Marek
Jacek Maciejewski
Guest
Sat Jan 04, 2014 7:40 pm
Dnia Sat, 04 Jan 2014 18:22:59 +0100, Atlantis napisał(a):
Quote:
Mogę uznać, że u tkwi przyczyna?
Na 95% tak

Popracuj nad generatorem. Może kwarc do d... może dzielnik
niedobrany... wszystko może być nawet to że podłączenie sondy gasi drgania.
--
Jacek
Atlantis
Guest
Sat Jan 04, 2014 8:44 pm
W dniu 2014-01-04 19:04, Marek pisze:
Quote:
no to żebyś się nie rozczarował stabilnoscia

, nie wiem jak działa
stos/driver który chcesz użyć, ale jako ciekawostkę podam, że driver
microchipa do encj (użyty w ichnim stosie tcpip) ma (ew. miał, bo nie
wiem jak w najnowszej wersji) w kodzie Reset() (resetowanie mcu) przy
błędach crc. Nie wiem czy ten workaround wynikał z jakiś słabości samego
encj, czy niedoskonałości kodu stosu. Jak encj (stos, jaką warstwa
transportowa) ma działać u Ciebie, możesz zdradzić?
Mam zamiar poeksperymentować trochę ze stosem ze strony tuxgraphics.org.
Na stronie jest dostępnych kilka wersji, pisanych z myślą o ATMegach 88,
168, 328 i 644 (proprocesor sam wybiera odpowiedni wariant kodu w
zależności od procka).
Sprzętowe przykłady na tej stronie wykorzystują właśnie takie
rozwiązanie jak u mnie - procesor taktowany z ENC.
Mirosław Kardaś przerobił bibliotekę, dodając obsługę Mega16 i Mega32.
Ta wersja została dołączona do książki "Programowanie mikrokontrolerów
AVR w języku C". W tym przypadku MCU był taktowany z osobnego
rezonatora, a ENC komunikował się przez bufory 74HC125.
W żadnym z powyższych przypadków pin reset w ENC28J60 NIE jest
wykorzystywany.
Goto page 1, 2, 3, 4 Next