Mikrokontrolery - Jak zacząć?

... czyli zbiór praktycznej wiedzy dot. mikrokontrolerów.

poniedziałek, 4 kwietnia 2011

Piekło początkujących


Autor: Dondu

Każdy z nas kiedyś zaczynał swoją przygodę z elektroniką:

  • lekceważąc podstawowe prawa fizyki.
  • nie czytając datasheet-ów i książek,
  • spiesząc się,
  • chcąc przeskoczyć od razu do dużych projektów,

więc każdy z nas usmażył wiele elementów elektronicznych, tracąc czas i pieniądze.

Ale Ty nie musisz nas naśladować :-)
... no chyba, że chcesz.



Jak to mówił Mistrz Yoda:

Yoda
Cierpliwym być musisz, by wiedzę zgłębiać tajemną, gdyż ciemna strona mocy niszczącą i silną jest.


W tamtych czasach i galaktykach, zasady były takie same jak dziś, a Twoimi mistrzami powinny być:
  • karty katalogowe elementów elektronicznych (datasheet),
  • dobre książki.
A jeżeli nie, to stopień po stopniu kroczyć będziesz po schodach piekielnych.




Schody do Piekła Początkujących

Piekielne bannerki do pobrania: Bannery piekielne


Stopień 1 - Brak schematu

Początkującym wydaje się, że budowany przez nich układ jest tak prosty, że nie wymaga zaprojektowania schematu. Nic bardziej mylnego. To właśnie schemat na etapie początkowym pozwala na skuteczne zbudowanie prawidłowo działającego układu. Ułatwia także autoweryfikację

Taki schemat zawsze możesz wrzucić na któreś z forum w celu sprawdzenia przez bardziej doświadczonych kolegów, jeszcze przed zbudowaniem układu. Co więcej, gdy coś nie działa szybciej znajdziesz tego przyczynę lub pomoc na forum.

No chyba, że będziesz się upierał tak jak kolega:

Aldoro Draxy
Schemat nie jest potrzebny!

to Twój temat ma szansę wylądować w koszu.

Są też przypadki, gdy autor brnie w zaparte i utrzymuje, że pokazany przez niego schemat jest poprawny pomimo, że jest błędny i inni mu to uświadamiają, a na końcu się okazuje, że układ ma połączony zupełnie inaczej niż na swoim złym schemacie. Traci swój czas, a pomagające mu osoby razem z nim :-)





Stopień 2 - Nie podłączanie niezbędnie wymaganych pinów 

To jeden z NAJWIĘKSZYCH BŁĘDÓW, lekceważony często nawet przez bardziej doświadczonych "prawie elektroników". Spotyka się nawet studentów elektroniki, którzy ten problem lekceważą. No cóż, taka ludzka natura :-)









Stopień 3 - Pośpiech niszczy Twoją pracę

Wszystko już połączyłeś, masz puls 160, włączasz zasilanie .... BUUUM!!! No tak, nie sprawdziłem dokładnie i podłączyłem zasilanie odwrotnie.
  • Trzy razy sprawdź połączenia zanim włączysz zasilanie.
  • Sprawdź  kierunek włożenia układów w podstawki.
  • Sprawdź napięcie zasilające (czy nie za duże).

Zarezerwuj kolory przewodów:
  • czerwony - "plus",
  • niebieski - "minus" czyli masa
i nigdy nie używaj tych kolorów do innych celów.

Warto także:
  • opisywać przewody poprzez przyklejenie taśmy samoprzylepnej z odpowiednim opisem.
  • stosować końcówki z izolowanymi wtyczkami do goldpin-ów (przewód nie zrobi przypadkowego zwarcia).





Stopień 4 - Płytki drukowane na początku

Wielu zapaleńców do swoich pierwszych projektów od razu wykonuje płytkę drukowaną jeszcze przed zbudowaniem prototypu. Później te płytki lądują w koszu, bo schemat układu był zły, albo nie wiedział, że trzeba dołożyć niezbędne elementy dodatkowe np. kondensatory, czy rezystory podciągające, dławikach, itp.

O wiele lepiej wykorzystać płytki stykowe lub uniwersalne (lutowane).




Stopień 5 - Brak wiedzy o zakłóceniach

Niestety mikrokontrolery, także są czułe na zakłócenia, a początkujący wiedzę w tym temacie ma praktycznie zerową. To BAAAAARDZO istotny stopień piekielnych schodów.








Stopień 6 - Za duży projekt na początek

Rozpoczynanie przygody z mikrokontrolerami od skomplikowanego projektu, to klucz do samozagłady swojego zapału i sprzętu. Rozpoczynaj od migania diodami LED, sukcesywnie opanowując poszczególne elementy mikrokontrolera.

Bo frustracja przechodzi w zniechęcenie i w konsekwencji doprowadzi Ciebie do  porzucenia tej przyjemnej i dającej wiele satysfakcji dziedziny, jaką jest elektronika.









