atmega timer1 przerwanie

Znaleziono około 937 wyników dla: atmega timer1 przerwanie
  • [bascom][atmega] Timer1 - jest przerwanie od pełnego cyklu pomimo jego skrócenia

    Co to za przerwanie? Od porównania? Przepełnienia? Czy może od przechwycenia - co sugerują komentarze. Nie używasz innych przerwań? Załącz cały program.

    Mikrokontrolery AVR   18 Kwi 2018 12:40 Odpowiedzi: 5    Wyświetleń: 705
  • Atmega Bascom - Przerwanie - nie mozna skrócić timera

    Uruchomić timer w trybie CTC. Tryb CTC [syntax=vbnet]CONFIG TIMER1 = ..... CLEAR TIMER = 1[/syntax]

    Mikrokontrolery Początkujący   01 Kwi 2016 21:04 Odpowiedzi: 6    Wyświetleń: 1092
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [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ń: 1740
  • 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ń: 930
  • 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ń: 1491
  • REKLAMA
  • ATmega168: Przerwanie TIMER1_COMPA_vect nie działa, co sprawdzić?

    Nie istotne co program robi, wazne ze przerwanie mi nie dziala:) Program ma 400 lini i nie ma sensu go wklejac. ale można daodać jako załącznik jeśli się nie myle, ... mniejsza z tym, kolega poszuka wróżki :)

    Mikrokontrolery   21 Lis 2007 23:22 Odpowiedzi: 10    Wyświetleń: 1860
  • 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ń: 2404
  • REKLAMA
  • Atmega 32 - Czy muszę blokować przerwania Timer1 podczas nadawania IR?

    Cześć Robie nadajnik i odbiornik podczerwieni w jednym korzystam z przerwania od przechwytywania czy na czas nadania muszę zablokować przerwanie wywołane zboczem opadającym lub narastającym (Timer1).Czy może nie muszę?????????

    Mikrokontrolery Początkujący   14 Kwi 2015 15:52 Odpowiedzi: 1    Wyświetleń: 648
  • [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ń: 4041
  • HC-SR04 - Czujnik odległości wskazuje 0, kod AVR, TIMER1_CAPT_vect

    Witam, mam problem z czujnikiem odległości HC-SR04, cały czas na wyświetlaczu mam wartość 0. kod jest następujący: Dodano po 21 Dobra chyba wiem po co zmiana zbocza na końcu przerwania, po prostu czekamy na zobocze opadające aby ponownie wejść w przerwanie i odczytać wyniki, program nadal nie działa ale już wiem jak powinien działać chociaż : )

    Mikrokontrolery AVR   16 Maj 2016 20:53 Odpowiedzi: 2    Wyświetleń: 891
  • [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ń: 971
  • 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ń: 2952
  • REKLAMA
  • Timer TCCR3 atmega128A - diody LED nie działają w trybie PWM

    DDRD|=(_BV(PB5) | _BV(PB6) | _BV(PB7)); DDRD|=(_BV(PE3) | _BV(PE4) | _BV(PE5)); Widzisz tu subtelną różnicę...? Działające wstawki dla pwm na Tim1 i Tim2: [syntax=c]void Timer0Init(void) { DDRB|=(1<<4); TCCR0 |= (1<<WGM01)|(1<<WGM00)|(1<... OCR0=0; } void Timer2Init(void) {...

    Mikrokontrolery   31 Sty 2014 21:18 Odpowiedzi: 1    Wyświetleń: 930
  • ATMEGA 2560 czy można zmienić priorytety danych przerwań

    No właśnie timer1 ma przerwania co 1ms. Używam panelu dotykowego nextion, korzystając z gotowej biblioteki arduino przesyłam dane po RS z prędkością 9600bodów. Nadawanie zostaje przerwane przez timer1, a przy dokończeniu nadawania cała transmisja nie zawsze sie zgadza, dlatego zależałoby mi żeby zmienić priorytet przerwania USART2 na wyższy niż timer1

    Mikrokontrolery Początkujący   08 Sie 2017 20:29 Odpowiedzi: 15    Wyświetleń: 2007
  • [Atmega8] Jak generować 36kHz na Atmega8 z zajętymi kanałami PWM PB1 i PB2?

    Albo cała obsługe przerwania można zrobić prościej tak: Jeszcze prościej: [syntax=c]ISR(TIMER1_COMPA_vect) { if (PORTC & (1 << PC5)) PORTC &= ~(1 << PC5); else PORTC |= (1 << PC5); }[/syntax] najprościej: [syntax=c]ISR(TIMER1_COMPA_vect) { PORTC ^= (1 << PC5); }[/syntax] Skoro jednak pętla główna jest pusta, można nawet...

    Mikrokontrolery Początkujący   13 Sty 2016 13:57 Odpowiedzi: 13    Wyświetleń: 1572
  • AVR - Generowanie PWM na Atmega 328p z timerami 8 i 16 bitowymi - problem z sygnałem

    Tojmak987123 pomyliłeś pojęcia: Szerokości wypełnienia nie mierzy się w Hz tylko w procentach lub jednostkach czasu (np. mikrosekundach). Twój program wywołuje przerwanie Timera0 co (256-194)*64 cykli zegara, Timer1 jest ustawiany 5 razy rzadziej czyli co 19840 cykli zegara tylko tyle możesz nim odmierzyć (a nawet trochę mniej ze względu na czas ustawiania)....

    Mikrokontrolery AVR   20 Sty 2017 18:31 Odpowiedzi: 10    Wyświetleń: 1233
  • Atmega 8, Sterowanie fazowe żarówki - migotanie przy Timer1 w BASCOM

    Jak sinus ma przejść pełen to przerwanie wyłączaj i podawaj statyczny stan ciągle na triaka.

    Mikrokontrolery   26 Mar 2010 07:23 Odpowiedzi: 7    Wyświetleń: 3226
  • [ATmega] ATmega – dekodowanie sygnału RC5 za pomocą ICP i Timer1, jak zaimplementować?

    Przerwanie wolę mieć wolne. Poza tym przez zastosowanie ICP zajmuje się wyłącznie Timer1 a nie Timer0 i Int)...robiw

    Mikrokontrolery AVR   03 Gru 2009 20:08 Odpowiedzi: 6    Wyświetleń: 4046
  • [ATmega 644p][C] Analizator - problem z przerwaniem

    Przerwanie: ISR(TIMER1_COMPA_vect){ gatherData(); displayResult(); showBar(); } musi być poza funkcją main.

    Mikrokontrolery AVR   01 Wrz 2010 14:56 Odpowiedzi: 14    Wyświetleń: 3464
  • [ATMega8515][C] Regulowany generator impulsów 0-12hz

    Witam. Mam takie o to zagadnienie, potrzebuje zrobić regulowany generator 0-15hz. Na wyjściu sygnał prostokątny, albo tylko same impulsy mogą być. Wszystko było by fajnie, ale muszę do tego użyć Timera i przerwania. A nie mam w ogóle pomysłu od czego zacząć i jak to zorganizować. Potrzebuję zrealizować coś takiego aby nie zależnie od głównej pętli...

    Mikrokontrolery AVR   13 Lis 2009 15:04 Odpowiedzi: 4    Wyświetleń: 1853
  • GCC, ATMega8 (8MHz), Timer1 i problem z odliczanie 1s

    :):) I znowu na odwrot:) Jak ustawisz TCCR1B=0xC; Czyli to o co Ci chodzi(tryb CTC) to musisz zostawic makro wywolujace przerwanie takie jakie miales:) SIGNAL(SIG_OUTPUT_COMPARE1A) ale radzilbym zmienic na taka nazwe: ISR(TIMER1_COMPA_vect)

    Mikrokontrolery   07 Cze 2007 21:06 Odpowiedzi: 12    Wyświetleń: 3337
  • Jak zaprogramować Atmega16 do obsługi 4 wyświetlaczy 7-segmentowych?

    Przecież twój kod się nawet nie powinien kompilować, więc jest faktycznie zły :) Jak sobie wyobrażasz zagnieżdżenie ISR? Mieszasz nowe makra (ISR) ze starymi (SIGNAL). Poza tym ATMega nie ma czegoś takiego jak priorytety przerwań. Przerwanie TIMER1_COMPA_vect nie zostanie przerwane, chyba, że jawnie odblokujesz wszystkie przerwania co zapewne doprowadzi...

    Mikrokontrolery AVR   30 Sty 2012 12:21 Odpowiedzi: 12    Wyświetleń: 7505
  • [Atmega] Atmega: Timer1 CTC przycina się przy zmianie OCR1A z ADC, silnik staje

    Moze inne przerwanie blokuje przerwanie timera, sam z siebie nie ma prawa sie zablokowac ;) Sprawdzasz przebiegi na oscyloskopie, czy tylko zgadujesz ze sie przycina ?

    Mikrokontrolery AVR   11 Paź 2009 18:53 Odpowiedzi: 3    Wyświetleń: 5278
  • Czy blokować przerwania INT0, INT1, Timer0, Timer1 przy SPI na ATMega?

    A mówią Ci coś takie pojęcia jak: atomowość zmiennej, semafory, kolejka ..... Jeżeli nie to tu szukałbym przyczyny. Pamiętaj że przerwania, to tak jakby wielowontkowy system.

    Mikrokontrolery   25 Sie 2008 21:24 Odpowiedzi: 2    Wyświetleń: 1128
  • ATMega 32 nie wykrywa szybkiego impulsu z czujnika szczelinowego przy 120m/s

    Użyj przerwania od przechwytywania kiedy uc wykryje zmianę stanu na pinie ICP1 z niskiego na wysoki to jak będziesz miał odblokowane to przerwanie oraz będziesz miał odpowiednią reakcję(w tym przypadku to ma być zbocze narastające bo z 0 do 1) to wywoła si się przerwanie i w tym przerwaniu możesz zobaczyć ile timer1 zliczy ci impulsów

    Mikrokontrolery AVR   07 Paź 2017 14:55 Odpowiedzi: 32    Wyświetleń: 3768
  • 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ń: 405
  • Atmega 16. Zwiększanie zmiennej. Zapis temperatury.

    ad 1:Podaj F rezonatora np. 8mhz config timer1 = timer,prescale 256 'konfiguracja timera load timer1 , 31250 'załadowanie timera 1s on timer1 odliczanie 'określenie która procedura ma byc wykonana co 1s enable interrupts 'właczenie przerwań enable timer1 'właczenie timera1 dim twoja_zmienna as long ' twoja pętla do "jakis tam twój program" loop odliczanie:...

    Mikrokontrolery   25 Lis 2011 00:48 Odpowiedzi: 6    Wyświetleń: 1711
  • [Atmega128] Przykładowy kod w C dla Atmega128 obsługujący 2xRS232, konfiguracja AVR Studio

    Wektorów przerwań szuka sie nie tyle w dokumentacji winavr co w dokumentacji kontrolera, który się programuje. Nazwa wektora to nazwa przerwania ze spacjami zastąpionymi podkreślnikiem i dodanym przyrostkiem _vect np przerwanie od przepełnienia timera 1 w atmega 32: w dokumetnacji sekcja Interrupts (str. 42) 10 $012 TIMER1 OVF Timer/Counter1 Overflow...

    Mikrokontrolery AVR   24 Sie 2008 12:52 Odpowiedzi: 13    Wyświetleń: 1997
  • Cykliczne załączanie PWM w ATTiny2313A/ATMega328P

    Fakt ilość informacji które podałem jest znikoma :P, urządzenie które usiłuje zbudować ma za zadanie kontrolowanie świetlików LED, na podstawie informacji uzyskanych poprzez RS - 485 z głównego sterownika, sterownik świetlików generuje odpowiednią sekwencję (sygnał PWM o zadanym wypełnieniu i pulsacji). Problem w tym iż nie do końca mam pomysł jak wygenerować...

    Mikrokontrolery AVR   20 Gru 2019 22:11 Odpowiedzi: 19    Wyświetleń: 840
  • [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ń: 941
  • [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ń: 2467
  • [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ń: 4136
  • [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ń: 1649
  • ATMEGA 2560: Jak odtwarzać krótkie pliki WAV bez użycia avr-dos.bas?

    No i jest dziwna sprawa ... Dioda testowa świeci najpierw informując o dojściu do podprogramu "odtwarzacz" potem informuje o utworzeniu pliku testowego "plik13.txt" na karcie, potem informuje że procek zabiera się do odtwarzania pliku .wav i cały cykl się powtarza w kółko. Napisałem że dziwna sprawa bo wygląda na to że prawidłowo inicjalizuje kartę...

    Mikrokontrolery AVR   16 Lis 2016 22:22 Odpowiedzi: 328    Wyświetleń: 97119
  • odczyt pinu gdy jest on ustawiony jako wyjście-Atmega

    Panowie. wracając do sedna sprawy: czy możliwe jest w trybie PWM poprawnym fazowo użycie przerwania TIMER1 COMPB?

    Mikrokontrolery AVR   22 Kwi 2010 22:31 Odpowiedzi: 20    Wyświetleń: 2338
  • PWM z Atmega, NE555 i DS2890: zmiana potencjometru i zasilanie MOSFET-a

    Nie ma znaczenia czy pętla główna jest pusta czy nie. Ja uczyłem się na programie właśnie tak skomponowanym. Cały program był wykonywany podczas przepełnienia licznika. Co do podziału to proszę ATMEGA 8 na zegarze 8MHz Config Timer1 = Timer , Prescale = 256 'konfiguracja timera On Timer1 Cykl 'realizacja podprogramu cykl po przepełnieniu Enable Interrupts...

    Mikrokontrolery AVR   17 Lut 2011 23:38 Odpowiedzi: 27    Wyświetleń: 7120
  • Atmega 8 Bascom - Nieprawidłowe zliczanie zmian stanu przekaźnika BC547

    Program zajmuje 50%. Może i jest źle napisany ale działa.. Ja bym to stwirdzenie troche skorygował; Program działa tak jak jest napisany!... bo - "Jest jeszcze jeden problem." Co jakiś czas temperatura podskakuje o 10 stopni a czasami nawet do 200 podskoczyło co spowodowało zbędne załączenie przekaźnika. Z czym jest problem? Popatrz na pracę timera0,...

    Mikrokontrolery Początkujący   05 Lip 2014 06:39 Odpowiedzi: 7    Wyświetleń: 1746
  • 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ń: 1536
  • [ATMEGA 16][C] - Timer1 odczytywanie częstotliwości

    Nie obraź się ale Twoja metoda pomiaru częstotliwości jest "trochę" zagmatwana :) Korzystasz z timera w dziwaczny sposób a funkcje typu Delay() w połączeniu z przerwaniami nie działają poprawnie i nadają się co najwyżej do migania diodą. Natomiast pomiar częstotliwości można zrealizować np. tak: 1. Ustaw timer aby generował przerwanie w stałych odstępach...

    Mikrokontrolery   14 Mar 2014 22:28 Odpowiedzi: 9    Wyświetleń: 1776
  • Przerwania atmega2560 jak włączyć przerwania TIMER1/3/4/5_COMPB/C_vect

    16 bitowe timery w tym modelu mają trzy rejestry OCRxA/B/C i są dostępne trzy przerwania w trybie CTC nazywające się ISR(TIMER4_COMPA/B/C_vect){ Ale z noty katalogowej wynika że tryb CTC porównuje liczbę zliczeń z wartością zapisaną w OCRxA i tego nie da się zmienić więc jak wykorzystać pozostałe dwie funkcje wywołujące przerwanie (TIMER4_COMPB_vect...

    Mikrokontrolery AVR   17 Gru 2022 17:52 Odpowiedzi: 4    Wyświetleń: 423
  • [ATmega169][c] - dwa przerwania od timera1 błąd drugiego przerwania

    Witam Jak rozumiem z dokumentacji, Timer1 ma możliwość takiego ustawienia rejestrów aby można było wywołać dwa przerwania. I owszem przerwania występują , pierwsze mniej więcej co 1 sek. tak jak było planowane, natomiast drugie występuje naprzemiennie z przerwaniem pierwszym (z niewielkim przesunięciem czasowym) bez względu na to jaką wartość wpiszę...

    Mikrokontrolery Początkujący   14 Wrz 2012 10:44 Odpowiedzi: 8    Wyświetleń: 2331
  • Timer1 (16bit) ATmega 8515 czemu liczy tylko do 8bit?

    Jak ustawic timer 1 żeby liczyl 16bit a nie 8? bo to co napisalem ponizej to zawsze tylko liczy w TCNT1L a to co wpisałem w TCNT1H automatycznie wymazuje przy kolejnym cyklu dlaczego? :( .cseg .org 0x00 rjmp start .org 0x06 rjmp timer1 .org 0x11 Start: Ldi Acc, 1; ustaw preskaler timera 1 na 1 Out TCCR1A, Acc Out TCCR1B, Acc Ldi Acc, 0x80 ; wpisz wartosć...

    Mikrokontrolery   01 Lip 2005 23:57 Odpowiedzi: 1    Wyświetleń: 1365
  • [C][ATmega16] - Niechciana zmiana częstotliwości przerwania (Timer1)

    Taki bubel całkowicie krzyżuje mi plany Masz rację, zrobiłeś bubel ;) który na szczęście można naprawić na kilka sposobów, z których najprostszy to wywołanie sei() w funkcji obsługującej przerwanie. Dlaczego tak się dzieje - po prostu dlatego, że na początku obsługi przerwania samo z siebie wywołuje się cli(). Najczęściej unika się tak długo trwających...

    Mikrokontrolery AVR   12 Sie 2012 16:25 Odpowiedzi: 3    Wyświetleń: 1440
  • atmega bascom - Atmega bascom pomiar prądu przy pwm

    Włączając przerwanie od Timera który robi PWM (czyli Timer1) i pomiar ADC robiąc w tym przerwaniu (w każdym razie wyzwalając go w tym przerwaniu). PWM trzeba ustawić w tryb Phase Correct. Wtedy pomiar będzie dokładnie w środku przebiegu (w niczym to nie przeszkadza, nie musi być na końcu).

    Mikrokontrolery AVR   25 Cze 2018 21:02 Odpowiedzi: 49    Wyświetleń: 6165
  • [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ń: 1845
  • [Atmega8][winavr] problem z konfigiracją Timera1 PWM

    zmieniłem kod na: //przerwanie 1 PWM TCCR1A = (1<<WGM10); TCCR1B = (1<<CS10)|(1<<CS... z preskalerem na najwolniejszy OCR1A = 128; TIMSK |= _BV(TOIE1); TIMSK |= _BV(TICIE1); ISR(TIMER1_COMPA_vect){ LED_PORT ^= LED_2; } ISR(TIMER1_OVF_vect){...

    Mikrokontrolery AVR   18 Lut 2011 15:43 Odpowiedzi: 10    Wyświetleń: 2667
  • Atmega32+biblioteka IRMP do odczytu pilota IR prośba o pomoc

    Witam, bardzo proszę o pomoc. Zrobiłem układ na Atmega32 z podłączonymi diodami do całego PortuA, oraz do PortuB Pin2 (PB2) dekoder podczerwieni TSOP31236 (testowałem też na TSOP31238). Wykorzystać chciałem bibliotekę IRMP https://obrazki.elektroda.pl/6945425800_... a w załączniku spakowany cały projekt z plikami biblioteki irmp.

    Mikrokontrolery Początkujący   08 Cze 2021 18:07 Odpowiedzi: 2    Wyświetleń: 588
  • [Atmega32][Bascom] - Odtwarzacz *.wav z panelem dotykowym.

    Ciężko powiedzieć co tam jest nie tak. Spróbuj tego: [syntax=basic4gl]'---PROCESOR-----------... $regfile = "M32Def.dat" Wait 2 $crystal = 16000000 $hwstack = 128 $swstack = 64 $framesize = 64 '---WYŚWIETLACZ-------------------------... $lib "glcdKS108.lib"...

    Mikrokontrolery Początkujący   12 Paź 2012 18:37 Odpowiedzi: 34    Wyświetleń: 4923
  • [ATMEGA32][BASCOM] - Praca Timer1 w trybie CTC liczenie wygenerowanych impulsów

    A niby czemu ma program skakać do procedury obsługi przerwania od przepełnienia? Przecież on się nie przepełnia, tylko po doliczeniu do wartości OCR lub ICR , natychmiast się zeruję ( przy okazji może ,ale nie musi zmieniać stan pinu OC). Musisz uruchomić przerwanie od tego właśnie porównania - czyli od Compare, tak jak wspomniał kolega wyżej. Tylko...

    Mikrokontrolery AVR   11 Paź 2013 20:26 Odpowiedzi: 12    Wyświetleń: 2640
  • 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ń: 1484
  • ATMega 8: Jak skonfigurować sterownik serwonapędu z taktowaniem 8MHz?

    Dzięki za sprawdzenie tego na oscyloskopie. To mi dużo pomoże. Tak myślałem, że impulsy są wyjątkowo krótkie. Bo okres powinien być OK. Dodano po 26 Rozwiązałem problem poprzez wyłączanie TIMER1 gdy nie jest potrzebny. Oto poprawiony kod, może się komuś przyda. [syntax=c] #include<avr/io.h> #include<avr/interrupt.h> #include<HD44780.c>...

    Mikrokontrolery AVR   30 Sty 2012 16:53 Odpowiedzi: 3    Wyświetleń: 1605
  • 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ń: 2259
  • [ATMEGA8] [ATMEGA8][C] Reakcja na przycisk, zliczanie i zmiana stanu bitu po 1 sek.

    flaga==0; cóż to za cudo? Wykorzystujesz przerwanie TIMER1_OFV_vect a licznik ustawiasz w tryb CTC z wykorzystaniem COMPA. nic dziwnego ze nie działa. 2 sprawdzenie czy wciśnięto klawisz zbyteczne. if(flaga==1) { TCNT1=0x00; nie tylko zeruj licznik ale i włącz go, bo TCNT1=0X00; tylko zeruje licznik a nie zatrzymuje Dodano po 4 Ma byc...

    Mikrokontrolery AVR   04 Maj 2010 22:30 Odpowiedzi: 14    Wyświetleń: 2875
  • [atmega] [ATmega][Bascom] Jak odliczać czas bez zatrzymywania programu?

    Może używając timer1 i jakąś zmienną przechowującą ilość przerwań wywołanych przez ten timer - czyli co przerwanie timera zmienna+1 i jeśli osiągnie jakąś tam wartość (czyli ileś tam przerwań timera = jakiś czas (zależny od kwarcu)) to wtedy spełniać ten warunek.

    Mikrokontrolery   12 Wrz 2008 14:02 Odpowiedzi: 20    Wyświetleń: 2595
  • [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ń: 2646
  • Terminal RS232 Uart Atmega328 Atmega644 ATMEL

    Po poprawce idzie OK. Procesora brak podłączenia nie blokuje procesora. Dognę całość do swoich potrzeb i opublikuję całość w tym temacie. Dodano po 46 Jeszcze jedno pytanie. Jak w tym przypadku zrobić podgląd działania kolejnych procedur jeżeli nie są uruchomione przerwania. W jednym z przerwań są peryferia po i2c które muszą być już zainicjowane zanim...

    Artykuły   31 Lip 2016 23:04 Odpowiedzi: 11    Wyświetleń: 3975
  • atmega2560 - przerwania nie działają po rozbudowie funkcji bufora, I2C, USART

    Procedury przerwań zewnętrznych: Dodano po 1 z tego co wiem, w ISR pozostałe przerwania są wyłączane, czy mam rację ? nie istnieje więc chyba możliwość, że odpala się za dużo przerwań i łącznie za dużo rzeczy odkładanych jest na stos ? Swoją drogą wywołanie takie prostego ISR z jedną linijką kodu również wiąże się z odkładaniem wszystkich zmiennych,...

    Mikrokontrolery AVR   28 Sie 2012 22:04 Odpowiedzi: 14    Wyświetleń: 1743
  • [Atmega8] Timer1 CTC: Jak działają przerwania dla OCR1A i OCR1B?

    Witam Mam pewną wątpliwość/pytanie dotyczące przerwania dla timera1 w trybie CTC. W datasheetcie jest napisane, że mamy dwie niezależne jednostki Output Compare, no więc ustawiam: TCCR1B=(1 << CS10 |1 << CS11 | 1<< WGM12); //przykładowo-ustaw timer1 z preskalerem 64 //ustaw timer1 w tryb CTC OCR1A=1000; //przykładowa wartość...

    Mikrokontrolery AVR   08 Sie 2009 14:50 Odpowiedzi: 5    Wyświetleń: 2009
  • ATMega328P Arduino - Mniej sprzętowych PWM do dyspozycji niż trzeba

    Witam, W Arduino posiadam 6 sprzętowych kanałów PWM. Jednak potrzebuję obsłużyć ich 7. Podpowiedziano mi, że mógłbym użyć dekodera (np. BCD -> DEC), jednego timera i przerwaniami obsługiwać kilka serw. Zacząłem kombinować i stworzyłem większy niż kilkulinijkowy kod, który kompletnie nie działał. Zacząłem go stopniowo upraszczać, aż doszedłem właściwie...

    Arduino   06 Gru 2014 20:50 Odpowiedzi: 9    Wyświetleń: 1398
  • [Atmega168] [Atmega168][C/AVR 5] Migotanie żarówki przy sterowaniu fazowym, 16MHz, przerwania

    Witam mam taki problem gdy uruchomię ten program to żarówka bardzo miga. Zliczyłem ilość wywoływanych przerwań i wyszło że na 400 detekcji zera jest 100 przerwań od timera w czasie 4 sekund. Więc detekcja zera działa prawidłowo. Używam Atmega168, kwarc 16Mhz. F_CPU ustawiłem w kompilatorze i działa napewno 16Mhz http://obrazki.elektroda.pl/4656291300_1...

    Mikrokontrolery AVR   06 Paź 2011 14:30 Odpowiedzi: 12    Wyświetleń: 4027
  • 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ń: 5724
  • [atmega128][c]pseudowątki w avr, obsługa wyświetlacza i i_o

    Faktycznie powinno być na odwrót. Tak to jest, gdy się pisze coś na szybko:) czy u ciebie nie będzie problemu jeśli ta pierwsza funkcja1(); ustawi sobie Timer1ms - to druga funkcja może to zmienić przecież za pomocą SetDelay1ms. Więc troszkę się kołomyja zrobi chyba? Problem oczywiście będzie. Dlatego każda funkcja (funkcja1(); funkcjia2()) powinna...

    Mikrokontrolery AVR   30 Lis 2009 19:26 Odpowiedzi: 12    Wyświetleń: 1850
  • Jak skonfigurować timery w Arduino Nano (ATmega328P) do miernika częstotliwości?

    Usiłuję napisać program takiego miernika i podczas analizy konfiguracji timer-ów w różnych tego typu projektach a szczególnie w jednym (ale o tym później) pogubiłem się trochę i pojawiły się wątpliwości. Do testów używam platformy arduino nano (atmega328p, 16MHz, 5V) i na chwilę obecną napisałem coś takiego: [syntax=c]#include <Wire.h> #include...

    Mikrokontrolery Początkujący   29 Sie 2016 12:00 Odpowiedzi: 7    Wyświetleń: 2397
  • Atmega2560: Niepoprawne wartości z Timer1 w przerwaniu INT0 - jak to naprawić?

    Nie wiem czy wiesz co będzie wynikiem jeśli weźmiemy dwie zmienne szesnastobitowe bez znaku i odejmiemy większą od mniejszej? Wynik nadal będzie dodatni jednak pomniejszony o poprzednią wartość tej mniejszej zmiennej. Tak więc proponuję rozważyć taki temat: Timerx w momencie pierwszego odczytu w INTx ma 65530. Nie zerujemy Tmerx . Timerx w momencie...

    Mikrokontrolery Początkujący   20 Lis 2024 11:19 Odpowiedzi: 5    Wyświetleń: 156
  • Bascom AVR - Dekodowanie części jawnej z układów HCS200/301

    Robi się to prosto na wejściu ICP Atmegi, mierzysz czas pomiędzy kolejnymi zboczami, raz jest opadające, raz narastające itd.. potem to tylko interpretacja wyników, liczenie bitów i po odliczeniu 64 bitów z transmitowanych 66, bo dwa ostatnie dla uproszczenia procedury pomijasz. wyświetlasz na LCD lub wysyłasz po RS232 do komputera, a tam wyświetlasz...

    Mikrokontrolery AVR   12 Kwi 2018 10:43 Odpowiedzi: 40    Wyświetleń: 7095
  • [C] [C][Atmega128] - Problem z połączeniem karty SD i tworzeniem katalogu (FatFS)

    Witam od dwóch dni walczę z połączeniem karty SD z Atmega128. mam taki oto testowy kod: main.c [syntax=C] int main(void) { USART0_Init(); TCCR1B |= (1<<WGM12); // tryb CTC TCCR1B |= (1<<CS11)|(1<<CS10); // 8Mhz / 64 /1250 = przerwanie co 10ms OCR1A = 1250; TIMSK |= (1 << OCIE1A); // Zezwolenie na przerwanie CompareMatch od rejestru...

    Mikrokontrolery AVR   04 Wrz 2012 16:28 Odpowiedzi: 13    Wyświetleń: 1947
  • Jak stworzyć przerwanie 50Hz w ATMEGA32 w języku C?

    Czy dobrze jest to wykonane? czyli przerwanie wywolywane z częstotliwością 50Hz. Mam jeszcze pytanie czy to mi się skopiluje w tej wersji WinAVR co ja posiadam. Ponieważ napisałeś, że ISR to jest nowsze od SIGNAL. #include <avr/io.h> #include <avr/interrupt.h> int main (void) { DDRB |= (1 << 0); // Ustawienie bitu...

    Mikrokontrolery AVR   30 Lip 2010 15:34 Odpowiedzi: 15    Wyświetleń: 3185
  • 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ń: 909
  • Atmega8 + MAX6575LZUT: brak odczytu temperatury, konfiguracja INT0 i timer1

    robie uklad gdzie chce wykorzystac element max6575lzut.. zapoznalem sie z dokumentacja jednakze nie otrzymuje wartosci zmierzonej.. moze wiecej szczegolow.. uklad podlaczylem do wejscia portd.2 (int0) uP atmega 8... wybralem 5us/K (przez odpowiednie polaczenie wyprowadzene ukladu max).. w programie na wstepie ustawiam port jako wyjscie i ustawiam w...

    Mikrokontrolery   02 Sty 2008 12:37 Odpowiedzi: 4    Wyświetleń: 1179
  • Atmega8 timer i przerwanie INT1 - jak wstawić do programu?

    Nie jestem pewien, ale może się rozchodzić o różną częstotliwość względem napięcia zasilania. Mam na myśli że jak ustawisz 8MHz to w zależności od Vcc i temperatury możesz mieć np: 3% mniej czyli ~7,75MHz, zaznaczone jest to w dokumentacji na wykresach od strony ~275. Mogło by to powodować kilka sekund różnicy na minucie. Deklaracja to tylko ta linijka:...

    Mikrokontrolery AVR   14 Maj 2012 07:12 Odpowiedzi: 40    Wyświetleń: 5695
  • [Atmega32][C]Przerwanie i dziwne zachowanie zmiennej

    Witam, ostatnio podłączyłem do Atmegi wyświetlacz od nokii 3310 i postanowiłem pouczyć się trochę timerów i przerwań. Chciałem napisać prosty programik liczący impulsy i wyświetlać je na LCD. W przerwaniu od INT0 zliczam impulsy, a w drugim przerwaniu co sekundę przepisuje ilość impulsów do zmiennej i kasuję liczbę impulsów. Problem pojawia się gdy...

    Mikrokontrolery AVR   19 Gru 2011 21:34 Odpowiedzi: 18    Wyświetleń: 2180
  • [atmeg8] [atmeg8][Bascom] Timer1 i USART - problem z synchronizacją w stacji meteo

    Witam W projekcie wysyłanych będzie około 800bytów danych do PC i w PC bedzie na bieżąco wyświetlane. Do czego zmierzam. W czasie kiedy bedę obsługiwać przerwanie od Timer1 może pojawić się sygnał do PC, że dokonywana bedzie tramsm,isja. W atmega8 nie mozna ustawiać priorytetów przerwań w odróżnieniu do 8051. Kiedy pojawiało mi się przerwanie do timer1...

    Mikrokontrolery AVR   29 Sty 2009 21:52 Odpowiedzi: 12    Wyświetleń: 2604
  • Atmega128[Bascom] - Plik zewnętrzny "Config_MMC.bas"

    Przepraszam że nie potrafię tego wyjaśnić ale to nie ja pisałem ten program. Mam taki kod: http://obrazki.elektroda.pl/4548415200_1...

    Mikrokontrolery Początkujący   25 Kwi 2013 19:46 Odpowiedzi: 7    Wyświetleń: 2847
  • [ATMega] Jak najlepiej mierzyć prędkość na ATMega w Bascom? Impulsy, przerwania, timer?

    Postawiłem sobie zadanie opracowania licznika prędkości. Powiedzmy, że do roweru. Konstrukcję i jej sens odłóżmy na razie na bok :) Zadanie dla procesora niby banalnie proste - liczyć prędkość przez badanie impulsu na pinie. I teraz zaczynają się schody. Mogę to zrobić na kilka sposobów (te które znam): 1) mierzenie czasu między impulsami 2) mierzenie...

    Mikrokontrolery AVR   27 Lip 2009 22:14 Odpowiedzi: 6    Wyświetleń: 4356
  • Jak ustawić kąt serwa modelarskiego w Bascom na Atmega?

    Najprawdopodobniej jest gdzieś błąd w kodzie tak sytuacja nie powinna mieć miejsca. Sprawdź czy to "podświetlenie" jest przypisane do dobrego wektora przerwania (Timer1 w Twoim przypadku). Jeśli możesz to wrzuć cały kod wtedy coś więcej można będzie powiedzieć. pozdrawiam, Marcin

    Mikrokontrolery AVR   11 Kwi 2011 20:34 Odpowiedzi: 12    Wyświetleń: 3898
  • AtMega 324/644/1284 - reset mikrokontrolera po odblokowaniu przerwań

    Kod jest prosty, bo siedze nad nim od dawna i już wyrzuciłem wszystko co było zbędne. Zależy mi na tym by na wyświetlaczu pojawił się napis "Timer0 OK". [syntax=c]#include <avr/io.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <util/delay.h> #include "LCD/lcd44780.h" void timer_start (void); volatile uint16_t...

    Mikrokontrolery AVR   11 Lis 2015 17:52 Odpowiedzi: 6    Wyświetleń: 1278
  • Atmega 128 i Timer1 z trzema rej. OCR1A, OCR1B i OCR1C

    Cześc. Chcę użyć licznika timer/counter1 w układzie Atmega128 w trybie CTC. Potrzebuje aby przy zgodności następowało przerwanie. Po przeczytaniu Datasheet juz nie wiem o co chodzi w tym. Dlaczego i jak sie do tego zabrac skoro są tam aż 3 rejesrty OCR1A, OCR1B i OCR1C. Czy wpisując do tych rejestrów rózne wartości będą 3 przewania, o co tu chodzi z...

    Mikrokontrolery   02 Paź 2006 20:31 Odpowiedzi: 2    Wyświetleń: 2498
  • [C] [ATmega32] - ATmega32 - obsługa timera/przepełnienie co 100ms/pomiar na ADC

    Zmieniłem kod i zamiast: [syntax=c]TIMSK |= (1<<TOIE1);[/syntax] wstawiłem: [syntax=c]TIMSK |= (1<<OCIE1A);[/syntax]. Znów działa mi i wyświetla wyniki ADC na terminalu :) Cały kod wygląda teraz tak: [syntax=c]#include <avr/io.h> #include <avr/interrupt.h> #include "delay.h" #include "mkuart.h" #define F_CPU 11059200UL //##########################...

    Mikrokontrolery AVR   11 Lis 2013 23:14 Odpowiedzi: 19    Wyświetleń: 3252
  • [atmega16] [Bascom] Wpis wartości początkowej do timera

    Sprobuj jeszcze od timera0 obsluge przerwania w petli glownej, a Krotki kod generujacy tego prostokata, mozesz zorbic: -przeliczajac ile z danym kwarcem wynosi okres danej czestotliwosci wpisac do licznika timera1 polowe tej wartosci, aby co pol okresu zmienial stan wyjscia na przeciwnym, przerwanie od Timera1 oczywsice ze wzgledu na prostote zrob w...

    Mikrokontrolery AVR   14 Mar 2010 21:32 Odpowiedzi: 22    Wyświetleń: 3042
  • 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ń: 2231
  • [Atmega8] Atmega8 BASCOM TIMER1 – sprawdzenie kodu generatora 50Hz do UPS/przetwornicy

    Witam ! Obliczenia źle oraz pewnie źle ustawione fusebity (pewnie default - 1Mhz internal rc). Instrukcja Load jako parametr ma po ilu impulsach ma wystąpić przerwanie, więc powinno być 625, ale że pojedyńcza połówka przebiegu sieci trwa nie 20ms a tylko 10ms więc powinno być 312,5 :D. Więc lepiej chyba prescale = 64 i load timer1, 1250. Pozdrawiam...

    Mikrokontrolery AVR   13 Cze 2010 12:30 Odpowiedzi: 7    Wyświetleń: 1967
  • Funkcje pinów OC1A i OC1B w ATMega8535 – do czego służą i jak je wykorzystać?

    Dokładnie tak. Pytanie z jakiego uP korzystasz? Np.: tiny2313 ma 4 wyjścia OC: OC0A i OC0B dla Timer0 oraz OC1A i OC1B dla Timer1. Dla mega8 masz trzy wyjścia OC: OC1A i OC1B dla Timer1 oraz jedno dla Timer2 (OC2) Co do wejść oznaczonych TOSC1 i TOSC2 - w kontrolerach ATmega służą do podłączenia kwarcu zegarkowego (32kHz). Przy wykorzystaniu licznika...

    Mikrokontrolery   23 Kwi 2006 18:27 Odpowiedzi: 7    Wyświetleń: 4701
  • ArduinoMega - Niedziałające przerwania od timera (TIMER1) i przycisku (PCINT)

    Program na ArduinoMega działa bardzo dobrze, więc postanowiłem przenieść go na procesor Atmega 328p - ten sam co w większości płytek Arduino. Układ pracuje na wewnętrznym oscylatorze 8MHz, bootloader wgrany, program też. Pojawił się niestety problem, którego nie potrafię zlikwidować - przerwanie od przycisku powoduje restart procesora... Jeżeli dodam...

    Arduino   01 Cze 2014 16:49 Odpowiedzi: 1    Wyświetleń: 1692
  • [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ń: 2175
  • [AVR] ATmega8L: wybudzanie z power-down przez INT0 nie działa, przerwanie aktywne tylko w pracy

    Witam. Dopiero zaczynam programować uC AVR. Zaczynam od ATmega8L, ostatnio mam problem z przerwaniem zewnętrznym INT0, układ wchodzi w stan uśpienia ale nie można go wybudzić. W czasie normalnej pracy przerwanie działa i zmienia licznik. Ogólne prawidłowe działanie programu powinno być takie, że dioda zapala się 10 krotnie po czym uC wchodzi w stan...

    Mikrokontrolery AVR   07 Kwi 2012 16:02 Odpowiedzi: 15    Wyświetleń: 2872
  • [Atmega8] Atmega8 Bascom - Nadpisywanie zmiennej w przerwaniu int0/int1, reset timer1

    Ten sam kod, który zaprezentowałem w pierwszym poście , natomiast przerwanie wywołane już na nodze portb.0 i działa zmienna nie jest nadpisywana. Cała reszta kodu bez zmian poza zmianą przerwania. Przerwania skonfigurowane prawidłowo. Moze przerwania masz skonfigurowane prawidlowo... ale..... Czy mozesz wyjasnic w jakim celu, w obsludze przerwania...

    Mikrokontrolery AVR   09 Maj 2009 18:31 Odpowiedzi: 14    Wyświetleń: 2818
  • 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ń: 2774
  • Avr/Atmega/16 - Alarm i ustawienie w menu lub cos podobnego

    Dopisałem obsługę timer1 do programu z przerwaniem co 1s Cykle pracy (włącz na 10 min i wyłącz na 3 godz) nie mają nic wspólnego z porą dnia (określona godzina ) lub kalendarzem i nie są mi potrzebne chyba do porównania z PCF.Myślałem raczej o zastosowaniu Timera1 który będzie odpalał przerwanie co 1s. Przerwania będą zliczane i wrzucane do wora co...

    Mikrokontrolery Początkujący   20 Mar 2014 22:30 Odpowiedzi: 15    Wyświetleń: 2781
  • [atmega8] [atmega8][C] Timer1 CTC generuje przerwanie rzadziej niż 1s, co robię źle?

    A jak policzyłeś 0x7A11?? Licząc "od tyłu" wychodzi: 0x07a11 * 256 = 31249 * 256 = 7.999.744 Czyli blisko 8MHz. Gdybyś miał 0x7A12 to byłoby równo 8MHz. Czy taki masz kwarc?

    Mikrokontrolery AVR   26 Sty 2011 22:19 Odpowiedzi: 6    Wyświetleń: 1705
  • Jak skonfigurować wektory przerwań Timer1 PWM w Atmega8?

    Problem dla mnie pojawił się ze zrozumieniem wektorów przerwań które obsługują timer1. W dokumentacji jest tabela na stronie 46 W czym problem? Jak korzystasz z przerwania np. Timer/Counter1 Compare Match A czyli przerwanie w momencie gdy zawartość licznika (TCNT1) zgadza się z tym co wpisałeś do OCR1A to jeśli wcześniej w TIMSK ustawisz odpowiedzialny...

    Mikrokontrolery AVR   20 Gru 2011 23:04 Odpowiedzi: 19    Wyświetleń: 2996
  • AVR Atmega 16A - Konfiguracja TIMERA1 - przerwania wykonują sie za szybko.

    Witam! Chcę ustawić TIMER1 w atmedze 16 tak aby generował przerwania mniej więcej co sekundę w trybie CTC (dodam, że nie zależy mi na aptekarskiej precyzji). W tym celu ustawiłem następujące rejestry: TCCR1A |= (1<<WGM12); //tryb ctc , timer1 TCCR1B |= (1<<CS12)|(1<<CS10); //prescaler 1024 / OCR1A = 7813; // 8MHz/1024 TIMSK |= (1<<OCIE1A);...

    Mikrokontrolery AVR   07 Sty 2014 15:00 Odpowiedzi: 2    Wyświetleń: 1272
  • Atmega16 - jak obsłużyć dwa przerwania ADC i generatora jednocześnie?

    Dodałem: [syntax=c]ISR(TIMER1_COMPA_vect) { }[/syntax]Teraz chociaż funkcja Test() wykonuje się raz, tak jak powinna. Zmieniłem tryb ADC na pojedynczy: [syntax=c]void InitADCSingle(void) { ADMUX = _BV(REFS0) | _BV(REFS1) ;// Napięcie odniesienia wewnętrzne, AREF podłączony z GND przez 100n //| _BV(MUX0); // Kanał ADC1 ADCSRA = _BV(ADEN) // Aktywacja...

    Mikrokontrolery AVR   23 Sty 2012 18:01 Odpowiedzi: 9    Wyświetleń: 2031
  • Atmega16 "wykrzacza sie" - obsługa RC5 w przerwan

    a jesli powiem ze tak tez próbowałem tylko ze odczyt z kodów z rc5 trwa z przerwą 600ms która musi byc pomiedzy odczytem a konwersją temperatury z ds1820 :( Jakoś nie widzę problemu. Przecież Int0 ma wyższy priorytet niż DS. Jerśli istnieją jakieś konflikty to należy zablokować przerwanie Int0 na czas inicjacji DS'a i odczytu temperatury. W trakcie...

    Mikrokontrolery   03 Wrz 2007 19:22 Odpowiedzi: 7    Wyświetleń: 2687
  • ATMEGA8A - Jak zrealizować programowy tryb CTC dla licznika T0?

    Teraz zrobiłem tak i wygląda na to, że niby działa. Czy takie coś ma sens działania, czy tylko tak mi się wydaje, że działa: [syntax=c] volatile uint16_t licznik = 0; volatile uint16_t licznik1 = 0; volatile uint16_t licznik2 = 0; volatile uint8_t OCR0; int main(void) { pinMode(2,"OUTPUT"); pinMode(3,"OUTPUT"); sei(); TCCR0|=(1 << CS02)|(1<<CS00);...

    Mikrokontrolery AVR   16 Sie 2013 13:56 Odpowiedzi: 10    Wyświetleń: 2097
  • Optymalizacja przerwań w AVR-GCC na Atmega8 bez zbędnych operacji na stosie

    $katalog_WinAVR$/doc/avr-libc/avr-libc-u... Tworzysz osobny plik w asemblerze (.S, nie .s) zawierający procedurę obsługi przerwania, kompilujesz do pliku .o i linkujesz z pozostałymi plikami. W dołączanym wo WinAVR szablonie Makefile jest przewidziane miejsce na wypisanie źródeł w asemblerze (ASRC = $tu wpisz nazwy plików$). Przykład,...

    Mikrokontrolery   22 Wrz 2007 11:50 Odpowiedzi: 4    Wyświetleń: 1986
  • Jak poprawić dokładność Timer1 w ATmega32 przy zegarze 8MHz?

    Witam Korzystam z Timer1 do zliczania ilości sekund jakie upłynęły od uruchomienia procesora. Procesor jest taktowany wewnętrznym zegarem 8MHz. Niestety wyliczone dane są obarczone dużym błędem, średnio 15 sekund na 10 min. ( zamiast 600 sekund pokazuje 615 sekund ). Używam Timer1 w trybie CTC. Czy jest to niedokładność z jaką trzeba się liczyć czy...

    Mikrokontrolery   17 Sie 2007 23:12 Odpowiedzi: 5    Wyświetleń: 1452
  • Atmega32[C] - Przerwanie od timera1 nie działa, miganie diody co 1s

    500ms, są powstawiane bo chciałem zobaczyć czy działa przerwanie, bo bralem pod uwage że zła wartość mogłem wpisać do rejestru OCR1A, to jest główny powód dlaczego tam to się znajduje. Dodano po 6 oki, dzięki. Wrzuciłem odrazu program od Ciebie na Atmege i śmiga. Postaram się coś pokombinować jeszcze, doczytać z tego co od was otrzymałem, i zobaczymy...

    Mikrokontrolery AVR   01 Kwi 2014 01:25 Odpowiedzi: 12    Wyświetleń: 1308
  • [Bascom] [Bascom][Atmega8] Jak wywołać przerwanie int0 do uruchomienia timer1?

    Witam. Mam problem z przerwaniami w atmega8. Wcześniej nie potrzebowałem przerwań więc to zagadnienie mnie nie interesowało. Potrzebuję wywołać przerwanie zewnętrzne int0 które uruchomi timer1, a ten zacznie odmierzać czas. Proszę o pomoc. Pierwsza zasadnicza uwaga to nie zauważyłem w programie konfiguracji interruptu0- coś np. takiego: config INT0=...

    Mikrokontrolery AVR   01 Paź 2011 17:22 Odpowiedzi: 3    Wyświetleń: 1510
  • Atmega16: Brak reakcji na zmianę stanu portu A w Bascomie, pętla Do Loop

    hmmm Przede wszystkim: Enable Interrupts On Timer0 Przerwanie Stop Watchdog Config Timer0 = Timer , Prescale = 1024 Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 256 'PWM=250Hz Load Timer0 = 195 To włączenie przerwania jest wstrętne w tym miejscu:P Co do wniosków... może spróbuj zwiększyć stos o...

    Mikrokontrolery   04 Maj 2008 23:52 Odpowiedzi: 8    Wyświetleń: 1537
  • Jak przeliczać przepełnienie Timer1 16bit w ATmega32 z preskalerem 256?

    To mój pierwszy post na tym forum.. :) Zrobiłem zegar DCF na dyplomówkę ATmega32 + 16MHz + 2*16 + U4221B (DCF) + RS232 + RC5 all SMD. W szystko jest na jednej płytce i chodzi oki,odbiornik działa oki nie widzę zakłuceń (mam diodę z ID tego sygnału) teraz to programuję w Bascomie i tak... Nie chodzi mi samo dekodowanie DCF: - wykorzystuję przerwanie...

    Mikrokontrolery   22 Gru 2012 16:48 Odpowiedzi: 54    Wyświetleń: 14832