przerwa timer atmega

Znaleziono około 7195 wyników dla: przerwa timer atmega
  • 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ń: 453
  • REKLAMA
  • ATmega32 - Program nie wchodzi w obsługę przerwania TIMER0_COMP_vect

    Mnie wychodzi, że to nie jest tryb CTC tylko normalny. Po drugie na przerwanie compare trzeba zezwolić w rejestrze TIMSK - bit OCIE0 - masz < zamiast << stąd problem. Jak masz jakieś wątpliwości co do konfiguracji, to użyj symulatora AVR Studio. Można sobie w nim też ustawić tryb pracy i odczytać wartości rejestrów kontrolnych dla niego i potem...

    Mikrokontrolery AVR   30 Gru 2012 14:29 Odpowiedzi: 17    Wyświetleń: 2499
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (2min)...
  • [C] Atmega32: Przerwania licznika, diody co sekundę, preskaler 256, TIMER1_OVF_vect

    Chodzi o to, że po pierwszym przerwaniu TCNT1 będzie miał wartość 0, czyli zliczy potem 65536 impulsów. Zaś do generowania, jak Ty chcesz, przerwań co określony odcinek czasu służy tryb CTC. Wtedy w rejestrze OCR ustawiasz ilość impulsów, które chcesz zliczyć, i wygenerować odpowiednie przerwanie.

    Mikrokontrolery Początkujący   27 Gru 2012 16:24 Odpowiedzi: 17    Wyświetleń: 1776
  • REKLAMA
  • Bascom - Atmega8a traci wartość liczników/samoczynny reset mikrokontrolera

    Witam, Mam problem z programem na Atmege8a, mianowicie: Piszę program sterujący pracą silnika (za pomocą L293D) który dodatkowo będzie zliczał w czasie impuls od przerwań zewnętrznych i tu pojawia się problem: kiedy napisałem program obsługujący tylko pracę silnika, wszystko działa sprawnie, kiedy napisałem program zliczający impulsy w czasie, również...

    Mikrokontrolery Początkujący   13 Cze 2013 13:47 Odpowiedzi: 10    Wyświetleń: 2214
  • Atmega32 / Bascom - Konflikt dwóch SPI programowych z MAX7219 i WTV020SD

    Witam Mam program budzika, który jako dodatkową atrakcję miał mieć możliwość mówienie czasu na żądanie i odtwarzanie oprócz buzzera utworu jako alarmu. Atmega steruje przez jedno SPI programowe układem MAX7219, a przez konwerter poziomów i drugie SPI programowe odtwarzaczem WTV020SD. O ile sam WVT020SD + PCF8563 ( wyjście CLK do INT1 ) działają dobrze,...

    Mikrokontrolery AVR   29 Mar 2017 12:35 Odpowiedzi: 20    Wyświetleń: 2493
  • AVR ATmega16 - Zawieszanie programu przy przerwaniu Timer2, kwarc 8MHz

    W jakim środowisku działasz? Jesteś pewny nazwy tego wektora? Nie ma żadnych ostrzeżeń? Bo mnie się tu coś nie zgadza: [syntax=c]ISR(TIMER0_COMPA_vect){}[/synt... Tak chyba powinno być prawidłowo: [syntax=c]/* Timer/Counter0 Compare Match */ #define TIMER0_COMP_vect_num19 #define TIMER0_COMP_vect _VECTOR(19) #define SIG_OUTPUT_COMPARE0 _VECTOR(19)[/syntax]

    Mikrokontrolery AVR   26 Sty 2014 09:24 Odpowiedzi: 8    Wyświetleń: 1677
  • Błąd w programie multipleksowania LED na atmega32 - przerwania nie działają

    // ================= PROCEDURA OBSŁUGI PRZERWANIA COMPARE MATCH ISR(TIMER0_OVF_vect) Błąd. To jest przerwanie od przepełnienia licznika. Przerwanie od porównania to: TIMER0_COMP_vect . W nagrodę Pomógł od mniej spostrzegawczych użytkowników i moderatorów :) A co do tranzystorów, to oczywiście lepsze by były PNP, ale z NPN też będzie działać (trochę...

    Mikrokontrolery Początkujący   01 Cze 2015 18:16 Odpowiedzi: 22    Wyświetleń: 1524
  • [bascom][atmega] Timer1 - jest przerwanie od pełnego cyklu pomimo jego skrócenia

    Witam, pisze program w którym wykorzystuję 16 bitowy Timer1 z Atmegi 328. Najpierw konfiguruję go tak: [syntax=vbnet]Config Timer1 = Timer , Prescale = 64 'Kwarc 18.43MHz, 1/18430000 * 64 = 3.473us Enable Timer1 On Timer1 Impulsuj 'ISR[/syntax] a potem mam procedurę przerwania której zadaniem testowym jest wygenerować przebieg prostokątny: [syntax=vbnet]'---------------------ISR....

    Mikrokontrolery AVR   18 Kwi 2018 12:40 Odpowiedzi: 5    Wyświetleń: 810
  • REKLAMA
  • Jak obsłużyć timer i przerwania w Atmega8a w C++?

    Witam! Proszę o pomoc, buduję zegarek na Atmega8a. Problem stwarza mi obsługa timera w przerwaniu. Właściwie to nie mogę znaleźć nic konkretnego. Jak włączyć timer? Gdzie ustawia się flaga przepełnienia? Czy flagę trzeba wyzerować ręcznie? Jak to wygląda z perspektywy kodu C++? Dziękuję serdecznie za pomoc :)

    Mikrokontrolery AVR   11 Mar 2014 17:46 Odpowiedzi: 13    Wyświetleń: 1905
  • [ASM][TIMER1] Dziwnie działa na początku, potem normalnie

    Witam Zacząłem sprawdzać przerwanie TIMER1 w trybie przepełnienia. Na symulatorze program normalnie działa jednak w rzeczywistości inaczej. .include "m8def.inc" .equ przyciski = portc .equ in_przyciski = ddrc .equ wyjscie1 = portb .equ out_wyjscie1 = ddrb .equ wyjscie2 = portd .equ out_wyjscie2 = ddrd .equ wys0 = portd0 .equ wys1 = portd1...

    Mikrokontrolery AVR   03 Paź 2009 15:07 Odpowiedzi: 2    Wyświetleń: 1112
  • ATmega168: Przerwanie TIMER1_COMPA_vect nie działa, co sprawdzić?

    ... Ma ktos jakis pomysl dlaczego? Twój program zatrzymuje się na pętli while ... char pomiar(void) { ADCSRA |=0x40; //wykonanie pomiaru while(! (ADCSRA & (1<<ADIF))); return ADCH; } ... by pozostać w niej do ...wyłączenia zasilania :( Pomyśl dlaczego tak się dzieje , gdy włączysz przerwania od ADC...

    Mikrokontrolery   21 Lis 2007 23:22 Odpowiedzi: 10    Wyświetleń: 1875
  • REKLAMA
  • Zegarek z programem na timerze wyłącza się po 4 minutach - co poprawić?

    Napisałem sobie taki prosty programik, dodam, że to jeden z moich pierwszych z użyciem timera i niby wszystko ok to jednak zegarek przestaje wyświetlać po ok 4 minutach poprawnej pracy. $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 20 * 2 Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portd.5 , Db7 = Portd.6 , E = Portd.7...

    Mikrokontrolery   29 Wrz 2007 20:43 Odpowiedzi: 3    Wyświetleń: 1461
  • 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ń: 444
  • [atmega8] [atmega8][C] Timer 2 przerwanie co 1ms, nie działa odmierzanie 1 sekundy

    Zadaniem programu ma być odmierzenie 1 sekundy (zmiana stanu na wy). Przerwanie od timera 2 przychodzi co 1ms. Kwarc zewnętrzny ~11MHz. Czy ktoś mógłby napisać dlaczego program nie działa? #include<avr/io.h> #include <avr/interrupt.h> int i=0; int main(void) { DDRC = 0b00001000; TCCR2=_BV(CS22); TIMSK = _BV(TOIE2);...

    Mikrokontrolery AVR   13 Cze 2010 07:44 Odpowiedzi: 3    Wyświetleń: 1793
  • [bascom] atmega8 wykorzystane 3 liczniki, timer2 zakłóca PWM

    Witam, $regfile = "m8def.dat" $crystal = 8000000 Config Pinb.1 = Output Config Pind.1 = Output Config Timer2 = Timer , Prescale = 128 Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Disconnect , Prescale = 8 Cls Cursor Off Portd.0 = 1 Portd.1 = 0 Set Portd.4 On Timer2 Czas1s Dim Licz8ms As Byte Dim Wartoscpwm As...

    Mikrokontrolery   18 Maj 2011 08:48 Odpowiedzi: 2    Wyświetleń: 2534
  • [ATmega1284P] Timer1 przerwanie co BPM - błędne ustawienia preskalera?

    WGM01, CS02 oraz CS00 nie są dla Timera 1. Więc to co masz, to wcale nie jest tryb CTC. Preskaler akurat wyjątkowo się zgadza. Szacuję, że zamiast 200 milisekund kod w ifie wykonuje się coś pomiędzy 600 a 700 ms.

    Mikrokontrolery AVR   18 Kwi 2012 20:04 Odpowiedzi: 1    Wyświetleń: 977
  • atmega8 - przerwania od timer0 i timer1 nie działają razem

    Mam taki problem: chcę w programie wykorzystywać przerwania od przepełnienia dwóch timerów (0 i 1). W timer0 mam obsługę wyśw. LED i opóźnienie dla klawiatury a w timer1, z założenia wywoływanym co 100ms, coś jakby zegar z minutami i sekundami, choć nie jest to najważniejsze bo to program testowy. Problem w tym, że przerwanie od timer1 wcale się nie...

    Mikrokontrolery AVR   28 Lis 2009 22:30 Odpowiedzi: 2    Wyświetleń: 2645
  • problem z przerwaniami w AVR (Uart+sprzetowy timer)

    Mam problem z włanczaniem i wyłanczaniem przerwań w ATmega 8535. potrzebuje odczytywać dane z RS(5 bajtów )i meć włonczony zegar RTC, któty by rejestrował czas pojawienia się w buforze znaku. Bascomowa instrukcja inkey() użyta przeze mnie powoduje ze zegar stoi w miejscu. Jak napisać procedure przerwania ??????? Pomuzcie adelmus12

    Mikrokontrolery   01 Lut 2007 22:25 Odpowiedzi: 1    Wyświetleń: 1536
  • Resetowanie timera w Atmega8 - jak wyzerować licznik do zera?

    Witam, Zbudowałem swojego czasu timer odliczający sekundy na Atmega8 ale zauważyłem, że jak zatrzymuje go przyciskiem kilk razy i włączam, to sekunda jest niepełna. Zapewne jest to spowodowane zapisem jego wartości w jakimś rejestrze i chciałbym móc go kasować do końca... mój kod jest dostępny tutaj: http://mikrokontrolery.blogspot.com/2011...

    Mikrokontrolery AVR   16 Sty 2015 09:16 Odpowiedzi: 9    Wyświetleń: 1095
  • [Atmega8] - [C]Timer znowu nie odlicza zadanej wartości

    Cześć, po zabawie z timerem 0 przyszedł czas na timer 1. Mam Atmegę 8 z kwarcem 12MHz, chciałem tak jak poprzednio odmierzyć dokładnie jedną sekundę. Napisałem program: [syntax=cpp]//Nauka obsługi timera //Atmega8 12MHz #include <avr/io.h> #include <avr/interrupt.h> void main(void) { DDRB = 0x0F; PORTB = 0x0F; OCR1A = 46874; //OCR1A - po...

    Mikrokontrolery Początkujący   21 Lut 2013 17:39 Odpowiedzi: 2    Wyświetleń: 975
  • Zegar na aTmega8. Rozbudowany układ. Przerwania wewnętrzne.

    Próbuję złożyć (a właściwie jestem na etapie rozmyślań) zegar na tym scalaku ale mam pewien kłopot. Układ będzie dosyć rozbudowany więc przerwania zewnętrzne muszę zostawić w spokoju. Z tego co zdążyłem się zorientować to można za pomocą timera wytworzyć przebieg i zliczać go przez preskaler i kiedy rejestr się zapełni uzyć wewnętrznego przerwania aby...

    Mikrokontrolery   16 Gru 2006 23:45 Odpowiedzi: 6    Wyświetleń: 1800
  • atmega8[C] - Niedziałające przerwania od przepelnienia licznikow T0 i T1

    Witam, Mam problem z obsluga przerwan od przepelnienia licznikow. W projekcie wykorzystuje 3 liczniki w atmega8, timer2 wykorzystuje do generacji sygnalu 40kHz natomiast pozostale dwa maja zliczac czas od nadania sygnalu do otrzymania echa. Narazie napisalem osobną obsluge kazdego z timerow i dzialalo. Po wrzuceniu wszystkiego do jednego projektu dziala...

    Mikrokontrolery AVR   09 Lis 2012 19:40 Odpowiedzi: 4    Wyświetleń: 1413
  • atmega8, ustawienie przerwania od timera0, assembler

    Witam, mam problem z ustawieniem przerwania od timera0 na atmega8, jestem początkujący jeśli chodzi o assembler... Problem leży w tym że, uP jest taktowany z wewnętrznego zegara 1MHz, i jeśli mam ustawiony prescaler na 8 czyli rejestr TCCR0 na 2 to powinienem otrzymać obsługę przerwania co 8us a na oscyloskopie otrzymałem igiełkę co 2ms;/ nie wiem co...

    Mikrokontrolery AVR   14 Paź 2011 09:23 Odpowiedzi: 8    Wyświetleń: 1827
  • [Atmega32][C][Eclipse] - bład programu gdy przerwamnie timer0 aktywne

    Podczas odbioru danych z pinu PD2 ( funkcja zgłoszenie ) występuje błąd tylko wtedy gdy przerwanie z timera 0 jest aktywne. Gdy na czas odbioru danych zablokuję to przerwanie procesor ładnie odbiera wysyłane do niego dane. I moje pytanie brzmi: Co jest nie tak z przerwaniem? Konkretnie to, co wskazał albertb: ... jeśli masz włączone przerwanie to jego...

    Mikrokontrolery AVR   05 Gru 2012 08:49 Odpowiedzi: 12    Wyświetleń: 1854
  • ATmega8: Timer0 przerywa działanie zegara po włączeniu przerwań - jak to naprawić?

    robie układ sterownika programowalnego na ATmega8 chciałbym aby po wejściu do jakiegoś menu po czasie nie używania klawiszy sterownik skoczył do głównego menu w tym celu chce uruchomić np timer0 który po przepełnieniu licznika wywoła procedurę skoku do menu głównego. i tu problem zegarek działa jak najlepiej do czasu gdy nie użyję instrukcji enable...

    Mikrokontrolery   06 Sty 2006 11:42 Odpowiedzi: 6    Wyświetleń: 2084
  • ATmega8 - Przerwania CTC - Dioda LED świeci za krótko i nie resetuje czasu

    Witam.... Dostałem polecenie napisania programu, który po wciśnięciu SWITCH'A zapala diodę LED na dokładnie 4 sekundy. Następnie dioda ma zgasnąć, a my w obojętnie którym momencie możemy znów ją załączyć na ten czas. ATmega8 tyka wg. zegara zewnętrznego 14,7456 MHz Napisałem kod... (duża liczba komentarzy pomoże zrozumieć), ale są 2 problemy: 1) Czas...

    Mikrokontrolery AVR   07 Lis 2009 23:19 Odpowiedzi: 6    Wyświetleń: 1990
  • Atmega 8 - Timer1, przerwania, potknięcia sygnału co 7ms, kod w Bascom

    Witam, Atmega 8, Timer1. Prosty generator: przerwanie od timera1 ze skróconym cyklem, pętla główna pusta, w przerwaniu zmieniam stan portu. Niby proste... Oto kod: http://obrazki.elektroda.pl/8467182600_1... Są to regularne skrócenia cyklu z 1.085ms na 0.6355ms. Proszę o wyjaśnienie co to jest i jak sie tego pozbyć?

    Mikrokontrolery AVR   31 Mar 2016 12:57 Odpowiedzi: 5    Wyświetleń: 972
  • Atmega8 - Timer nie generuje przerwań, zegar nie działa poprawnie

    Witam Mam problem z timerem w uc Atmega 8. Chciałem sobie napisać zegar,ale nie mogę tego zrobić przy użyciu timera,bo timer w ogóle nie generuje przerwania :| licznik chodzi i się przepełnia,bo wyświetliłem sobie jego wartość na lcd żeby sprawdzić co jest nie tak...załączam kod programu,bo już nie mam pomysłów co może być nie tak $crystal = 8000000...

    Mikrokontrolery   21 Sty 2007 14:18 Odpowiedzi: 4    Wyświetleń: 1107
  • GCC, ATMega8 (8MHz), Timer1 i problem z odliczanie 1s

    Witam Mam jakiś błąd w programie ale nie mogę dojść gdzie. Przed mian'em mam obsługę przerwania dla SIG_OUTPUT_COMPARE1A która teoretycznie powinna się wywoływać co 1s. Timer1 ustawiony w tryb compare na preskalerze 256, ustawienia timera są na początku maina. SIGNAL(SIG_OUTPUT_COMPARE1A) // sygnal porownania od timera 1A { sec++; sec%=60;...

    Mikrokontrolery   07 Cze 2007 21:06 Odpowiedzi: 12    Wyświetleń: 3358
  • Atmega 8 układ czasowy. Proszę o propozycje programu.

    Witam Zamierzam jako laik powalczyć z takim projektem jak układ czasowy. Czyli naciskamy przycisk następuje odliczanie np 3 minuty i potem się układ wyłancza się. Proszę o jakieś propozycje programu bo mi najgorzej jest wystartować. A mając jakiś szkic mogę walczyć z układem... Układ chce zrobić na Atmega8 bo tylko do niego mam programator. Pozdrawiam....

    Mikrokontrolery   13 Sty 2007 12:53 Odpowiedzi: 13    Wyświetleń: 2802
  • Atmega Bascom - Przerwanie - nie mozna skrócić timera

    Witam, Atmega 8, Timer1. Używam instrukcji LOAD która skraca czas między przepełnieniami timera, a nie mogę uzyskać odpowiednio krótkiego czasu gdyż w pewnym momencie skracanie timera juz ic nie daje. Oto kod: [syntax=vbnet]$regfile = "m8def.dat" $crystal = 1000000 'Atmega 8 fusy E1 D9 => 1MHz internal RC $hwstack = 64 $swstack = 32 $framesize = 32...

    Mikrokontrolery Początkujący   01 Kwi 2016 21:04 Odpowiedzi: 6    Wyświetleń: 1116
  • Używanie dwóch timerów w BASCOM (atmega2560) - pobieranie danych z tablicy i sterowanie PORTB

    Tak po krótce przeanalizowałem wątek TIMER2 tego nowego programu. Po prześledzeniu kilku instrukcji i "śladów skoków" mogę stwierdzić, że nie jest dziwne, że gdy aktywny jest TIMER2 i jego przerwania to wszystko siada. Pojawia się przerwanie TIMER2, program wskakuje do jego obsługi a tam napotyka: GOSUB w inne miejsce, gdzie napotyka GOTO w jeszcze...

    Mikrokontrolery AVR   07 Kwi 2023 07:26 Odpowiedzi: 17    Wyświetleń: 789
  • Ustawienie timerów na ATmega128 - Zegar wewnętrzny 8MHz, Timer1 1s, Timer0 4ms, konfiguracja kodu

    Nie nie rób się kaczką albo sie prześpij ahahahahahaha :D OCIE1B zamieniasz na OCIE1A OCR1B zamieniasz na OCR1A zamieniasz wektor TIMER1_COMPB_vect na TIMER1_COMPA_vect kasujesz wszędzie to TCNT1=0 bo nie ma sensu Dla Timer0, w przerwaniu, pod linijką "dot ++ ; " dopisz TCNT0 = 6; To też można na palcach policzyć: 8MHz to jest na sekundę a sekunda ma...

    Mikrokontrolery AVR   12 Lis 2022 02:13 Odpowiedzi: 6    Wyświetleń: 429
  • [Atmega128] [Atmega128][C] - Timer0 blokuje _delay_ms przy aktywnym przerwaniu TIMER0_OVF_vect

    no to przychodzi mi do głowy wersja radykalna: przeinstaluj toolchain i biblioteki. Przeklepałem ten kod do siebie i nie ma siły, działa dobrze, warningami nie rzuca.

    Mikrokontrolery AVR   06 Wrz 2012 03:28 Odpowiedzi: 15    Wyświetleń: 1797
  • ATmega16 - Timer1 16-bitowy: brak wywołania przerwania ISR(TIMER1_OVF_vect)

    ADTS2:0 dla trzech 0 jest free running mode. Dodano po 2 Doczytałem, że konwersja jest wykonywana wtedy gdy jest odczytywany ADC. Dodałem zmienną volatile int w main i w pętli głównej zapisuję do niej rejestr ADC. Teraz zadziałało. Czy to jest dobre rozwiązanie? [syntax=c]#include <avr/io.h> #include <avr/interrupt.h> #define LED1 PC0 int...

    Mikrokontrolery Początkujący   23 Lut 2017 02:47 Odpowiedzi: 5    Wyświetleń: 879
  • [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ń: 4068
  • [ATmega8][C] - TIMER1 kontrolowany przerwaniami INT0:1

    Witam, ustawienie rejestru DDR i PORT na 0 daje wejścia pływające (ATmega8 nie ma rezystorów ściągających do masy, tylko podciągające do plusa). Tak jak jest teraz łapiesz kolego zakłócenia. Należałoby albo dodać zewnętrzne rezystory między przyciskami a masą lub zmienić położenie przycisków (między pinem a masą) i włączyć wbudowane rezystory. O volatile...

    Mikrokontrolery AVR   04 Lis 2012 12:30 Odpowiedzi: 3    Wyświetleń: 1740
  • Atmega644pa - Timer1 nie odmierza równo 1 sekundy w trybie CTC

    Pamiętaj że sama transmisja też swoje trwa :) a poza tym nie pokazałeś funkcji printf (może ona bawi się w _delay_ms() ?) Zauważ również że przerwanie występuje niezależnie od transmisji, może dochodzić do takiej sytuacji ze raz przerwanie zmienić Ci wartość zmiennej tuż przed transmisją a raz tuż po niej i to spowoduje Twoje opóźnienia. Spróbuj blokować...

    Mikrokontrolery AVR   18 Wrz 2013 14:49 Odpowiedzi: 15    Wyświetleń: 2961
  • atmega8, c - Przerwanie TIMER0_OVF_vect wykonuje się tylko raz, dlaczego?

    [syntax=c]Iuint8_t h, m ,s; char datetime[8]; int main(){ sei(); LCD_Initalize(); twi_init_master(); rtc_init(); TIMSK |= (1 << TOIE0); TCCR0 |= (1 << CS00) | (1 << CS02); while(1){ } return 0; } ISR(TIMER0_OVF_vect) { LCD_WriteText("gg"); rtc_get_time_s(&h, &m, &s); sprintf(datetime, "%02d:%02d:%02d", h, m, s); DDRB =...

    Mikrokontrolery Początkujący   09 Mar 2015 10:28 Odpowiedzi: 9    Wyświetleń: 1224
  • [ATMEGA644P] Timer T1 działa w trybie Normal zamiast CTC - przerwanie co kilkadziesiąt sekund

    Ja to podłączyłem już wczoraj...M644P z rzeczonym kwarcem. http://obrazki.elektroda.pl/3806989300_1...

    Mikrokontrolery AVR   04 Maj 2017 10:45 Odpowiedzi: 12    Wyświetleń: 1617
  • [C] Atmega32 Timer0 CTC – dioda nie zapala się w przerwaniu, kod nie działa

    Chcialbym napisac najprostrzy program aby sprawdzic czy progra mi wogole wchodzi w przerwanie czyli czy zapali diode. Ale zupelnie nic sie nie dzieje. Zarówno symulacja programowa w AVR Studio, jak i program uruchomiony na realnym sprzęcie działa poprawnie. Albo się pomyliłeś co do podłączenia diody, albo procesor jest uszkodzony. Po drobnej zmianie...

    Mikrokontrolery   07 Mar 2011 09:24 Odpowiedzi: 8    Wyświetleń: 2006
  • ATmega128 - Czy krótki sygnał INT1 wywoła przerwanie przy aktywnym TIMER1?

    Tak, o ile procesor nie będzie w uśpieniu. Jeśli będzie to wymagana jest funkcjonalność asynchronicznego wybudzania, czego ATMega nie ma dla zboczy, wyłącznie dla poziomu. Trzeba też pamiętać, że zmiany krótsze niż okres zegara mogą być przez MCU niezauważone. Oczywiście dla kwartcu 14 MHz i impulsu 20us nie jest to problemem.

    Mikrokontrolery AVR   05 Maj 2016 14:38 Odpowiedzi: 4    Wyświetleń: 1503
  • [ATMega168] Jak obsłużyć przerwania przycisków i timera w ATMega168 z kwarcem 32,768 kHz?

    Witaj, No to na zachętę przerwania od przycisku: http://www.protostack.com/blog/2010/09/e...

    Mikrokontrolery Początkujący   20 Gru 2011 10:00 Odpowiedzi: 31    Wyświetleń: 5210
  • Atmega8 AVRgcc - problem z przerwaniami USART i TIMERa, LED na PB1

    Ja bym napisał tak, jak w załaczeniu. Zmieniając wartość dla zmiennej Czas_led , można zmieniać czas świecenia ledki.

    Mikrokontrolery   22 Wrz 2005 08:45 Odpowiedzi: 8    Wyświetleń: 3143
  • Jak poprawnie wyświetlić zmienne w przerwaniach timera na ATmega16?

    kolega Freddie zasugerował jedno z możliwych rozwiązań, mianowicie: zamiast deklarować jakiś wskaźnik do bufora, spróbuj zadeklarować tablicę, np: unsigned char bufor[10]; nie jestem pewien co z tą funkcją dtostrf(), może to ona nie działa...

    Mikrokontrolery AVR   12 Gru 2008 16:43 Odpowiedzi: 6    Wyświetleń: 1095
  • Cykliczne załączanie PWM w ATTiny2313A/ATMega328P

    Cześć Pobierz notę katalogową np. Attiny2313a i popatrz jak wygląda kod obsługi USART'a, bo masz błędy w kodzie. Nie chce mi się wierzyć, że nie da się osiągnąć tego czego oczekujesz na Attiny. W przerwaniach timer'a, czy to jednego czy drugiego, możesz manipulować rejestrami COM0Xn, przerwaniami TIMSK. Powinieneś osiągnąć możliwość włączania i wyłączania...

    Mikrokontrolery AVR   20 Gru 2019 22:11 Odpowiedzi: 19    Wyświetleń: 903
  • atmega 8535 - Program nie sygnalizuje przerwań. ISR(TIMER0_COMP_vect)

    Witam, z niewyjaśnionych dla mnie przyczyn program napisany pot atmegę 8535 nie chce uruchamiać przerwań wywoływanych przez zegar. Posiadam taki następujący kod który powinien co przerwanie zmieniać stan portu B. [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> void system_init() { TCCR0 = 0x00; // Wylaczenie Timera 0 TCNT0 = 0x00;...

    Mikrokontrolery AVR   10 Wrz 2013 09:47 Odpowiedzi: 1    Wyświetleń: 1464
  • [ATmega32] Jak napisać procedurę obsługi przerwania timera0 dla diody LED na ATmega32?

    [syntax=asm] .device ATmega32 .include "m32def.inc" .def temp= r16 .def counter= r17 .org 0 RJMP start .org $016 ;wektor przerwania dla przepełnienia timera RJMP przerwanie start: ldi temp, high(RAMEND) out SPH, temp ldi temp, (1<<CS00) | (1<<CS02) ;konfiguracja preskalera i zegara out TCCR0, temp ;w rejestrze TCCR0 (ustawienia główne timera)...

    Mikrokontrolery AVR   27 Paź 2011 11:19 Odpowiedzi: 8    Wyświetleń: 2585
  • [bascom] Różnice w przerwaniach między Atmega8 a Atmega32 w Bascom - jak dostosować kod?

    Te procesory się aż tak nie różnią. Dodatkowe funkcjonalności pinów nie przeszkadzają w niczym dopóki ich nie uruchomisz. (PCINT - Pin Change Interrupt trzeba wiedzieć jak włączyć). Jest duża różnica jeśli chodzi o Timery właśnie. Mega8 ma na przykład tylko jeden rejestr Compare dla Timer2 dlatego inaczej się nazywają. Opisałem to u siebie na stronie...

    Mikrokontrolery Początkujący   05 Gru 2014 06:58 Odpowiedzi: 12    Wyświetleń: 1479
  • Czy przerwania Timer1 i Timer0 w ATmega32 mogą się kolidować?

    Jeżeli piszesz w C i używasz avr-libc, to przerwania "nieblokujące" (takie które mogą być przerwane przez inne przerwanie (lub nawet same przez siebie, trzeba uważać)) deklaruje się tak (przykład dla INT0): ISR(INT0_vect, ISR_NOBLOCK) { jakiś kod } Dzięki temu sei() zostanie wywołane prędzej, niż zrobiłbyś to wewnątrz procedury sam.

    Mikrokontrolery AVR   05 Lut 2011 01:34 Odpowiedzi: 21    Wyświetleń: 1502
  • ATmega8515: Przerwania Timer0 nie działają w Bascom AVR - co poprawić w kodzie?

    Po Config Timer0 wpisz dodatkowo TCCR0 = 4 Config Timer0 = Timer , Prescale = 256 Tccr0 = 4 Tylko musisz coś zrobić z START TIMER0 i STOP TIMER0 bo one przywrócą wartość po CONFIGu i program dalej nie będzie działał. Najprościej będzie usunąć te instrukcje. dodano 20 Sie 2008 08:05 Mail z opisem błędu poszedł już do MCS Electronics. Zbaczymy jaka będzie...

    Mikrokontrolery   20 Sie 2008 08:29 Odpowiedzi: 14    Wyświetleń: 1315
  • Jak zliczać czas stanu niskiego w Atmega16 BASCOM przy przerwaniach?

    Najpierw dajesz Config INT0=Falling Wprowadzasz zmienną opisującą wybrane zbocze wyzwalające przerwanie (Edge_) i w procedurze obsługi tego przerwania: If Edge_ =0 Then Start Timer1 Config INT0=Rising Else Stop Timer1 Config INT0=Falling End If Niektóre AVR'y umożliwiają konfigurację typu Config INT0= Change Wtedy przerwanie wywoływane będzie po stwierdzeniu...

    Mikrokontrolery   13 Lut 2007 19:48 Odpowiedzi: 8    Wyświetleń: 2801
  • [ATMega32] ATMega32: Obsługa I2C na przerwaniach w C - kiedy i dlaczego warto?

    Niektóre z funkcji faktycznie zawierają pętlę oczekującą na zwolnienie magistrali: [syntax=c] while ( TWI_Transceiver_Busy() );[/syntax] Autorzy założyli, że można będzie użyć tej funkcji w dowolnym momencie, niestety powoduje to, że kiedy wywołamy funkcję, kiedy magistrala jest zajęta, to będzie ona czekała na zwolnienie magistrali, co wprowadza czasami...

    Mikrokontrolery AVR   27 Sie 2012 19:25 Odpowiedzi: 21    Wyświetleń: 2964
  • [ATmega8] [ATmega8][BASCOM] Jak zbudować sekundnik z przerwaniami na LCD 16x2?

    Do drasmen: jeżeli chcesz aby układ zadziałał musisz przestawić fuse bity na wew. generator np. 8MHz a do pinów gdzie podłączasz kwarc musisz wpiąć kwarc zegarkowy 32.768kHz. Program dla autora tematu: 'Program wykorzystujący przerwanie od timera0(8 bitowego) generowane co 8ms 'jeżeli przerwanie zostanie wywołane 125 razy, otrzymamy 1 sekundę...

    Mikrokontrolery AVR   28 Wrz 2008 16:08 Odpowiedzi: 20    Wyświetleń: 4589
  • 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ń: 936
  • [ATmega32] ATmega32 Timer0 CTC - przerwanie nie działa poprawnie, licznik się zeruje

    A co na to symulacja programu? Taki program wgraj: .nolist .include "m32def.inc" .list ; ## START ########################################... .cseg ;=======================================... ;= WEKTORY PRZERWAŃ = ;=======================================... .org 0x0000 rjmp reset_vector ; po...

    Mikrokontrolery AVR   13 Sie 2008 21:39 Odpowiedzi: 4    Wyświetleń: 2574
  • Atmega328P: wykonanie przerwania po wybudzeniu, SPI i MISO, resetowanie

    WDTON Fuse Unprogrammed: In this mode, the Watchdog Timer is initially disabled, but can be enabled by writing the WDE bit to 1 without any restriction. A timed sequence is needed when changing the Watchdog Time-out period or disabling an enabled Watchdog Timer . WDTON Fuse Programmed: In this mode, the Watchdog Timer is always enabled , and the WDE...

    Arduino   16 Cze 2020 18:26 Odpowiedzi: 14    Wyświetleń: 690
  • [C] Atmega16 Timer0 - Przerwanie co 1s opóźnia się o 1,5s na minutę, dlaczego?

    Nie. Bo to po ustawieniu fuse jest właśnie wraz z wewnętrzną logiką generator sygnału bazowego całego proca (w tym timerów).

    Mikrokontrolery AVR   12 Wrz 2012 18:12 Odpowiedzi: 11    Wyświetleń: 1239
  • [C][ATmega16] - Niechciana zmiana częstotliwości przerwania (Timer1)

    1. Nie definiuj zegara w kodzie tylko w opcjach kompilatora: http://mikrokontrolery.blogspot.com/2011... 2. Problem natomiast pojawia się wówczas, gdy funkcja obsługi przerwania wykonuje się długo. Docelowo będzie sterować portami przez około 16 sekund. Przerwanie ma się wykonywać krótko i tego zawsze się trzymaj, bo łatwo...

    Mikrokontrolery AVR   12 Sie 2012 16:25 Odpowiedzi: 3    Wyświetleń: 1458
  • ATmega32, Timer2 RTC, SLEEP_MODE_PWR_SAVE – powrót do snu po przerwaniu Timer2

    na podstawie flagi z przerwania INT2 na początku pętli głównej wchodzić w uśpienie. Ale pętla główna jest wykonywana powiedzmy 0.5 sek. Co sekundę wykonywane jest przerwanie od Timer2. Więc procesor będzie w uśpieniu tylko ok. 50% czasu. Ale problem z długim wykonywaniem się pętli głównej wystąpi tylko za pierwszym razem po zaniku zasilania (ustawienie...

    Mikrokontrolery AVR   14 Paź 2014 18:47 Odpowiedzi: 8    Wyświetleń: 1182
  • [Atmega8] Timer1 - opóźnienie przed pierwszym przerwaniem, co może być przyczyną?

    Dokumentacja mówi WYRAŹNIE: najpierw należy ładować wartość do TCNT1H (który zostaje zapisany do rejestru TEMP), a dopiero potem do TCNT1L, co pociąga za sobą wpisanie do TCNT1 aktualnej części jako dół i wartości TEMP jako góra (przy odczycie najpierw należy odczytać dół, potem górę). Ciągu skutków powodujących takie zachowanie a inne nie chce mi się...

    Mikrokontrolery AVR   09 Sty 2011 16:50 Odpowiedzi: 2    Wyświetleń: 971
  • Atmega16A - Sterowanie servem TowerPro SG-90 micro, ustawienia timerów

    Twoje 50 Hz (pomijam, że nie da się tak dokładnej częstotliwości ustawić) daje okres = 20 Chyba źle zrozumiałeś kolegę michalko12 . Te "jego" 50Hz to nie częstotliwość przerwań, tylko sygnału sterującego serwem (tak przynajmniej sterowana jest zdecydowana większość serw modelarskich). Okres tego sygnału powinien mieć 20ms, z czego 0,5÷2,4ms trwa stan...

    Mikrokontrolery   20 Lip 2015 15:48 Odpowiedzi: 19    Wyświetleń: 942
  • [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ń: 1233
  • Atmega 32 [C] - Wywołanie pomiaru w przerwaniu timera1

    Istotne może być to, kiedy startujesz pomiar. Rejestr OCR w każdym przyzwoitym mikrokontolerze jest buforowany, więc można go aktualizować w dowolnym momencie - fizycznie zostanie przeładowany przy zawinięciu okresu. Na pewno nie ma sensu aktualizować go w pętli głównej, podobnie jak sama "pętla główna" nie ma sensu. Jeśli natomiast używasz zmiennych...

    Mikrokontrolery AVR   07 Lis 2015 10:25 Odpowiedzi: 16    Wyświetleń: 1587
  • [Atmega] Atmega: Timer1 CTC przycina się przy zmianie OCR1A z ADC, silnik staje

    W trybie CTC wartość timera jest zerowana, gdy TCNTx jest równe OCRxA. Nie pojawia się tutaj sprawdzenie w relacji większy/równy. Tak więc jeśli w danym momencie OCRxA jest równe 100, TCNTx 98 i w tym momencie zostanie wpisane do OCRxA wartość 96 to nie zostanie spełniony warunek dla TOP, timer będzie się zwiększał aż do 65535 (długa przerwa) kiedy...

    Mikrokontrolery AVR   11 Paź 2009 18:53 Odpowiedzi: 3    Wyświetleń: 5320
  • atmega8 - Nieprawidłowe działanie klawiszy po edycji kodu ISR TIMER0_OVF_vect

    http://mikrokontrolery.blogspot.com/2011... Jest to ten artykuł. Cały kod? On ma ponad 700 linii. Czy oszczędzić czasu i wyciąć konkretne fragmenty i je wrzucić te które mogą zawinić. Typu inicjalizacja timerów itp. Dodano po 3 Ok problem rozwiązany [syntax=cpp]ISR(TIMER0_OVF_vect) { sei(); static uint8_t stan_przyciskow_najstarszy,...

    Mikrokontrolery AVR   30 Lis 2013 01:37 Odpowiedzi: 2    Wyświetleń: 1152
  • [Atmega32] Timer0 nie wywołuje przerwania SIG_OVERFLOW0 w skanerze 3D

    ps. w manualu wyczytałem, że TIM0_OVF_vect jest tylko dla atiny. Dla atmegi32 jest TIMER0_OVF_vect pomyliłem się, sorki. i jest błąd bo volatile uint8_t overflow; uint8_t to 0-255, nie wiem jak to wygląda po skompilowaniu. if (overflow < 512) { PORTC = 1 << 1; } else { PORTC = 1 << 2; } if (overflow >...

    Mikrokontrolery AVR   15 Maj 2009 14:59 Odpowiedzi: 13    Wyświetleń: 3990
  • [Atmega8] [Atmega8][C] Timer2 z kwarcem zegarkowym - przerwanie co sekundę nie działa poprawnie

    Tak na szybkiego możesz sprawdzić to: Wstaw w odpowiednich miejscach w swoim programie. int second=0; SIGNAL (SIG_OVERFLOW2) { second++; } int main(void) { LCD_Initalize(); LCD_Clear(); while(1) { char t1[2]; itoa(second,t1,10); LCD_WriteText(t1); } }

    Mikrokontrolery AVR   04 Lis 2009 17:38 Odpowiedzi: 7    Wyświetleń: 2680
  • avr-gcc - Atmega32 - przerwania timera 0 restartują program

    Co to może być? Wróżka jest na urlopie. Pokaż kod źródłowy.

    Mikrokontrolery AVR   15 Mar 2010 14:28 Odpowiedzi: 3    Wyświetleń: 1185
  • Dwa duże problemy z przerwaniami od timera na ATmega32

    Co do Twojego pierwszego problemu to prawdę mówiąc nie wiem, ale zwróć uwagę na to że po zakończeniu obsługi przerwania zawartośc R16 i R17 jest zamieniona: ... .org 0x0012 rjmp t1Ovf ... t1Ovf: push r16 push r17 in R16, PORTC ldi R17, 0b00000011 eor R16, R17 out PORTC, R16 pop r16 ; R17 pop r17 ; R16 reti ... Może to wina własnie tego. Co do Towjego...

    Mikrokontrolery   16 Lut 2007 16:21 Odpowiedzi: 2    Wyświetleń: 1314