Stopień 7 - Ślepe ufanie niesprawdzonym informacjom

Niestety w sieci oraz na forach dyskusyjnych, spotyka się czasami "fachowców", którzy doradzają, lekko to ujmując bzdury. Jako początkujący nie masz doświadczenia, które pozwoli Ci na odsianie złych od dobrych. Przekonało się o tym już wielu:

tmazur
Dodałem kondensator i sprawa załatwiona. Wniosek taki że nie można wierzyć we wszystko co jest napisane na forum.

Bierz pod uwagę także, że każdy ma prawo się pomylić, nawet najlepszy. Dlatego dokładnie sprawdzaj autora informacji, a przede wszystkim samą informację. Czasami lepiej poczekać na kilka odpowiedzi i dopytać dokładnie, byś po uszkodzeniu swojego układu, nie musiał szukać delikwenta, i żądać zwrotu kosztów - sieciowa galaktyka jest wielka i nieprzenikniona :-)

Ja także czasami głupotę palnę: Na przykład tutaj!



Stopień 8 - Złe korzystanie z forów dyskusyjnych

Jeżeli nie stosujesz się do podstawowych zasad pozyskiwania wiedzy z forów dyskusyjnych, Twoje problemy nie zostaną przez Ciebie szybko rozwiązane. Warto byś poznał je, by zwiększyć swoje szanse, na szybkie i skuteczne rozwiązywanie problemów: Fora dyskusyjne są bardzo pomocne







Stopień 9 - Wróżenie

Wróżenie to jedno z częściej pojawiających się na forum "podejść" do tematu przez początkujących, wynikające z braku wiedzy i/lub doświadczenia. Są co najmniej dwie odmiany wróżenia:

Pierwsza odmiana, to podejrzewanie producentów mikrokontrolerów i/lub sprzedawców o nagminne dostarczanie im bubli. Często twierdzą, że mikrokontrolery działają niezgodnie z dokumentacją i wróżą na potęgę szukając przyczyn wszędzie tylko nie w swoim programie czy schemacie :-)

Nie pomaga tłumaczenie, że nie tędy droga, idą w zaparte przez co tracą swój i pomagających im osób czas, tak jak:

monokrysztal12
Albo może egzemplarz procesora wadliwy ... Czyli wychodzi, że układy mimo że z jednakowej partii produkcyjnej, przejawiają różne sposoby działania przy jednakowym programie i innych ustawieniach oraz ogólnie ich struktury wewnętrzne są wrażliwe nawet na znikome zakłócenia.

wróżbita
Obawiam się że to wina kompilatora, bo przykład jest zaczerpnięty z ksiązki ...


Drugą odmianą wróżenia, jest oczekiwanie od pomagających, by domyślali się przyczyn błędów z bardzo skromnych i lakonicznych ich opisów, co bardzo fajnie skomentował:

sulfur
Określ najpierw, co chcesz osiągnąć, bo takie zgadywanie szybko się nudzi.
W "zgadnij co autor miał na myśli" nikt tutaj bawił się nie będzie.


Kumulacja wróżenia
Najgorszy przypadek, to gdy ktoś łączy obie odmiany wróżenia w jednym temacie, brrr. Wtedy nawet moderatorzy tracą cierpliwość i słusznie wywalają tematy do kosza.



Stopień 10 - Ignorowanie warningów

Śmiem twierdzić, że na 10 początkujących, aż 7 ignoruje warningi czyli ostrzeżenia kompilatora podczas kompilowania kodu. Co więcej prosząc o pomoc na forum nie informują pomagających, że warningi występują. O zgrozo są też tacy, którzy pytają jak wyłączyć pojawianie się warningów!

Zobacz do czego to prowadzi: Początkujący + warning = błąd




Stopień 11 - Nie czytanie datasheet

Tu należy początkujących podzielić na dwie grupy:
Nieświadomych oraz Zatwardziałych

Nieświadomi prędzej czy później trafiają na właściwą drogę ku jasnej stronie mocy i zaczynają czytać datasheety oraz  książki, i co najważniejsze stosować się do nich. To normalna droga, każdy z nas przez nią przechodził.

Gorszą grupą są Zatwardziali. Ta część lekceważy wszystko: fizykę, producentów mikrokontrolerów, ich inżynierów i dokumentację, książki, nauczycieli, itd. :-)

Dla tej grupy początkujących nie ma ratunku. Sami muszą poprzez swoje projekty dojść do zrozumienia, że "ciemna strona mocy" to niewłaściwa strona. Na to trzeba czasami wielu lat, ale to ich problem :-)

W tej grupie postawa polegająca na nie czytaniu dokumentacji, to wręcz pozytywny trend, którym się często chwalą, choć wiedzą, że to zła droga:

fotomh-s
Nawet nie pomyślałem nigdy o tym aby podłączyć pin 31(masa), pewnie dlatego, że nie czytam zbyt dokładnie not katalogowych ...

