Skocz do zawartości

Programator nie wykrywa mikrokontrolera


rybok_999

Pomocna odpowiedź

Na SP2 mi wszystko śmigało, na SP3 też...

http://www.skylive.republika.pl/stk200.pdf

https://www.forbot.pl/forum/topics40/konfiguracja-stk-200-300-vt148.htm

Ponadto - czy zasilasz dodatkowo układ? (podłączasz go do stabilizowanych 5V, łączysz GND układu z GND programatora). LPT wymaga takiego właśnie postępowania.

Może mało będzie to pomocne po fakcie, ale polecam początkującym programatory USB - cena nie jest szalona (mówię o Allegro), a mamy z głowy zasilanie i troskę o to, jak skonfigurować nasz LPT (w przypadku USB - sterownik i opcja z listy rozwijanej w np. SinaProg). No i pamiętajmy, że LPT i COM są na wymarciu...

Link do komentarza
Share on other sites

Panowie eureka !! Dzisiaj kupiłem atmege 8 i za pierwszym razem idealnie bez żadnych błędów sie zaprogramowałą 🙂 Gorzej z tym że nie chodzi wiec chyba znowu cos nie tak.

Poniżej bardzo prosty kod który nie działa nie wiem dla czego.

PS: kupiłem płytke stykową i bezproblemowo teraz jade bez kombinowania na laminacie.

$regfile = "m8def.dat"

$crystal = 1000000

Config Pinc.5 = Input

Portc.5 = 0

Config Pinb.1 = Output

Portb.1 = 0

Do

If Pinc.5 = 1 Then

Toggle Portb.1

End If

Loop

End

Dlaczego mi to nie działa ?? cały czas swieci dioda nic sie nie dzieje. Dziwne jest to że jak mam chociaz jedną nóżke diody podłączoną to jak ręką dotknę drugiej to troszke świeci.

Link do komentarza
Share on other sites

Dziwne jest to że jak mam chociaz jedną nóżke diody podłączoną to jak ręką dotknę drugiej to troszke świeci.

A słyszałeś o ładunkach elektrostatycznych... ??

W pętli programu brakuje Ci opóźnień.

Nawet nie zauważasz, że dioda przełącza się bo trwa to 2us, a ludzkie oko wychwytuje sygnały ok 20ms

Proponowałbym, aby sprawdzić czy procek działa, coś takiego

Do

Pause 500
Toggle Portb.1


Loop 

Potem możesz ewentualnie rozszerzyć o przycisk:

Do

If Pinc.5 = 1 Then
Toggle Portb.1
Pause 400
End If

Loop 

Nie pamiętam Bascoma, ale za Pause może być waitms czy jakoś tak (generalnie chodzi o opóźnienie w programie trwające 300 - 500 ms)

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

no i znowu kombinuje od rana i nic. teraz wpadłem na pomysł i chyba ten mikrokontroler też jest jakis felerny.

Sprawdziłem miernikiem i na każdym prawie podkreślam prawie każdym jest +2.17 volt

Nie wiem o co chodzi. chyba nigdy nie zaczne.

Link do komentarza
Share on other sites

Spróbuj

$regfile = "m8def.dat"
$crystal = 1000000
Config Portc = Input
Config Portb = Output
Reset Portb
Do
If Pinc.5 = 1 Then
Toggle Portb.1
Wait 1
End If
Loop
End

I pytanie - czy podłączyłeś pull-up'y i ograniczasz jakoś drgania zestyków?

Link do komentarza
Share on other sites

Dobra przeprowadziłem test i jak było tak jest nic z tego. Wina padła na mikrokontroler. ( kupiłem taki zestaw ktos rezygnował z elektroniki i sprzedał cały komplet. ja go kupiłem ale nie było napisane ze wszystko 100 % sprawne.) atmega 8 da sie zaprogramować i fajnie. ale co z tego jak nie działa wiec wziąłem ostatni mikrokontroler z zestawu.

Jest nim Atmega32 również dała sie zaprogramować tak jak atmega 8. Bez żadnych błędów ale jest to samo. mam podłączone wszystk ona płytce stykowej. Jak dam erase to nie świeci ledwo wgram to odrazu zapala sie teraz sprawdzam nogi w tym monencie i n akażdej prawie jest 2.14 volta. Sam juz nie wiem o co chodzi masakra.

Link do komentarza
Share on other sites

No i zczytałem te fulsebity na bascomie i mam coś takiego :

Kompletnie tego nie rozumie. Nic tak nie grzebałem tak jak było zrobiłem foto i jest. Co do testów to kombinuje i robie ale ona tak jak była tak jest.

Teraz wgrałem coś takiego :

$regfile = "m8def.dat"
$crystal = 1000000


Config Portc = Input
      Portc.5 = 0
Config Portb = Output
      Portb.1 = 0


Do

  If Pinc.5 = 1 Then
  Toggle Portb.1
  Waitms 200
  End If

Loop

End

I bez przycisku jest ok. cały czas miga. Jak zmienie wartość waitms to działa ale nie reaguje na przycisk.

Mysle że jestem już blizko co i jak ale jeszcze cos mnie trzyma ale podoba mi sie to coraz bardziej 😅

Link do komentarza
Share on other sites

po pierwsze, zamień

$crystal = 1000000 

na

$crystal = 2000000 

tak masz w fusach ustawione raczej, i chyba masz włączonego watchdoga, ściągnij avr burn-o-mat'a, i sprawdź tam, bo nie czaje tego jak one są wyświetlone tutaj.

[ Dodano: 04 Sie 10 11:04 ]

Nawyk, w AVRach switche zwiera się do masy, nie do plusa, trzeba wykorzystać wewnętrzne pull-upy do Vcc.

Nie trzeba, do masy trzeba zwierać jak chcesz wykorzystać wewnętrzne pull-upy/zewnętrzne pullupy do vcc.

Link do komentarza
Share on other sites

zaraz testuje momencik. teraz obczaiłem inną sprawe. Jeżeli puszczam na konkretną nóżke GND to tak jak bym niał puszczony guzik a jak ogłącze mase to tak jak bym miał wciśnięty. a powinno być chyba na odwrót...

Ustawiłem to

$crystal = 2000000

i dalej to samo.

Ten programik mam j avr burn-o-mat'a ale nie wiem co mam zrobić konkretnie czego dać screena bo dużo tego tam jest.

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • 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.