Witam! Niedawno postanowiłem zbudować prosty moduł edukacyjny na układzie AVR (Atmega32 konkretnie), jednak po jego zbudowaniu natrafiłem na dość spory szereg problemów i wątpliwości, jak ktoś będzie w stanie mi pomóc będę wdzięczny.
Zaczynając od początku - oto schemat jaki 'zaprojektowałem':
(schemat użytego przeze mnie programatora jest tu: http://www.olimex.com/dev/pdf/avr-pg1b.pdf oczywiście wszystkie potrzebne piny z odpowiednich linii poprowadziłem do programatora)
Sa tu pewne różnice co do wartości i typu elementów jakie są na schemacie, a jakie użylem - użyty stabilizator to L78S05CV (a samo zasilanie było puszczone z baterii 9V), zamiast kondensatora 10u widocznego na schemacie użyłem 22u i zamiast obu 20p mam 24p, dioda D1 to zwykła dioda prostownicza, nie wiem nawet dokładnie jaka, poprostu w sklepie poprosiłem o prostowniczą
. W programatorze też są pewne zmiany - nie było w sklepach tranzystora BC846B, wiec dali mi BC546B mówiąc, że to ten sam
, tak samo zenery, poprostu chciałem na 5.1V. w związku ze schematem pojawia się problem nr 1 - otóż nie jestem na 100% pewny czy jest dobry
(głównie chodzi mi o obwód zawierający przełacznik i reset, czy tak może to być zrealizowane) jeżeli jest w nim coś co wymaga poprawy to byłbym wdzięczny za informację.
Po zlutowaniu układu (w wersji 1
) zdałem sobie sprawe z wielu błędów jakie zrobiłem. W związku z każdym z nich chciałbym wiedzieć, czy mogły one doprowadzić do uszkodzenia procesora i jeżeli tak to czy bez użycia specjalistycznych narzędzi, można stwierdzić czy procesor jeszcze 'żyje':
- na początku układ chciałem zlutować tak, aby był 'kompatybilny' z przewodem typu com-com do łączenia szeregowego 2ch pc'tów. Poza tym, że kabel jest dość długi (na oko ok. metra, co podobno też za dobrze na transmisję nie wpływa) to jeszcze nie patrzyłem na numeracje pinów gniazda com
przez co przylutowałem wyprowadzenia z płytki 'na wid' co oczywiście powodowało Test failed w PonyProg'u (i m.in. tu pada pytanie czy tego typu złe polutowanie mogło spowodować rozwalenie procka)
- po przemyśleniu sprawy przelutowałem końcówke com z męskiej na żeńską (tym razem patrząc na numeracje pinów) i podłączyłem programator bezpośrednio (bez użycia wspomnianego kabla) do kompa, zaowocowało to Test ok w PonyProgu (co ciekawe przy wyłączonym zasilaniu też jest Test ok, nie wiem czy to normalne czy nie) ale niestety niczym więcej (Earse, Read, czy Write oczywiście nie działa i non stop błąd 'Device missing or unknown device (-24)')
- przyglądając się bliżej schematom zauważyłem, że w chyba wszystkich układach z pinu Vcc do Resetu sygnał idzie przez rezystor, a z pinu reset na programator, wcześniej miałem to połączenie rozwarte, teraz zlutowałem to połączenie (oraz dodatkowo pozwierałem wszystkie widoczne zworki na schemacie - AVcc do Vcc, AGnd do Gnd i ARef do Gnd, nie wiem czy to dobre rozwiązanie, oraz czy na coś wpływa przy programowaniu), oczywiście w PonyProgu bez zmian - Test ok i Device Missing przy jakichkolwiek operacjach...
- przeszukując forum znalazłem informację o tym, że procek fabrycznie jest ustawiony na działanie z wewnętrznego oscylatora (o czym wcześniej nie wiedziałem i miałem wlutowane kondensatory i kwarc), więc wylutowałem kwarc i kondensatory, jednak sytuacja nie uległa zmianie w PonyProgu (i tu po raz kolejny pytanie czy taki błąd mógł spowodować zniszczenia proca)
- kolejne rzeczy jakie mi przychodzą do głowy to, to że mogłem źle wlutować tranzystor w programatorze
. Jeżeli dobrze pamiętam widziałem w necie kilka takich tranzystorów różnych producentów, z różnymi rozkładami pinów (chyba, że mi sie wydawało
) i w związku z tym jakby ktoś mi podał jakie mniej więcej powinny być spadki napięć na rezystorach polaryzujących tranzystor bym pomierzył i zobaczył czy się zgadza
- ostatnia wątpliwość jaka mi przychodzi do głowy to to, że używam systemu win2000 i że 'doinstalowałem' porty com dopiero co (nie były mi do niczego potrzebne już baaardzo długo, więc miałem je wyłączone w biosie). Tu się też pojawia kwestia czy nie są one jakoś 'blokowane' przez system (bo też o czymś takim słyszalem) oraz czy trzeba ich jakoś specjalnie ustawiać w menadżeże urządzeń (szybkość, parzystości, kontrola przepływu itd.) czy nie ma to znaczenia.
To jest chyba wszystko co mi w tej chwili przychodzi do głowy, jak coś mi się przypomni to dopiszę, dzieki za wszelką pomoc.
Zaczynając od początku - oto schemat jaki 'zaprojektowałem':
(schemat użytego przeze mnie programatora jest tu: http://www.olimex.com/dev/pdf/avr-pg1b.pdf oczywiście wszystkie potrzebne piny z odpowiednich linii poprowadziłem do programatora)
Sa tu pewne różnice co do wartości i typu elementów jakie są na schemacie, a jakie użylem - użyty stabilizator to L78S05CV (a samo zasilanie było puszczone z baterii 9V), zamiast kondensatora 10u widocznego na schemacie użyłem 22u i zamiast obu 20p mam 24p, dioda D1 to zwykła dioda prostownicza, nie wiem nawet dokładnie jaka, poprostu w sklepie poprosiłem o prostowniczą
Po zlutowaniu układu (w wersji 1
- na początku układ chciałem zlutować tak, aby był 'kompatybilny' z przewodem typu com-com do łączenia szeregowego 2ch pc'tów. Poza tym, że kabel jest dość długi (na oko ok. metra, co podobno też za dobrze na transmisję nie wpływa) to jeszcze nie patrzyłem na numeracje pinów gniazda com
- po przemyśleniu sprawy przelutowałem końcówke com z męskiej na żeńską (tym razem patrząc na numeracje pinów) i podłączyłem programator bezpośrednio (bez użycia wspomnianego kabla) do kompa, zaowocowało to Test ok w PonyProgu (co ciekawe przy wyłączonym zasilaniu też jest Test ok, nie wiem czy to normalne czy nie) ale niestety niczym więcej (Earse, Read, czy Write oczywiście nie działa i non stop błąd 'Device missing or unknown device (-24)')
- przyglądając się bliżej schematom zauważyłem, że w chyba wszystkich układach z pinu Vcc do Resetu sygnał idzie przez rezystor, a z pinu reset na programator, wcześniej miałem to połączenie rozwarte, teraz zlutowałem to połączenie (oraz dodatkowo pozwierałem wszystkie widoczne zworki na schemacie - AVcc do Vcc, AGnd do Gnd i ARef do Gnd, nie wiem czy to dobre rozwiązanie, oraz czy na coś wpływa przy programowaniu), oczywiście w PonyProgu bez zmian - Test ok i Device Missing przy jakichkolwiek operacjach...
- przeszukując forum znalazłem informację o tym, że procek fabrycznie jest ustawiony na działanie z wewnętrznego oscylatora (o czym wcześniej nie wiedziałem i miałem wlutowane kondensatory i kwarc), więc wylutowałem kwarc i kondensatory, jednak sytuacja nie uległa zmianie w PonyProgu (i tu po raz kolejny pytanie czy taki błąd mógł spowodować zniszczenia proca)
- kolejne rzeczy jakie mi przychodzą do głowy to, to że mogłem źle wlutować tranzystor w programatorze
- ostatnia wątpliwość jaka mi przychodzi do głowy to to, że używam systemu win2000 i że 'doinstalowałem' porty com dopiero co (nie były mi do niczego potrzebne już baaardzo długo, więc miałem je wyłączone w biosie). Tu się też pojawia kwestia czy nie są one jakoś 'blokowane' przez system (bo też o czymś takim słyszalem) oraz czy trzeba ich jakoś specjalnie ustawiać w menadżeże urządzeń (szybkość, parzystości, kontrola przepływu itd.) czy nie ma to znaczenia.
To jest chyba wszystko co mi w tej chwili przychodzi do głowy, jak coś mi się przypomni to dopiszę, dzieki za wszelką pomoc.