i z reguły "zdaje im się", że coś wiedzą:

fotomh-s
Ja w żadnej mojej ATmedze 16 nigdy nie podłączyłem pinu 31 (masa) i jakoś wszystkie działały bez problemów, nawet ADC śmigał. Zdaje mi się, że to jest zwykłe zdublowanie tego pinu, może przydać się jak się pin ułamie.

a jednocześnie dziwią się, że układy im się resetują:

fotomh-s
Właśnie mam problem z resetowaniem układu ...


Zatwardziali, to z reguły najmłodsi początkujący, choć i wśród studentów elektroniki się zdarzają (na szczęście to bardzo nieliczne wyjątki :-) ).



Stopień 12 - Zabobony silne są 

W sieci wiele jest informacji, które tworzą mity, więc ich pogromcy mają pełne ręce roboty. A to, że mokrokontrolery wybuchają gdy przez zero dzielą, a to znowu gdy stos się przepełni.

Ciemnogród strasznie łatwowierny jest i zamiast sprawdzić Erraty mikrokontrolera, brnie w czeluść piekielną. Aż trudno wybrać kogo zacytować, więc tylko link zapodam: Don't ever divide by zero on AVR atmega32!

Na szczęście moderatorzy czujnymi pogromcami mitów są i podzielają nasze zdanie, że kosz to właściwe miejsce dla zabobonów :-)



Piekielne bannerki do pobrania: Bannery piekielne


I tak stopień po stopniu  dotarłeś na samo dno 
Piekła Początkujących
Choć jest iskierka nadziei skoro ten tekst czytasz, to powyższe pewnie także przeczytałeś :-)
Idź więc do Spisu treści i chłoń wiedzę za darmo.

Ale jeżeli nie to powodzenia w piekle - będzie Ci potrzebne!



Oceń artykuł.
Wasze opinie są dla nas ważne, gdyż pozwalają dopracować poszczególne artykuły.
Pozdrawiamy, Autorzy
Ten artykuł oceniam na:

13 komentarzy:

  1. Moim zdaniem bardzo dobry tekst. Jako że sam jestem baaaardzo początkującym, mam zamiar ściśle wystrzegać się schodów do piekła >:)
    z3d

    OdpowiedzUsuń
  2. Kurcze nie doceniałem niektórych spraw. Dzięki!

    OdpowiedzUsuń
  3. Fajne i z jajem. Sam kiedyś taki byłem, na szczęście te lata minęły bezpowrotnie.

    OdpowiedzUsuń
  4. Zatwardziali są TheBeściaki!!!
    :D

    OdpowiedzUsuń
  5. Eeee, no dobra też taki jestem ale lubie się sparzyć czsami.

    OdpowiedzUsuń
  6. No, sporo straciłem czasu i PLN zanim pojąłem, że te zasady są istotne.

    OdpowiedzUsuń
  7. INteresujące :D

    OdpowiedzUsuń
  8. Witam. Z jajem napisane, ale już wiem czego nie powinienem robić, a o to chyba chodziło. Dziękuję.

    OdpowiedzUsuń
  9. Bardzo przystępne teksty, kawał dobrej roboty!!!!

    OdpowiedzUsuń
  10. Ja jestem początkującym i czytam datasheet'y za to stopień nr 3 się kłania. Ostatnio usmażyłem konwerter USB-TTL bo na szybko go wpinałem i zapomniałem o masie, a i atmega8 raz poszła z dymem bo też na szybko montowane (wpoiłem na odwrót)... o ile mega nie zrobiła na mnie wrażenia to już konwertera mi było żal, od tamtej pory 3 razy sprawdzam zanim coś włączę. Chyba każdy jak czegoś nie spali to się nie nauczy, byle by z tego naukę wynieść!

    OdpowiedzUsuń
  11. Masz rację z punktami 1 i 2. Właśnie się o tym przekonałem. Pozdrawiam waszą ekipę!!!!

    OdpowiedzUsuń
  12. Z humorem, ale sama prawda!

    OdpowiedzUsuń
  13. Świetny tekst :D

    OdpowiedzUsuń

Działy
Działy dodatkowe
Inne
O blogu




Dzisiaj
--> za darmo!!! <--
1. USBasp
2. microBOARD M8


Napisz artykuł
--> i wygraj nagrodę. <--


Co nowego na blogu?
Śledź naszego Facebook-a



Co nowego na blogu?
Śledź nas na Google+

/* 20140911 Wyłączona prawa kolumna */
  • 00

    dni

  • 00

    godzin

  • :
  • 00

    minut

  • :
  • 00

    sekund

Nie czekaj do ostatniego dnia!
Jakość opisu projektu także jest istotna (pkt 9.2 regulaminu).

Sponsorzy:

Zapamiętaj ten artykuł w moim prywatnym spisie treści.