atmega prescaler timer

Znaleziono około 889 wyników dla: atmega prescaler timer
  • [C][Atmega 8] Pomiar czasu (milisekundy) miedzy zdarzeniami

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

    Mikrokontrolery AVR   09 Cze 2010 19:00 Odpowiedzi: 6    Wyświetleń: 2211
  • REKLAMA
  • ATmega1284p TIMER0_OVF_vect nie działa - diagnostyka przerwania

    Witam, Z racji tego ile już zrobiłem na atmegach to aż wstyd pisać taki post, ale ręce już mi opadają.... Mam układ ATmega1284p, na który przenoszę kod obsługi modbus'a RTU który już skutecznie odpaliłem na kilku innych atmegach. Ta jednak jest oporna. Drogą śledztwa doszedłem, że winny jest niedziałający timer0. Zacząłem więc go rozbierać na czynniki...

    Mikrokontrolery AVR   03 Kwi 2020 11:48 Odpowiedzi: 2    Wyświetleń: 438
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

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

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

    Mikrokontrolery AVR   12 Lis 2022 02:13 Odpowiedzi: 6    Wyświetleń: 396
  • 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
  • [Atmega328][Atmega2560][Arduino] - Pomiar czasu propagacji fali 40kHz.

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

    Arduino   16 Lip 2015 20:13 Odpowiedzi: 8    Wyświetleń: 2277
  • Atmega16: Jak ustawić timer0 CTC z kwarcem 8MHz i prescalerem 64?

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

    Mikrokontrolery AVR   09 Lis 2010 10:19 Odpowiedzi: 8    Wyświetleń: 3069
  • ATMEGA 8 - Jak ustawić przerwanie timera co 1s z prescalerem 128?

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

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

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

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

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

    Mikrokontrolery   29 Mar 2008 12:57 Odpowiedzi: 7    Wyświetleń: 3265
  • Używanie dwóch timerów w BASCOM (atmega2560) - pobieranie danych z tablicy i sterowanie PORTB

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

    Mikrokontrolery AVR   07 Kwi 2023 07:26 Odpowiedzi: 17    Wyświetleń: 738
  • [atmega328p] [atmega328p][c] Timer0 - dioda nie miga, ustawienia 8MHz, kod nie działa

    Bity CS00 i CS02 od preskalera są w rejestrze TCCR0B, a nie TCCR0A. Masz preskaler na 0 więc timer nie zlicza.

    Mikrokontrolery AVR   11 Sie 2014 23:33 Odpowiedzi: 7    Wyświetleń: 3843
  • 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ń: 1518
  • 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ń: 2253
  • [atmega8][bascom] O co chodzi tak na prawdę z tymi timerami?

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

    Mikrokontrolery AVR   29 Paź 2008 20:50 Odpowiedzi: 5    Wyświetleń: 2678
  • REKLAMA
  • Symulacja Timer1 w Bascom na ATtiny2313 - brak przerwań, Timer0 działa

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

    Mikrokontrolery   02 Maj 2006 19:43 Odpowiedzi: 4    Wyświetleń: 1209
  • [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
  • Atmega644pa - Timer1 nie odmierza równo 1 sekundy w trybie CTC

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

    Mikrokontrolery AVR   18 Wrz 2013 14:49 Odpowiedzi: 15    Wyświetleń: 2952
  • 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ń: 819
  • [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ń: 1997
  • ATmega8 Timer0/Timer1 – jak ustawić prescaler, by uzyskać 1s przy 1MHz?

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

    Mikrokontrolery   14 Mar 2006 21:13 Odpowiedzi: 27    Wyświetleń: 2855
  • Bascom Atmega - Program z wykorzystaniem timera do odmierzenia czasu. Pytanie.

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

    Mikrokontrolery Początkujący   03 Maj 2014 20:09 Odpowiedzi: 4    Wyświetleń: 1245
  • AVR Asembler: Timer0 Overflow w ATmega128 - Jak uzyskać 1s odstęp?

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

    Mikrokontrolery   12 Lis 2005 16:11 Odpowiedzi: 15    Wyświetleń: 3802
  • [C] Atmega16 - Timer0 spieszy o 3 sekundy po 5 minutach, prescaler 1024, 8MHz

    zapewne to wina wewnętrznego kwarcu i liczenia zmiennoprzecinkowego. A propos ta obsługa przerwania jest zdecydowanie za długa. I zmiennoprzecinkowe po co? PS. taką metodą RTC nie wyjdzie najlepszej jakości. Timer 2 asynchronicznie z kwarcem 32,786.

    Mikrokontrolery   31 Maj 2011 11:28 Odpowiedzi: 9    Wyświetleń: 2960
  • ATmega8, Timer0 i Timer1 – konfiguracja liczników do zmiany zmiennej co 1 sekundę, 4MHz

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

    Mikrokontrolery   26 Mar 2008 13:45 Odpowiedzi: 5    Wyświetleń: 1733
  • [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
  • ATMEGA328P - HC-sr04: Timer nie zmienia wartości przy zmianie odległości

    Coś takiego znalazłem. Co prawda na Atiny ale można przerobić. [syntax=c]// // Talking to ultrasonic sensor HC-SR04 with an ATtiny84, and // sending distance data using serial communications. // // electronut.in // #include <avr/io.h> #include <string.h> #include <util/delay.h> #include <avr/interrupt.h> #define F_CPU 8000000...

    Mikrokontrolery AVR   10 Kwi 2017 04:56 Odpowiedzi: 3    Wyświetleń: 927
  • Przeniesienie kodu SPWM z Arduino UNO (ATmega328P) na ATTiny85A – kompatybilność

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

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

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

    Mikrokontrolery AVR   30 Mar 2017 19:25 Odpowiedzi: 12    Wyświetleń: 1314
  • Jak uzyskać dane czasu i daty z RTC w ATmega8L?

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

    Mikrokontrolery AVR   24 Sty 2009 19:55 Odpowiedzi: 17    Wyświetleń: 5426
  • [Atmega32]Jak skonfigurować zegarki wewnetrzne (Timer1 i Timer0)?

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

    Mikrokontrolery AVR   26 Cze 2011 20:40 Odpowiedzi: 13    Wyświetleń: 1845
  • Czas trwania Waitms=500 na Atmega 8 z zegarem 1MHz bez prescalera?

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

    Mikrokontrolery AVR   13 Lip 2009 23:03 Odpowiedzi: 29    Wyświetleń: 2661
  • [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ń: 1200
  • [atmega128][bascom]Obrotom. z czujnikiem Halla w przerwaniu

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

    Mikrokontrolery AVR   17 Cze 2010 22:11 Odpowiedzi: 9    Wyświetleń: 2235
  • Atmega8: Konflikt przerwań Timer1 i Timer0 przy sterowaniu PWM i diodą

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

    Mikrokontrolery Początkujący   07 Cze 2012 11:59 Odpowiedzi: 3    Wyświetleń: 1586
  • Jak zrealizować detekcję zbliżenia ręki z TSOP1736 na ATmega 8L?

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

    Mikrokontrolery   03 Sie 2005 13:34 Odpowiedzi: 3    Wyświetleń: 1779
  • ATMega128 - Świecenie 2 diodami na raz ze zmienną częstotliwością

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

    Mikrokontrolery AVR   18 Wrz 2014 22:17 Odpowiedzi: 6    Wyświetleń: 1020
  • 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ń: 417
  • ATMEGA 2560 czy można zmienić priorytety danych przerwań

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

    Mikrokontrolery Początkujący   08 Sie 2017 20:29 Odpowiedzi: 15    Wyświetleń: 2007
  • [Atmega128][c][WinAVR] Timer w trybie asynchronicznym

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

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

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

    Mikrokontrolery AVR   21 Gru 2009 12:52 Odpowiedzi: 1    Wyświetleń: 1335
  • Jak zintegrować ADC z TIMER2 w ATmega32 do próbkowania 8kHz w AVR Studio 4?

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

    Mikrokontrolery AVR   13 Lis 2011 15:02 Odpowiedzi: 21    Wyświetleń: 3390
  • Zmiana kodu z Timer0 na Timer1 w ATmega8 - jak to zrobić?

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

    Mikrokontrolery   20 Wrz 2008 16:55 Odpowiedzi: 15    Wyświetleń: 6221
  • Licznik częstotliwości do 500 MHz na Atmega 48.

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

    DIY Konstrukcje   23 Wrz 2013 18:43 Odpowiedzi: 37    Wyświetleń: 38127
  • ATmega16 - Timer1 16-bitowy: brak wywołania przerwania ISR(TIMER1_OVF_vect)

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

    Mikrokontrolery Początkujący   23 Lut 2017 02:47 Odpowiedzi: 5    Wyświetleń: 849
  • Jak zmieniać stan niski na wysoki za pomocą generatora? ATmega168 i język C.

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

    Mikrokontrolery AVR   09 Mar 2019 16:24 Odpowiedzi: 17    Wyświetleń: 975
  • [ATmega8] ATmega8 Bascom: Jak użyć Timer0 do opóźnienia zapalenia LED?

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

    Mikrokontrolery Początkujący   10 Cze 2013 12:08 Odpowiedzi: 19    Wyświetleń: 3459
  • Fast PWM nie działa na ATmega328 - kod nie zapala diody LED

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

    Mikrokontrolery AVR   14 Sie 2017 05:11 Odpowiedzi: 3    Wyświetleń: 912
  • [bascom] atmega8 wykorzystane 3 liczniki, timer2 zakłóca PWM

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

    Mikrokontrolery   18 Maj 2011 08:48 Odpowiedzi: 2    Wyświetleń: 2465
  • Atmega 16: Timer2 blokuje Timer0 przy wyświetlaniu na 7-segmentowych wyświetlaczach

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

    Mikrokontrolery AVR   30 Sie 2011 22:58 Odpowiedzi: 11    Wyświetleń: 1483
  • Sterowanie PWM Atmega8 i IRFP064 - niskie napięcie i grzanie MOSFET-a

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

    Początkujący Elektronicy   15 Lut 2015 13:47 Odpowiedzi: 8    Wyświetleń: 1278
  • ATmega8/ADC/przerwanie - uC nie wchodzi w procedurę przerwania

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

    Mikrokontrolery AVR   20 Sty 2013 16:02 Odpowiedzi: 8    Wyświetleń: 2223
  • [AVR] ATMega ATTiny 0-Series, 1-Series uwagi ogólne

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

    Mikrokontrolery AVR   16 Sty 2023 00:57 Odpowiedzi: 10    Wyświetleń: 2256
  • [ATmega32U4][avr-gcc] - Typ zmiennej a jej wartość po petli while.

    Witam i proszę o wyjaśnienie, dlaczego jeśli zmienna x w funkcji main jest typu long int to po zakończeniu pętli while ma ona wartość mniejszą (66) niż jeśli jest typu int (86). Dzięki. [syntax=c] volatile uint8_t timer1; ISR (TIMER0_COMPA_vect){ uint8_t x = timer1; if (x) timer1 = --x; } int main (void) { TCCR0A |= (1<<WGM01);//tryb CTC TCCR0B...

    Mikrokontrolery Początkujący   14 Lis 2014 13:04 Odpowiedzi: 4    Wyświetleń: 945
  • Resetowanie timera w Atmega8 - jak wyzerować licznik do zera?

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

    Mikrokontrolery AVR   16 Sty 2015 09:16 Odpowiedzi: 9    Wyświetleń: 1059
  • Atmega8 Bascom - Nie działa obsługa timera gfdzie jest błąd

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

    Mikrokontrolery Początkujący   06 Lis 2013 07:50 Odpowiedzi: 16    Wyświetleń: 2535
  • [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
  • 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
  • [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ń: 4029
  • [Atmega] Atmega: Timer1 CTC przycina się przy zmianie OCR1A z ADC, silnik staje

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

    Mikrokontrolery AVR   11 Paź 2009 18:53 Odpowiedzi: 3    Wyświetleń: 5260
  • [atmega16/32] - Dokładność timerów/kwarców do pomiaru czasu

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

    Mikrokontrolery AVR   25 Mar 2009 22:48 Odpowiedzi: 4    Wyświetleń: 1782
  • Atmega 328P - Timer 0 zbyt mała częstotliwość do multipleksowania

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

    Mikrokontrolery AVR   27 Wrz 2014 14:42 Odpowiedzi: 5    Wyświetleń: 1035
  • Zegarek na LCD i atmega8 ,brak precyzji...i Timer'ów.

    Ciekawe, czytałem już te tematy. czy bez tego kwarca 32khz sie nie obejdzie? Jednak nie łapię tych timerów. Generalnie timer służy jako licznik przerwań :), wewnętrznych albo zewnętrznych na pinie TO, zewnętrzne przerwania widziane są z portu TO, a wewnętrzne przerwania generuje prescaler - wewnętrzny przerywacz "sterowany" kwarcem zewnętrznym lub...

    Mikrokontrolery   22 Wrz 2007 16:04 Odpowiedzi: 38    Wyświetleń: 5710
  • Dlaczego ATmega16 z preskalerem 1024 odmierza 4 sekundy zamiast 1?

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

    Mikrokontrolery AVR   22 Gru 2009 02:41 Odpowiedzi: 6    Wyświetleń: 2957
  • AtMega 324/644/1284 - reset mikrokontrolera po odblokowaniu przerwań

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

    Mikrokontrolery AVR   11 Lis 2015 17:52 Odpowiedzi: 6    Wyświetleń: 1278
  • Atmega88 – jak przerobić kod przerwań i timerów z Atmega16 do zliczania impulsów

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

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

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

    Mikrokontrolery   09 Maj 2011 14:25 Odpowiedzi: 8    Wyświetleń: 1812
  • Konfiguracja przerwań TIMER0 na ATmega16

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

    Mikrokontrolery AVR   21 Kwi 2024 20:25 Odpowiedzi: 9    Wyświetleń: 450
  • Bascom Atmega16 - Odliczanie czasu pomiędzy impulsami.

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

    Mikrokontrolery AVR   30 Sty 2015 05:05 Odpowiedzi: 29    Wyświetleń: 3846
  • Bascom Timer0 - brak 100us impulsów przy kwarcu 16MHz i prescalerze 64

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

    Mikrokontrolery   02 Sie 2013 16:17 Odpowiedzi: 7    Wyświetleń: 1488
  • [Atmega 8] [Atmega 8][GCC][VMLab] - Timer w symulatorze działa za szybko, jak to naprawić?

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

    Mikrokontrolery AVR   19 Sty 2014 09:10 Odpowiedzi: 14    Wyświetleń: 2013
  • Atmega168A-PU: Brak działania przerwań, mruganie diodą nieudane.

    Cześć, postanowiłem zmienić swój stary model Atmegę16A na nowszą wersję więc zakupiłem Atmegę168A-PU. Problem w tym, że za żadne skarby nie mogę zrobić na niej choćby prostego mrugania diodami za pomocą przerwań. Połączenia są zrobione dobrze, konfiguracja również. Ustawiony jest preskaler, uruchomiona globalnie obsługa przerwań, ustawiona jest odpowiednia...

    Mikrokontrolery Początkujący   03 Lip 2018 14:16 Odpowiedzi: 10    Wyświetleń: 609
  • 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ń: 2222
  • [Atmega16] BASCOM szybki obrotomierz motocyklowy na INT0

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

    Mikrokontrolery AVR   24 Lip 2011 11:23 Odpowiedzi: 95    Wyświetleń: 17496
  • Bascom, pomiar krótkich odcinków czasu na Atmega32 - jak to zrobić?

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

    Mikrokontrolery AVR   13 Gru 2008 15:01 Odpowiedzi: 5    Wyświetleń: 2132
  • atmega 8535 - Konfiguracja Fast PWM tryb 15 na timerze 16-bitowym

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

    Mikrokontrolery AVR   06 Lis 2013 14:25 Odpowiedzi: 1    Wyświetleń: 861
  • [Atmega169p] [Atmega169p][C] Wysoki pobór prądu w trybie uśpienia z LCD i Watchdogiem

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

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

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

    Mikrokontrolery AVR   04 Gru 2014 18:39 Odpowiedzi: 13    Wyświetleń: 1062
  • ATmega8535: Przerwanie Timer0 nie aktualizuje wyświetlacza w Bascom 1.11.7.9

    Witajcie. Robię malutkie projekty korzystając z Bascoma. Do tej pory wyłącznie na 2313 i jakoś sobie radziłem. W nowym projekcie postanowiłem zastosować Atmega8535 i od razu natrafiłem na problem. Mianowicie po włączeniu przerwań od Timer0 nic nie działa jak powinno. Pomimo tego że procedura obsługi wyświetlacza jest wołana z obsługi przerwania na wyświetlaczu...

    Mikrokontrolery   15 Lis 2005 17:37 Odpowiedzi: 3    Wyświetleń: 1416
  • Jak przenieść kod RC5 z ATmega16 na ATmega8L z użyciem Timer1?

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

    Mikrokontrolery AVR   04 Mar 2010 20:52 Odpowiedzi: 17    Wyświetleń: 1638
  • [atmega8] Atmega8 - zegar działa zbyt wolno, problem z kwarcem 8MHz i prescalerem

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

    Mikrokontrolery AVR   30 Lip 2009 16:07 Odpowiedzi: 5    Wyświetleń: 2873
  • [ATMEGA32/AT90CAN32][C/ASM] Regulacja fazowa obciążenia

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

    Mikrokontrolery AVR   30 Kwi 2010 19:52 Odpowiedzi: 4    Wyświetleń: 2637
  • [AVR][C] ATMega8 - Sterowanie buzzerem za pomocą PWM

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

    Mikrokontrolery   06 Maj 2013 23:29 Odpowiedzi: 23    Wyświetleń: 17600
  • [atmega32][c]Nadpisywanie się obszrów pamięci - tylko dla hardkorów.

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

    Mikrokontrolery AVR   17 Sie 2017 15:45 Odpowiedzi: 26    Wyświetleń: 2364
  • Programowanie ATMega128 w BASCOM AVR lub ASM przez ElektrodaBot

    (...) żdy zasilany z osobnego źródła i odseparowany transoptorami PC817. Ze względu na ich szybkość oraz niską wartość prądów je sterujących 1mA zegar musi być obniżony do 10KHz ma. Chcę zrezygnować z polecenia: waitus 100 w zamian zrealizować to w obsłudze timer0 a w główną pętle przeznaczyć na inne cele. Rozumiem, że chcesz optymalizować swoje oprogramowanie...

    Projektowanie i Tworzenie Po godzinach   20 Mar 2024 14:16 Odpowiedzi: 18    Wyświetleń: 786
  • [AVR] Nieaktywny Auto Trigger ADC na ATmega168 przy użyciu Timer0 w trybie CTC

    Witajcie, Problem powinien być trywialny a nie jest. Dotychczas stosowałem auto trigger ADC na ATtiny13 i działało to przewidywalnie według datasheeta, ale kod przeniosłem na ATmege168 i działać przestało, mimo że wszystko ustawione według dokumentacji. Po krótce: - uruchamiam timer0 w trybie CTC by zdarzenie Compare Match A zachodziło co 250us (4kHz),...

    Mikrokontrolery AVR   16 Gru 2020 20:52 Odpowiedzi: 19    Wyświetleń: 501
  • Jak ustawić timer0 na 15ms w ATmega128 na podstawie kodu z ATmega16?

    Hmm on niby jest na atmega16, a ja chcę to przerobić na atmega128...w ogole zauwazylem ze u mnie wyswietlanie na LCD jest uzaleznione od...opoznien czasowych. np tu tak jest...albo załóżmy że przed wyswietleniem jakiegoś napisu (całej procedury wyswietlania itd) dam opoznienie np 5ms to juz nie wyswietli, a jak w ogole nie dam albo dam jakieś 44us to...

    Mikrokontrolery   19 Sie 2006 12:48 Odpowiedzi: 4    Wyświetleń: 1722
  • ATMega16 PWM: Jak ustawić impuls 20 ms z wypełnieniem 1-2 ms?

    ; ========================================... sterowanie PWM_1 ========================================... ; OC1A pracuje jako PWM (z korekcja fazy 8bit z częstotliwością =f/(2*pre*ICR1L) ; ustawiamy OC1 w tryb PWM z korekcja fazy ldi R16, 255 out ICR1L, R16 ; wpisujemy max wartosc zliczana timera T1 ldi R16, 128 ; wpisujemy wypelnienie dla PWM1A...

    Mikrokontrolery   18 Sie 2007 14:00 Odpowiedzi: 5    Wyświetleń: 6494
  • Atmega16L Timer0 i Watchdog - wpływ soft UART na reset po 950ms

    Witam Mam program który używa USART, ponieważ potrzebowałem jeszcze jednego portu UART, dołożyłem softwerowego UARTA i tu zaczeły się problemy z watchdogiem. Ustawienia watchdoga sa takie że robi restert jesli nie bedzie jego zerowania po około 2s, dopóki nie dodałem softwerowego uarta wszytsko było ok, ale po jego dodaniu reset procka nastepuje już...

    Mikrokontrolery AVR   18 Cze 2010 17:01 Odpowiedzi: 3    Wyświetleń: 888
  • [ATmega1280][C/Arduino] Liczenie czasu pomiędzy sygnałami

    Udało mi się jakoś uruchomić ten timer. nie mogę ustawić na timerze 5 prescaler'a większego niż 64, gdy ustawie większy licznik nie startuje. ale myślę że będę w stanie to przeboleć. Teraz mam nowe pytanie jeżeli timer 5 to 16- bitowy licznik chcąc odczytać jego wartość ICR5 piszę: [syntax=cpp] volatile uint16_t sygnal; sygnal=ICR5;[/syntax] Tak jak...

    Arduino   12 Wrz 2011 10:51 Odpowiedzi: 29    Wyświetleń: 8285
  • Atmega644PA - Obsługa przerwania, multipleksowanie ADC

    Powiem tak, zdążyłam posiedzieć trochę nad Twoją procedurą Piotruś i jakoś pokombinować żeby zrobić przerwanie od timera, tylko sie pogubiłam i jeszcze troche musze posiedzieć zanim to mi ruszy. Piotruś nie bardzo rozumiem pewnych rzeczy, mianowicie: ChannelMUX Czyli będzie to wyglądało przy deklaracji: ChannelMUX if(ConversionResults tu się dokonuje...

    Mikrokontrolery   10 Sty 2016 16:07 Odpowiedzi: 53    Wyświetleń: 2865
  • ATMega8 - maksymalna częstotliwość pomiaru bez preskalerów, kod w Bascom

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

    Mikrokontrolery   26 Sty 2006 22:05 Odpowiedzi: 3    Wyświetleń: 2565
  • Problem - Przerwanie TIMER0 zliczanie przez T0 na ArduinoMEGA2560.

    Witam. Trochę inny procek ATmega644 [syntax=c] TCCR1B |= (1 << WGM12); // Mode 4, CTC on OCR1A TIMSK1 |= (1 << OCIE1A); //Set interrupt on compare match TCCR1B |= (1 << CS12) | (1 << CS10); // set prescaler to 1024 and start the timer| (1 << CS11);// OCR1A = 976*8; //wartość do której zlicza licznik [/syntax]

    Arduino   03 Kwi 2018 19:20 Odpowiedzi: 2    Wyświetleń: 609
  • ATMEGA32 – preskaler TIMER0 i TIMER1, który rejestr decyduje o ustawieniu?

    Owszem, preskaler jest wspólny dla timerów T0 i T1, ale stopień podziału można ustawić niezależnie dla każdego z timerów. Ponieważ preskaler działa cały czas, niezależnie od wyboru stopni podziału dla timerów, to nie można określić ile cykli zegara systemowego upłynie od momentu włączenia timera z podziałem preskalera większym od 1 do momentu pierwszego...

    Mikrokontrolery   25 Sie 2006 21:40 Odpowiedzi: 1    Wyświetleń: 1682
  • 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ń: 585
  • [ATmega16] ATmega16: PWM nie działa z silnikami mimo zmiany portów w kodzie C

    Witam próbuję wysterować silniki przez PWM, przeczytałem poradnik na mikrokontrolery.blogspot.com i z kodu zmieniłem porty, lecz dalej nic się nie dzieje ze silnikami... http://obrazki.elektroda.pl/9186829100_1... http://obrazki.elektroda.pl/4064646700_1... Wie ktoś jaka może być przyczyna lub co zmienić? Z góry dzięki.

    Mikrokontrolery   02 Mar 2013 00:10 Odpowiedzi: 8    Wyświetleń: 3666
  • [ATMega8515][C] Regulowany generator impulsów 0-12hz

    Udało mi się skonfigurować tak jak chciałem, Więc zostawiam kod dla innych: void Init_Timer(){ count=1;//Reset ounter TCNT0 = 0;// Reset timer TCCR0 |= (1<<CS02) | (1<<CS00) | (1<<WGM01);// Set prescaler 1024, Set CTC Mode TIMSK |= (1<<OCIE0);// Enable Compare interrupt OCR0=100; //Set...

    Mikrokontrolery AVR   13 Lis 2009 15:04 Odpowiedzi: 4    Wyświetleń: 1853
  • AtMega32: Przerwanie Timera1 co 1s i wyświetlanie tekstu w CodeVision

    Witam Niestety mam 2 problemy: 1. Rezonator 4Mhz, AtMega32. Chodzi o obsługe przerwania Timera1. Chcialbym aby przerwanie bylo generowane co 1s. Niestety dla ustawień: TCCR1A=0x00; TCCR1B=0x04; // Prescaler 256 TCNT1H=0xC2; // Wartosc poczatkowa TCNT1L=0xF6; nie działa poprawnie, odlicza zbyt szybko. 2. CodeVision . Chciałbym wyświetlić tekst + liczbę...

    Mikrokontrolery   25 Kwi 2008 23:16 Odpowiedzi: 10    Wyświetleń: 2249
  • [Atmega8, RC5, Int1] - czy program powinien działać?

    Nie możesz tylko używać Timera2 do innych celów, bo właśnie jest on używany przez RC5 Funkcja GETRC5 domyślnie wykorzystuje Timer0 a nie Timer2. Oczywiście można to zmienić w konfiguracji, jednak autor tego nie czyni. Zatem pozostają mi dwie opcje, albo przestać używać timera0 do odliczania 1s odcinków czasu i zaprzęgnąć do tego timer2 (co może nie...

    Mikrokontrolery AVR   05 Gru 2010 21:29 Odpowiedzi: 4    Wyświetleń: 1933
  • Atmega16A - Sterowanie servem TowerPro SG-90 micro, ustawienia timerów

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

    Mikrokontrolery   20 Lip 2015 15:48 Odpowiedzi: 19    Wyświetleń: 924
  • [AVR ATmega328] [AVR ATmega328][C] - Timer1 nie wywołuje przerwania, kod nie działa

    Witam, potrzebuje pomocy z timerem1 w atmega328p. mam taki kod: [syntax=c] // Ustawienie timera 1 TIMSK1 |= (1<<TOIE1); // umozliwenie przerwan od timera1 TCCR1B |= (1<<CS00) | (1<<CS02); // prescaler na 1024 TCNT1 = 60000; // wartość rejestru w którym odbywa się liczenie na 60000 sei(); // przerwanie od timera1 ISR(TIMER1_OVF_vect)...

    Mikrokontrolery Początkujący   19 Gru 2014 19:11 Odpowiedzi: 5    Wyświetleń: 852