atmega32 przerwa timer

Znaleziono około 1344 wyników dla: atmega32 przerwa timer
  • 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ń: 2496
  • [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ń: 1770
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (2min)...
  • [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ń: 1848
  • REKLAMA
  • [ATmega32][c] Przerwanie od porównania w timer1 - ograniczenia

    Niestety problem znów się pojawił: Program nie wchodzi do pętli while, gdzie warunek jest niespełniony dopiero po zatrzymaniu dopiero co ustawionego rejestru licznika, próbowałem jeszcze inny sposób, z bitami zmiennej flag ustawianymi w przerwaniach - do przerwania wchodzi, ale jak wróci do programu to nie wychodzi z pętli - tak jakby warunek był cały...

    Mikrokontrolery AVR   21 Lis 2011 17:23 Odpowiedzi: 10    Wyświetleń: 2491
  • 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
  • [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ń: 2571
  • ATmega32, jak poprawnie ustawić przerwanie TIMER1 w C na zestawie and-tech EvB 4.3

    słowo kluczowe "volatile"

    Mikrokontrolery Początkujący   29 Gru 2011 20:59 Odpowiedzi: 4    Wyświetleń: 1587
  • REKLAMA
  • [ATMEGA32] ATMEGA32 BASCOM TIMER1 - Odliczanie czasu w przerwaniu działa nieprawidłowo

    Witam. Zapis (składnia) Load Timer1 jest zły. Sprawdź w pomocy Bascoma.

    Początkujący Elektronicy   20 Gru 2014 12:32 Odpowiedzi: 3    Wyświetleń: 693
  • 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
  • Atmega32 / Bascom - Konflikt dwóch SPI programowych z MAX7219 i WTV020SD

    Ruszy bez problemu tylko napisz to porządnie. Kamyczkowi nawet się nie chciało zajrzeć do tego kodu a wydaje jakieś nonsensowne opinie tylko dlatego że mu nie wychodziło. Zobacz, nie możesz skoczyć do gadającego Sub`a na taką wieczność jaką jest gadanie i podwójne czekanie na zakończenie gadania. [syntax=vbnet]Sub Powiedz_czas: '**********************...

    Mikrokontrolery AVR   29 Mar 2017 12:35 Odpowiedzi: 20    Wyświetleń: 2487
  • ATMEGA32 - Zmiana w programie do sterownika pieca C.O.

    Pierwsza część programu Dodano po 8 no i druga się nie mieści, więc wrzuciłem do pliku tekstowego.

    Mikrokontrolery AVR   22 Lip 2014 16:28 Odpowiedzi: 5    Wyświetleń: 3618
  • 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ń: 1518
  • REKLAMA
  • [atmega32] - RTC, przerwania Timer2, maksymalna częstotliwość 32768Hz

    Witam Mam problem z RTC w atmega32. Podłączyłem kwarc 32,768kHz jak datasheet nakazuje. Jeśli Timer2 skonfiguruje następująco: [syntax=c] TCCR2 = 0b00000001; ASSR |= 1 << 3; TIMSK |= 1<<6; [/syntax] To przerwanie [syntax=c] ISR(TIMER2_OVF_vect) { TCNT2=255; ... } [/syntax] Wykona się tylko 8192 razy na sekundę zamiast 32768. Natomiast jak...

    Mikrokontrolery AVR   03 Sty 2015 01:33 Odpowiedzi: 19    Wyświetleń: 1404
  • [Atmega32][C] Jak używać dwóch źródeł przerwań na raz?

    Witam, w moim programie na atmegę 32 wykorzystałem timer0 oparty na zegarze procesora (8MHz) aby uruchamiać pewną funkcję ok. 100 razy na sekundę. Do programu postanowiłem dodać obsługę zewnętrznego kwarcu zegarkowego 32768Hz aby móc mierzyć w miarę dokładnie czas przy użyciu timera timer2. Po dopisaniu komend do obsługi kwarcu żaden timer nie działa....

    Mikrokontrolery AVR   20 Sie 2011 16:29 Odpowiedzi: 2    Wyświetleń: 1059
  • AVR C Atmega32 przerwania bez zmiany wyjść na pinach

    Witam Mam problem Wszystko działało na portach PA PC i PD4-7 ale jak podpiąłem cały PD PB do drugiej części matrycy diodowej to przestało działać chyba przez przerwania. Zmieniłem rodzaj przerwania na czasomierz z uwagi ze chyba piny INT0 zmieniały stany. Wszystkie porty mam jako wyjścia a w części matrycy mam błędy zawsze w tym samym miejscu. Jaki...

    Mikrokontrolery AVR   23 Lis 2009 09:25 Odpowiedzi: 7    Wyświetleń: 1738
  • [C] [ATmega32] - ATmega32 - obsługa timera/przepełnienie co 100ms/pomiar na ADC

    Witam wszystkich bardzo serdecznie. Mam problem z obsługą timera, nie wiem czy dobrze mam napisany kod, bo działa nie tak jakbym chciał. Mianowicie chciałbym generować przerwanie co 100ms i wykonywać pomiary na dwóch kanałach ADC i wyświetlać wyniki na ekranie terminala w PC.. Na początku udało mi się obsłużyć timer0 i wszystko działało prawidłowo,...

    Mikrokontrolery AVR   11 Lis 2013 23:14 Odpowiedzi: 19    Wyświetleń: 3255
  • avr atmega32[c] - odliczanie sekundy ,zliczenie 15625 przerwan ?

    witam , przy kwarcu #define F_CPU 4000000UL timerze0 i preskalerze 1 mam przepelnienie po 256 krokach po czasie 0,000064 s. zliczajac 15625 przerwan powinienem miec sekunde. jednak wystepuja u mnie 5 sekund opoznien z kazda kolejna minuta. zliczajac w ten sposob popelniam blad ?

    Mikrokontrolery AVR   25 Sty 2017 11:12 Odpowiedzi: 62    Wyświetleń: 4233
  • atmega32 - nie miga dioda, brak oznak dzialania timera0 od przepelnienia

    witam czemu dioda mi nie miga oto program : [syntax=c][ /* * timer0.c * * Created: 2014-09-20 15:57:03 * Author: */ #include <avr/io.h> #include <avr/interrupt.h> #include <avr/sleep.h> int main(void) {TCCR0|=(!(1<<WGM01))|(!(1<<... //inicjalizacja timera, ustawienia...

    Mikrokontrolery AVR   20 Wrz 2014 17:43 Odpowiedzi: 4    Wyświetleń: 978
  • Zawieszanie ATmega 32 przy użyciu przerwań zewnętrznych i TIMER0

    mam maly problem.. zdarza sie ze moj układ oparty na ATmega 32 jakby sie zawieszał... wykorzystuje przerwanie zewnetrzne... // External Interrupt(s) initialization // INT0: On // INT0 Mode: Rising Edge // INT1: Off // INT2: Off GICR|=0x40; MCUCR=0x03; MCUCSR=0x00; GIFR=0x40; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x01; a w programie...

    Mikrokontrolery   10 Lut 2007 00:12 Odpowiedzi: 4    Wyświetleń: 1380
  • [ATmega32][C] Nie działa przerwanie od przepełnienia timera0

    Witam, pisałem program i stanąłem na dość błahej sprawie, mianowicie nie mogę wywołać przerwania od przepełnienia licznika0 a nawet od porównania z zadaną wartością... dziwne bo na przykład przerwanie od INT0 działa znakomicie. Ten sam problem mam z licznikiem 1 i 2 Kod programu #include <avr/io.h> #include <avr/interrupt.h> // Biblioteka...

    Mikrokontrolery AVR   08 Lis 2011 09:26 Odpowiedzi: 23    Wyświetleń: 3089
  • [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ń: 2531
  • Zegar na Atmega 32 - spieszy o 2sekundy na godzinę

    witam, Potrzebuję w moim projekcie użyć zegara. Do dyspozycji mam timer2. Zegar spieszy o 2 sekundy na godzinę. Czy dało by się to jakoś podregulować ? Wiem że do zegara można użyć PCF, ale to raczej nie wchodzi w grę [syntax=vbnet]$regfile = "m32def.dat" $crystal = 16000000 Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Porta.0 , Db6...

    Mikrokontrolery   18 Maj 2017 21:33 Odpowiedzi: 20    Wyświetleń: 1416
  • Konfiguracja przerwań i timera w Atmega32-poprawność kodu ?

    Witam. Chciałbym prosić o pomoc. Czy ten kod jest poprawny. Program działa bez zarzutów. Natomiast, gdy włączę przerwanie"sei". Układ się zawiesza. [syntax=c]void init_Ex1() { // Timer clock = I/O clock / 1024 TCCR0 |= (1<<CS02)|(1<<CS00); // Clear overflow flag TIFR |= (1<<TOV0); // Enable Overflow Interrupt TIMSK |= (1<<TOIE0);...

    Mikrokontrolery   02 Gru 2024 11:59 Odpowiedzi: 3    Wyświetleń: 270
  • Atmega32[C] - Przerwanie od timera1 nie działa, miganie diody co 1s

    Witam wszystkich, mam problem z przerwaniem od przepelnienia, timer1. Siedze nad ta prosta rzecza któryś dzień z kolei i nie moge sobię poradzić. Prosiłbym o sprawdzenie kodu. [syntax=jezyk_C] #include<avr/io.h> #include <avr/interrupt.h> #define F_CPU 1000000 // czestotliwosc zegara 1MHz #include<util/delay.h> int main() { DDRA =...

    Mikrokontrolery AVR   01 Kwi 2014 01:25 Odpowiedzi: 12    Wyświetleń: 1329
  • Atmega328p - Odczyt potencjometrów z przerwaniami, wartości 0-255

    No nie bardzo. Pętle busy waits są w przerwaniu niewskazane. Zrób tak jak napisał  (at)BlueDraco : odczyt poprzedniej konwersji-start następnej konwersji-wyjście bez czekania. [syntax=c]ISR(TIMER1_COMPA_vect) { switch(wejscie) { case 2: adc3=ADC; ADMUX = 0; ADMUX = (1<<REFS0)|wejscie; ADCSRA |= (1<<ADSC); break; case 3: adc2=ADC; ADMUX =...

    Mikrokontrolery Początkujący   20 Lut 2020 21:14 Odpowiedzi: 14    Wyświetleń: 1131
  • [Atmega128] [Atmega128][C] - Timer0 blokuje _delay_ms przy aktywnym przerwaniu TIMER0_OVF_vect

    Nie to nie kwestia iom128. Eclipse ma to do siebie, że kreśli wszystkie nazwy rejestrów itp. użytych w source jeżeli się tego nie załączy. W zasadzie nie jest potrzebny bo jest podbierany przy kompilacji przez io.h, ale wygodniej się pisze jeżeli podkreślenia są miarodajne. Zupełnie nie mam pomysłu w czym jest problem, sprawdziłem na drugiej atmedze...

    Mikrokontrolery AVR   06 Wrz 2012 03:28 Odpowiedzi: 15    Wyświetleń: 1794
  • [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
  • 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ń: 933
  • [avr] Jak wygenerować sygnał prostokątny 1-1000Hz na ATmega32A 8MHz w trybie CTC?

    ISR(TIMER1_OVF_vect) A wystąpi przepełnienie w trybie CTC?? Nie chciałeś przypadkiem włączyć innego przerwania : TIMSK|=(1<<OCIE1A); i później: ISR(TIMER1_COMPA_vect) { //... }

    Mikrokontrolery AVR   08 Sty 2014 12:28 Odpowiedzi: 15    Wyświetleń: 1701
  • 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ń: 1584
  • [Atmega32A]Power-save mode - Obsługa przerwania TIMER2 w trybie PSM

    Witam. Zwykły kwarc 32K. Usypiasz procesor i możesz go budzić na żądanie w określonym czasie. Jak wszystko pójdzie dobrze uzyskać pobór prądu na poziomie 1uA w stanie uśpienia.

    Mikrokontrolery AVR   15 Sty 2017 22:05 Odpowiedzi: 1    Wyświetleń: 879
  • Czy przerwania Timer1 i Timer0 w ATmega32 mogą się kolidować?

    To bedzie działac tak jak piszesz. Program wróci do miejsca przerwania czyli po wykonaniu B do przerwania A a potem do programu głównego. Ja to stosuje w większosci programów bo to nawet konieczność np przy stosowaniu UART .

    Mikrokontrolery AVR   05 Lut 2011 01:34 Odpowiedzi: 21    Wyświetleń: 1502
  • [Atmega32][Avr-assembler] - Timer1 w trybie porównania przerwanie co 1s

    Działa ;-) Ustaw Breakpoint na linijce (prawy myszy Toggle Breakpoint) [syntax=avrasm]com LED[/syntax] naciśnij F5 (Run) jak zatrzyma się na Breakpoint wykonaj kod przerwania krokowo F11 naciśnij F5 (Run) jak zatrzyma się na Breakpoint wykonaj kod przerwania krokowo F11 itd. Zamiast 15625 ładuj do OCR1A 15624. Wieczorem wrzucę inny sposób migania tym...

    Mikrokontrolery Początkujący   06 Maj 2016 18:29 Odpowiedzi: 22    Wyświetleń: 2196
  • [ATmega32] Jak napisać procedurę obsługi przerwania timera0 dla diody LED na ATmega32?

    Ale jeśli mniejsze, to już po 1 takcie zliczania powinno wyskoczyć z przerwania a tak nie jest. Taktowanie timera to 16MHz/1024 = 15625Hz. Pojemność timera to 256, więc przerwanie pojawia się z częstotliwością 15625/256 = ~61Hz. Aby uzyskać opóźnienie ok. 1 sekundy przerwanie musi pojawić się 61 razy i dopiero za 62 zapalić lub zgasić diodę. I tak...

    Mikrokontrolery AVR   27 Paź 2011 11:19 Odpowiedzi: 8    Wyświetleń: 2582
  • [AVR ATmega328] [AVR ATmega328][C] - Timer1 nie wywołuje przerwania, kod nie działa

    Dołącz bibliotekę <avr/interrupt.h>

    Mikrokontrolery Początkujący   19 Gru 2014 19:11 Odpowiedzi: 5    Wyświetleń: 867
  • 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ń: 681
  • [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ń: 2958
  • ATmega32 sterowanie silnikami krokowymi - robot kartezjański

    Pierwsze, to nie możesz kuglować włączaniem i wyłączaniem przerwań. Silnik musisz zatrzymywać w inny sposób. z stepCounter zrób tablicę stepCounter[4]; Przerwanie zmodyfikuj mniej więcej tak [syntax=c] ISR(TIMER0_COMP_vect) //funkcja obsługi przerwania { for(char l=0; l<4; x++) { // lepiej for(char l=0; l<LSILNIKOW; x++) // i zrobić #define LSILNIKOW...

    Mikrokontrolery AVR   19 Mar 2018 15:54 Odpowiedzi: 8    Wyświetleń: 897
  • [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
  • [Atmega32] Timer0 nie wywołuje przerwania SIG_OVERFLOW0 w skanerze 3D

    Tutaj masz hex'a z tego programu, skompilowanego przez avr-gcc dla atmega32 1Mhz. Zobacz czy zadziała, a ja sprawdzę makefile.

    Mikrokontrolery AVR   15 Maj 2009 14:59 Odpowiedzi: 13    Wyświetleń: 3987
  • [Atmega32]Jak skonfigurować zegarki wewnetrzne (Timer1 i Timer0)?

    drogi starosto int0 jako przerwanie zewnętrznę może posłużyć np tak jak na laborkach do obsługi odbioru rc5 gdy podczas wystąpienia tego przerwania odbierany jest kod rc5 z odbiornika podczerwieni . pml11

    Mikrokontrolery AVR   26 Cze 2011 20:40 Odpowiedzi: 13    Wyświetleń: 1854
  • ATmega32 Bascom - Jak odczytać wartość Timer0 przy przerwaniu Int0?

    Zadeklarowałeś "Zmianna" a przypisujesz "Zmienna". :) Edit: Wyjście z procedury obsługi przerwania wykonuje się za pomocą Return a nie Goto Glowny ! Resztę błędów znajdziesz sam. :)

    Mikrokontrolery Początkujący   04 Sty 2012 23:02 Odpowiedzi: 6    Wyświetleń: 2207
  • ATmega32 IAR: Nie działa przerwanie przy przepełnieniu timera T1

    Witam, Popełniłeś kilka błędów: - aby odblokować przerwania od przepełnienia timera 1 trzeba ustawić bit 2 a nie 5 w rejsestrze TIMSK - wektor przerwania od przepełniania timera 1 to nie 0x12 a 0x24 Dobrze jest przy pisaniu w C korzystać z funkcji dostarczanych wraz z kompilatorem "intrinsic function" takich jak __interrupt_enable, __interrupt_disable,...

    Mikrokontrolery AVR   11 Lis 2008 00:00 Odpowiedzi: 3    Wyświetleń: 1491
  • [AVR][Atmega328]Przerwania w trybie asynchronicznym

    RTFM podrozdział "Asynchronous Operation of Timer/Counter2". W dużym skrócie: przed uśpieniem trzeba zapisać coś do jednego z rejestrów i czekać na wyzerowanie flagi Busy w ASSR.

    Mikrokontrolery   13 Lis 2020 17:29 Odpowiedzi: 4    Wyświetleń: 363
  • 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ń: 1179
  • ATmega328 - Jak użyć timera bez przerwań do odmierzania czasu?

    ... ale wtedy musisz mieć pewność, że obsłużysz to przed pojawieniem się kolejnej sytuacji ustawienia flagi przerwania. Oczywiście TIFR to tylko przykład, bo flagi są także w innych rejestrach, np. TXC w UCSRA.

    Mikrokontrolery AVR   06 Gru 2015 00:46 Odpowiedzi: 8    Wyświetleń: 1038
  • 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ń: 897
  • [ATMEGA32] Jak ustawić priorytety przerwań USART i Timera w ATMEGA32?

    Na jakiej podstawie twierdzisz, że problemem są priorytety przerwań? Przerwania występują na tyle sporadycznie, że nie ma tutaj miejsca na problemy. Jeśli wysyłany jest znak '2', to porównanie (i==2) jest błędne TCCR2 = 1<<CS00 | 1<<CS02 | 0<<CS01 ; proponuję zapisać tak: TCCR2 = (1<<CS00) | (1<<CS02) |...

    Mikrokontrolery AVR   14 Maj 2009 19:15 Odpowiedzi: 4    Wyświetleń: 3121
  • [atmega32][bascom] 4 przyciski, jedno przerwanie i powerdown

    Żeby zrobić za pomocą Timera - to nie możesz używać trybu PowerDown tylko Sleep - żeby właśnie Timery mogły działać to po pierwsze. W taki trybie jednak będziesz miał nieco większy pobór prądu niż w pełnym PowerDown. Więc wszystko zależy na ile ma wystarczać bateria o ile jest to coś zasilane z baterii. Bez PowerDown'a na pewno będzie to sporo krótszy...

    Mikrokontrolery AVR   07 Wrz 2009 14:13 Odpowiedzi: 21    Wyświetleń: 6291
  • [BASCOM] Jak skonfigurować przerwanie z transoptorem na Atmega32 bez INT?

    Ja bym zrobił na timerach, no bo po co zajmować procesor zapętlonym zadaniem. Ideą wielozadaniowości jest taka konstrukcja programu, tak by nie pracował w bezsensownych pętlach, kiedy może tylko sprawdzić czy wystąpiło zdarzenie (event) i przejść do następnego zadania.

    Mikrokontrolery AVR   27 Maj 2012 17:57 Odpowiedzi: 6    Wyświetleń: 1198
  • [ATmega32] Jak działa funkcja millis() w Arduino i konfiguracja Timer2 w ATmega32?

    W tym trybie timer po prostu zlicza impulsy zegarowe do niego doprowadzone, jeśli przekroczy zakres to zgłasza przerwanie overflow (nadmiaru) i rozpoczyna zliczanie od nowa. Funkcja obsługi tego przerwania zlicza je zwiększając liczniki f - przechowujący czas z rozdzielczością <1ms i m przechowujący liczbę milisekund. W programie należy korzystać...

    Mikrokontrolery AVR   16 Paź 2012 10:38 Odpowiedzi: 7    Wyświetleń: 2364
  • Programowanie mikrokontrolera Atmega324a-pu dla układu LED - prośba o weryfikację kodu

    Software PWM możesz zrobić na dowolnym pinie wyjściowym cyfrowym. Użyłbym timera 8-bitowego. Należy wtedy włączyć i obsłużyć dwa przerwania: 1. przepełnienie (przy przejściu licznika z wartości 255 na 0) - ustaw wtedy stan wysoki na wymarzonym pinie 2. przekroczenie wartości - ustaw wtedy stan niski na wymarzonym pinie Przykładowy kod: https://www.elektroda.pl/rtvforum/viewto...

    Mikrokontrolery Początkujący   09 Paź 2023 15:54 Odpowiedzi: 11    Wyświetleń: 837
  • [Atmega32] [Atmega32][ASM] Problemy z odbiorem RC5 - przerwanie INT1 i synchronizacja zegara

    mogą być 2 bity startu, bo standard RC5 właśnie tak jest "skonstruowany", że posiada 2 bity startu. Natomiast jego rozszerzenie czyli RC6 wykorzytuje drugi bit startu jako normalny bit danych. Ok - teraz odpowiedź dla autora, wydaje mi się, że uda się to wyjaśnić bo sam kiedyś miałem podobny problem ze zrozumieniem tego etapu dekodowania. Cały problem...

    Mikrokontrolery AVR   14 Gru 2008 21:48 Odpowiedzi: 9    Wyświetleń: 2592
  • [ATmega32][C][AVR Studio 4] Slave SPI, timery i przerwania - kolizja.

    Dziś wróciłem do sprawy po krótkiej przerwie. Zastosowałem się do rady: Jeśli układ nadrzędny nadaje te dwa bajty jeden po drugim, to może się okazać, że przerwa między bajtami jest zbyt mała i okazało się, że transmisja zaczęła śmigać znacznie lepiej. W LPC2148 pomiędzy wysyłanymi bajtami dałem minimalne opóźnienie w postaci pustej pętli for X100....

    Mikrokontrolery AVR   23 Lis 2011 21:03 Odpowiedzi: 6    Wyświetleń: 1991
  • Atmega328P Timer1 z przerwaniem Input Capture - ustawienie licznika

    Mam ustawiony timer w Input Capture Ustawienie timera z przepełnieniem licznika IC_Timers 40000 (po prostu potrzebowałem równy czas też dla odmierzania zegarka i innych bajerów do odmierzania czasu ) przerwanie co 20ms. https://obrazki.elektroda.pl/6280175200_... Od lewej okres, czas stanu wysokiego, aktualny timer ICR1, poprzedni timer...

    Arduino   06 Maj 2020 19:32 Odpowiedzi: 2    Wyświetleń: 828
  • Atmega32, C - Przerwania INT0 i INT1 - Co tu nie gra?

    Nie mogę zliczać impulsów timerami gdyż są one już zajęte do innych celów. A przerwań innych niż INT0, INT1 używasz?

    Mikrokontrolery   18 Lis 2013 20:28 Odpowiedzi: 20    Wyświetleń: 3702
  • Jak przyśpieszyć (zmodyfikować) program w na ATMega32

    OCR0=0x20; /// podobno mozna zjechac do 0 i otrzymac fck/2 Zjechać może i można, ale chyba tylko do sprzętowego przełączania pinu. bo obsługa przerwania w 1 cyklu jest niemożliwa. void timer0_comp_isr(void) { PORTC ^= BIT(0); } Wrzuć co kompilator wyrzuca do assemblera do kompilacji. W sumie na obsługe jest 32 takty razem...

    Mikrokontrolery AVR   02 Lut 2010 08:00 Odpowiedzi: 6    Wyświetleń: 2048
  • Pobieranie plików z serwera przez SIM868 do Optiboot na Atmega328PB

    Czemu służą te komplikacje z tymi __init*? Przecież jeżeli chcesz używać przerwań, to po prostu na początek nie usuwaj tablicy wektorów i całej reszty z której rezygnujesz przy opcji -nostartfiles. Wtedy kod będzie wyglądał tak:[syntax=c] #include <avr/io.h> #include <avr/interrupt.h> ISR(TIMER0_OVF_vect) { PORTB ^= (1 << PB0); } int...

    Mikrokontrolery AVR   02 Sie 2022 12:28 Odpowiedzi: 20    Wyświetleń: 1530
  • ATmega32 - Jak zliczać impulsy, generować PWM i przerwania co kilka ms?

    Cześć, mam pytanie odnośnie Timerów w uC ATmega. Potrzebuję następujących opcji: - zliczanie impulsów z dwóch enkoderów - generowanie dwóch przebiegów PWM - generowanie przerwania co kilka ms. ..............? Czy są jakieś AVR'y mające 4 timery? ........... Pozdrawiam, Bartek Wystarczy ci Atmega48/88/168 Dla 2-ch sygnałów PWM wystarczyłby 1 timer z...

    Mikrokontrolery AVR   05 Lis 2014 23:09 Odpowiedzi: 4    Wyświetleń: 1626
  • ATmega32, C, przerwanie ADC - program przestaje działać po kilku minutach

    Hmm, ja bym jednak dodał miganie pinem z timerka, chociaż wydaje się że procek idzie w maliny. Jeśli siada wszystko jak wygląda zasilanie? Może tu tkwi problem. Wepnij sondę zaraz przy zasilaniu ustaw wyzwalanie na 4.9V np i sprawdź czy się wyzwoli. Czym taktujesz procesor? Może warto wstawić generator. Ustaw BOR dodatkowo. gaskoin, volatile czy nie,...

    Mikrokontrolery AVR   12 Kwi 2011 19:37 Odpowiedzi: 13    Wyświetleń: 2632
  • ATmega32 Bascom – Timer0 nie wywołuje przerwania, brak sygnału na PB.1 w Proteusie

    Witam potrzebuje zrobic program ktory bedzie w odpowiednich odstepach czasu wywolywal przerwanie i w tym przerwaniu bede sobie mogl wykonywac dalsze funkcje problem w tym ze nie dizala mi taki najbardziej podstawowy program Symuluje to w proteusie i nie chce zapalac pinub.1 chodzi mi o taki test powinna sie pojawic 1 na pb.1 przy wywolaniu przerwania...

    Mikrokontrolery   18 Kwi 2008 07:36 Odpowiedzi: 1    Wyświetleń: 1642
  • [ATMEGA32][C] - Timer1 - licznik impulsów. Pytanie.

    OCnX to wyjścia, nie wejścia. Skoro nie możesz odblokować timera0 (bo T0 i T1 można taktować z zewnątrz) to są opcje takie: 1. Zastosowanie przerwań INT0 i INT1 z detekcją odpowiednich zbocz i zliczanie imp. w przerwaniach 2. Polling pinów z odpowiednią częstotliwością Poza tym jaka częstotliwość impulsów?

    Mikrokontrolery Początkujący   17 Lut 2013 19:10 Odpowiedzi: 10    Wyświetleń: 2277