Usuń haczyk przy ckdiv8. teraz masz inny obrazem przy poprzednim było już zaznaczone parę opcji Ale na przyszłość naucz się fusów, byś ciągle nie pytał kogoś jak ustawić. Wcale nie są trudne wystarczy dobrze przejrzeć odpowiednie tabelki w datasheet.
Hex dla Atmega8 (ten 8MHz powinien zadziałać z wew. oscylatorem):
Opis fusebitow - http://www.tkdami.net/~voytek/programy/p... (nacisnij na link "problemy" w menu) - ustawiałem wg. tego mojego AtMega8 i wszystko działało dobrze Informacje o programowaniu AtMegi - m.in. opisane jest użycie timerów: http://www.freepgs.com/robkry/?t=avrgcc
Tak, będzie działał poprawnie. Sprawdzone.
Natomiast ja nie mogę dojść dlaczego ludzie nie próbują rozwiązywać problemów/zagadnień logicznie i po kolei. Jeśli masz podejrzenie że coś jest nie tak z taktowaniem to napisz sobie najprostszy program który macha pinem tam i z powrotem z jakąś ustalona częstotliwością. Podłączasz analizator stanów logicznych, oscyloskop lub częstościomierz i patrzysz...
Albo tak jak poniżej. Pozdrowienia - teedd
Są to ustawienia procesora do odpowiedniego kwarcu, czy ma działać na standardowych ustawieniach czy też na wewnętrznym lub zewnętrznym kwarcu.
poszukaj w www.atmel.com doc2555.pdf, jest to nota aplikacyjna dotycząca kalibrowania wewnętrznego oscylatora RC
Dopiero uczę się pisać w bscomie, a o tym ponownym ładowaniu timera pisało w pomocy. Timer przeładowuje się 125 razy na sekundę. Dodaje przeładowania timera i kiedy mam 125 dodaje 1 sekunde. To że wewnętrzny oscylator jest niedokładny wiem, ale aż takie przekłamania chyba nie powinny wystąpić.
Nie znam akurat tego języka programowania ale mogę się wypowiedzieć jeśli dasz większy (o większej wartości) kwarc to pogram będzie szybciej działał może się nawet tak zdarzyć że program będzie ok i będzie działał ale nie zauważysz mrugania diody bo tak szybko będzie migała że zobaczysz tylko że ciągle świecenie radziłbym dać mniejszy niż większy kwarc....
Witam, Chcę wykorzystać kod dekodera RC5 z tej strony: http://hobby.abxyz.bplaced.net/index.php... Uzywam Atmega8 z wewnętrznym kwarcem 1MHz. Jak mogę zmienić kod programu pod mój kwarc, co oznaczają czasy 32us, 3,5ms, 131ms? Pozdrawiam, Rafał
The TXCn Flag can be used to check that the Transmitter has completed all transfers A sprawdzasz The UDREn Flag indicates if the transmit buffer (UDRn) is ready to receive new data.
Czy ktoś uruchamiał atmege8 na kwarcu 32kHz a nie na wewnętrznym oscylatorze. Mam taki prosty programik "timer" który o danej godzinie włącza budzik i kolejno odlicza 2 a potem 1 godzinę. Urządzenie ma być zasilane z bateryjki i chcę zmniejszyć pobór prądu. '---------------------------------------... $regfile = "m8def.DAT"...
Jednym z problemów jest to, że ATMega8 dla pewnej obsługi UART wymaga stabilnego taktowania, czego nie zapewnia generator wewnętrzny. Więc trzeba dodać kwarc, lub taktować z układu FT lub napisać funkcję kalibracji generatora.
A możesz mi doradzić w sprawie stosowania kwarca w Atmega8 -lepiej stosować zewnętrzny czy wewnętrzny kwarc -jeśli wewnętrzny to czy musza być kondensatory na xtal
Problem też w tym, że na wewnętrznym RC rs232 po prostu może nie działać i będziesz odbierał śmieci. Podłącz zewnętrzny kwarc i wtedy spróbuj.
Witam, znalazłem w necie poniższy kod i dołączyłem go do swojego projektu. Niestety nie działa. Cały czas dostaje informacje na wyświetlacz że odczyt się nie powiódł. W kodzie nie ma funkcji inicjalizujących LCD i wyświetlających znak, żeby nie zaciemniać analizy. Używam wewnętrznego kwarcu, tj. 1 MHz. Zasilam DS18B20 w normalny sposób (bez zasilania...
Witam, Posiadam Atmega8 z wewnętrznym kwarcem ustawionym na 8Mhz. Potrzebuję odczytać napięcie na porcie PC5 i zamienić go na wartość cyfrową, sygnał badanego urządzenia wacha się 0-4.8V oraz zmienia się bardzo szybko. Przeczytalem kilka poradników jednak nie mogę nigdzie znaleść jak mam ustawić aby czytało z portu PC5 (koniecznie ten). Proszę o pomoc
Porównaj te 2 zdania: Zewnętrzny kwarc mam o częstotliwości 8 MHZ. Kwarc zegarkowy lutujemy w miejsce zewnętrznego kwarcu procesora, a sam procesor uruchamiamy na generatorze wewnętrznym... Widzisz różnice?
Witam A jaki masz oscylator? kwarc czy wewnętrzny? Może istnieje rozbieżność między deklarowanym oscylatorem w programie a tym zaprogramowanym w Fusach. Piotr
Tego nie widziałem. Znalazłem za to informację że dotyczy to rezonatora pracującego jako generator wytwarzający główny sygnał zegarowy: http://obrazki.elektroda.net/9_123515576... A po drugie, akurat w ATMega8 jest błąd w krzemie i te wewnętrzne kondensatory nie działają (tzn. FuseBit ich nie włącza). Użycie rezonatora jako źródła sygnału dla...
Witam Ale po co podłączasz zewnętrzny kwarc . Przeciez na schemacie go nie ma. Na pewno masz dobrze ustawione fuse bity na 8 MHz na wewnętrzny rezonator? To zmniejsz na 4 MHz
Czyli rezonator może spełniać funkcję oscylatora, a nie tylko stabilizować drgania oscylatora? Nie. Rezonator jest podłączony do wewnętrznego oscylatora: http://mikrokontrolery.blogspot.com/2011...
Na PB I PC mam wyświetlacz PB6/7 to XTAL1/2. Ustawiając fusebitami zewnętrzny rezonator wyłączyłeś te piny dla portu PB - stąd śmieci na wyświetlaczu. Z kolei podłączenie równolegle z kwarcem pinów wyświetlacza blokuje wewnętrzny oscylator - stąd problemy z taktowaniem procesora.
Żeby wyeliminować błąd związany z oscylatorem postanowiłem oprzeć się na wewnętrznym kwarcu. I tu popełniłeś błąd. Masa musi być wspólna inaczej nici z gadania po RS-ie.
A pewny jesteś że procek nie chodzi na wewnętrznym zegarze ?
I2C i SPI nie wymagają kwarcu, gdyż są to interfejsy synchroniczne. Z kolei USART na wbudowanym RC z M8 może nie działać i taka konfiguracja jest niezalecana. Więc kwarc musi być. Jaki? To ma mniejsze znaczenie, zawsze dobierzesz podział na ARM i AVR tak, aby błąd był możliwie mały. Z drugiej strony w cenie ATMega8 kupisz sobie np. XMEGA32E5, która...
Ja w Bascomie wpisywałem obojętnie z tego przedziału i mi nie zablokowało procesora. Dodano po 6 takie masz możliwości ustawiania tego 1111...1010 oscylator z zewnętrznym rezonatorem kwarcowym 1001 oscylator z zewnętrznym rezonatorem kwarcowym niskiej częstotliwości 1000...0101 oscylator z zewnętrznym obwodem RC 0100....0001 wewnętrzny kalibrowany oscylator...
Kwarc możesz kupić, chociaż na samym początku uruchamiaj bez kwarcu. Istnieje ryzyko, że popsujesz układ źle programując tzw. fuse bity. Do pierwszych zastosowań spokojnie wystarczy wewnętrzny zegar Atmega8, który fabrycznie jest ustawiony na 1MHz.
Widzisz - moim zdaniem myli ci się to wszystko bo pełno ostatnio w necie takich to rozwiązań programatorów gdzie ktoś wymyśla jakieś całe płytki z podstawkami do programatora. Po co to ???? Po to mamy nowoczesne mikrokontrolery żeby programować je bezpośrednio w układzie a nie cofać się do przeszłości i robić podstawki a potem wachlować prockiem pomiędzy...
to w takim razie będziesz miał dwa dodatkowe wyjścia. mega pracuje domyślnie na wewnętrznym oscylatorze
Jak narazie dziwnym trafem większosć ukłądów miałem na AtMega8 i jemu podobnych i zawsze go montowałem z jakimś kwarcem, przez co nie mialem zadnych problemów. To jeśli nie wiesz co to są fusebity, to po co ten kwarc montowałeś? o.O Skoro i tak go nie używałeś:>
Wewnętrzny oscylator RC jest mocno niedokładny. Z pewnościa musisz kupić zewnętrzny kwarc, ale na ATmedze8 32mhz raczej nie pociągniesz :P Bardziej zalecane jest jednak kupienie kwarcu zegarkowego 32.768 kHz i podłączenie pod piny TOSC1 i TOSC2 które wykorzystuje specjalnie dostosowany pod to Timer2 w trybie asynchronicznym. Wtedy uC można taktować...
twój przypadek wygląda tak jakby procesor używał innego bauda jak mu każesz. po pierwsze sprawdz czy ATmega kożysta z zewnętrznego kwarcu (chodzi o fusebity) bo standardowo jak wyjeżdza z fabryki to chodzi wewnętrznym 1MHz. po drógie sprawdz konfigóracje uarta są w necie takie programiki do obilczania wartość rejstrów na różnych kwarcach.
Możesz puścić program na wewnętrznym oscylatorze, ale lepiej dać zewnętrzny kwarc, nie zaszkodzi.
Fusebitów nie dotykaj, poza BOD nie ma tam nic ciekawego. To nie ATMega8, gdzie trzeba było konfigurować fusebitami zegar. W XMEGA zegar konfiguruje się programowo, domyślnie startuje na wewnętrznym RC 2 MHz, ten zegar możesz powielić korzystając z PLL do 32 MHz. Akurat kwarcu zegarkowego nie a się wrzucić na PLL ze względu na dolne ograniczenie częstotliwości,...
A dlaczego chciałeś wpisać wartość 0x3C? Aby zmienić wewnętrzny oscylator z 1 na 4Mhz powinieneś wpisać wartość 0xE3 do LowFuse. Wpisując wartość 0x3C spowodowałeś: - zmanię na zewnętrzny Crystal/Rezonator Mediem Freq. - włączenie Brown-out z poziomem 4V Aby móc ponownie go zaprogramować musisz dołączyć zewnętrzny kwarc (1-3Mhz) i kondensatory (12-22pF)....
Nie ma problemu - da się tak komunikować... Obliczony błąd na moim egzemplarzu przy tej prędkości i ustawionym zegarze na 4MHz wyniósł raptem 2%... Czyli w granicach tolerancji, którą przyjąłem (i przy której da się jeszcze połączyć) na 3,5%... Warto przetestować, ponieważ różne egzemplarze mogą zachowywać się inaczej. No i zależy to też od warunków...
Z tym kwarcem to trochę nie tak. Normalnie jak kupisz ATmega8 w sklepie (czy gdziekolwiek) i jest to mikrokontroler fabrycznie nowy to źródło jego sygnału zegarowego domyślnie jest ustawione na wewnętrzny (umieszczony w mikrokontrolerze) generator RC. W takim stanie mikrokontroler spokojnie daje się programować w układzie(ISP) i może z tym generatorem...
Kwar stosujesz wtedy, gdy przez przypadek przeprogramujesz "fusy" tak, że procesor ma pracować z zewnętrznym oscylatorem kwarcowym. Wewnętrzny generator RC zostaje wtedy wyłączony i nie można programować proca w programatorze, w którym nie ma kwarcu. Jeżeli to właśnie zrobiłeś, to wystarczy, że do Twojego programatora dolutujesz kwarc i kondensatory,...
No to pytanie do kolegi za 100 pkt: A ustawiłeś w procku fusebity odpowiednio?? Bo ATMEGA8 w preampie działa na wewnętrznym kwarcu 4MHz, a standardowo, nowy proc ma ustawione na 1MHz.
A może wcale nie korzysta z kwarcu i działa na wewnętrznym oscylatorze. Sprawdź to.
Poczytaj o fusebitach zanim zaczniesz w nich majstrować bo możesz przy okazji sobie zablokować µC. Możesz przy ich pomocy np. włączyć kwarc zewnętrzny albo generator wewnętrzny. I prawdopodobnie masz ustawiony na generator wewnętrzny i kwarc na zewnątrz nie jest używany. Jeśli oczywiście jest kwarc zewnętrzny. Nie znam Twojego układu więc tylko...
Nie do końca, albo kolega coś namieszał. Self programming na USBASP cię nie interesuje. To pozwala na zaprogramowanie tylko programatora. Kolega zasila mikroprocesor z USBASP? Jeśli tak, to musi kolega mieć zworkę na VCCINT i SlowSCK (VCCINT podaje zasilanie na złącze KANDA a nie na programator!) Dodano po 2 Może wyjaśnię po krótce o co chodzi z SlowSCK...
Witam serdecznie, chcę taktować timer Atmega8 zewnętrznym kwarcem zegarkowym, a sam uC taktować wewnętrznym oscylatorem RC. Tylko nie wiem jak mam skonfigurowac Atmega8 abz to osiagnac, pewnie trzeba cos w fusebitach zmienic, ale nie wiem co.. Prosze o pomoc. Pozdrawiam!
Po pierwsze jakie czasy chcesz obliczać i jakie przerwania po co ??? To jest bascom nie assembler, deklarujesz na wstępie programu prędkość kwarcu a kompilator troszczy się o resztę tj. dajesz deklarację $regfile = "m8def.dat" $crystal = 12000000 Po drugie, procedura obsługi wyświetlaczy LCD (mowa tu o alfanumerycznych HD44780) jest w BASCOM zaimplementowana...
Jeśli dobrze widzę, w programie masz 1MHz + timer 2 w trybie asynchronicznym z kwarcem 32kHz. Jeżeli tak, to ustaw: low: E1 high: C9 Napisałem w ostatnim poście iż mam ustawione po 8 MHz (oscylator wewnętrzny) i kwarc 32kHz.
Nie koniecznie potrzebny będzie programator równoległy. Pewnie jak to najczęściej bywa, niewłaściwie zostały zmienione fusy źródła taktowania procesora, czyli ustawiono źródło na generator zewnętrzny. Jeżeli tak, to trzeba podłączyć zewnętrzny generator np. 1 MHz i korzystając z tego samego programatora którym przeprogramowano fuse bity, ustawić je...
Wystarczy zasilanie, kwarc jest niepotrzebny na początek (ATmega8 jest domyślnie skonfigurowana do pracy z wewnętrznym oscylatorem 1MHz), no i oczywiście kabelki miso, mosi, reset i sck musisz podpiąć :-) Robi się z tego dość spory bałagan (patrz foto) ale tak jak napisali w dokumentacji - to wygodne i nie trzeba się martwić że trafimy kiedyś uC z innym...
Zwykły LCD alfanumeryczny, nawet bez podświetlenia ciągnie wielokrotnie więcej prądu niż MCU. Co do kondensatorów - tak jak albertb pisał, powinny być. Jakie to zależy od kwarcu i pojemności pinów TOSC ATMegi. Generalnie pojemność tych pinów + ścieżek doprowadzających + kondensatorów zewnętrznych powinna odpowiadać zalecanej pojemności obciążenia dla...
Przyznam że jest to co najmniej trochę dziwne. Są to częstotliwości dla tych procków bez problematyczne. Wygląda na to że te kwarce coś nie lubią tych procków. A do czego jest Ci taka dziwna częstotliwość potrzebna ? Ją można uzyskać bez problemu na kwarcu 32,...kHz i kalibrować wewnętrzny generator ATmegi 16.
Podczas programowamia szeregowego uC musi być taktowany. Fabrycznie ATMEGI8 są taktowane wewnętrznym generatorem 1MHz - chodzą same. Aby zmienić źródło taktowania trzeba zmienić fusebity. Po przełączeniu na kwarc zewnętrzny, który nie jest podłączony, uszkodzony itp. procesor nie ma impulsów zegarowych i uC nie odpowiada programatorowi. Połączenie...
Czy jeśli ustawimy, żeby Atmega8 pracowała z wewnętrznym oscylatorem to montujemy kondensatory te obok kwarcu, czy te wyjścia po prostu zostawiamy wolne?
...czy w ATmega 8515 jest oscylator wewnętrzny, z którego procesor korzysta domuślnie?? Taaaak , jeeeest .Atmel - w swojej wspaniałomyślności - raczył coś o tym nawet napomknąć , w dokumentacji tego uC :D Piotrek
Typy prog_cośtam nie są obecnie wspierane. Aby to odblokować należy zdefiniować symbol __PROG_TYPES_COMPAT__ we właściwościach projektu. Pamiętaj też, że ATMega8 nie ma wewnętrznego kwarcu, posiada generator, ale jego stabilność jest kiepska, jeśli myślisz o jego wyokrzystanu do transmisji UART to raczej o tym zapomnij. Z drugiej strony FT232 ma możeliwość...
Podłączyłem go też pod PC-ta. Teraz sprawdziłem napięcie na nim 11v. Czyli układ do kosza. :C EDIT: OK. Dodałem diody i sprawdziłem. RESET: 0,65V SCK: 0,65V MOSI: 0,73V MISO: 0,01V Mam jeszcze jeden układ ATMega 328. Czy przy takich napięciach mogę ją już śmiało podłączać? Znalazłem tu trial dla PonyProg http://obrazki.elektroda.pl/8669198300_1...
W tym projekcie nie podłącza się kondensatorów przy kwarcu. Poprzez ustawienie fuse bitów włącza się wewnętrzne kondensatory. A dokładność zegarka ustawia się programowo. pozdrawiam
Rzeczywiście to pomogło. Zastanawia mnie, dlaczego jak licznik był w trybie normalnym wywoływane było przerwanie... Bo przerwanie jest od porównania. Gdy TCNT1 = OCRA1 to jest wywoływane przerwanie. A wytłumaczysz mi dlaczego OCR1AL ma wynosić 124, a nie 125? Bo tak jest napisane w datasheet. Zresztą zauważ że taka sytuacja jest sensowna. Zwróć uwagę...
... Mikrokontroler taktowany jest wewnetrznym rezonatorem RC (nie posiadam w tej chwili kwarcu) ... A kompilator o tym wie :?: Czy masz zadeklarowaną częstotliwość oscylatora w programie :?: $Crystal = 1000000 Config 1wire = Portx.x Masz to w programie lub w ustawieniach globalnych poustawiane :?: Nic o tym nie wspominasz :( Pozdrawiam Piotrek
ATmegi mają wewnętrzne kwarce 1MHz . Tak dla ścisłości :D: ATmegi mają wewnętrzne oscylatory RC a nie kwarce.
Pytanie może i głupie, ale jak podłączyć oscylator? Czyli nie podłączyłeś jeszcze kwarcu i nie przestawiłeś fusebitów? Jeśli tak, to nadal pracujesz na wewnętrznym generatorze. http://mikrokontrolery.blogspot.com/2011...
To tylko potwierdza że trzeba jednak kwarc zewnęrtzny. Ja przeprowadziłem wiele prób i doszłem do wniosku że ten wewnętrzny to można ustawiać dla magistrali I2C,1wire tylko dla odczytu numeru (pomiar temperatury już jest błędny). Pozdrawiam i czekam na efekty pracy.
Za przeproszeniem... w 90% przypadków do kwarcu należy dokładać kondensatory! Chyba, że dorwiesz gdzieś rezonator z wewnętrznymi, ale wtedy to one mają 3 wyprowadzenia. :) Pozdrawiam.
Witam, korzystam z trybu RTC, mam podłączony do pinów TOSC1, TOSC2 kwarc zegarkowy. Po podłączeniu kwarcu bez kondensatorków po 24 godzinach czas śpieszył się 10 sekund. Po załączeniu wewnętrznych kondensatorków (fuse CKOPT) o wartości 36pF (wg. instrukcji atmegi8) chodzi dokładniej, ale spóźnia mi 2 sekundy na dobę. Chciałbym, prócz tych podciągniętych...
Nieśmiało pragnę podszepnąć : ATmega8 na wewnętrznym zegarze 8MHz, ma możliwość podłączenia kwarcu 32768Hz pod TOSC1/TOSC2 i można tym napędzać któryś z liczników, tworząc dość dokładny zegarek... Pozdr. Light-I
Wewnętrzny oscylator ma 8Mhz, do tego jest jeszcze dzielnik zegara /8. Domyślnie jest włączony, będzie dzielił również zewnętrzne źródła zegara. Nie prawda... z tym się nie zgodzę ... Jest tak jak napisał mrrudzin. Wewnętrzny oscylator 1Mhz oraz możliwość podpięcia zewnętrznego kwarcu do 8 MHZ
Poszukałem i znalazłem prosty programik w C dla AT90S8515 z kwarcem 8 MHz mrugający diodą LED. Dokonałem małej zmiany (częstotliwość kwarcu), kompilowałem go za pomocą avr-gcc pod linuksem, zaprogramowałem mikrokontroler ATmega8 za pomocą uisp i STK200 i... działa z wewnętrznym oscylatorem 1 MHz. Dioda LED jest przez rezystor podpięta anodą do +5V i...
Coś czuję, że masz ustawiony wewnętrzny rezonator, a nie zewnętrzny kwarc! 5x8=30 sekund.
TCCR0 = _BV(x<<CS00); Źle użyłeś makra _BV. _BV(x) jest równoznaczne z ( 1 << x ), czyli w Twoim przypadku próbujesz wykonać podwójnie przesunięcie bitowe. Jeżeli x = 3 (CS00=0): _BV(3<<CS00) = _BV(3) = (1<<3) = 0b00001000 czyli TCCR0 będzie równe 0b00001000 . Innymi słowy, próbujesz ustawić bit tylko do odczytu, zamiast...
Witam. ATmega8 posiada wewnętrzne kondensatory, można je włączyć przez ustawienie bitu CKOPT.
Tak ATmega8 może pracować z wewnętrznym oscylatorem RC lecz zewnętrzny kwarc ma o wiele lepszą dokładność taktowania i z racji tego, że w projekcie zaimplementowałem odmierzanie czasu dlatego został zastosowany zew. kwarc. W załączniku zamieszczam poprawioną wersja softu do wytrawiarki.
$regfile = "m8def.DAT" $crystal = 4000000 Config Lcdmode = Port Config Lcd = 16 * 2 Config Lcdbus = 4 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.4 , Rs = Portb.5 do lcd " CGYYICG" loop end. i cz napewno procek chodzi na zewnętrznym kwarcu, może chodzi na wewnętrznym zegarze 1Mhz....
http://obrazki.elektroda.net/41_12588515... Zamieszczam projekt sterownika do wymiennika ciepła i pompy wymuszającej obieg wody w centralnym ogrzewaniu. To moje pierwsze użyteczne urządzonko zainspirowane zostało wymianą zbiornika do ciepłej wody. Całość składa się z: wyświetlacza alfanumerycznego bardzo znanego i łatwo dostępnego: WC1602A...
Każda nowa Atmega8 ma ustawione fuse bity na zegar wewnętrzny, więc jeśli nie ruszałeś fuse bitów to nie potrzeba kwarcu. Poza tym w ponyprog definiuje sie typ programatora, musisz wiedzieć, który to jest i ustawić w ustawieniach.
Koleś ze sklepu elektornicznego odpisał mi, że ATmega wymaga Kwarcu a ja wyczytałem na internecie, że nie potrzeba chyba, że chce się dużą częstotliwość. To źle koleś powiedział a na necie wyczytałeś dobrze. Zobacz w nocie Atmega8 na 26 stronie masz tabelke(Table 2) i tam piszą opcje zegara - external crystal to jest zewnętrzny kwarc(to co jest na...
Jeśli chcesz uzyskać częstotliwość 1Hz, to na pewno opóźnienia muszą być po 500ms (a nie po 100- wtedy było by około 5Hz). W taki sposób ciężko uzyskać bardzo dokładną częstotliwość - czas wykonania pętli jest większy niż zadany przez opóźnienia - pozostałe instrukcje też zajmują czas. Żeby tego uniknąć musiał byś operować timerem. Jeśli nie używasz...
Czyli wymienić kwarc z 8m na 32k. A czy atmegi8 (DIL28) można podączyć dwa kwarce tak jak do 8535? Po przeanalizowaniu noty atmegi8 wydaje mi się, że się nie da, ale może się mylę? Wymienić. Do M8 można podłączyć tylko jeden kwarc. Do taktowania procesora użyj wewnętrznego oscylatora a zewnętrzny tylko do RTC.
Od siebie dodam, że częstotliwość 16MHz nie możesz uzyskać na wewnętrznym oscylatorze (zdaje się że 12MHz to max, oczywiście można jeszcze nieco podgonić przestawiając bity kalibrujące) Większość poszczególnych egzemplarzy uruchomic można także na wyższych częstotliwościach (nawet 24MHz), ale licz się ze zwiększonym poborem prądu i możliwościa niestabilnej...
Niestety nie pomogło zwolnienie SCLK, oraz obniżenie napięcia, ciągle pojawiają się błędy. Częstotliwość zwiększyłem do 2MHz (wewnętrzny generator bo nie używam zewnętrznego kwarcu).
Jak chcesz mieć miernik częstotliwości z prawdziwego zdarzenia to podłącz kwarc. To za pomocą niego uC odmierza 1s, w której zlicza impulsy. Im "sekunda" ta jest dokładniejsza tym lepszy miernik. Generator wewnętrzny nie jest dokładny, a ponadto częstotliwość jego nie jest stała. Inną kwestią jest kształt mierzonego przebiegu. UC jest układem cyfrowym...
Jeśli to nowa ATMega8 ze sklepu to zmień częstotliwość taktowania na 1MHz. Tak jest ona taktowana domyślnie i podłączenie kwarcu 16MHz nic nie daje, układ działa z wewnętrznego generatora RC.
Ustawiasz wewnętrzny oscylator np.na 8MHz a kwarc zegarkowy pod piny 4 i 5 w ATtiny 2313. Oczywiście napisany odpowiednio program. Mam tak zrobione na ATmega8. W Bascomie jest to proste.
Program kompiluje się prawidłowo na Atmega8. Kompiluje się także na ATiny2313 (należy usunąć linijkę: Config Serialout = Buffered , Size = 150) Ustawienia Atmega32: $regfile = "m32def.dat" $crystal = 8000000 -kwarc wewnętrzny 8MHz -wejście sygnału z odbiornika podczerwieni PD5 (OC1A) -wyjścia na przekaźnik i diody sygnalizujące PA1, PA2, PA3 skonfigurowane...
To że wolno reagował to wiem że wina taktowania 1MHz Dodano po 13 Czyli nie muszę przesiadać się na większą atmege. Mogę zostać przy atmega8, ustawić wewnętrzny generator na 8MHz a z kwarcu taktować timer kwarcem 32KHz
Fusebity zmieniałem ponieważ miałem tą atmege w innym urządzeniu. W każdym razie pracuje na wewnętrznym kwarcu 1Mhz spis elementów jest w notatniku.
1. Na schemacie ZL2AVR brak jakiegokolwiek kondensatora na wyjściu (sic!) 5. Na schemacie ZL2AVR brak takowego dławika, zreszta cieżko by mi było wygrzebać odpowiedni. Podaj link do schematu tego ZL2AVR 3. Ponieważ jeżeli łącze bezpośrednio to mam krzaki a z rezystorem jest ok Zastanawiałeś się dlaczego? Do czego podłączasz wyjście TXD? 4. Wewnętrzny...
Nie odłączaj resetu, ale może dodaj chociaż klawisz reset do tego. Skoro nie przestawiłeś fusebitów to uC pracuje na wewnętrznym oscylatorze 1 MHz. Skoro program napisany jest pod kwarc 32 kHz to np wszystkie opóźnienia są ponad 30 razy krótsze niż powinny. Opóźnienia są ważne w procesie inicjalizacji LCD, dlatego też nie działa. Jak ustawić fusebity?...
Wgrywam program na mrugającą diodę i nic się nie dzieje. Dioda nie mryga. Mam podpięty 16MHz, może lepiej bez kwarcu? I zrobić na wewnętrznym?
Zaproponowałem AT90S2313 bo on nie ma oscylatora wewnętrznego i domyślnie działa na kwarcu (nie dotyczy ATTINY2313!), więc odpada kombinowanie z FUSE. Podłączasz kwarc wg. aplikacji i to wszystko. Powinien generować nawet bez tej pętli DO:LOOP, ale nie przyszło mi nigdy do głowy żeby to sprawdzić, więc 100% pewności nie mam. Pozdrawiam
Tak, rdzeń ten sam i jeśli piszesz pod bascomem to nie zobaczysz większej różnicy. A takowa jest bo nieco inny jest UART - USART w atmedze, poza tym więcej trybów timera (i samych timerów) itp. Posługując się helpem od bascoma bez problemu poradzisz sobie z ewentualnymi różnicami i wykorzystasz możliwości ukryte w znacznie lepiej wyposażonym procku....
Jeśli fusy masz ustawione firmowo to pracujesz z wewnętrznym kwarcem 8MHz pod z dzielnikiem przez 8.
Napisałem jak zaprogramowałem fusy. W mkavr nic się nie da rozwalić, już zmieniałem częstotliwości wewnętrznych oscylatorów i działało. Postaram się sprawdzić z innymi kondensatorami. A czy ruszyłby jeśli podepnę kwarc zegarkowy.
Ruszył dopiero po dodaniu kwarcu (i oczywiście zmianie fusów), na wbudowanym generatorze niestety wisiał. To interesująca propozycja, zwłaszcza że inne pomysły już mi się wyczerpały. Spróbuję dołączyć kwarc 4Mhz i oczywiście odpowiednio ustawić pod tym kątem mikroprocesor. . Jak mógł wisieć czy tam nie działać na wewnętrznym oscylatorze i ruszyć dopiero...
Napisałem nieco pokrętnie, kondensatory wewnętrzne - owszem ale Atmegi, nie kwarcu. Na diodę dam 330.
Witam, Musisz przeładowywać timer zaraz zgłoszeniu przerwania, wtedy błąd jest najmniejszy. W Twoim przypadku najpierw zmieniasz stan portów, później czekasz i w końcu ładujesz timer - w tym czasie timer też liczy, a więc pomiar czasu jest niedokładny. "Wyższa szkoła jazdy" to odjęcie od wartości ładowanej do timera czasu, który upływa między zgłoszeniem...
Witam. Jkai jest dokładnie symbol takiego kwarcu i jak dokładny może on być? Chciałem zrobić zegar na wewnętrznym RC niestety po kombinowaniu z RC śpeszy o sekund na 3 godziny i w zależnośći od stanu baterii :|
Kit jest fabryczny AVT sam nic nie lutowałem. Kwarc 32768Hz. to jest kwarc układu MCP7940. Atmega8 na schemacie nie ma kwarcu i piny "kwarcowe" sterują czymś na wyświetlaczu, więc μC pracuje na wewnętrznym oscylatorze RC, który ustawia się fuse bitami. Funkcje takie jak _delay_ms, _delay_us potrzebują tego makra, żeby poprawnie działały. Definicje...
Pierwsze co mi się nasunęło - fabrycznie ATmegi są ustawiane na wewnętrzny zegar 1MHz i z ta wartością powinieneś wystartować w programie sterującym programowaniem, bez podłączonego kwarcu, a nastepnie po przekonfigurowaniu Fusebits( na początek polecam at90s8515 . lepiej się programują bo 8535 czasem mają kłopoty z programowaniem. trzeba im niekiedy...
M.S. To moze byc dobry trop ! Pytanie : Jak w Bascom-AVR zadeklarowac czestotliwosc taktowania ATMEGI pracujacej na wewnetrznym generatorze RC ? Czy deklarowac tak samo jakby byl kwarc ? Dzieki za podpowiedz
A może ci kwarc nawala. Pomęcz procek na wewnętrznym generatorze i czy Ci też padnie.
kwarc atmega8 atmega8 kwarc atmega16 wewnętrzny kwarc
wałka laserowej creative inspire p5800 subwoofer serwer minecraft
Kompatybilność lamp Minolta z aparatami Pentax Czy odinstalowanie aplikacji zatrzymuje płatności?