Witam. Dopiero zacząłem przygodę z programowaniem uC. Zmontowałem układ na płytce stykowej z wykorzystaniem atmega8 i napisałem program, który zlicza do 90 wyświetlając kolejne liczby, następnie zapala się dioda LED, znowu zlicza do 90 i znowu zapala się dioda LED. Dzieje się tak póki wszystkie 4 diody LED nie zostaną zaświecone.
Dalej w ramach "a co jeśli?" podłączyłem przekaźnik 5V sterowany tranzystorem npn C945. Przekaźnik przez czas zliczania był załączony. Po czterokrotnym zliczeniu do 90 przekaźnik wyłączał się.
Dołączyłem do PC5 diodę LED, żeby nauczyć się obsługi nieużywanych pinów portu C mino przesunięcia bitowego, które tam jest. Na początek dla sprawdzenia wpisałem zwykłe polecenie wyłączające diodę na koniec programu. Zaraz po wgraniu uC padł i przejął rolę grzejnika podłączanego na USB.
Na czas programowania odłączałem zworkę J1, ponieważ cześć pinów portu B służy do programowania i przy próbie wgrania wsadu wyskakiwał błąd.
Mam takie pytanio-prośbę w zasadzie. Chodzi mi o wytłumaczenie co zrobiłem źle. Czy uszkodzenie uC było spowodowane zbyt dużym prądem spływającym do niego ze wszystkich diod LED, czy w jakiś sposób tą ostatnią instrukcją, którą dodałem, a może jeszcze czymś innym? Zanim dodałem diodę do pinu PC5 mimo mojego kombinowana z kodem na wszystkie strony atmedze nic nie było.

plik main.c
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
plik LED.h
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.