atmega prescaler timer

Znaleziono około 885 wyników dla: atmega prescaler timer
  • ATmega1284p TIMER0_OVF_vect nie działa - diagnostyka przerwania

    Konfiguracja prescalera jest w TCCR0 B a nie TCCR0A.

    Mikrokontrolery AVR   03 Kwi 2020 11:48 Odpowiedzi: 2    Wyświetleń: 441
  • REKLAMA
  • [C][Atmega 8] Pomiar czasu (milisekundy) miedzy zdarzeniami

    Funkcja delay_ms() nie zależy od timera, więc prescaler nie ma dla niej znaczenia.

    Mikrokontrolery AVR   09 Cze 2010 19:00 Odpowiedzi: 6    Wyświetleń: 2283
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • Ustawienie timerów na ATmega128 - Zegar wewnętrzny 8MHz, Timer1 1s, Timer0 4ms, konfiguracja kodu

    W sobotę o tej porze mogę się mylić :P W tabelce pisze chyba wyraźnie, że dla tego trybu CTC który ustawiłeś to okres ustala się w OCR1 A i raczej powinieneś wtedy uruchomic przerwanie od OCIE1 A i oczywiście wskazać adekwatny wektor przerwania. https://obrazki.elektroda.pl/2405063000_... Sprawa 1 sekundy jest prosta. (8MHz/256)-1=...

    Mikrokontrolery AVR   12 Lis 2022 02:13 Odpowiedzi: 6    Wyświetleń: 420
  • [AVR] Dlaczego przerwanie TIMER1_COMPA_vect nie działa w VMLab?

    2 serwa można zrobić całkowicie sprzętowo TCCR1A = _BV(WGM11); /* Fast PWM, ICR1 is top */ TCCR1B = _BV(WGM13) | _BV(WGM12) /* Fast PWM, ICR1 is top */ | _BV(CS11) /* div 8 clock prescaler */ ; OCR1A = 3000; // to jest chyba dla zegara 16 Mhz - to by odpowiadało impulsom 1.5 ms OCR1B = 3000; ICR1 = clockCyclesPerMicrosecond()*(...

    Mikrokontrolery AVR   08 Lis 2010 23:03 Odpowiedzi: 8    Wyświetleń: 4059
  • REKLAMA
  • Używanie dwóch timerów w BASCOM (atmega2560) - pobieranie danych z tablicy i sterowanie PORTB

    Kolego patrzę na ten kod ze zgrozą, ale załadowałem do swojego Bascoma i trochę więcej zrozumiałem bo mozna sprawdzać referencje i skakać po kodzie. W przerwaniu co osiem taktów (nierealne) timer ma zliczać te twoje "niby" OCR. (Incr Licz_timera1 : If Licz_timera1 >= Ooo Then) Te OCR jest ładowane z tabeli gdzie najmniejsza wartość to 127 a najwieksza...

    Mikrokontrolery AVR   07 Kwi 2023 07:26 Odpowiedzi: 17    Wyświetleń: 765
  • REKLAMA
  • Maksymalna częstotliwość kwarca wewnętrznego Atmega8 i konfiguracja Timer1

    Jaka jest maksymalna częstotliwość pracy kwarca wewnętrznego Atmegi8? ATmega nie ma w środku kwarc u , tylko oscylator RC, to tak gwoli ścisłości. Mam ustawione 4Mhz i kiedy ustawiam prescaler w timerze 16bitowym na 64 (TCCR1B|=1<<CS11|1<<CS10;) tak aby przerwanie spowodowane przepełniniem timera było wywoływane mniejwięcej co 1s 4000000/64/2^16...

    Mikrokontrolery   26 Wrz 2007 12:49 Odpowiedzi: 2    Wyświetleń: 2446
  • [Atmega328][Atmega2560][Arduino] - Pomiar czasu propagacji fali 40kHz.

    Dodatkową niedogodnością jest to że Atmega2560 ma wspólny układ prescalera dla Timerów 0 1 3 4 5. a to nie wystarczy?: Timer/Counter 0, 1, 3, 4, and 5 share the same prescaler module, but the Timer/Counters can have different prescaler settings . Pytam bez analizy kodu. Nie definiuj F_CPU w kodzie z tych powodów: http://mikrokontrolery.blogspot.com/2011...

    Arduino   16 Lip 2015 20:13 Odpowiedzi: 8    Wyświetleń: 2286
  • Przerwania atmega2560 jak włączyć przerwania TIMER1/3/4/5_COMPB/C_vect

    Najprostszy przykład jaki mi przychodzi do głowy to wykorzystanie tych dwóch dodatkowych funkcji do wygenerowania przerwania które nastąpią po przerwaniu A po czasie zadeklarowanym w rejestrach OCRxB/C W twoim kodzie będzie to coś takiego void setup(){ DDRB |= (1<<PB7); // ustawienie pinu 13 jako wyjscie PORTB &= ~(1<<PB7);//...

    Mikrokontrolery AVR   17 Gru 2022 17:52 Odpowiedzi: 4    Wyświetleń: 432
  • Atmega16: Jak ustawić timer0 CTC z kwarcem 8MHz i prescalerem 64?

    Musisz naleźć takie wartości do zliczania przerwań z zegara przy których uzyskasz największą dokładność. Możesz też spróbować użyć rezonatorów zegarkowych: 32.768kHz 4.194304MHz. W nich częstotliwość jest potęgą dwójki stąd łatwo się dzieli do uzyskania 1Hz. Może będą też dokładniejsze ale kto wie.

    Mikrokontrolery AVR   09 Lis 2010 10:19 Odpowiedzi: 8    Wyświetleń: 3081
  • ATmega16 - Timer1 16-bitowy: brak wywołania przerwania ISR(TIMER1_OVF_vect)

    TCCR1B |= (1<<CS12) | (1<<CS10); :D ok. działa. Dodano po 17 Mam problem jeszcze z przetwornikiem ADC w trybie free Run. Zrozumiałem to tak, że pomiar ciągły jest włączany ustawieniem 1 na ADATE i inicjowany ustawieniem 1 na ADSC. Co źle ustawiam? Może po kolei: ADEN: ADC Enable – (1/0) - włącza lub wyłącza układ ADC; jeżeli nie używany,...

    Mikrokontrolery Początkujący   23 Lut 2017 02:47 Odpowiedzi: 5    Wyświetleń: 858
  • ATMEGA 8 - Jak ustawić przerwanie timera co 1s z prescalerem 128?

    [syntax=c] #define RELOAD_VAL 131 int main (void) { TCCR0=0x8B; TCNT0 = RELOAD_VAL; TIMSK=(1<<TOIE0); sei(); while(1) { } } SIGNAL( SIG_OVERFLOW0 ) // 1 ms { TCNT0 = RELOAD_VAL; } [/syntax]

    Mikrokontrolery AVR   05 Gru 2014 09:46 Odpowiedzi: 11    Wyświetleń: 1467
  • REKLAMA
  • Atmega 16 - Błąd error 12(Unknown CONFIG parameter[auto]) w konfiguracji ADC

    Na 100% w Prescaler było to R na końcu? Bo w timerach jest Prescale, ale w ADC jest Prescaler ;) Bo skopiowałem dokładnie ten kod, który udostępniłeś, dodałem tylko i wyłącznie to r i normalnie się skompilował na bascom-avr 2.0.7.5

    Mikrokontrolery AVR   25 Wrz 2016 20:44 Odpowiedzi: 5    Wyświetleń: 801
  • Jak skonfigurować trzeci timer w Atmega8?

    (at)seba_x:A co to za bzdura?:> • Peripheral Features – Two 8-bit Timer/Counters with Separate Prescaler, one Compare Mode – One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode A co do pytania autora, nie, zliczanie umożliwiają tylko dwa pierwsze timery. Trzeciego można używać jako wewnętrznego. Nie tylko...

    Mikrokontrolery   29 Mar 2008 12:57 Odpowiedzi: 7    Wyświetleń: 3268
  • Atmega644pa - Timer1 nie odmierza równo 1 sekundy w trybie CTC

    Pomysł pierwszy: zapisz poprawny wzór na zawartość rejestru okresu OCR #define PERIOD (F_CLK / PRESCALER) Pomysł drugi: załaduj poprawną wartość: OCR1A = PERIOD - 1; Pomysł 3: Takie użycie przerwania kompletnie nie ma sensu. Wyłącz przerwanie i testuj znacznik timera z rejestru TIFR w pętli głównej. Pomysł 4: Zamiast printf użyj czegoś prostszego -...

    Mikrokontrolery AVR   18 Wrz 2013 14:49 Odpowiedzi: 15    Wyświetleń: 2952
  • ATMega128 - Świecenie 2 diodami na raz ze zmienną częstotliwością

    Kod piszę "na sucho", więc lepiej sprawdź czy działa.[syntax=c] #include <avr/interrupts.h> void timer0_init(void){ TCCR0 = _BV(CS02); //Mode 0, normal operation, prescaler 64 TIMSK |= _BV(TOIE0); //Timer/Counter0 Overflow Interrupt Enable } volatile unsigned long millis=0; volatile unsigned int okresy_migania_ledow[4] = {100,200,300,400}; ISR(TIMER0_OVF_vect)...

    Mikrokontrolery AVR   18 Wrz 2014 22:17 Odpowiedzi: 6    Wyświetleń: 1053
  • Bascom Atmega - Program z wykorzystaniem timera do odmierzenia czasu. Pytanie.

    Chcę napisac własny program z wykorzystaniem Timerów. Na początek proszę o wytłumaczenie dlaczego w poniższym programie: 1. wykorzystano podzial częstotliwości zegara (po preskalerze 256) 250/125 zamiast wykonac jedno dzialanie? 2. uzyto wartość początkową Timera0 = 250 przed Petlą do Loop End . O ile wyjaśnienie podane przez Tomq jest błędne(!) Load...

    Mikrokontrolery Początkujący   03 Maj 2014 20:09 Odpowiedzi: 4    Wyświetleń: 1281
  • [Atmega32]Jak skonfigurować zegarki wewnetrzne (Timer1 i Timer0)?

    1. W jakim języku piszesz? 2. Kalkuluje się to tak: Masz kwarc 16 000 000 Hz (16 MHz) i dajesz sobie jeden z dopuszczonych prescalerów, np. 64 i wtedy timer zlicza Ci impulsy z częstotliwością 16 000 000 / 64 = 250 000 Hz, czyli jeden impuls timera to 4*10^-6 s lub inaczej aby odmierzyć 1s musisz zliczyć 250 000 impulsów, Jako, że Timer0 jest 8 bitowy...

    Mikrokontrolery AVR   26 Cze 2011 20:40 Odpowiedzi: 13    Wyświetleń: 1848
  • [atmega8][bascom] O co chodzi tak na prawdę z tymi timerami?

    Poi pierwsze. Do BASCOM-a jest pomoc - także po polsku, której to zresztą jestem autorem. Wersję on-line (beta) znajdziesz na mojej stronie WWW. Jak one działają? Zliczają impusy. Albo z prescalera, albo z zewnątrz. Patrz nota katalogowa. W którą stronę zliczają? Zwykle liczą w górę. W trybach PWM liczą też w obie strony. Patrz nota katalogowa. Jak...

    Mikrokontrolery AVR   29 Paź 2008 20:50 Odpowiedzi: 5    Wyświetleń: 2687
  • AVR Timer1 - wyświetlanie tekstu co 0.23s bez blokowania komponentów

    \ 1. Rozumiem, że ustawienie odpowiedniej częstotliwości da mi czas, który jest mi potrzebny? Tak, program z tego postu demonstruje rejestry i bity których odpowiednie ustawienie spowoduje daną częstotliwość przerwać timerów, a w konsekwencji odpowiednią częstotliwość wysyłania tekstu / migania diodą, jednak obecny ustawiony czas jest przykładowy, nawet...

    Arduino   20 Gru 2019 21:55 Odpowiedzi: 21    Wyświetleń: 2283
  • Symulacja Timer1 w Bascom na ATtiny2313 - brak przerwań, Timer0 działa

    Niestety Bascom jest niedorobiony. Ilez to ja niekiedy spedzilem czasu bo cos mi nie chodzilo. Co wersja to inny blad. W jednej wersji nie chodzily mi np. timery na Atmega 16, prescaler blednie sie ustawial itp. Warto jest podgladnac rejestry i sprawdzic czy aby Bascom nie wpisal tam glupot. Jesli wpisal glupoty a to najczesciej jest przyczyna probowac...

    Mikrokontrolery   02 Maj 2006 19:43 Odpowiedzi: 4    Wyświetleń: 1221
  • [atmega16/32] - Dokładność timerów/kwarców do pomiaru czasu

    Ja doskonale rozumiem, że Atmegi moga pracować na kwarcu zegarkowym, tylko chciałbym wiedzieć na jakiego rzędu dokładność mogę liczyć na zwykłym kwarcu w porównaniu do kwarcu zegarkowego. -- pozdrawiam, demeus Taka sama!.... Wszystkie resonatory kwarcowe maja dokladnosc rzedu +/- 20ppm. Rezonatory zegarkowe jest o wiele wygodniej stosowac do odmierzania...

    Mikrokontrolery AVR   25 Mar 2009 22:48 Odpowiedzi: 4    Wyświetleń: 1833
  • ATmega8 Timer0/Timer1 – jak ustawić prescaler, by uzyskać 1s przy 1MHz?

    $regfile = "m8def.dat" Config Pinb.1 = Output $crystal = 1000000 Config Timer1 = Timer , Prescale = 64 Config Timer0 = Counter , Edge = Rising On Timer1 Odmierz_1s Dim Licz As Byte , I As Byte Enable Interrupts Enable Timer1 Start Timer1 Timer1 = 65535 - 15625 Do Loop End Odmierz_1s: Timer1 = 65535 - 15625 Incr Licz If Licz = 5 Then Licz...

    Mikrokontrolery   14 Mar 2006 21:13 Odpowiedzi: 27    Wyświetleń: 2873
  • [C] Atmega16 - Timer0 spieszy o 3 sekundy po 5 minutach, prescaler 1024, 8MHz

    Witam, Chciałem napisać program do liczenia 'sekund'. Jest to początek mojej drogi do zrobienia zegara. Problem jest taki, że po 5 minutach zegar spieszy już o 3 sekundy. Gdzie popełniłem błąd? Prescaler ustawiony na 1024, atmega na 8MHz na kwarcu wewnętrznym(może tutaj jest problem?), według informacji które posiadam przerwanie powinno być generowane...

    Mikrokontrolery   31 Maj 2011 11:28 Odpowiedzi: 9    Wyświetleń: 2972
  • [c] Timer1 w Atmega164P: Niewłaściwa częstotliwość w trybie CTC, 16MHz kwarc

    Używam Timera1 z Atmega164P w trybie CTC, Atmega ma kwarc 16MHz, interesujący kawałek programu wygląda tak: Konfiguracja Timera: void Timer1_Init(void) { DDRD |= (1<<PD7); // PD7 wyjście PORTD |= (1<<PD7); // PD7 <= 1 TCCR1B = (1<<WGM12)|(1<<C...

    Mikrokontrolery AVR   24 Lis 2009 16:44 Odpowiedzi: 8    Wyświetleń: 1652
  • AVR Asembler: Timer0 Overflow w ATmega128 - Jak uzyskać 1s odstęp?

    ... Proszę o szczegóły. Dlaczego oczywiste jest, że timer że 16-bitowy odliczy 1s? Zakładamy że taktujemy kwarcem 4MHz. Jeden takt to 1/4 000 000=0,25us. 16 bitów to 65536 cykli. 65536cykli*0,25us=16,384ms Proponuję więc zliczyć 100 cykli 10-cio milisekundowych. ilość cykli = 10ms/0,25us=40000 cykli. Wpisujesz więc do timera 40000 i czekasz aż się...

    Mikrokontrolery   12 Lis 2005 16:11 Odpowiedzi: 15    Wyświetleń: 3814
  • ATmega8, Timer0 i Timer1 – konfiguracja liczników do zmiany zmiennej co 1 sekundę, 4MHz

    A nie łatwiej jest policzyć DO ilu ma liczyć a nie OD ilu? :) i robić przerwania COMP a nie OVF? Ja tak robię i na kwarcu 4MHz timer1 odlicza sekundy bardzo ładnie. Ale u Ciebie timer1 wydaje się mieć dobrze ustawianą wartość. Przy prescalerze 256 musisz mieć 15625 taktów zegara, aby osiągnąć sekundę. W drugim coś mi nie gra. Odliczasz od 0x0F czyli...

    Mikrokontrolery   26 Mar 2008 13:45 Odpowiedzi: 5    Wyświetleń: 1757
  • Atmega32A - Moduł L298 - Sterowanie silnikiem DC - PWM

    Może spróbuj sterowania w inny sposób - za pomocą przerwania INT2 (wywoływanego przyciskiem) uruchamiaj i zatrzymuj licznik TC0 (parametry PWM są ustawione u Ciebie poprawnie) tzn ustawiaj bity TCCR0|=(1<<CS00)|(1<<CS01) kiedy chcesz uruchomić licznik i zeruj je jeżeli chcesz zatrzymać. Samo ustawianie wartości wypełnienia czyli rejestr...

    Mikrokontrolery AVR   02 Sty 2018 23:56 Odpowiedzi: 22    Wyświetleń: 1575
  • Jak uzyskać dane czasu i daty z RTC w ATmega8L?

    Stwierdzenie dotyczące RTC wynika z tego, że timer2 może pracować asynchronicznie z zewnętrznym kwarcem zegarowym. Można mu podać 32768Hz, t2 będzie takim zegarem (lub wynikającym z działania prescalera) taktowany - to jak wykorzystasz timer zależy od ciebie: możesz np ustawić go w trybie CTC przy prescalerze /128, wtedy będzie się przepełniał równo...

    Mikrokontrolery AVR   24 Sty 2009 19:55 Odpowiedzi: 17    Wyświetleń: 5429
  • [ATMEGA128] Timer1 CTC nie generuje przerwań przy 16MHz, OCR1A=62500

    Działa. Pewnie o czymś zapomniałeś na wstępie. Mój działający kod: .include "m128def.inc" .cseg .org0x0000 rjmpreset ;skok po resecie systemu .org0x0018 rjmpdata ;skok po wykryciu zgodności reset: ldi r16, high(RAMEND) out SPH, r16 ldi r16, low(RAMEND) out SPL, r16 rcallKONFIGURACJA_TIMER1 sei loop: nop rjmploop ;......

    Mikrokontrolery AVR   06 Lip 2008 08:32 Odpowiedzi: 23    Wyświetleń: 4139
  • Zmiana kodu z Timer0 na Timer1 w ATmega8 - jak to zrobić?

    Jedna uwaga tak na marginesie. Chyba wiem z jakiej książki korzystał kosmo90 i niestety jest tam błąd. Instrukcja Load Timer ma odrobinę inną składnię. Powinno być: Load Timer0, 250 czyli przecinek a nie znak =. Można ewentualnie napisać Timer0 = 5 co da taki sam efekt. A co do sposobu ładowania Timera to w pełni podzielam zdanie M.S. Taki trick poprawi...

    Mikrokontrolery   20 Wrz 2008 16:55 Odpowiedzi: 15    Wyświetleń: 6263
  • Przeniesienie kodu SPWM z Arduino UNO (ATmega328P) na ATTiny85A – kompatybilność

    Po niewielkich zmianach powinno działać też na Attiny85. Wrzucam kod dla Attiny85 (nie testowany; nie mam jak): [syntax=c]//############################... // SPWM implementation for Attiny85 // Clock frequency 8MHz internal clock oscillator // High Fuse: 0xFF, Low Fuse: 0xE2 // // Signals generated: // - SPWM...

    Arduino   20 Lip 2022 05:51 Odpowiedzi: 25    Wyświetleń: 888
  • KAMAMI ZL3 AVR, Atmega32-16PU, TIMER0 - Częstotliwość przed i po preskalowaniu

    Witam Układ jak w opisie, a mam probem ze zrozumieniem jaka jest częstotliwość przed (preskanem) prescalerem (? ), z lektur wynika że to częstotliwość zegara procka (czyli w tym wypadku 16M). Tak , to jest prawda. Prescaler, to pewnego rodzaju 10-bitowy, binarny licznik z 'odczepami' (tu wykorzystywany jako dzielnik w zależności od podłączenia 'odczepu')....

    Mikrokontrolery AVR   30 Mar 2017 19:25 Odpowiedzi: 12    Wyświetleń: 1353
  • Jak zrealizować detekcję zbliżenia ręki z TSOP1736 na ATmega 8L?

    Witam... Generalnie rzecz biorąc procedury opóźnienia czasowego nie nadają się do modulowania diody IR... Częstotliwość nie jest zbyt stabilna to raz... Dwa nie uzyskasz 36kHz musisz skorzystać z dobrodziejstw timera... Np. tak... #include<avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> #include <inttypes.h> int...

    Mikrokontrolery   03 Sie 2005 13:34 Odpowiedzi: 3    Wyświetleń: 1782
  • Czas trwania Waitms=500 na Atmega 8 z zegarem 1MHz bez prescalera?

    waitms 20 Zostanie to skompilowane do pętli, której czas wykonania wyniesie ~20ms (taktowanie procesora deklarujesz poprzez zmienną proprocesora $crystal lub w opcjach projektu), do dokładnego pomiaru czasu można wykorzystać timer.

    Mikrokontrolery AVR   13 Lip 2009 23:03 Odpowiedzi: 29    Wyświetleń: 2688
  • [Atmega16] [Atmega16][C] Jak uzyskać przerwanie timera co 100ms?

    Kwarc 1,8432MHz, prescaler 1024, timer w trybie CTC na 180 taktów. Kwarc 2,4576MHz, prescaler 1024, timer w trybie CTC na 240 taktów.

    Mikrokontrolery AVR   31 Sie 2010 12:29 Odpowiedzi: 7    Wyświetleń: 1221
  • [atmega128][bascom]Obrotom. z czujnikiem Halla w przerwaniu

    Zakres liczenia 16-bitowego timera przy zegarze 16MHz i prescalerze=1 to nieco ponad 4ms. Jak chcesz tym zmierzyć czas, który przy 5000obr/min wynosi ok. 12ms.?

    Mikrokontrolery AVR   17 Cze 2010 22:11 Odpowiedzi: 9    Wyświetleń: 2247
  • ATMEGA 2560 czy można zmienić priorytety danych przerwań

    Zacznijmy od pytań: 1. Które bity według Ciebie ustawiłeś w TCCR2B : Autor tematu pisał, że stosuje gotową bibliotekę do obsługi jakiegoś panelu dotykowego. Z tego, co zrozumiałem, to przerwanie to znajduje się we "wnętrzu" tej biblioteki. Takie efekty są oczywiście normalne, gdy ktoś mało świadomy tego, co się dzieje w jego programie stosuje gotowe...

    Mikrokontrolery Początkujący   08 Sie 2017 20:29 Odpowiedzi: 15    Wyświetleń: 2028
  • Atmega8: Konflikt przerwań Timer1 i Timer0 przy sterowaniu PWM i diodą

    To co napisał kol. Krauser jest bardzo istotne, ponieważ włączasz przerwanie od porównania (1<<OCIE1B), a nie masz funkcji jego obsługi, co de facto powoduje skok do adresu 0000h, czyli rozpoczęcie działania programu od początku.. Drobna uwaga do komentarza: [syntax=c]TCCR1B |= (1<<CS12)|(1<<WGM12) ; // prescaler 512[/syntax] W Atmega8...

    Mikrokontrolery Początkujący   07 Cze 2012 11:59 Odpowiedzi: 3    Wyświetleń: 1640
  • [Atmega128][c][WinAVR] Timer w trybie asynchronicznym

    Po co koledze ten CTC? Prescaler ustaw na 128 i wykorzystaj przerwanie przepełnienia licznika. Fint = Fosc / preskaler / 2^ilość_bitów_licznika = 32768Hz / 128 / 256 = 1Hz Przy CTC trzeba pamiętać, że występuje taki jeden mały szczegół jak 1+OCRn , gdyż licznik musi przynajmniej zliczyć jeden impuls. A ty go nie uwzględniłeś: Fint = Fosc / (preskaler...

    Mikrokontrolery AVR   08 Lis 2009 21:48 Odpowiedzi: 2    Wyświetleń: 2308
  • Różnice w odmierzaniu czasu na ATmega16 z timerem1 i preskalerem 1024/256

    Witam dopiero zaczynam przygodę z programowaniem mikrokontrolerów i mam pytanie odnośnie odmierzania czasu na uc atmega 16. Odmierzam czas przy pomocy timera1 kwarc 16MHz. Z obliczeń wynika, że przy preskalerze 1024 muszę odliczyć 15625 impulsów więc ładuję do timera wartość 49911 i wtedy uc odmierza mi około 4 sekund zamiast 1, natomiast gdy prescaler...

    Mikrokontrolery AVR   21 Gru 2009 12:52 Odpowiedzi: 1    Wyświetleń: 1350
  • Pobieranie plików z serwera przez SIM868 do Optiboot na Atmega328PB

    Udało mi się zapisać pierwszą stronę pamięci, potem modyfikowałem program i chciałem zapisać kilka stron - za każdym razem zapisywała się tylko 1 strona poprawnie aż w końcu zapisuję tylko pierwszą stronę i to błędnymi danymi. Długa noc przede mną... wrzucam w zasadzie cały testowy kod, przepraszam za bałagan bo jest w nim pełno zakomentowanych kawałków...

    Mikrokontrolery AVR   02 Sie 2022 12:28 Odpowiedzi: 20    Wyświetleń: 1491
  • Jak zintegrować ADC z TIMER2 w ATmega32 do próbkowania 8kHz w AVR Studio 4?

    Teraz masz prescaler ADC ustawiony tak że zegar ADC ma 125kHz. Zegar ADC- a nie inne zegary. Zegar ADC ma mieć 50-200kHz. Jak Ci mniej zależy na dokładności niż na szybkości- można dać zegar ADC na 250kHz. A oprócz tego- możesz zrobić tablicę albo bufor dla UART-a.

    Mikrokontrolery AVR   13 Lis 2011 15:02 Odpowiedzi: 21    Wyświetleń: 3390
  • [ATmega1284P] Timer1 przerwanie co BPM - błędne ustawienia preskalera?

    Zwracam się z prośbą o naprowadzenie co robię źle. Potrzebuje wygenerować przerwanie co czas zależny od danego parametru (tutaj BPM). ATmega1284P pracująca z zegarem 20MHz. Ustawiam BPM i wyliczam czas: [syntax=c]uint8_t bpm = 120; uint8_t step_time = 60000/(2*bpm); //czas trwania 8ki w ms uint8_t count = 0; //zmienna pomocnicza do zliczania przerwan[/syntax]...

    Mikrokontrolery AVR   18 Kwi 2012 20:04 Odpowiedzi: 1    Wyświetleń: 974
  • Licznik częstotliwości do 500 MHz na Atmega 48.

    (...)Nie jest on jednak bez preskalera, jak napisał androot, tylko wykorzystuje wbudowany w timer MPU 8-bitowy preskaler.(...) Miałem na myśli prescaler do kilku GHz, a nie ten wbudowany w µC.

    DIY Konstrukcje   23 Wrz 2013 18:43 Odpowiedzi: 37    Wyświetleń: 38184
  • [C] Atmega32 Timer0 CTC – dioda nie zapala się w przerwaniu, kod nie działa

    #include<avr/io.h> #include <avr/interrupt.h> #define F_CPU 1000000 int main(void) { TCCR0 = 0x05; //(1 << CS02) | (1 << CS00); prescaler na 1024 TIFR |= (1 << TOV0); TIMSK |= (1 << TOIE0); // aktywne przerwanie overflow // timer_enable_int(_BV(TOIE1)&...

    Mikrokontrolery   07 Mar 2011 09:24 Odpowiedzi: 8    Wyświetleń: 1997
  • [ATmega8] ATmega8 Bascom: Jak użyć Timer0 do opóźnienia zapalenia LED?

    Udało mi się odpalić program z książki Pana Wiązani, ale tam timet odmierza 1s Jak to przeliczyć? Jest jakiś na to wzór? Rzeczywiście musiało się 'udac odpalić' bo ten program nie jest pozbawiony błędów (!) \ A jak zrobić żeby odmierzał np 10 sekund? Zmiana preskalera wydłużyła max do 2sekund czas. Aby timer1 odmierzył inne/dowolne interwały czasu,...

    Mikrokontrolery Początkujący   10 Cze 2013 12:08 Odpowiedzi: 19    Wyświetleń: 3498
  • Jak zmieniać stan niski na wysoki za pomocą generatora? ATmega168 i język C.

    Wybrałem tryb 9 (Phase and Frequency Correct) i napisałem następujący kod: Nienajlepszy to wybór, bo akurat w tym trybie wartośc TOP jest ustawiana w rejestrze OCR1A, służąca do kontroli częstotliwości pracy timera , tymsamym elinujesz możliwośc generowania fali kanałem A. W tej sytuacji generowanie fali jest możliwe tylko w kanale B . Patrz ostatni...

    Mikrokontrolery AVR   09 Mar 2019 16:24 Odpowiedzi: 17    Wyświetleń: 1002
  • Wybór trybu PWM i konfiguracja timerów w Atmega8a do sterowania silnikami

    Dlaczego W rejestrze "TCCR1A" ustawiane są bity odpowiedzialne za wyjście OC1B ? Czy generalnie sterwowanie prędkością poprzez zmianę zmiennej OCR1x jest wogóle dobrym rozwiązaniem ? Bardzo proszę o odpowiedzi. Większośc timerów w AVR a szczególnie 16-bitowe posiadają dwa kanały nazwane A i B, które możesz wykorzystac do generowania 'odmiennych' fal...

    Mikrokontrolery   22 Lut 2015 18:29 Odpowiedzi: 17    Wyświetleń: 1245
  • Fast PWM nie działa na ATmega328 - kod nie zapala diody LED

    Masz błąd w ustawieniach prescalera...ustawiając wszystkie bity CS ustawiłeś zewnętrzny zegar jako taktowanie Timera, ustaw na przykład sam CS12 i zobacz czy działa

    Mikrokontrolery AVR   14 Sie 2017 05:11 Odpowiedzi: 3    Wyświetleń: 915
  • atmega328p - różnice w zliczaniu impulsów na int0

    Witam Do atmegi 328p, do int0 mam podpięty jedną nogą pc814, drugą do masy, czyli ten pc814 zwiera do masy int0. LCD podłączony do portu D. Wejscie int0 podciagnięte wewnętrznym pullupem. W przewaniu próbuję zliczać te impulsy, ale otrzymuję dziwne rzeczy. [syntax=c]#include <avr/io.h> #include <stdlib.h> #include <avr/interrupt.h>...

    Mikrokontrolery AVR   05 Maj 2015 17:09 Odpowiedzi: 7    Wyświetleń: 1212
  • [bascom] atmega8 wykorzystane 3 liczniki, timer2 zakłóca PWM

    Tylko mam pytanie bo nie jestem pewien, przy kwarcu 32.768kHz przepełnienie licznika odbywać się będzie równo co 1s ?? Co zrobić żeby przerwanie z przepełnienia było co 0.25s ?? Ustawić odpowiedni prescaler.Ponieważ timer jest 8'bitowy to przerwanie z prescalerem równym 1 będzie wywoływane 128 razy na sekundę. w M8 na T2 masz dostępne prescalery 1,8,32,64,128,256,1024....

    Mikrokontrolery   18 Maj 2011 08:48 Odpowiedzi: 2    Wyświetleń: 2525
  • Bascom, pomiar krótkich odcinków czasu na Atmega32 - jak to zrobić?

    Witam Proszę o pomoc. Potrzebuję wykonać okład mierzący bardzo krótkie odcinki czasu. START podanie impulsu na któryś pin, STOP podanie drugiego impulsu na kolejną nóżkę. Procesor Atmega32 język Bascom. Jaki najmniejszy odcinek czasu mogę zmierzyć ? Jak wygląda procedura pomiaru czasu miedzy Start a Stop? Bardzo proszę o podanie fragmentu kodu. A czy...

    Mikrokontrolery AVR   13 Gru 2008 15:01 Odpowiedzi: 5    Wyświetleń: 2153
  • ATmega8/ADC/przerwanie - uC nie wchodzi w procedurę przerwania

    Chwila. Timer bez preskalera, częstotliwość procesora nieznana, załóżmy, że 1 MHz (nieistotne). Timer zgłasza przerwanie co 21 cykli zegara, czyli ATmega zajmuje się na okrągło obsługą przerwań timera, nie mając szans obsłużyć żadnych przerwań o niższym priorytecie (ADC). Tak, timer był ustawiony na 1 MHz (było to wpisane w komentarzu prescalera dla...

    Mikrokontrolery AVR   20 Sty 2013 16:02 Odpowiedzi: 8    Wyświetleń: 2229
  • [AVR][C] ATMega8 - Sterowanie buzzerem za pomocą PWM

    Witam. Na forum jestem nowy, ale Atmege8 gryzę już od roku:). Zakładam że czytałeś datasheet'a od Atmega8 i niestety nie udało Ci się zrozumieć.Jeżeli tak to Ci pomogę. Po pierwsze w Atmega8 masz trzy timery/countery: -Timer0 8bit -Timer1 16bit -Timer2 8bit Timer1 i Timer2 możesz wykorzystać jako PWM,gdyż mają wbudowaną taką funkcje. Wiadomo że 16bitowy...

    Mikrokontrolery   06 Maj 2013 23:29 Odpowiedzi: 23    Wyświetleń: 17615
  • Atmega 16: Timer2 blokuje Timer0 przy wyświetlaniu na 7-segmentowych wyświetlaczach

    Dzięki, już działa. Wiedziałem, że mogę liczyć na forumowiczów :] ... Chociaż może nie do końca, bo teraz tylko timer 2 działa ;/ a 0 stoi. [syntax=c]void Timer0Init(void) { TCCR0 = 1<<CS01|1<<CS00; // Prescaler 64 TCNT0 = 128; // ~ 1.0 ms TIMSK |= 1<<TOIE0; // odblokowanie przerwania od licznika } void Timer2Init(void) { TCCR2 = 1;...

    Mikrokontrolery AVR   30 Sie 2011 22:58 Odpowiedzi: 11    Wyświetleń: 1489
  • ATmega2560 - przerwania timera1 nie działają, dioda nie gaśnie po 1 sekundzie

    Cześć, mam napisać "prosty" program dla ATmegi2560. Po wciśnięciu przycisku na porcie A, ma on zapalić odpowiadającą mu diodę na porcie B. Dioda ma się świecić 1 sekundę a potem ma zgasnąć. Za podtrzymanie świecenia mają odpowiadać przerwania timera1, a program ma się zaczynać od ustawienia flagi przerwania int0. Int0 działa, po wciśnięciu przycisku...

    Mikrokontrolery AVR   30 Lis 2015 22:10 Odpowiedzi: 9    Wyświetleń: 1086
  • Atmega328 - Jak zmierzyć czas trwania impulsu wtrysku samochodowego?

    Witam. Rozumiem, że działa to tak: Timer cały czas zlicza czas... 1. Gdy zbocze jest narastajace, przepisuje aktualna wartość timera do zmiennej zbocze1. 2. Zmieniam aby teraz reagował na zbocze opadające. 3. Gdy zbocze jest opadające , przepisuje aktualną wartość timera do zmiennaj zbocze2. albo raczej: 1.Gdy zbocze jest narastajace, zeruję zawartośc...

    Mikrokontrolery AVR   25 Sie 2016 09:37 Odpowiedzi: 8    Wyświetleń: 2025
  • Sterowanie PWM Atmega8 i IRFP064 - niskie napięcie i grzanie MOSFET-a

    Witam Forumowiczów Jeśli dział niewłaściwy proszę o przeniesienie;) Mój problem polega na tym iż chciałbym za pomocą pwm-a zawartego w mikroprocesorze Atmega8 wysterować powiedzmy żarówkę (lub cokolwiek innego) ze zmiennym napięciem regulowanym pwm. A mianowicie wszystko gotowe poskładane i tu mały problem. Atmega kwarc 16MHz, timer 8bit , prescaler...

    Początkujący Elektronicy   15 Lut 2015 13:47 Odpowiedzi: 8    Wyświetleń: 1290
  • Jak przenieść kod RC5 z ATmega16 na ATmega8L z użyciem Timer1?

    Kolego, byś się zdecydował... albo: SIGNAL (SIG_OUTPUT_COMPARE1A ) albo: ISR (TIMER1_COMPA_vect) a nie: SIGNAL(TIMER1_COMPA_vect) Z tym, że SIGNAL już się nie powinno stosować. A tak to każdy xxxx ma swój strój... Konfiguracja Timera jest ok. Ja bym delikatnie jeszcze zmienił kod. np: TIMSK = 0b00000000; // WYLACZENIE TIMER1...

    Mikrokontrolery AVR   04 Mar 2010 20:52 Odpowiedzi: 17    Wyświetleń: 1647
  • [C] ATMega8 - Timery i przerwania nie działają w kodzie C, WinAVR 20100110

    To właśnie zostało uruchomione - musi działać. Pisane pod WinAVR [syntax=c] #define SET(port, bit) port|=(1<<bit) #define RESET(port, bit) port&=~(1<<bit) #define NOT(port, bit) port^=(1<<bit) //Przerwanie wywolywane 100 razy na sekunde ISR(TIMER1_COMPA_vect)// == SIG_OUTPUT_COMPARE1A { NOT(PORTD,PD6); } int main (void) { SET(DDRD,PD6);...

    Mikrokontrolery AVR   20 Maj 2011 18:47 Odpowiedzi: 14    Wyświetleń: 2169
  • AtMega 324/644/1284 - reset mikrokontrolera po odblokowaniu przerwań

    Witam, Mam problemz AtMega z tematu. Ustawiam konfigurację Timerów wg manualki: tryb CNC; prescaler; zezwolenie na przerwania CompareMatch. Po ustawieniu tego odblokowuję przerwania przez "sei();" i.. procesor się resetuje. Dodam też, że taki sam kod działa bez problemów na AtMega 16/32/64. Czy przy pisaniu kodu na te procesory (324/644/1284) trzeba...

    Mikrokontrolery AVR   11 Lis 2015 17:52 Odpowiedzi: 6    Wyświetleń: 1293
  • [Atmega16] BASCOM szybki obrotomierz motocyklowy na INT0

    Jak zmusić diodę alarmu do migania nie używająć procedur waitms ? Mam teraz zrobine tak: Używasz Timer0 jako pewnego rodzaju 'swoisty' prescaler: (4 ms; 100 ms; i 1 sec). Dlaczego okazyjnie nie wykrzystać tych 100 ms na miganie diodą? Wstaw tą wyżej procedure (troche zmodyfikowana - zamiast "set Porta.5" daj "toggle") w przerwaniu timera0 w miejscu...

    Mikrokontrolery AVR   24 Lip 2011 11:23 Odpowiedzi: 95    Wyświetleń: 17556
  • Resetowanie timera w Atmega8 - jak wyzerować licznik do zera?

    Prawie. Cytat z datasheet'a: (opis bitu PSR w SFIOR) When this bit is written to one , the Timer/Counter1 and Timer/Counter0 prescaler will be reset. The bit will be cleared by hardware after the operation is performed. Writing a zero to this bit will have no effect.

    Mikrokontrolery AVR   16 Sty 2015 09:16 Odpowiedzi: 9    Wyświetleń: 1089
  • [AVR] ATMega ATTiny 0-Series, 1-Series uwagi ogólne

    Tym razem uwaga na temat taktowania timera B. Timer B ma bardzo zubożony dzielnik zegara gdyż may tylko opcję dzielenia przez 2 lub braku dzielenia. Alternatywą może być taktowanie zegarem zapożyczonym z Timera A, (sygnał pobierany zza dzielnika Timera). This peripheral uses the system's peripheral clock CLK_PER. The peripheral has its own local prescaler,...

    Mikrokontrolery AVR   16 Sty 2023 00:57 Odpowiedzi: 10    Wyświetleń: 2322
  • Atmega8 Bascom - Nie działa obsługa timera gfdzie jest błąd

    Tak co jeden cykl. Prescale jest 64 wiec nie tu chyba problem. Nic sie nie dzieje na wyswietlaczu a w symulatorze tez nie pokazuje zmian zmiennych. To nie jest jeden cykl, ani też 64 jakby wynikało z podziału prescalera. Wszystko można odczytac w symulatorze, tylko musisz potrafic posługiwac się jego ustawieniami i funkcjami. Poniżej masz przykład...

    Mikrokontrolery Początkujący   06 Lis 2013 07:50 Odpowiedzi: 16    Wyświetleń: 2553
  • ATmega32 - Licznik impulsów Timer0 i Timer1 ustawienie

    Witam, mam problem z uruchomieniem programu do zliczania impulsów na T1 przez 1 sekundę. Wyświetla mi ciągle zero. Co źle ustawiłem z Timerami ?? Atmega 32 [syntax=c] #define F_CPU 1000000UL #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> #include <hd44780.h> volatile unsigned char licznik = 0; //liczba...

    Mikrokontrolery Początkujący   29 Mar 2013 22:18 Odpowiedzi: 15    Wyświetleń: 5754
  • [Atmega] Atmega: Timer1 CTC przycina się przy zmianie OCR1A z ADC, silnik staje

    Witam, Mam problem z timerem1 - timer pracuje w trybie CTC (4), wartość wpisywana do rejestru OCR1A jest wcześniej odczytywana z przetwornika ADC (potencjometr). Problem występuje podczas zmiany tej wartości - timer tak jakby się przycinał (ale tylko czasami) - nie zgłasza przerwania przez pewną chwile, żeby zaraz zacząć normalnie pracować. Np. po takiej...

    Mikrokontrolery AVR   11 Paź 2009 18:53 Odpowiedzi: 3    Wyświetleń: 5311
  • Atmega328 timer0 nie odlicza czasu/nie generuje przerwania (tryb normalny)

    Po pierwsze, timer liczy od 0 do 255, ale to oznacza 256 impulsów pomiędzy przepełnieniami, czyli powinno być 256, a nie 255 * 128us. Po drugie zaokrągliłeś wynik z 32.64 do 32 przed dzieleniem, co w efekcie dało niedokładny wynik ilości przepełnień. W rzeczywistości częstotliwość przerwań można obliczyć dużo prościej: ( 8000000 / 1024 ) / 256 = ok. 30,5176.....

    Mikrokontrolery AVR   11 Kwi 2019 11:28 Odpowiedzi: 9    Wyświetleń: 909
  • Bascom Atmega16 - Odliczanie czasu pomiędzy impulsami.

    W Bascomie jest do tego specjalna instrukcja Zaglądnij do Helpa na polecenie Pulsein Zauważ że zarówno instrukcja pulsein jak i pulseout mierzy tylko czas trwania impulsu a nie całego cyklu; patrz paniżej diagram: http://obrazki.elektroda.pl/1148630500_1... Zmierzysz tylko L1 albo L2 . Autor potrzebuje zmierzyc czas L (czas pomiędzy...

    Mikrokontrolery AVR   30 Sty 2015 05:05 Odpowiedzi: 29    Wyświetleń: 3891
  • Atmega 328P - Timer 0 zbyt mała częstotliwość do multipleksowania

    Witam! FµC=8 MHz , prescaler = 1024. Timer 0. Wychodzi częstotliwość: 7812.5 Hz = 7.8125 kHz. Wyświetlacz 7 segmentowy 4 cyfrowy migocze właśnie przy takiej częstotliwości. Dopiero przy preescalerze 64 jest OK. Czy to jest normalne? Przecież już przy 4 * 50 Hz = 200 Hz nie powinno migotać. :/

    Mikrokontrolery AVR   27 Wrz 2014 14:42 Odpowiedzi: 5    Wyświetleń: 1041
  • Atmega644PA - Obsługa przerwania, multipleksowanie ADC

    Hej :) Chcę podłączyć 3 czujniki odległości do kanałów ADC (porty PA1, PA2, PA3) i odczytywać z nich pomiary przez cały czas. Ponieważ po przetestowaniu czujników doszłam do wniosku że pewne czynniki wpływają na niestabilność pomiaru, chcę jako ostateczny wynik wziąć średnią arytmetyczną z 8 pomiarów przeprowadzonych w trakcie jednego cyklu pomarowego...

    Mikrokontrolery   10 Sty 2016 16:07 Odpowiedzi: 53    Wyświetleń: 2877
  • [AtMega16] [AtMega16][C] - Implementacja multitaskingu dla odczytu ds18b20 i sterowania GPIO

    Powrócę jeszcze do tematu. Timery programowe to objaśnił Mirekk36 w swojej książce oraz artykułach i wideo poradnikach, bardzo dobrze je się stosuje. Jest to proste, wystarczy ustawić jakiś timer w tryb CTC i wywoływać przerwanie co jakiś zamierzony czas (stosuje około 10ms). F_CPU/Prescaler/100 Zaokrągloną wartość wpisujemy do rejestru OCRx. W przerwaniu...

    Mikrokontrolery AVR   13 Kwi 2013 20:38 Odpowiedzi: 24    Wyświetleń: 2658
  • Dlaczego ATmega16 z preskalerem 1024 odmierza 4 sekundy zamiast 1?

    Witam dopiero zaczynam przygodę z programowaniem mikrokontrolerów i mam pytanie odnośnie odmierzania czasu na uc atmega 16. Odmierzam czas przy pomocy timera1 kwarc 16MHz. Z obliczeń wynika, że przy preskalerze 1024 muszę odliczyć 15625 impulsów więc ładuję do timera wartość 49911 i wtedy uc odmierza mi około 4 sekund zamiast 1, natomiast gdy prescaler...

    Mikrokontrolery AVR   22 Gru 2009 02:41 Odpowiedzi: 6    Wyświetleń: 2981
  • [AVR] Jak skrócić czas odczytu 15 czujników DS18B20 na ATmega?

    Tak czytam i mam wrażenie ze te czujniki chcesz odczytać jeden po drugim co 10s, nie lepiej będzie odczytywać grupami np. po 3 czujniki co 2s? Czujnik obsługuję z pomocą timera:[syntax=c]ISR(TIMER0_COMP_vect)// przerwanie do timera sprzetowego { if( czas_konwersji ) czas_konwersji--; // jeżeli większy od zera, zmieszaj go aż osiągnie 0; } // definicje...

    Mikrokontrolery AVR   07 Sty 2014 16:21 Odpowiedzi: 47    Wyświetleń: 7887
  • [atmega328p] [atmega328p][c] Timer0 - dioda nie miga, ustawienia 8MHz, kod nie działa

    witam. bawię się od początku tygodnia z procesorem atmega328p. do tej pory wszytsko szło ok, dziś chciałem wziąć się za timery. znalazłem najprostszy program dot. timera0, jedna nie działa on u mnie :) pozmienialem nazwy rejestrów tak, by pasowaly do mojej wersji atmegi. dioda zapala się i tak już zostaje - żadnych zmian. zegar wew. mam ustawiony na...

    Mikrokontrolery AVR   11 Sie 2014 23:33 Odpowiedzi: 7    Wyświetleń: 3855
  • Jak zbudować miernik prędkości obrotowej z Atmega8, LCD i GP1S51VJ000F?

    dobra, obiecany gotowiec i przy okazji manual pt "jak korzystać z manuala". W naszej przeglądarce wpisujemy adres www.google.pl Wpisujemy tam Atmega8, po załadowaniu się strony z rezultatami klikamy w link posiadający w tytule "datasheet" i sprawdzamy czy jest on z atmela. Po pomyślnym otwarciu się datasheetu z indeksu po lewej stronie wybieramy 16-bit...

    Mikrokontrolery AVR   24 Sty 2011 00:38 Odpowiedzi: 62    Wyświetleń: 10848
  • Atmega88 – jak przerobić kod przerwań i timerów z Atmega16 do zliczania impulsów

    Witam! Czy ktoś mógłby mi pomóc przerobić kod tak aby był obsługiwany przez Atmegę 88? A czy to tak ciężko ściągnąć dokumentację ATMega44/88/168 i sprawdzić jak nazywają się rejestry, w których występują bity o nazwach ISC01 czy INT0 :?: (poniższy jest obsługiwany przez atmegę 16 i dotychy zlicznia impulsów przez zbocze) W powyższym kodzie, to masz...

    Mikrokontrolery AVR   16 Wrz 2014 23:23 Odpowiedzi: 6    Wyświetleń: 1158
  • [mega8] Atmega8-16PU: Dioda miga zamiast reagować na przerwanie INT1

    W oparciu o Wasze rady oraz [url=http://www.avrfreaks.net/index.php?... Guide to AVR Timers i przydatną stronę [url=http://www.et06.dk/atmega_timers/]A... Timer/Counter/Prescaler Calculator w wolnym czasie sklepałem taki kawałek kodu: [syntax=c]#include <avr/io.h> #include <avr/interrupt.h>...

    Mikrokontrolery   09 Maj 2011 14:25 Odpowiedzi: 8    Wyświetleń: 1827
  • Czy przerwanie jest "przechowywane"? Uszkodzona Atmega?

    Czesc, No niestety nie hula... probowałem tego. Myśle ze atmega jest zryta jakos... Mimo tego, ze mam obsługe przerwań i tak, wiem ze to musi działać bo skopiowałem to z mojego poprzedniego projektu, to mi się restartuje atmega. Zwrać na płytce nie ma. [syntax=c] #include <avr/io.h> // Załaduj bibliotekę input/output #include <avr/interrupt.h>...

    Mikrokontrolery AVR   06 Sie 2019 15:46 Odpowiedzi: 21    Wyświetleń: 1164
  • Atmega328P Timer1 z przerwaniem Input Capture - ustawienie licznika

    Patrzę też, że u Ciebie występuje niepokojąca manipulacja konfiguracją ICP w obsłudze od przepełnienia. W obsłudze od przepełnienia mam tylko konfiguracje timera gdyby był zanik sygnału.. Tak zwany "timeout" gdy nastąpi pod rząd ponad 10 przepełnień timera (400ms) a ICP tego nie skasuje bo brak sygnałów to ustawia timer na zbocze narastające i ustawia...

    Arduino   06 Maj 2020 19:32 Odpowiedzi: 2    Wyświetleń: 810
  • [ATMEGA32/AT90CAN32][C/ASM] Regulacja fazowa obciążenia

    Przy odblokowaniu timera weź pod uwagę prescaler. Jeśli jest różny od 1 to on cały czas zlicza - trzeba go wyzerować, bo inaczej pierwszy impuls będzie po dosyć losowym czasie. Włączaj triak na dłużej - szczególnie przy kątach otwarcia rzędu 180 stopni prąd płynący przez triaka może być niewystarczający do jego podtrzymania. Jeśli możesz zmienić schemat,...

    Mikrokontrolery AVR   30 Kwi 2010 19:52 Odpowiedzi: 4    Wyświetleń: 2643
  • Konfiguracja przerwań TIMER0 na ATmega16

    Mam problem z uruchomieniem przerwania, kombinowałem wiele razy z różnymi ustawieniami jednak nie obserwuję zmian na porcie PD7, PWM na porcie PB3 działa (przebiegi obserwowane na oscyloskopie). Mikroprocesor to ATmega 16 taktowana z kwarcu 16 MHz. Może ktoś zerknie świeżym okiem i doradzi. #define F_CPU 16000000 #include #include #include #include...

    Mikrokontrolery AVR   21 Kwi 2024 20:25 Odpowiedzi: 9    Wyświetleń: 459
  • Atmega16A - Sterowanie servem TowerPro SG-90 micro, ustawienia timerów

    Hmm zrobiłem to co zaproponowałeś i nie działa, napięcie 0 V na wyjściu ;( [syntax=c] void servo_init_2(void) ; int main (void){ DDRD |= (1<<PD5); servo_init_2(); while(1){} return 0; } void servo_init_2(void) { TCCR1A |= (1<<COM1A1); //Clear OC1A/OC1B on compare match, set OC1A/OC1B at BOTTOM, (non-inverting mode) TCCR1B |= (1<<WGM12)//...

    Mikrokontrolery   20 Lip 2015 15:48 Odpowiedzi: 19    Wyświetleń: 930
  • Bascom Timer0 - brak 100us impulsów przy kwarcu 16MHz i prescalerze 64

    Witam, Nie będę zakładał nowego tematu. Mam podobny problem. Atmega 2560 + 16Mhz. Przy tym ustawieniu timera przerwanie powinno być generowane co 0,5s. Natomiast jest generowane co 1s. 256/16000000= 16us*65536=1,048576s 65536-31250=34286 co daje 0,5s [syntax=basic4gl] $regfile = "m2560def.dat" $crystal = 16000000 Config Portg.5 = Output : Portg.5 =...

    Mikrokontrolery   02 Sie 2013 16:17 Odpowiedzi: 7    Wyświetleń: 1491
  • ATmega32 - timer0 (CTC)ustawianie zadanej częstotliwości generacji przerwania

    Możesz użyć licznika 16 bitowego (Timer1). Wtedy minimum to teoretycznie 0.25 Hz. Możesz też w przerwaniu nie zmieniać stanu portu, tylko np. inkrementować zmienną. Czyli tak w najprostszym rozwiązaniu: [syntax=cpp]volatile unsigned char reload = 0; ISR(TIMER0_COMP_vect) { reload++; if(reload >= 60) { PORTC^=(0x01); reload = 0; } } [/syntax] Powyższe...

    Mikrokontrolery AVR   23 Gru 2012 12:29 Odpowiedzi: 28    Wyświetleń: 5235
  • [Atmega 8] [Atmega 8][GCC][VMLab] - Timer w symulatorze działa za szybko, jak to naprawić?

    Program ma dużo błędów i jest źle napisany. Po pierwsze nie wiem w jakim celu używasz pętli while. Po drugie nie wiem jakie jest taktowanie procesora (zakładam że 1MHz a nie 1 000 000MHz :) ). Do takiego zadania wybrałbym prescaler timera0 na maksa (1024), i nie skracał cyklu. Wtedy miałbym przerwanie o częstotliwości ok. 3,8Hz (co ok. 0,26 sekundy)....

    Mikrokontrolery AVR   19 Sty 2014 09:10 Odpowiedzi: 14    Wyświetleń: 2028
  • BTM112 - Jak sprawdzić status połączenia Bluetooth między ATmega32A i ATmega8L?

    Witam Czy istnieje w modułach bluetooth coś w stylu flagi nawiązania połączenia tzn. master zapala flagę gdy sparuje się ze slavem, a gasi ją gdy połączenie zostanie przerwane? Program miałby działać tak: Po nawiązaniu połączenia między mikrokontrolerami (ATmega32A i ATmega8L) za pomocą nadajników bluetooth przesyłany jest ze slave'a do mastera klucz...

    Mikrokontrolery Początkujący   20 Mar 2017 22:37 Odpowiedzi: 13    Wyświetleń: 1278
  • [Atmega8] Jak zmierzyć czas stanu wejścia z dokładnością 100ms na Atmega8 w C?

    //timer 1 16bit konfiguracja (ICP1) TCNT1=0; //ustawienie poczatkowej wartosci timera 1 TCCR1B |= (1<<ICES1); //pomiar na narastajacym zboczu TIMSK |= (1<<TICIE1) | (1<<TOIE1); //zezwolenie na przerwanie od ICP i od overflow TCCR1B |= (1<<CS12) | (1<<CS10) ; //prescaler 1024...

    Mikrokontrolery AVR   06 Sie 2011 18:22 Odpowiedzi: 53    Wyświetleń: 7570
  • Synchronizacja Bascom, mega8535, LED 7-segment, DS1307, DS1820, ULN2008

    Witam Wyświetlacz musisz zrobić w przerwaniu. Częstotliwość odświeżania każdego powinna wynosić minimum 50Hz. Lepiej unikać dokładnej częstotliwości 50Hz. Może to być np. 53.5Hz. Jeśli ma np. 4 takie kostki to częstotliwość powinna wynieść 4 * 53.5Hz czyli 214Hz lub jak kto woli przerwanie powinno być wywoływane co 4,67 milisekundy. Od tego bym zaczął....

    Mikrokontrolery   01 Sie 2006 08:50 Odpowiedzi: 6    Wyświetleń: 2237
  • atmega 8535 - Konfiguracja Fast PWM tryb 15 na timerze 16-bitowym

    Witam, chcę uruchomić na timerze 16 bitowym tryb 15. 'Fast PMW' robię to tak: [syntax=c] PORTC |= (1<<PD4); TCCR1A|=(1<<COM1B0) |(1<<WGM11) |(1<<WGM10); TCCR1B|=(1<<WGM13) |(1<<WGM12) |(1<<CS11) //prescaler 64 |(1<<CS10); OCR1A=400; OCR1B=250; [/syntax] I teraz jeśli dobrze rozumiem to rejestrem OCR1A...

    Mikrokontrolery AVR   06 Lis 2013 14:25 Odpowiedzi: 1    Wyświetleń: 873
  • [atmega8] Atmega8 - zegar działa zbyt wolno, problem z kwarcem 8MHz i prescalerem

    witam wszystkich Dopiero zacząłem przygodę z programowaniem i pojawił się problem Chciałem zrobić zegar na Atmega8. Przepisem program z książki (wiec domyślam się zę nie ma błędów) Zrobiłem prosty układ na płytce stykowej. Do Atmegi podpiąłem kwarc 8MHz dwa kondensatory po 27pF i i wyświetlacz LCD 2x16. Program ruszył od razu ale za wolno chodzi sekunda...

    Mikrokontrolery AVR   30 Lip 2009 16:07 Odpowiedzi: 5    Wyświetleń: 2924
  • ATMega8 - maksymalna częstotliwość pomiaru bez preskalerów, kod w Bascom

    No, tak dobrze to nie jest. AVR-y (a w nich timery) nie mogą poprawnie zliczać impulsów o częstotliwości większej niż połowa częstotliwości zegara zakladając na wejsciu wypełnienie przebiegu 50%. Niezbędne będzie zatem zastosowanie preskalera. Proponowałbym ATMEGA8 z kwarcem 16MHz i z prescalerem /4 zbudowanym np z cyfrówki 74F74. Mamy zatem poniżej...

    Mikrokontrolery   26 Sty 2006 22:05 Odpowiedzi: 3    Wyświetleń: 2598
  • [Atmega169p] [Atmega169p][C] Wysoki pobór prądu w trybie uśpienia z LCD i Watchdogiem

    Witam Buduje urządzenie zasilane bateryjnie oparte na atmega169p. Procesor jest zasilany z około 2.6V i pracuje na zewnętrznym oscylatorze 1.8432MHz. Procesorem wysterowuje wyświetlacz LCD (4 wspólne + 12 segmentów). Problemem jest pobór prądu w czasie uśpienia procesora. Nie mogę zejść poniżej 100uA w power save mode. Brownout i debug mode wyłączone....

    Mikrokontrolery AVR   26 Lut 2009 15:41 Odpowiedzi: 4    Wyświetleń: 1166
  • Timer2 ISR nie wyświetla godziny przy zegarze 1MHz i prescalerze 1024

    [syntax=c]volatile uint8_t num[10] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F}; volatile uint8_t time[6] = {0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F}; volatile uint8_t d = 0; volatile uint8_t counter = 0; volatile struct tm* t = 0; volatile uint8_t hour, min, sec, day, month, year;[/syntax] Atmega8, chcę zrobić w głównej pętli obsługę przycisków,...

    Mikrokontrolery AVR   04 Gru 2014 18:39 Odpowiedzi: 13    Wyświetleń: 1095
  • Atmega644pa - PWM: Sterowanie jasnością diody i obrotami silnika - kod nie działa

    Cześć Uczę sie obsługi PWM na mikrokontrolerze Atmega644pa, chcę w prosty sposób sterować obrotami silnika za pomocą PWM. Na początek próbuję sterować jasnością diody, co potem chcę analogicznie zaimplementować dla silnika aby uzyskać sterowanie obrotami. Napisałam poniższy program i modyfikowałam go przez dwa dni z zerowym sukcesem, bardzo proszę o...

    Mikrokontrolery   03 Sty 2016 13:41 Odpowiedzi: 6    Wyświetleń: 939
  • Zegarek na LCD i atmega8 ,brak precyzji...i Timer'ów.

    Nie mam pojęcia jak zrobić prescaler na tym rejestrze TCCR0 w Bascom. Ale czy tałem że im większy ten prescale tym mniejsza dokładność ,może lepiej zostać przy tym co jest ?

    Mikrokontrolery   22 Wrz 2007 16:04 Odpowiedzi: 38    Wyświetleń: 5728
  • ATmega32, jak poprawnie ustawić przerwanie TIMER1 w C na zestawie and-tech EvB 4.3

    Witam wszystkich. W końcu wziąłem się za naukę C, tym bardziej, że zakupiłem książkę naszego forumowicza mirka (polecam książkę, lekko napisana i ta po "chłopsku") oraz wpadł mi w ręce zestaw startowy z and-tech EvB 4.3 (bardzo podobny do tego z ATNEL-a). Pierwsze kroki z diodą i wyświetlaczem LCD za mną. Przerwanie i migoczącą diodą także. Problem...

    Mikrokontrolery Początkujący   29 Gru 2011 20:59 Odpowiedzi: 4    Wyświetleń: 1566
  • Atmega328P - Jak zatrzymać właściwie Timer 2 w trybie CTC

    Timer 2 ma ustwienia prescalera na 1 i rejestru porównawczego na 7 Zacznijmy od tego: timer w trybie CTC, preskaler 1, OCR2A=7, czyli przerwanie co 8 taktów zegara, a ile taktów trwa procedura obsługi tego przerwania? Samo wejście i wyjście z procedury zajmuje więcej czasu.

    Mikrokontrolery AVR   24 Lut 2015 22:24 Odpowiedzi: 7    Wyświetleń: 2028
  • ATMEGA - Komunikacja ATMEGA8 po SPI a przepełnienie licznika 1

    Witam, Symulacja przesyłania/odbioru przez SPI działa w debugerze AVR Studio 4 gdy nie jest czynna obsługa przerwania przepełnienia licznika1 ISR(TIMER1_COMPA_vect), ale po przepełnieniu licznika zerują się wszystkie zmienne. Jeżeli obsługa przerwania jest aktywna (nawet pusta) to symulacja interface SPI nie działa. Brak wtedy sygnału zegarowego na...

    Mikrokontrolery Początkujący   30 Mar 2015 17:01 Odpowiedzi: 8    Wyświetleń: 1062
  • [atmega32][c]Nadpisywanie się obszrów pamięci - tylko dla hardkorów.

    [syntax=c]Error RTC_Initialize (struct RTC_init *initParemeters) { Error ret = NO_ERROR; TCCR2 = 0; //stop timer initialized = false; if (NULL != initParemeters) { lastInitParams.onSecChangedCbf = initParemeters->onSecChangedCbf; } else { lastInitParams.onSecChangedCbf = NULL; } //AS2 = 1 - asynchronous mode. ASSR |= 1<<AS2; //OCR2 = 128 -...

    Mikrokontrolery AVR   17 Sie 2017 15:45 Odpowiedzi: 26    Wyświetleń: 2403