atmega8 przerwania timer1

Znaleziono około 583 wyników dla: atmega8 przerwania timer1
  • Atmega8: Konflikt przerwań Timer1 i Timer0 przy sterowaniu PWM i diodą

    A co jeśli do pierwotnego kodu dodasz: [syntax=c]ISR(TIMER1_COMPB_vect) { }[/syntax]

    Mikrokontrolery Początkujący   07 Cze 2012 11:59 Odpowiedzi: 3    Wyświetleń: 1586
  • [ATmega8][C] - TIMER1 kontrolowany przerwaniami INT0:1

    twój program doskonale miga diodą zgodnie z zamierzeniem ale musisz poczekać nie sekundę a kilka minut bo z powodu niezerowania licznika count kolejne mrugnięcie zachodzi dopiero po przekręceniu inta :) (btw. w tej sytuacji volatile jest niepotrzebne)

    Mikrokontrolery AVR   04 Lis 2012 12:30 Odpowiedzi: 3    Wyświetleń: 1629
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • atmega8 - przerwania od timer0 i timer1 nie działają razem

    No jest kretyński :) TIMSK = _BV(TOIE1); // wlacz obsluge przerwan T/C1 TIMSK = _BV(TOIE0); //jw dla T/C2 TIMSK = _BV(TOIE1) ; // wlacz obsluge przerwan T/C1 TIMSK |= _BV(TOIE0); //jw dla T/C2 albo TIMSK = _BV(TOIE1) | _BV(TOIE0) ; ;)

    Mikrokontrolery AVR   28 Lis 2009 22:30 Odpowiedzi: 2    Wyświetleń: 2606
  • Jak skonfigurować wektory przerwań Timer1 PWM w Atmega8?

    Do obsługi Timera1 są 4 wektory i nie wiem, które aktywować, co wpisać w procedurze odwołującej się, czy w ogóle jest taka potrzebna. Czy wystarczy tylko uruchomić te przerwanie i sygnał będzie generowany automatycznie ? Tabelka jest prosta: TIMER1 CAPT Timer/Counter1 Capture Event Zdarzenie z przechwycenia licznika (zwykle przez zmianę na pinie...

    Mikrokontrolery AVR   20 Gru 2011 23:04 Odpowiedzi: 19    Wyświetleń: 2996
  • ATmega8 Timer0/Timer1 – jak ustawić prescaler, by uzyskać 1s przy 1MHz?

    Jeśli do tego włączysz przerwania, ustawisz licznik T1 w tryb porównywania z kasowaniem, to dokładnie co 1 sekundę wywoła się przerwanie przepełnienia licznika T1. Dalej to już tylko odpowiednia obsługa tego przerwania.

    Mikrokontrolery   14 Mar 2006 21:13 Odpowiedzi: 27    Wyświetleń: 2855
  • REKLAMA
  • [Atmega8] Timer1 CTC: Jak działają przerwania dla OCR1A i OCR1B?

    Przecież pisze jak na tacy: 1. Licznik nie doliczy do 5000 w trybie CTC - zatem logicznie myśląc trzeba ten tryb wyłączyć . 2. Jeśli licznik ma pracować w trybie CTC to wartość z OCR1B musi być mniejsza niż OCR1A.

    Mikrokontrolery AVR   08 Sie 2009 14:50 Odpowiedzi: 5    Wyświetleń: 2009
  • [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
  • [Atmega8] Atmega8 Bascom - Nadpisywanie zmiennej w przerwaniu int0/int1, reset timer1

    Sprawdź w symulacji co się dzieje z rejestrem TCCR1B (a szczególnie z bitami CS10 - 12) po komendzie "timer1 = 0".

    Mikrokontrolery AVR   09 Maj 2009 18:31 Odpowiedzi: 14    Wyświetleń: 2791
  • ATmega8 - Timer w trybie CTC i wykorzystanie przerwań.

    A nie powinieneś czasem użyć bitu OCF1 i przerwania "0x006 TIMER1 COMPA Timer/Counter1 Compare Match A"?

    Mikrokontrolery AVR   12 Sty 2014 10:47 Odpowiedzi: 9    Wyświetleń: 6870
  • REKLAMA
  • [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
  • Jak wyświetlić wynik przerwań timer1 na LED 7-segmentowym z Atmega8?

    Ja się tam na BASCOMie nie znam, ale ten program to wyglada mi na generator liczb pseudolosowych ;) Weź się skup i zastanów co chcesz uzyskać. Kompletnie nie rozumiem, co Ty robisz z tym T. Co to ma reprezentować? Podpowiem, że jeżeli chcesz wyświetlić liczbę X z zakresu 0..99 na swoim wyświetlaczu, to byłoby to chyba coś takiego (zakładając, że wyświetlacz...

    Mikrokontrolery AVR   09 Paź 2008 08:21 Odpowiedzi: 12    Wyświetleń: 3886
  • REKLAMA
  • Zmiana kodu z Timer0 na Timer1 w ATmega8 - jak to zrobić?

    Moja uwzględnia czas, który upłynął od przerwania do załadowania timera. Może to mieć wpływ gdy wystąpi w tym samym czasie obsługa innego przerwania.

    Mikrokontrolery   20 Wrz 2008 16:55 Odpowiedzi: 15    Wyświetleń: 6221
  • [Atmega8] - Timer1 CTC, dioda miga co 10s zamiast 5s, 8MHz, preskaler 256

    Witaj. 1. WGM12 nie jest w TCCR1A. 2. Dlaczego nie stosujesz funkcji przerwania? EDIT: Oj, zostałem wyprzedzony przez kolegę wyżej :)

    Mikrokontrolery AVR   24 Lis 2013 15:40 Odpowiedzi: 3    Wyświetleń: 1170
  • [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ń: 1702
  • Atmega8 - Timer1 nie odlicza czasu przy kwarcu 16MHz i preskalerze 64

    Tak się nie robi. Myślę że ten timer się parę razy przepełni zanim obsłuży LCD. Ustaw timer tak aby wywoływał przerwanie przy danej wartości i w tym przerwaniu dodawaj jakąś zmienną o 1 i czyść licznik.

    Mikrokontrolery AVR   08 Gru 2014 22:35 Odpowiedzi: 7    Wyświetleń: 1065
  • Konfiguracja Timer1 w Atmega8 do przerwań co 1 sekundę - nie działa

    Aż musiałem wyciągnąć płytkę - co prawda c 168PB - przerwania chodzą aż miło :). Przy okazji jak chcesz się męczyć AVR-ami to proponuje kupic płytke z debuggerem typu xpained mini - będzie łatwiej [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> volatile uint16_t cnt; int main(void) { TCCR1B |= (1 << WGM12); TIMSK1 |= (1 <<...

    Mikrokontrolery AVR   17 Wrz 2017 10:15 Odpowiedzi: 11    Wyświetleń: 2385
  • Atmega8 - Przerwania,tryb CTC nie działa tak jak trzeba

    Co robię źle Noty katalogowe czytasz po łebkach, a zwłaszcza fragmenty dotyczące rejestrów. - W TCCR2 nie ma bitów WGM12/CS02/CS00. - W Timer1 oba rejestry TCCR1A/TCCR1B należy konfigurować no i w CTC tylko OCR1A ma znaczenie.

    Mikrokontrolery AVR   28 Sie 2012 09:45 Odpowiedzi: 8    Wyświetleń: 2250
  • Jak skonfigurować Timer1 na ATmega8 dla IRDA z przerwaniem co 32us?

    Jeżeli miałbym robić układ od początku to zastosowałbym bardziej oszczędny sposób. Jednak zmuszony jestem do modyfikacji programowej tego co jest zrobione. Proszę jedynie o konfiguracje Timera1 z przerwaniem co 32us.

    Mikrokontrolery Początkujący   15 Lut 2014 14:12 Odpowiedzi: 3    Wyświetleń: 1068
  • ATmega8 - [Bascom] Timer1 i generacja 2 różnych częstotliwości

    Potem calosc zestroilbym dodajac nopy i ewentualnie korygujac minimalnie timer Jak czas odmierza timer, to nop nie nadadzą się jako coś do korekcji częstotliwości.[/quote] Nie chodzi mi o korygowanie chwili wystapienia przerwania,lecz o dokladny moment zmiany stanu portu w procedurze obslugi przerwania.

    Mikrokontrolery AVR   05 Sie 2012 14:50 Odpowiedzi: 26    Wyświetleń: 3232
  • [ATMEGA8] [ATMEGA8][avr gcc] Timer1 - Zmiana częstotliwości przez SPI nie działa poprawnie

    spr dodać 'volatile' przy deklaracji zmiennej, możliwe że kompilator optymalizując wpisuje na stałe wartość zadeklarowaną na początku, w przerwaniu jej wartość się nie zmienia, dla kompilatora jest ona w tym miejscu jako stała ...

    Mikrokontrolery AVR   06 Wrz 2008 23:19 Odpowiedzi: 2    Wyświetleń: 1976
  • [Atmega8] Jak zmierzyć czas stanu wejścia z dokładnością 100ms na Atmega8 w C?

    Jak już Kolega nabierze wprawy z przerwaniami i timerami to można osiągnąć zamierzony cel w następujący sposób: Dajemy sygnał (którego długość trwania chcemy mierzyć) na wejście INT0 oraz INT1 jednocześnie, przy czym pierwsze ustawiamy na zbocze rosnące a drugie na spadające, w przerwaniu INT0 startujemy timer1 a w przerwaniu INT1 zatrzymujemy go,...

    Mikrokontrolery AVR   06 Sie 2011 18:22 Odpowiedzi: 53    Wyświetleń: 7537
  • GCC, ATMega8 (8MHz), Timer1 i problem z odliczanie 1s

    Nie wiem czy chcesz czytać 600 linii kodu ;) Mogę tylko powiedzieć że sprawdziłem cały kod i nigdzie więcej nic z przerwaniami nie robie

    Mikrokontrolery   07 Cze 2007 21:06 Odpowiedzi: 12    Wyświetleń: 3334
  • Atmega8 - Timer nie generuje przerwań, zegar nie działa poprawnie

    Jak mnie pamięć nie myli to powinno być "on timer1 czas" a nie on timer1 goto czas . Tak przynajmniej było w poprzednich wersjach tego kompilatora sprawdź w helpie poza tym dlaczego po zezwoleniu na przerwania dajesz komendę stop timer1? Zatrzymany zegar przerwania nie wyzwoli ...

    Mikrokontrolery   21 Sty 2007 14:18 Odpowiedzi: 4    Wyświetleń: 1050
  • Atmega8: Jak wysłać impulsy Timer1 na pin przy warunku portd.3=0?

    Portd.3 wiem że to jest przerwanie int1 , timer według pomocy bascoma startuje po wpisaniu preskaler..x a na oscyloscopie cisza. Teoretycznie podaję 0 na portd.3 wtedy następuje przerwanie ale brakuje chyba odblokowań. Mnie tu brakuje Start Timer1 po zadeklarowaniu jego preskalera. Poza tym, obsługę przerwań trzeba umieścić poza pętlą główną. Oraz...

    Mikrokontrolery Początkujący   26 Cze 2015 19:20 Odpowiedzi: 31    Wyświetleń: 1773
  • Atmega8 - Timer1 częstotliwość obliczona a realna

    Masz błąd - w przerwaniu jeśli już powinno być Load Timer1

    Mikrokontrolery AVR   13 Lip 2013 12:21 Odpowiedzi: 13    Wyświetleń: 1425
  • 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ń: 1730
  • ATmega8 – pomiar częstotliwości do 3,2MHz za pomocą Timer1 i Timer2, brak przerwań

    TCCR1B &=~(_BV(CS12)) | ~(_BV(CS11)) Ww. zapis oznacza tyle co TCCR1B &= ~(1 << 2) | ~(1 << 1), to znowuż jest równoważne TCCR1B &= ~4 | ~2. W zapisie zerojedynkowym będzie TCCR1B &= 1111 1011 | 1111 1101, przy czym po wykonaniu operacji OR na tych ślicznych liczbach postanie z nich 1111 1111...

    Mikrokontrolery AVR   20 Lut 2015 13:14 Odpowiedzi: 15    Wyświetleń: 2274
  • [Atmega8] Jak zmienić ustawienie portu B w Atmega8 co 5 sekund w Bascom?

    Ja wolę przerwania: Dim Sekunda as byte Config Timer1 = Timer , Prescale = 256 On Timer1 Odmierz_1s Enable Interrupts Enable Timer1 do loop end Odmierz_1s: Counter1 = Counter1 + 34286 Incr Sekunda Return Podałem ci "szkielet" programu do odmierzania 1 sekundy za pomocą timera1. Pamiętaj że procek musi go posiadać i musi być taktowany przez oscylator...

    Mikrokontrolery AVR   24 Cze 2008 15:13 Odpowiedzi: 13    Wyświetleń: 1596
  • Bascom AVR: Czy Timer1 w ATmega8 dokładnie odmierza 250ms przy 4MHz?

    Program działa i nawet licznik się zatrzymuje tylko jaką mam pewność że jest to 250ms? chodzi mi o to żeby uzyskać jak największą dokładność. Dzięki za ten przykład, spróbuję... Nie wiem dokładnie , do czego Ci to potrzebne ale przykład z przerwaniem , który podałem wcześniej działa z dokładnością do ~2 cykli zegara(500)ns.Czy to niezbyt dokładnie...

    Mikrokontrolery   22 Lis 2005 14:56 Odpowiedzi: 7    Wyświetleń: 1167
  • [C] ATMega8 - Timery i przerwania nie działają w kodzie C, WinAVR 20100110

    Witaj, Pobieżnie patrząc na program, wygląda prawidłowo. Może podłącz do jakiegoś pinu LED i zmień: [syntax=c]ISR(TIMER1_COMPA_vect) { PORTTESTOWY ^= (1<<pin_testowy); //zmień stan LED na przeciwny }[/syntax] i sprawdź czy co 1sek się zmienia. Oczywiście ustaw pin jako wyjście.

    Mikrokontrolery AVR   20 Maj 2011 18:47 Odpowiedzi: 14    Wyświetleń: 2163
  • Konfiguracja timerów w Atmega8 - timer1 nieprawidłowo odlicza czas

    Wystarczyło dodać polecenie, aby timery ładowane były odpowiednią wartością po wstąpieniu przerwania. Program działa tak jak chciałem.

    Mikrokontrolery AVR   05 Paź 2011 14:08 Odpowiedzi: 7    Wyświetleń: 3089
  • [ATmega8][BASCOM] Przerwania z timera a odczyt z UARTa

    Config Serialin = Buffered , Size = 80 Enable Interrupts Dim _Flaga_1s as Bit _Flaga_1s = 0 Config Timer1 = Timer , Prescale = 64 Enable Timer1 : On Timer1 Co1s Cls Do If Ischarwaiting() = 1 Then Znak = Inkey() Print Chr(znak) ; End If if _Flaga_1s = 1 then ' ------> a tutaj wyświetlaj już sobie spokojnie co chcesz co...

    Mikrokontrolery AVR   21 Sie 2008 10:59 Odpowiedzi: 4    Wyświetleń: 3124
  • Atmega8, Timer 1, kłopot z przerwaniami w trybie CTC

    Włączasz przerwanie od przepełnienia timer1, nie mając procedury jego obsługi. Włączasz także przerwanie od porównania z OCR1B i także nie masz obsługi tego przerwania. Takie podejście = kłopoty.

    Początkujący Elektronicy   13 Mar 2013 21:40 Odpowiedzi: 4    Wyświetleń: 1197
  • [Bascom] Jak dodać opóźnienie i obsługę przycisków w AT2313?

    Przede wszystkim musisz zacząć kolego od poznania timerów. Do odmierzenia czasu używamy timerów ponieważ zlicza nam czas w tle działania procesora. Używając polecenia wait zatrzymujesz kompletnie uC na ten czas. Konfiguracja dla AtMega8 8Mhz u mnie wygląda tak: Config Timer1 = Timer , Prescale = 256 ''''konfiguracja timera On Timer1 1s ''''przy przerwaniu...

    Mikrokontrolery AVR   04 Kwi 2011 06:55 Odpowiedzi: 32    Wyświetleń: 3501
  • [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ń: 1569
  • ATmega8: Dioda na porcie B nie działa po naciśnięciu przycisku na porcie D

    Nie sprawdzałem wcześniej bo uwierzyłem ci na słowo, że sprawdziłeś rejestry ATMega8. W rejestrze TIMSK przerwanie overflow dla timera0 to TOIE0 ale jest to bit 0 a nie 1. W związku z tym inicjacja powinna wyglądać tak: TIMSK=0x01 lub jak wspomniałem wcześniej zdefiniować bit TOIE0: #define TOIE0 0 wtedy zadziała TIMSK=(1<<TOIE0) Bardzo polecam...

    Mikrokontrolery   02 Lis 2007 00:57 Odpowiedzi: 12    Wyświetleń: 2159
  • [atmega8] [atmega8][BASCOM] Timer1, błędne odczyty powyżej 63Hz w radiometrze SOSNA?

    To nie Bascom jest przyczyną tylko źle napisany program ;). 1. odczyt timera1 16bit odbywa się po przez rejestr pomocniczy TEMP, ten rejestr jest też używany przez inne procedury i funkcje i jeśli jest użyty to właśnie niszczona jest wartość High timer1 bo ona tam jest wpisana gdy używasz komendy. wpisując tak timer1 do tablicy możesz gubić High timer1....

    Mikrokontrolery AVR   16 Lut 2012 11:34 Odpowiedzi: 2    Wyświetleń: 1958
  • Arduino mega 2560 - wykrywanie przejścia fazy przez zero

    Tak jak wcześniej pisałem, najłatwiej podpiąć wyjście detektora do wejścia INT0 lub INT1, w obsłudze przerwania wyłączamy pin odpowiedzialny za triak, ładujemy do TIMER1 ładujemy obliczoną wartość opóźnienia załączenia triaka. W obsłudze przerwania z TIMER1, włączamy pin wyjściowy. Przykład: Atmega8, taktowana 8 MHz, przerwanie INT1 skonfigurowane jako...

    Arduino   10 Sty 2019 01:14 Odpowiedzi: 18    Wyświetleń: 7431
  • Zegar wtórny Atmega8 z osobną cewką na sekundy i osobną na minuty

    [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize = 32 'timer '16MHz 16000000(16MHz)/256(Prescaler)=62500 i odejmij jeden Config Timer1 = Timer , Prescale = 256 , Compare_a = Disconnect , Compare_b = Disconnect , Clear Timer = 1 Enable Compare1a : On Compare1a Timer1_isr : Compare1a = 62499 '1s (at)16MHz...

    Mikrokontrolery   15 Maj 2015 21:30 Odpowiedzi: 33    Wyświetleń: 3009
  • [ATmega8][C]Obsługa przerwania tryb CAPTURE vs. EXTERNAL INTERRUPT

    Nie pytałem by Ci dopiec, tylko chciałem stwierdzić na ile trzeba Ci tłumaczyć :) Nazwę pinu używaj taką jaką jego funkcje wykorzystujesz, więc nie pisz PBB0(ICP1) tylko ICP1. Wynika to z tego iż w innej obudowie lub innym procesorze może być na innym pinie niż PB0, a warto pisać tak aby było bardziej uniwersalnie. Napisz jak rozumiesz działanie tego...

    Mikrokontrolery AVR   13 Maj 2011 12:55 Odpowiedzi: 15    Wyświetleń: 2938
  • [bascom][atmega8]zegar widmowy- podział obszaru wyświetlania

    A nie prościej liczyć to za pomocą Timera1 czyli na sekundę ma być np. wyświetlonych 50 obrazów i każdy z nich zawiera np. 10 części. Daje nam to 500 przerwań na sekundę. W przerwaniu Timer1 ustawiasz za każdym razem początkową wartość timera i ustawiasz jakąś flagę. Możesz również dodać zwiększanie licznika od tego co ma być wyświetlane. W programie...

    Mikrokontrolery AVR   02 Gru 2009 16:03 Odpowiedzi: 7    Wyświetleń: 2437
  • [atmega8] [bascom] czas przerwania na int0 i int1 - gdzie popełniłem bład

    wynik końcowy faktycznie za każdym razem jest inny. (at) emarcus możesz podpowiedzieć jak powinien wyglądać serwis int1? Popatrzyłem troche bliżej na twoj kod. Z jakiego powodu potrzebujesz otrzymać wynik ("Czas_2") z dokładnocią aż do 9 miejsc decimal? Jeżeli jeden z czynników iloczynu (rozdzielczość timera) jest liczbą wymierną z dokładnościa do...

    Mikrokontrolery AVR   07 Lip 2012 20:41 Odpowiedzi: 6    Wyświetleń: 2554
  • [ATmega8] [ATmega8][BASCOM] Jak zbudować sekundnik z przerwaniami na LCD 16x2?

    Takie skomplikowane rzeczy dla jednej sekundy... Takie coś odmierza sekundę dla kwarcu 11059200 , dla innego musisz użyć gdzieś dostępnego kalkulatora tajmerów: $crystal = 11059200 Config Timer1 = Timer , Prescale = 256 Enable Interrupts Enable Timer1 On Timer1 Timer1_int Start Timer1 Dim sekunda as byte ' bo mniej niż 255, 60sekund Do : Loop '...

    Mikrokontrolery AVR   28 Wrz 2008 16:08 Odpowiedzi: 20    Wyświetleń: 4550
  • Jak skonfigurować zegarek RTC i termometr na LCD w Bascom na Atmega8?

    Po pierwsze jakie czasy chcesz obliczać i jakie przerwania po co ??? To jest bascom nie assembler, deklarujesz na wstępie programu prędkość kwarcu a kompilator troszczy się o resztę tj. dajesz deklarację $regfile = "m8def.dat" $crystal = 12000000 Po drugie, procedura obsługi wyświetlaczy LCD (mowa tu o alfanumerycznych HD44780) jest w BASCOM zaimplementowana...

    Mikrokontrolery   19 Maj 2009 13:45 Odpowiedzi: 33    Wyświetleń: 8662
  • [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
  • 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ń: 1980
  • Dokładność wbudowanego RTC w Atmega8 do zliczania dni i podtrzymanie zasilania

    Jak jest z dokładnością zegarka RTC w Atmega8? Słyszałem plotki, że nie chodzi to zbyt idealnie. Potrzebuję zrobić zegar do zliczania tylko dni i zastanawiam się czy jest sens stosować zewnętrzny układ RTC. Układ musi mieć podtrzymanie zegara z baterii/kondensatora w przypadku zaniku zasilania. Śmiało możesz użyć np. Timer1 w trybie CTC jako generatora...

    Mikrokontrolery AVR   21 Cze 2011 20:00 Odpowiedzi: 22    Wyświetleń: 7374
  • ATmega8 PWM na Timer1: kod działa w symulatorze, brak sygnału na OC1A po wgraniu

    ldi r16,0xA0 out OCR1AL,r16 ldi r16,0xFF out DDRB,r16 main: rjmp main problem w tym że zmieniasz te stany tylko raz, potem w pętli nie robisz nic... powinno moim zdaneim być main: ldi r16,0xA0 out OCR1AL,r16 ldi r16,0xFF out DDRB,r16 rjmp main edit: ups, nie doczytałem że chcesz wykorzystywać timer... więc nie wiem czy moje rozwiązanie problemu...

    Mikrokontrolery   30 Maj 2006 13:54 Odpowiedzi: 10    Wyświetleń: 1809
  • Atmega8: Jak działa przerwanie z T0/T1 do zmiany stanu LED?

    Wszystko ladnie tlumaczycie tylko ze nie posilkowaliscie sie nota katalogowa i ten program nie bedzie dzialal. ldi r16,0b10000000 out TIMSK,r16 Jesli spojrzec do noty to siodmy bit w TIMSK to OCIE2, czyli nic nie ma wspolnego z T1 czy T0. Mowilem ze ten program jest ZUPELNIE nie czytelny. Na samym pczatku juz kicha jest: .org 0x0005 to wektor od Timer1...

    Mikrokontrolery   25 Wrz 2005 13:31 Odpowiedzi: 8    Wyświetleń: 2942
  • Atmega8 - jak uzyskać dźwięk z AVR? Moj pierwszy uklad

    1. Ten kod da się zoptymalizować do Fast PWM bez obsługi przerwania od Timer1 CTC. 2. Te wartości grX to co to jest ? Częstotliwość razy 10 ?

    Mikrokontrolery AVR   19 Sty 2011 13:31 Odpowiedzi: 13    Wyświetleń: 3134
  • [ATMEGA8] ATMEGA8 licznik czasu: start/stop odliczania przyciskiem, obsługa timerów i przerwań

    nie słyszałem, ale już buszuję w datasheecie. Pamiętaj że po puszczeniu przycisku wynik musi być wyświetlany. Po wciśnięciu przycisku 2 następuje reset zmiennych. Może jest przerwanie wyzwalane zmianą stanu logicznego na którejś nóżce? Zmieniałoby CS12 na 0 tym samym wyłączając timer1 :)

    Mikrokontrolery AVR   18 Kwi 2011 09:29 Odpowiedzi: 34    Wyświetleń: 6564
  • atmega8a-pu + bootloader + przerwania - dziwne zachowanie timer1

    Zmieniasz wektory w rejestrze MCUCR, a odpowiednie bity są w rejestrze GICR. Więc table jest nie tam gdzie trzeba.

    Mikrokontrolery AVR   01 Mar 2012 23:52 Odpowiedzi: 5    Wyświetleń: 1541
  • Bascom Timer1 ATmega8 - Dioda miga zbyt szybko po załadowaniu wartości 1000

    Widzę, że coraz bardziej zbliżamy się do assemblera. W bascomie da się wyłączyć generowanie odkładania i pobierania ze stosu rejestrów w czasie ubsługi przerwania: On timer1 nazwa_suba NOSAVE Ale wtedy to asm w obsłudze przerwania obowiązkowy (bo kto odkryje, które rejestry zmienia Bascom). Ewentualnie można zdekompilować prog sprawdzić i potem dopisać.

    Mikrokontrolery   23 Lut 2006 19:48 Odpowiedzi: 21    Wyświetleń: 2976
  • [Bascom] Jak przerwać instrukcję Input w Bascom po odebraniu kodu RC5?

    To co piszesz jest słuszne i mądre, widzisz, jest tylko jeden problem - soft jest skomplikowany bardziej niż by się wydawało, atmega8 ma tylko 8kb flash a wszystkie przerwania Atmega8 są zajęte (w tym timer1 do zliczania pojedynczych sekund, int1 i timer2 wykorzystywany przez getrc5). Oczywiście zawsze można skonfigurować bufor wejściowy, np. gdy spodziewamy...

    Mikrokontrolery AVR   21 Gru 2010 20:27 Odpowiedzi: 15    Wyświetleń: 3036
  • ATMega8: Jak uzyskać 12-bitowy PWM dla 4096 kroków w ASM?

    Prog zumek-a jest O.K. i jest w przerwaniach tak jak wlasnie potrzebowalem. W jakich przerwaniach :?: No chyba że Ty , spłodziłeś jakieś przerwanie , bo ja od tego umywam ręce :D I jak zwykle mam kilka pytan :P .equ res=4096-1 ;rozdzielczość .equ pwm=127 ;wypełnienie .if pwm>res .error "stala pwm jest wieksza od rozdzielczosci" .endif...

    Mikrokontrolery   07 Lut 2007 15:01 Odpowiedzi: 54    Wyświetleń: 9383
  • BASCOM, atmega8: Jak rozpoznać sygnały serwomechanizmu za pomocą przerwań?

    Trzeba mierzyć czas impulsu i jeśli wynik = ileśtam to wtedy dzieje sie cośtam Może : $regfile = "twój uP" $crystal = twój crystal Config Timer1 = Counter , Edge = Rising Config Portc = Input Do If Portc.1 = 1 Then Start Timer1 If Portc.1 = 0 Then Stop Timer1 End If End If For Timer1 = 100 To 200 Reset Porta.1 Next For Timer1 = 300 To 600...

    Mikrokontrolery   17 Lut 2007 13:44 Odpowiedzi: 2    Wyświetleń: 2155
  • ATMega8: Częstościomierz pokazuje zero, problem z Timerem 1 i PB.1

    Niestety nie pomogło... :/ Te polecenie Start Timer1 to wstawiałem w miejsce gdzie są globalne zezwolenia oraz w miejscu przerwania od tego timer'a i nic...

    Mikrokontrolery   20 Maj 2005 11:03 Odpowiedzi: 15    Wyświetleń: 1706
  • 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
  • Atmega88: Brak wywołania przerwania Timer1 Overflow - co robię źle?

    brakuje instrukcji sei(); włącza ona globalną obsługę przerwań. Umieść ją zaraz przed pętlą while(true) Dodano po 5 a poprawnie jest TIMSK1 = _BV(TOIE1);

    Mikrokontrolery AVR   17 Maj 2011 12:13 Odpowiedzi: 2    Wyświetleń: 1791
  • [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ń: 1850
  • BASCOM ATMEGA8 - Multipleksowanie 4 wyświetlaczy, pytanie o przerwania.

    Ale przenieś choć część swoich Sub do przerwania Timer2, lub 1 i zobacz jaka jest różnica w działaniu programu. A różnica jest i to spora, program przyśpiesza znacznie, wczoraj przerobiłem cały program na timer1, skończyły się problemy z komendą wait. Więc jeżeli timer1 jest wolny to będę go bardzo chętnie używał.

    Mikrokontrolery AVR   15 Lis 2012 22:00 Odpowiedzi: 21    Wyświetleń: 3282
  • Atmega8, ds18b20, LCD - błędne odczyty temp. przy przerwaniach timer0

    witam. dziś także juz nerwa złapałem z tym timer0 i wierzyłem ze na elektrodzie będzie jakieś rozwiązanie, ale z tego co czytam nie tylko ja tak mam;/ .wracając do tematu: 1.próbowałeś zmienić port dla 1-wire? 2.jesli problemem jest już zamiana pinów to być może załączenie timer1 pomoże i na nim odliczanie sekundy,przykładowe uruchomienie: Config Timer1...

    Mikrokontrolery AVR   10 Mar 2009 09:47 Odpowiedzi: 9    Wyświetleń: 2444
  • ATmega8 – wybudzanie z trybu uśpienia przez pin inny niż INT0/INT1, jak to zrobić?

    w tym momencie wykorzystuje do multipleksowania timer1 czyli B (chyba), a mam wykorzystać pierwszy, czyli timer0 czyli A. W obsłudze tego przerwania nic ma nie być?

    Mikrokontrolery   15 Lis 2009 15:40 Odpowiedzi: 13    Wyświetleń: 3889
  • Atmega8-Bascom: Jak poprawnie skonfigurować układ opóźniający na zbocze?

    Wystarczy jedno wejście I NTx , które będzie wykrywało ten impuls. Ale jeśli to będzie impuls "z ręki" jakiś klawisz to bez sensu - ze względu na drgania styków a potrzebny minimalny czas np 1ms. Jeśli to będzie impuls z jakiegoś wyjścia cyfrowego to ok. Założenia: - wykorzystamy tylko jedno wejście INTx - wykorzystamy tylko jeden Timer sprzętowy Przygotować...

    Mikrokontrolery AVR   19 Lut 2010 13:51 Odpowiedzi: 24    Wyświetleń: 2378
  • Gasniecie LCD przy dużej czestotliwośći. atmega8

    Faktycznie Drzasiek pisząc kod bazował pewnie na poprzednim swoim przykładzie i nie usunął włączania przerwania Timer1. W jego przypadku to nic nie zmieniało - w Twoim i owszem :) Poprawię więc kod Drzaśka.

    Mikrokontrolery   25 Lut 2015 00:03 Odpowiedzi: 7    Wyświetleń: 864
  • ATmega8 [C] - Wyświetlanie wartości na wyświetlaczu 7-segmentowym

    Nie wiem w jakim celu wyłączasz timer na czas obsługi przycisku. Procedura obsługi przerwania powinna być jak najkrótsza. Niepotrzebnie wywołujesz za każdym razem funkcję setNum(). Warto byłoby ją wyrzucić do pętli głównej i wykonywać tylko w momencie zmiany prędkości. Utwórz sobie tablicę trzech elementów, w których przechowywał będziesz kolejne cyfry....

    Mikrokontrolery AVR   02 Maj 2014 11:26 Odpowiedzi: 8    Wyświetleń: 1950
  • Co potrafi ATMEGA8? Program, TIMER1 z preskalerm=1. Czas się nie zmienia.

    Można jeszcze inaczej, jeżeli zależy Ci na przerwaniach, to przy deklaracji, na końcu parametr NOSAVE On Timer1 Gen NOSAVE Durny BASCOM wrzuca na stos prawie wszystkie rejestry po wejściu do przerwania (w sumie 29 sztuk w AVR), a przed wyjściem z przerwania zdejmuje rejestry ze stosu. Stąd niesamowite opóźnienie. Oczywiście po zastosowania NOSAVE rejestrami...

    Mikrokontrolery   20 Mar 2005 23:20 Odpowiedzi: 6    Wyświetleń: 2429
  • [ATmega8][avr-gcc]ADC/Woltomierz na wyświetlaczach LED

    Generalnie kod nie wygląda tak źle. Jak na początkującego, to muszę nawet pochwalić! Formatowanie poziome i rozdzielenie różnych części programu białymi znakami na duży plus. Bardzo wiele osób ma z tym problem, mimo tego, że nowoczesne IDE dbają o to praktycznie same. Kilka uwag się znajdzie, ale myślę, że będzie to konstruktywna krytyka. Po pierwsze...

    Mikrokontrolery Początkujący   03 Kwi 2015 20:22 Odpowiedzi: 3    Wyświetleń: 3090
  • [Atmega8][winavr] problem z konfigiracją Timera1 PWM

    Witam chciałem skonfigurować timer1 w ten sposób że: 1.chodzi on cały czas odliczając 0-255 2.Przerwanie wywoływane jest po pierwsze po każdym przepełnieniu (czyli SIG_OVERFLOW1) 3.Przerwanie wywoływane jest w określonym czasie odliczania zapisanym w ICR1 (czyli TIMER1_CAPT_vect) Mój kod inicjujący przerwanie wygląda tak: TCCR1A = (1<<WGM10);...

    Mikrokontrolery AVR   18 Lut 2011 15:43 Odpowiedzi: 10    Wyświetleń: 2661
  • Timer1 w Atmega8A-PU nie zlicza - jak poprawnie skonfigurować?

    Tu masz kod który korzysta z przerwań i co 1 sekundę ustawią zmienną s1_flag na 1. Musisz pamiętać, aby ją w funkcji głównej zerować, bo tak cały czas będzie ona usttawiona na 1. Ten kod jest tylko poglądowy, ma ci tylko przybliżyć co i jak z przerwaniami. [syntax=c]int main(void){ volatile uint8_t s1_flag, /********** KONFIGURACJA TIMERA2 do wygenerowania...

    Mikrokontrolery AVR   14 Lip 2011 18:39 Odpowiedzi: 14    Wyświetleń: 1008
  • Bascom Atmega8: Jak ustawić Timer1 do pomiaru czasu między impulsami?

    Zaczyna mieć jakiś sens. Wyrzuć ten waitms200 z przerwania. LCD wstaw do głównej pętli. Wyrzuć LCDbus- przecież definiujesz piny do LCD. Time1 as word- przecież timer1 jest 16-bitowy- zmienna nie będzie dłuższa.

    Mikrokontrolery AVR   02 Maj 2010 20:51 Odpowiedzi: 7    Wyświetleń: 2834
  • Timer w bascomie (atmega8) dziwnie liczy - pomocy!!!!!!!!!

    Sprawdź na symulatorze w którym momencie się rozjeżdżają wartości badanej zmiennej i timera1 Możliwe, że ta pętla się wykonuje więcej razy, bo warunek stopu przeskakuje. Timer jest zwiększany asynchronicznie w stosunku do programu i program może przeoczyć moment gdy Timer=konkretna wartość, bo sprawdza Timer1 w przypadkowych momentach a nie po każdej...

    Mikrokontrolery   10 Lip 2007 13:11 Odpowiedzi: 4    Wyświetleń: 1223
  • Odczyt RC5 na ATmega8 z TSOP1736, kod w AVRGCC (WinAVR), INT0 z pull-up 1K

    Jeżeli w swoim kodzie , wykorzystujesz tylko procedury przerwania INT0 i TIMER1 i RC5_init() ,to wystarczy obliczyć i zmienić , wartości ładowane do TCNT1H,TCNT1L. Piotrek

    Mikrokontrolery   23 Gru 2006 23:00 Odpowiedzi: 9    Wyświetleń: 4220
  • [Atmega8] Atmega8 - Reset timera przy załączaniu stycznika w układzie z przekaźnikiem

    Do przeładowania Timer'a1 używaj: Int_timer1: Load Timer1 , 62500 [...] Return Mam jeszcze jedną regułę z przeszłości aby nie używać obsługi pamięci EEPROM w obsłudze przerwań (starsze wersje BASCOM'a przy rozbudowanych programach powodowały błędne działanie programu). Stosuję to do dziś dnia i nie mam zamiaru sprawdzać to w nowszych wersjach...

    Mikrokontrolery AVR   08 Wrz 2010 12:18 Odpowiedzi: 9    Wyświetleń: 4735
  • Atmega8 BASCOM - niestabilność wskazań dla wartości 1 i 2 na wyświetlaczu LED

    Włącz timer1 i w jego przerwaniu wstaw getadc np co sekundę. To ma być woltomierz? Rozumię , że masz tylko jedną cyfrę na wyświetlaczu?

    Mikrokontrolery AVR   07 Sie 2014 10:42 Odpowiedzi: 11    Wyświetleń: 2883
  • [Bascom] Jak ustabilizować stan wyjścia OC1A po transmisji w Atmega8?

    Ok rozumiem. Spróbuj tego. Użyte przerwanie. Można też zrobić bez zależnie od potrzeb. $regfile = "m8def.dat" $crystal = 8000000 Dim Zmienna As Word Dim A As Bit Config Pinb.1 = Output Config Pind.2 = Input Set Portd.2 '============ definicje timera ================================ Config Timer1 = Timer , Compare A = Toggle , Compare B = Disconnect...

    Mikrokontrolery AVR   28 Kwi 2010 10:31 Odpowiedzi: 7    Wyświetleń: 1962
  • Pomiar czasu ATmega8. Dlaczego to nie działa? Listing.

    Nie ma się co poddawać. Prędzej czy później i tak będziesz musiał używać przerwań i liczników bo bez tego większość programów robi się zagmatwana o ile nie niemożliwa do napisania. W necie jest dużo przykładów, Bascom jest o tyle prosty, że nie grzebiesz po rejestrach. Timer już masz, dodatkowa linia konfiguracji i kawałek kodu da Ci obsługę przerwania...

    Mikrokontrolery AVR   12 Lut 2011 19:15 Odpowiedzi: 21    Wyświetleń: 1938
  • atmega8[C] - Niedziałające przerwania od przepelnienia licznikow T0 i T1

    Cóż to za "kwiatki" w pętli głównej z zerowaniem TIMER2 oraz cyklicznym wyłączaniem źródła taktowania TIMER1? Jak myślisz, kompilator poważnie potraktował tą pustą pętlę? for(unsigned int i=0;i<60001;i++);

    Mikrokontrolery AVR   09 Lis 2012 19:40 Odpowiedzi: 4    Wyświetleń: 1389
  • pic16f1716 - Jak skonfigurować przerwanie Timer1 w trybie CTC?

    Witam, potrzebuję wygenerować przerwanie analogicznie do stworzonego w atmega8. W Atmega8 użyłem Timer1 tryb CTC, teraz chcę osiągnąć podobny efekt na pic16f1716. Może ktoś pomóc? [syntax=c] void Init_Timer1A(void) { TCCR1A = 0x00; TCCR1B =(1<<CS11) | (1<<CS10) | (1 << WGM12); //tryb CTC (WGM12), Prescaler = 64 (CS11,cs10) clk = 8Mhz...

    Mikrokontrolery PIC   12 Paź 2015 12:56 Odpowiedzi: 1    Wyświetleń: 1644
  • Atmega8 - Skonstruowanie urządzenia sterowanego z nieużywanych przycisków pilota

    Niestety schemat mi nie pomógł. Ależ pomógł, bo nie znalazłeś w nim żadnych zależności dot. kasowania timera przy jego wyłączaniu poprzez ustawienie preskalera zero. Jest to logiczne, ponieważ gdyby licznik timera był automatycznie kasowany, to zmniejszałoby jego możliwości, bo nie można byłoby go "puścić dalej" Schemat preskalera pokazuje natomiast,...

    Projektowanie Układów   21 Lut 2015 07:51 Odpowiedzi: 16    Wyświetleń: 2367
  • Jak obsłużyć timer i przerwania w Atmega8a w C++?

    [syntax=c] void Timer1_init() { OCR1A=65534; TCCR1B =(1 << CS11)|(1<<WGM12); TIMSK = (1 << TOIE1)|(1<<OCIE1A) ; sei(); } ISR(TIMER1_COMPA_vect) { czas(); } [/syntax] Rozwiązałem problem. Trzeba było ustawić bit OCIE1A. Jak policzyć odmierzany czas? X=11059200 Hz

    Mikrokontrolery AVR   11 Mar 2014 17:46 Odpowiedzi: 13    Wyświetleń: 1881
  • [Atmega88][asm] - Timer1 i OCR1A źle odmierza czas

    A po co włączasz przerwania skoro nie napisałeś procedur ich obsługi? I dlaczego najpierw ładujesz część młodszą do OCR a potem starszą, a nie na odwrót jak to zalecają? I dlaczego dziwisz się, że kod potem nie działa?

    Mikrokontrolery AVR   26 Lis 2009 06:25 Odpowiedzi: 3    Wyświetleń: 1864
  • Programowanie Atmega8 w Bascom - liczenie impulsów i wyświetlanie na HD44780

    W twoim programie wg BASCOM-AVR są błędy: Error : 254 Line : 17 Variable expected Przepraszam za pomyłkę. W BASCOM-AVR, do przerwań od timera, powinniśmy użyć 'TIMER1_OVF' zamiast 'TIMER1 OVERFLOW'. Podobna sytuacja jest z przerwaniem od INT0, powinniśmy użyć 'INT0_ISR'. Najpierw musimy skonfigurować Timer1 i INT0, następnie włączyć przerwania. Kiedy...

    Programowanie   10 Sie 2023 17:31 Odpowiedzi: 5    Wyświetleń: 285
  • [Atmega8] Jak mierzyć czas w Atmega8 dla prędkościomierza z czujnikiem hallotronowym?

    Nie lepiej wykorzystać przerwanie ICP1 timer1. Tam przepisywać zapamiętaną wartość timer1 (timer1 w konfiguracji timera zmienna = capture1), i przeliczać na prędkość, znamy przecież drogę (odległość między magnesami) a potrzebujemy tylko czas pomiędzy kolejnymi przerwaniami wywołanymi tymi magnesami. Po co zliczać ilość impulsów (drogi) w danym czasie...

    Mikrokontrolery AVR   22 Sie 2012 22:33 Odpowiedzi: 26    Wyświetleń: 6445
  • Konfiguracja Timer2 w ATmega8 z zewnętrznym kwarcem 32,768 kHz

    Udało mi się uruchomić tryb asynchroniczny, a zrobiłem to tak: #include <avr/io.h> #include <avr/interrupt.h> int main (void) { ASSR |= (1 << AS2); // tryb asynchroniczny TCCR2 |= (1 << CS22) | (1 << CS20); // preskalery TIMSK |= (1 << TOIE2); // odblokowanie przerwań z...

    Mikrokontrolery AVR   16 Wrz 2011 19:18 Odpowiedzi: 3    Wyświetleń: 4191
  • Atmega8 timer i przerwanie INT1 - jak wstawić do programu?

    Zrób "po bożemu": - ustaw tryb CTC - ustaw OCR1A na 31250 (dla zegara 8MHz) - zmień wektor przerwania na TIMER1_COMPA_vect - wyrzuć z przerwania ustawianie TCNT1 i zostaw tylko PORTD ^= (1 << PD2); Tak ustawiony licznik + PORTD ^= (1 << PD2) będą zmieniać stan diody na przeciwny z częstotliwością 1Hz. A zegar mam nadzieję ustawiasz w opcjach...

    Mikrokontrolery AVR   14 Maj 2012 07:12 Odpowiedzi: 40    Wyświetleń: 5689
  • [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ń: 2601
  • [avr-gcc] Jak ustawić PWM w Atmega8 dla serwomechanizmu z impulsem 1-2ms co 20ms?

    A gdzie "wsiąkła" procedura obsługi przerwania TIMER1_COMPA_vect :?: Piotrek

    Mikrokontrolery   25 Maj 2007 15:16 Odpowiedzi: 18    Wyświetleń: 3660
  • Atmega8 zegarek – implementacja funkcji wait i odliczanie sekund na LCD

    Zobacz do czego Drzasiek użył zmiennej cnt - odlicza ona 4 przerwania, Ty możesz odliczać ile zechcesz. Preskaler także możesz zmieniać - Ty decydujesz. Oczywiście możesz także użyć 16-bitowego timera np. Timer1, o którym piszesz.

    Mikrokontrolery AVR   23 Mar 2012 12:56 Odpowiedzi: 7    Wyświetleń: 3356
  • Atmega8 - Przerwanie CTC nie działa, dioda świeci cały czas

    Witam, Witam, poprawiłem Ci ten kod - działa ok. Przeczytaj komentarze. o dziwo dioda nie miga coś musisz chyba źle robić, u mnie miga. Co prawda sprawdzałem na AT328P, bo taki akurat miałem pod ręką, ale jeśli chodzi o Timer1 to praktycznie identyczne uC. Pozdrawiam, QuadMan.

    Mikrokontrolery Początkujący   25 Mar 2015 11:58 Odpowiedzi: 15    Wyświetleń: 1260
  • [atmega8] Sterowanie serwomechanizmem za pomocą timer1 w ATmega8 - czy założenia są poprawne?

    Witam, zagadnienie, w którego sprawie chciałbym się poradzić wygląda następująco. Muszę sterować serwomechanizmem modelarskim przy jak najmniejszym udziale głównego wątku programu. Pytanie z tym związane, czy da się to zrobić używając 16-bitowego timera1, rejestrowi OCR1A przypisać wartość odpowiadającą 20ms oraz ustawić zdarzenie aby wyjście OC1A był...

    Mikrokontrolery AVR   22 Gru 2009 11:48 Odpowiedzi: 2    Wyświetleń: 1977
  • [atmega8] Jak zrealizować multipleksowanie wyświetlaczy 7-seg. na ATmega8 w C?

    Witam Próbuję zrealizować multipleksowanie wyświetlaczy 7-seg.(dwóch) na atmega8, piszę w C, korzystam z WinAVR, mam wyświetlacze ze wspólną anodą, wykorzystałem tranzystory PNP. Z częstotliwością zegara nic nie kombinowałem więc mega pracuje na 1MHz. Napisałem taki kod: #include <avr/io.h> #include <avr/interrupt.h> /* cyfry na wyświetlaczu...

    Mikrokontrolery AVR   10 Sie 2009 01:51 Odpowiedzi: 27    Wyświetleń: 5744
  • [Bascom] Jak zresetować timer1 w Bascomie dla zegara widmowego?

    c1 to przerwanie na nodze procesora atmega8 pod tytułem "ICP" Portb.0 wystarczy że zamiast pod int0 podepniesz się tutaj.

    Mikrokontrolery AVR   10 Gru 2009 21:00 Odpowiedzi: 7    Wyświetleń: 2441
  • Atmega8, Bascom 1.11.8.3 - Timer0 liczy błędnie przy 16 MHz, dlaczego?

    Jeśli pomiędzy przerwaniem od timera a wpisaniem do niego nowej wartości upływa zbyt "długi" czas to może się okazać, że timer zgłosił przerwanie w międzyczasie, które zostanie uwzględnione jeśli zapiszemy Timer1 = Timer1+wartość, a utracone jeśli zastosujemy Timer1 = wartość.

    Mikrokontrolery   23 Mar 2007 22:36 Odpowiedzi: 13    Wyświetleń: 2296
  • AtMega8 - Multipleksowanie wyświetlacza - problem z symulacja

    Symulator ten działa dla większości osób więc i u mnie teoretycznie powinno być dobrze. A na mikrokontrolerze i wyświetlaczu będę mógł zrobić dopiero jak opanuję eagle. [syntax=cpp]#define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> int znak[] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8...

    Mikrokontrolery AVR   30 Mar 2013 09:35 Odpowiedzi: 11    Wyświetleń: 2730
  • [ATmega8][C] Generator sinusoidy, Timer1 PWM, problemy...

    Hmmm. Policzmy. fpwm = fclk/prescaler/pojemność licznika/2. Przy fclk=16MHz daje to fpwm=16MHz/1/256/2=31,250kHz. Wypełnienie zmienne 0%-100%, oczywiście tryb Phase Correct. fbase = fclk/prescaler/(ocr+1). Przy OCR1A=1 (najszybsze przerwania) próbki mogą być podsyłane do PWM z częstotliwością 16MHz/8/2=1MHz. Czyli do 1 nie warto dojść bo fbase>fpwm,...

    Mikrokontrolery AVR   12 Sie 2009 08:54 Odpowiedzi: 14    Wyświetleń: 6698
  • [bascom] Różnice w przerwaniach między Atmega8 a Atmega32 w Bascom - jak dostosować kod?

    Mam problem z przerwaniami, a raczej z pewną różnicą w budowie Atmega8 i Atmega32, a mianowicie mam program, który działa prawidłowo na Atmega8 poniżej fragment http://obrazki.elektroda.pl/7547240700_1... Jakaś sugestia/pomoc?

    Mikrokontrolery Początkujący   05 Gru 2014 06:58 Odpowiedzi: 12    Wyświetleń: 1458
  • Atmega8 - Odblokowanie globalnych przerwań hamuje pracę mikrokontrolera

    Teraz mam taki kod dotyczący ustawień TIMER1 ISR(TIMER1_COMPA_vect) { flag_timer_1 = 1; } // interrupt TCCR1A |= (1 << CS10); //ustaw timer1 z preskalerem 1 TCCR1A |= (1 << WGM12); //ustaw timer1 w tryb CTC OCR1A = 10000; TIMSK |= (1 << OCIE1A); //zezwolenie na przerwania dla CTC SREG |= _BV(7);...

    Mikrokontrolery AVR   21 Lis 2011 20:57 Odpowiedzi: 12    Wyświetleń: 2483
  • Jak dokładnie odmierzyć 1 sekundę na ATmega8 bez zewnętrznego zegara?

    Dodatkowy wpływ na błąd ma niedokładność częstotliwości generatora kwarcowego. Błąd w sekundach na dobę, wyraża się wzorem: \Delta=86400*(1-\frac{fwzr}{f}) \Delta - błąd w sekundach na dobę (wartość ujemna oznacza spóźnianie się) fwzr - częstotliwość wzorcowa (czyli to co ma być np. 4000000 Hz) f - częstotliwość rzeczywista kwarcu lub generatora kwarcowego...

    Mikrokontrolery AVR   23 Gru 2009 20:44 Odpowiedzi: 11    Wyświetleń: 1592
  • Atmega8 - Timer1 zmiana współczynnika wypełnienia

    ustaw sobie przerwanie od np. TIMER2 co 10ms i sprawdzaj 4 ostatnie stany przycisku. teoria: http://mikrokontrolery.blogspot.com/2011... powyższe zaadoptowane do A8: [syntax=c] //**************definicja przycisku************** #define _Key _BV(PD7) #define Key_PIN PIND #define Key_DDR DDRD #define Key_PORTPORTD...

    Mikrokontrolery AVR   24 Lut 2014 18:26 Odpowiedzi: 18    Wyświetleń: 2358