Skocz do zawartości

AvrDude - programowanie atmega8


Pomocna odpowiedź

Witam

Jakiś czas temu kupiłem proca attiny2313 którego zadaniem miało być sterowanie 4 diodami które miały świecić się po kolei. Programator którego używam: link. Lecz zamiast świecić po kolei tylko z portu d.0 pojawiał się stan wysoki z wachaniami napięcia (po podłączeniu diody dioda mrugała). W programie natomiast napisałem by na kazdym porcie od d.0 do d.3 pojawiał się po kolei stan wysoki i po 1 sekundzie stan niski. I tak z każdym portem. Podłączyłem więc proca spowrotem do programatora ale już Avr Studio nie mógł go odczytać. Przy wcześniejszym programowaniu nie tykałem się fusebitów tylko podałem lokalizację programu .hex w oknie Flash i nacisnąłem "program". Proc najprawdopodobniej jest zablokowany. Czytałem też na elektrodzie temat link2 bardzo podobna sytuacja. Zamierzam teraz kupić nowy proc bo w wskrzeszanie tamtego chyba nie będę się bawił 😉 a do zaprogramowania zamierzam użyć avrdude gui. Chciałbym Was prosić o radę żeby poraz kolejny nie schrzanić sprawy. Jak trzebałoby uzupełnić pola w programie dla atmegi8? dołączam obrazek

Link to post
Share on other sites

Jeżeli chodzi o sam program do programowania uC to polecam SinaProg. Jest banalny w obsłudze, oczywiście jest to graficzna nakładka na avrdude - ale nie wymaga żadnej konfiguracji poza wybraniem programu, programatora z listy i uC z listy. Ciężko w nim coś przypadkowo zablokować jak się nie grzebie w zakładce "Advanced".

Link to post
Share on other sites
Oczywiście dałeś rezystory do diód ?

Rezystory do diod dałem po 470Ω każdy

Jeżeli chodzi o sam program do programowania uC to polecam SinaProg.

Może masz rację. To spróbuję tym zaprogramować kolejnego proca (atmege8) w razie jakiś kłopotów jeszcze napiszę 😉

Link to post
Share on other sites

Witam,

nie chciałem zakładać nowego tematu bo byłby niepotrzebny śmietnik

Przed zaprogramowaniem proca (atmegi8) chciałbym was prosić byście rzucili okiem na program, i schemat (czy będzie działał jak planuję). Działanie układu ma polegać na tym że gdy fototranzystor będzie "widział" światło każda z diod zacznie świecić po kolei z odstępem 50ms a gdy światła nie będzie wszystkie diody zgasną.

$sim
$regfile = "m8def.dat"
$crystal = 8000000
Config Portd = Output
Portd = &B11111110
Config Pinb.0 = Input

Do
If Pinb.0 = 0 Then
Waitms 50
Portd.7 = 0
Waitms 50
Portd.7 = 1
Portd.6 = 0
Waitms 50
Portd.6 = 1
Portd.5 = 0
Waitms 50
Portd.5 = 1
Portd.4 = 0
Waitms 50
Portd.4 = 1
Portd.3 = 0
Waitms 50
Portd.3 = 1
Portd.2 = 0
Waitms 50
Portd.2 = 1
Portd.1 = 0
Waitms 50
Portd.1 = 1
Portd.0 = 0
Waitms 50
Portd.0 = 1
Waitms 50
Do
Loop Until Pinb.0 = 1
End If
Loop
End

Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.