Felipe Napisano Październik 3, 2009 Udostępnij Napisano Październik 3, 2009 Mam problem z uruchomieniem serw na atmedze8, jest ona taktowana kwarcem 16 MHz podłączonym z 2 kondensatorami 33p $regfile = "m8def.dat" $crystal = 16000000 Config Servos = 1 , Servo1 = Portb.0 , Reload = 20 Config Portb = Output Config Portd = Input Enable Interrupts Do Servo(1) = 100 Wait 1 Servo(1) = 200 Wait 1 Loop End Serwo ustawia się w neutralnej pozycji. zrobiłem też program na diodę, żeby migała co 0,1 s i mryga ok co 1,6 s słyszałem coś o podzielnikach ale dokładnie nie wiem jak je ustawić Proszę o pomoc 😃 Link do komentarza Share on other sites More sharing options...
lukpep Październik 3, 2009 Udostępnij Październik 3, 2009 a Fusy masz dobrze ustawione? Link do komentarza Share on other sites More sharing options...
Felipe Październik 3, 2009 Autor tematu Udostępnij Październik 3, 2009 No właśnie czytałem o nich ale się nie moge połapać się w nich, jak byście mogli mi o nich trochę powiedzieć?? Link do komentarza Share on other sites More sharing options...
lukpep Październik 3, 2009 Udostępnij Październik 3, 2009 bity konfiguracyjne dla uC - informuja go o trybie pracy, zrodle taktowania itp - standardowo procki dzialaja z wbudowanym wewnetrznym zegarem 1MHz - stad tez wynikaja roznice w czasie mrygania lampki - 16 razy dluzej niz kazales mu mrygac. Musisz ustawic fusy na zewnetrzny kwarc 16mhz. Tu masz calc do wyliczenia high and low fuse: http://www.engbedded.com/fusecalc/ A co zapisania fusow do ukladu uzyj np. avrdude gui, buromata albo bezposrednio z BASCOMA - zalezy jakiego programatora tam uzywasz i jak wolisz. Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. 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
Felipe Październik 3, 2009 Autor tematu Udostępnij Październik 3, 2009 A czym się różnią te high i low fusy i jak można to zrobić bezpośrednio z BASCOMa?? Link do komentarza Share on other sites More sharing options...
lukpep Październik 3, 2009 Udostępnij Październik 3, 2009 Adresami sie roznia 😉 powiedzmy, ze masz do wyboru 16 opcji konfiguracyjnych - 0 jako wlaczone i 1 jako wylaczone (tak jest w fusach) wiec ustawiasz wszystko i masz sliczny ciag: 0000111011001011 prawda, ze latwy do zapamietania? Zamiast tego zamieniasz je na wartosc w systemie hexadecymalnym: 0000 1110 1100 1011 0 E C B OE dla high i CB dla low o ile nic nie pomerdalem - ot i wygodniejszy zapis po prostu. Co do Bascoma - jakiego programatora uzywasz? Link do komentarza Share on other sites More sharing options...
Felipe Październik 3, 2009 Autor tematu Udostępnij Październik 3, 2009 A skąd mam wiedzieć co zrobi dany ciąg znaków w fusach?? Używam programatora z avt http://sklep.avt.pl/p/pl/485091/avtprog1+programator+avr+ispusb+stk500v2.html Link do komentarza Share on other sites More sharing options...
lukpep Październik 3, 2009 Udostępnij Październik 3, 2009 czytaj data sheeta do megi16... albo skorzystaj z kalkulatora co wyzej podalem - tam masz lopatologicznie opisane opcje- zaznaczasz jakie chcesz, wybierasz z listy zrodlo sygnalu i on Ci poda do wklepania wartosci fusow. w BASCOMie wchodzisz w Program > Send to chip a potem Lock and Fuse Bits Link do komentarza Share on other sites More sharing options...
Felipe Październik 3, 2009 Autor tematu Udostępnij Październik 3, 2009 A czy można zamieścić zmiany dotyczące tych fusebitów w programie bo ja wchodzę w program>send to chip>manual program to nic się nie dzieje, a jak wchodzę w program>send to chip>program to się ładuje program do procka Link do komentarza Share on other sites More sharing options...
Sabre Październik 4, 2009 Udostępnij Październik 4, 2009 Obsługa serw poleceniem servo jest krótko mówiąc do d... Wiem bo walczyłem z tym sam, o ile 1 servo da się jeszcze jako tako obsłużyć (tylko i wyłącznie przy zastosowaniu określonego opóźnienia), o tyle 2 czy więcej serw bascom nie pociągnie już tym poleceniem. Osobiście polecam użycie sprzętowego PWMa, jeśli będziesz zainteresowany podam ci wzór na dobranie rezonatora i dzielników. Link do komentarza Share on other sites More sharing options...
Felipe Październik 4, 2009 Autor tematu Udostępnij Październik 4, 2009 Byłbym wdzięczny za wzory bo dążę do sterowania przynajmniej 8 serwami i bardzo to by ułatwiło sprawę 😃 Link do komentarza Share on other sites More sharing options...
Sabre Październik 4, 2009 Udostępnij Październik 4, 2009 Widzę, że masz wysokie wymagania, ale żeby wysterować 8 serw również musiałbyś mieć procesor z ośmioma wyjściami sygnału PWM, o poleceniu servo możesz całkowicie zapomnieć. Np atmega168 ma 6 kanałów PWM, ale są też procki, które mają więcej, aczkolwiek nie wiem jak z obsługą ich przez bascoma. Możesz również komplikując elektronikę, zrobić jakiś układ przełączający sygnał PWM pomiędzy poszczególnymi serwami, ale stąd już niedaleko do gotowych sterowników. 1 Link do komentarza Share on other sites More sharing options...
Nawyk Październik 4, 2009 Udostępnij Październik 4, 2009 Powinna zainteresować Cię funkcja "PULSEOUT" (poczytasz o niej w polskiej pomocy do BASCOM'a). Przy sterowaniu 8 serw z trzech kanałów sprzętowego PWM (atmega8) chyba nie obeszło by się bez multipleksowania... 1 Link do komentarza Share on other sites More sharing options...
Felipe Październik 4, 2009 Autor tematu Udostępnij Październik 4, 2009 No tak trochę będę musiał pokombinować aby te serwa działały 🙂 , ale dalej nie mogę odblokować podzielnika 🙁 mógłby mi ktoś opisać to jakoś łopatologicznie. Link do komentarza Share on other sites More sharing options...
lukpep Październik 4, 2009 Udostępnij Październik 4, 2009 o jakim podzielniku Ty mowisz? Fusy? Sciagnij program burn'o'mat - http://avr8-burn-o-mat.aaabbb.de/avr8_burn_o_mat_avrdude_gui_en.html Ustaw w opcjach sciezke do avrdude, wybierz swoj programator i port oraz uC jaki programujesz. Wejdz w Fuses i sprawdz czy mozesz odczytac fusy - jak mozesz to jest komunikacja. Nastepnie rozwin liste przy zrodle sygnalu i daj external ceramic crystal rezonator czy jakos tak - wybierz przedzial predkosci z gorna granica 16Mhz i juz. Zapisz fusy. 1 Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
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ę »