atmega8 przerwania

Znaleziono około 6139 wyników dla: atmega8 przerwania
  • Atmega8 - przerwania ADC zawieszają działanie portu D. Co poprawić?

    1/ #include "avr/io.h" <- zdecydowanie powinno być <avr/io.h> 2/ z tego co widać w "test.txt", nie ma tam żadnych funkcji odpowiedzialnych za przerwania (nazwy właśnie __vector_* [po rozwinieciu SIGNAL(x) przez preprocesor]), a skok do wektora przerwania, w którym brak funkcji przerwania powoduje skok do resetu (domyślna funkcja do wektorów...

    Mikrokontrolery   24 Sie 2007 00:26 Odpowiedzi: 6    Wyświetleń: 1230
  • 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ń: 2645
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (2min)...
  • ATmega8 - Przerwania CTC - Dioda LED świeci za krótko i nie resetuje czasu

    Jestem początkującym, więc za dużo Ci nie pomogę z kodem, ale jedno wiem na pewno ;) Odlicza Ci 2 sekundy, bo tak ustawiłeś OCR1A. Mając kwarc 14,745,600 Hz, ustawiłeś preskaler na 1024. Czyli 14400 cykli, to 1 Hz. Przy 28799 w Twoim programie, masz prawie 2 sekundy. To tak w międzyczasie, póki inna osoba Ci pomoże.

    Mikrokontrolery AVR   07 Lis 2009 23:19 Odpowiedzi: 6    Wyświetleń: 1990
  • Atmega8 - Nieprawidłowe działanie przerwań zewnętrznych z enkoderem i LEDami

    OK, mam nadzieję, że zegar ustawiłeś w opcjach. Ponieważ muszę wyjść, to dam Ci wskazówki, a resztę wymyślisz sam lub koledzy pewnie podpowiedzą. Gdy pierwsze zbocze drgania styku ustawi flagę przerwania i mikrokontroler wejdzie w funkcję jego obsługi, to zaraz na początku automatycznie kasuje (w tym mikrokontrolerze) flagę przerwania. Ty w swoim programie...

    Mikrokontrolery Początkujący   13 Lip 2013 18:53 Odpowiedzi: 19    Wyświetleń: 3339
  • atmega8 - UART przerwania - dioda nie gaśnie po odebraniu danych UART

    oraz jeszcze: 1. stosujesz stare funkcje obsługi przerwań a nowe wektory - stosuj nowe funkcje ISR(): http://nongnu.org/avr-libc/user-manual/g... i wywal nagłówek #include <avr/signal.h> 2. returny w funkcjach ISR() i main() są zbędne. 3. Ostatnia uwaga kol Zaquadnik jest baaaardzo istotna. Nie dość, że czekasz w funkcji...

    Mikrokontrolery AVR   21 Lip 2015 21:56 Odpowiedzi: 9    Wyświetleń: 1692
  • REKLAMA
  • Atmega8 - Tym razem; przerwanie sprzętowe - nie działa

    SIGNAL(SIG_OVERFLOW0) - w ten sposób definiowały obsługę przerwania jeszcze nasze babcie i jeszcze za ich czasów wprowadzono nowy sposób - ISR(TIMER0_OVF_vect) 3-sekundowy delay w przerwaniu? "Super" pomysł.

    Mikrokontrolery Początkujący   03 Kwi 2013 20:44 Odpowiedzi: 30    Wyświetleń: 3804
  • REKLAMA
  • [Atmega8] Jak obliczyć czas przerwania licznika T0 w Atmega8 przy 1MHz i preskalerze=1?

    http://www.edw.com.pl/ftp/kalkavr.zip

    Mikrokontrolery   11 Mar 2009 21:35 Odpowiedzi: 2    Wyświetleń: 1418
  • AVR Studio: Dlaczego Atmega8 nie obsługuje przerwania Timer0 w Bascom?

    Spróbuj skompilować ten programik pod konkretny mikrokontroler. W Bascomie domyślenie masz ustawione AT90S2313. Użyj dyrektywy: $regfile = "m8def.dat" - dla ATMega8, $regfile = "2313def.dat" - dla AT90S2313, Może pomoże :)

    Mikrokontrolery   26 Kwi 2005 12:53 Odpowiedzi: 2    Wyświetleń: 1095
  • [C] ATMega8 - Timery i przerwania nie działają w kodzie C, WinAVR 20100110

    Spróbuj zrobić od przepełnienia. W proteus'ie też port zmieni raz stan i nic. volatile int flaga; #include <avr/io.h> #include <avr/interrupt.h> int main (void) { DDRC = 0xff; // Ustaw jako wyjście LED TIMSK = 0x04; // Włącz przerwania przepełnienia (1 <<TOIE1) SREG = 0x80; // włącz przerwania globalne sei()...

    Mikrokontrolery AVR   20 Maj 2011 18:47 Odpowiedzi: 14    Wyświetleń: 2181
  • AVR ATmega8 Timer0 CTC – konfiguracja rejestrów do przerwania co 2ms

    Tabelka w DS na str. 98 i zobacz sobie tryb 4 CTC (opis trybu masz na str. 88) kolumna TOP i nazwa rejestru do którego wartość TOP powinna trafić, bit w rejestrze TIMSK tez nie ten i co za tym idzie nie ten wektor przerwania.

    Mikrokontrolery Początkujący   03 Kwi 2015 20:23 Odpowiedzi: 39    Wyświetleń: 3972
  • Jak skonfigurować przerwania w ATmega8 w języku C z użyciem GCC?

    Bity w MCUCR określają na co będzie reagować przerwanie zewnętrzne... Zmiana stanu, opadające lub narastające zbocze więc jest to jak najbardziej potrzebne... SIGNAL (INT0_vect) - obsługa zewnętrznego przerwania INT0... SIGNAL (TIMER0_OVF_vect) - obsługa przerwania od przepełnienia timer0... Co do portu... Jak na mój gust powinno być PORTC = !PORTC;...

    Mikrokontrolery   13 Lis 2010 16:13 Odpowiedzi: 48    Wyświetleń: 19615
  • ATmega8 ASM: Powrót z przerwania do konkretnej instrukcji w AVR Studio

    Można dać na końcu skok rjmp, ale musisz wtedy pamiętać żeby ściągnąć ze stosu niepotrzebny adres powrotu. Ogólnie rzecz biorąc takie rozwiązania są niewskazane. Program łatwo może pójść w maliny.

    Mikrokontrolery   26 Mar 2008 12:47 Odpowiedzi: 5    Wyświetleń: 2083
  • Przerwania w Atmega8 AVR-GCC - brak wyświetlania na ekranie w kursie EDW

    Kolego dawid512 radzę uzupełnić swoją wiedzę na temat pracy timerów i nie robić innym wody z mózgu... Oczywiście po przepełnieniu TCNT0 zostanie wyzerowane i zacznie się zliczanie od nowa... Wartość do TCNT0 podstawiamy tylko w przypadku kiedy chcemy uzyskać przepełnienie co pewien czas który jest nie do uzyskania przez samo ustawienie prescalera......

    Mikrokontrolery AVR   22 Sty 2009 19:31 Odpowiedzi: 17    Wyświetleń: 2050
  • Jak ustawić przerwania co 1 sekundę w ATmega8 dla zegarko-termometru?

    No tak. Ja korzystałem ze sprzętowego i2c, który MUSI być na portach PC4, PC5. A Ty korzystałeś z PC3, PC4. Po usunięciu linii, o których pisałeś, zacząłeś wykorzystywać programowe i2c, które może być na dowolnych portach. Gdybyś w helpie Bascoma poszukał frazy $lib "i2c_twi.lbx" to by Ci się wyjaśniło :). Spróbuj teraz to zrobić. Ale ładnie pokombinowałeś...

    Mikrokontrolery   13 Gru 2008 15:37 Odpowiedzi: 25    Wyświetleń: 2958
  • REKLAMA
  • [atmega8] Wyzwolenie przerwania na zbocze opadające

    nie mylisz się Dodano po 20 już się poprawiam, bo w temacie napisałeś ATmega8, jakoś mi to umknęło i skupiłem się tylko na tekście i pytaniach o sposobie wyzwalania przerwań. Z opisu dokumentacji jaką czytałeś poprostu domyśleć się można że chodzi o procki inne niż ATmega8 bo akurat ten procek nie ma przerwań PCINTx, Więc co do tego co przeczytałeś...

    Mikrokontrolery AVR   06 Sie 2008 10:15 Odpowiedzi: 5    Wyświetleń: 1779
  • [C] Czy obsługa microswitcha na ATmega8 w przerwaniu timera jest poprawna?

    Debouncing można wykonywać na wiele sposobów. Twój sposób jest jak najbardziej poprawny. Ta bezsensowność jest tylko z pozoru bezsensowna :) - jakoś trzeba poinformować main(). Taka technika jest powszechnie stosowana nie tylko do debouncingu. Pamiętaj także, że zawsze możesz na końcu while() w main() uśpić mikrokontroler do następnego przerwania -...

    Mikrokontrolery AVR   21 Sie 2011 02:23 Odpowiedzi: 2    Wyświetleń: 8497
  • 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ń: 6897
  • [Atmega8] Atmega8 Bascom - Nadpisywanie zmiennej w przerwaniu int0/int1, reset timer1

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

    Mikrokontrolery AVR   09 Maj 2009 18:31 Odpowiedzi: 14    Wyświetleń: 2827
  • Atmega8 - jak kontynuować działanie silnika po przerwaniu z krańcówki?

    Czy jest możliwość, aby po powrocie z przerwania na PORTC pojawiła się ostatnia wartość sprzed wywołania tegoż przerwania? O ile dobrze zrozumialem twoj problem to rozwiazanie jest proste - na poczatku przerwania zapamietaj stan PORTD w jakiejs zmiennej i odtworz go na koncu obslugi przerwania. Co do delay w przerwaniu to sie nie przejmuj tym co pisza...

    Mikrokontrolery AVR   10 Sty 2010 08:12 Odpowiedzi: 14    Wyświetleń: 2106
  • ATmega8 i LCD: błędy przy włączaniu przerwań timera0 - jak to naprawić?

    Można tak jak kolega pisał wyłączać timer... Ale lepiej by chyba było w samej funkcji obsługi LCD w najbardziej newralgicznym punkcie (sama transmisja) wyłączać globalnie przerwania "cli();" i po wysłaniu danych włączać z powrotem "sei();'

    Mikrokontrolery   13 Lut 2008 19:54 Odpowiedzi: 7    Wyświetleń: 1641
  • atmega8 - wysyła ciągle ta sama wartość przez coma

    Przerwania włączone ale brak ich obsługi.

    Mikrokontrolery AVR   25 Sty 2013 10:19 Odpowiedzi: 6    Wyświetleń: 1509
  • [DIY] Jak zbudować joystick do NES/Pegasus z ATMEGA8 - nie działa

    PORTC &= (0 << PC0); A co to za konstrukcja? Przesuwanie zera w ciągu zer? Jak chcesz wyzerować bit to rób to tak: PORTC &= ~(1<<bit); Poza tym: - źle ustawiasz MCUCR - brak aktywacji przerwań w GICR. Zamiast tego grzebiesz w nieistniejącym rejestrze (Atmega8) GIMSK. - brakuje w main zapętlenia przez co program zawiesza przerwania...

    Mikrokontrolery AVR   30 Mar 2018 01:37 Odpowiedzi: 28    Wyświetleń: 1548
  • ATmega8 Timer0/Timer1 – jak ustawić prescaler, by uzyskać 1s przy 1MHz?

    Na dobra sprawe w tym przypadku do compare1a chyba moznaby dac 2x15625 czyli 31250 i tym sposobem procka przerwania bedzie krotsza.

    Mikrokontrolery   14 Mar 2006 21:13 Odpowiedzi: 27    Wyświetleń: 2897
  • ATmega8 - Diody PC5 i PC4 świecą ciągle zamiast migać co sekundę

    Wypadało by odblokować przerwania i uaktywnić Ciebie interesujące (INT1)

    Mikrokontrolery   30 Sie 2009 22:04 Odpowiedzi: 19    Wyświetleń: 1691
  • [Atmega8] Jak generować 36kHz na Atmega8 z zajętymi kanałami PWM PB1 i PB2?

    To nie są przerwania na PB1, 2, 3, a sprzętowe wyjścia timerów. NA ATmega8 masz trzy wyjścia PWM - dwa z T1 i jedno z T2. Nie wiem, ilu w końcu potrzebujesz. Jednego powinieneś użyć do generowania 36 kHz, kolejnego (a może dwóch) do sterowania silnikiem. Czemu mają służyć te zabawy z przerwaniem timera i programowym machaniem nogą uC?

    Mikrokontrolery Początkujący   13 Sty 2016 13:57 Odpowiedzi: 13    Wyświetleń: 1677
  • 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ń: 6290
  • [Atmega8] Jak zmierzyć czas stanu wejścia z dokładnością 100ms na Atmega8 w C?

    ISR( TIMER1_CAPT_vect ) //przerwanie od icp1 { cli(); //globalne zabronienie przerwan sygnal=ICR1; //odczyt timera TCNT1=0; //zerowanie timera i++; //dodanie wartosci i wyskok_do_funkcji(); sei(); //globalne zezwolenie na przerwanie }// koniec przerwania A po co to cli(); oraz sei(); w przerwaniu ????? może...

    Mikrokontrolery AVR   06 Sie 2011 18:22 Odpowiedzi: 53    Wyświetleń: 7594
  • Mikrokontroler Atmega8 nie reaguje na sygnał RC5 przez podczerwień

    witam co prawda nie programuje atmelków w C ale wydaje mi się że jeżeli jak piszesz: " Jeszcze dalej, już poza pętlą główną przerwania są odblokowywane." to znaczy że na początku są zablokowane? w takim razie nigdy nie zostaną odblokowane skoro wcześniej masz nieskończoną pętlę... program nigdy nie dojdzie do tego momentu, odblokuj przerwania przed...

    Mikrokontrolery   05 Wrz 2009 09:45 Odpowiedzi: 8    Wyświetleń: 3528
  • Atmega8 - jak uniknąć kasowania flagi I przy generowaniu sygnału 1 MHz?

    Zawsze obsługa przerwania powoduje skasowanie flagi I, aby pod koniec obsługi flaga została ponownie ustawiona przez instrukcję reti. Jeśli program się przerywa po kilku linijkach, to znaczy posiadasz nie obsłużone wektory przerwań, a to jest błąd w kodzie. Albo wyłącz przerwanie od danego źródła, albo wyłącz przerwania, jeśli z nich nie korzystasz.

    Mikrokontrolery AVR   21 Sty 2017 06:23 Odpowiedzi: 14    Wyświetleń: 6069
  • Optymalizacja kalkulatora w BASCOM na ATmega8 - problem z pętlą Do...Loop

    Po co ten rezystor. Nastepnie jak nie chcesz czekac zanim dojdzie do ifa wykorzystaj przerwanie. Jak masz duzo przyciskow, to podlacz do wszystkich switchy diody do ktoregos przerwania

    Mikrokontrolery AVR   08 Kwi 2009 11:56 Odpowiedzi: 3    Wyświetleń: 3332
  • [C] Atmega8 przerwania INT0/INT1 – wielokrotne zliczanie naciśnięć przycisku (debouncing)

    SIGNAL (SIG_INTERRUPT0) { cli(); //wyłącz przerwania ..... sei(); } Przepraszam za dygresję nie na temat. When an interrupt occurs, the Global Interrupt Enable I-bit is cleared and all interrupts are disabled. ... The I-bit is automatically set when a Return from Interrupt instruction – RETI – is executed....

    Mikrokontrolery AVR   09 Lip 2010 21:11 Odpowiedzi: 25    Wyświetleń: 2550
  • Odliczanie czasu Atmega8 i wyświetlacz trzy segmentowy

    A jak wygląda wyświetlacz 3-segmentowy? Nigdy jeszcze takiego nie widziałem... Program napisz od nowa - ten nie ma prawa działać. Zacznij od przerwania timera. Odliczania czasu NIE DA się zrobić bez timera.

    Mikrokontrolery Początkujący   02 Sty 2016 13:26 Odpowiedzi: 10    Wyświetleń: 1587
  • Atmega8 - Jak podłączyć bezpośrednio do USB bez przejściówek?

    Pin ICP nadaje się jeśli chcesz określić np. długość impulsu. Dla enkodera się nie nada - enkoder daje sygnał w kodzie Graya, ponieważ M8 nie ma sprzętowego dekodera tego kodu musisz to zrobić programowo. Aby nie czekać w pętli i ciągle nie sprawdzać czy coś się nie zmieniło wyjścia z enkodera trzeba podpiąć pod wejścia generujące przerwania. W handlerze...

    Mikrokontrolery AVR   18 Mar 2014 14:43 Odpowiedzi: 17    Wyświetleń: 4521
  • Atmega8 - Dlaczego flaga TOV0 nie aktywuje diody LED1 w ISR?

    Ta linia oznacza że jak w rejestrze ten bit jest ustawiony to wtedy zapal Led. Ponieważ jednak ta flaga jest gaszona podczas wchodzenia do procedury przerwania to w tym miejscu ten warunek nigdy nie będzie spełniony, tak więc Led się nigdy nie zapali

    Mikrokontrolery AVR   14 Sty 2019 18:21 Odpowiedzi: 10    Wyświetleń: 603
  • Konfiguracja timera 1 na ATMEGA8 dla funkcji ~244Hz bez bibliotek

    Klasa TwoWire (której obiektem jest Wire) też używa przerwań. Po wejściu do ISR przerwania są blokowane. Jeżeli chcesz, aby dane ISR nie blokowało innych przerwań można użyć ISR_NOBLOCK:[syntax=c]ISR(TIMER2_OVF_vec... ISR_NOBLOCK) { ... }[/syntax]Byłbym jednak z tym bardzo ostrożny, ponieważ może przydarzyć się przepełnienie stosu. https://www.nongnu.org/avr-libc/user-man...

    Arduino   28 Sie 2020 15:01 Odpowiedzi: 7    Wyświetleń: 522
  • ATMEGA8 BASCOM nie działa poprawnie przerwanie INT0

    Gdy procesor jest w trakcie wykonywania procedury przerwania, następne przerwanie nie będzie przyjęte , gdyż procesor (nie kompilator!) zeruję flagę globalnego zezwolenia na przerwania. Tak samo flaga bieżącego przerwania (tego, którego procedura obsługi jest wykonywana) zostaje automatycznie wyzerowana. Po zakończeniu przerwania flaga globalnego zezwolenia...

    Mikrokontrolery AVR   19 Lut 2010 21:54 Odpowiedzi: 7    Wyświetleń: 5159
  • Początkującego problem z przerwaniami w ATMEGA162 :(

    ISR(INT2_vect) //procedura obslugi przerwania { impulsy++; } A czy zadziała: (chyba powinno ;)) SIGNAL(SIG_INTERRUPT2)// gdy nastąpi przerwanie na wejściu INT2, wykonuje to co w klamrach { impulsy++; // każde przerwanie powiększa zmienną impulsy o 1 // tu wpisz swoją funkcję - opóźnienie o 40 milisekund } Ale spróbuj też w tym swoim...

    Mikrokontrolery   09 Paź 2006 16:12 Odpowiedzi: 9    Wyświetleń: 1959
  • ATMega8 - jak wybudzić procesor z trybu power down za pomocą Int1?

    ... ok odczytalem wartosc MCUCR tuz przed wydaniem instrukcji powerdown wynosi 10001010b Skoro Twoje MCUCR ma tak ustawione bity , to co sie dziwisz że nie działa :wink: Twoje ustawienia to: INT0-FALLING INT1-FALLING SLEEP MODE-IDLE SE=1 Powinno być: 101000xx INT0-xx INT1-LOW LEVEL czyli bity ISC10,ISC11 wyzerowane :!: SLEEP MODE- POWER-DOWN czyli...

    Mikrokontrolery   11 Sty 2006 15:14 Odpowiedzi: 7    Wyświetleń: 5175
  • Czy można podłączyć transoptor do atmega8 jak na rysunku?

    tak , podłączenie jest prawidłowe jedna mała uwaga jeżeli układ ma służyć tylko do separacji to ok , natomiast jeżeli do innych celów to lepiej wykorzystaj dostępne piny z obsługa przerwania zewnętrznego , ustawiając reakcję na opadające zbocze sygnału

    Mikrokontrolery   14 Lut 2007 13:43 Odpowiedzi: 9    Wyświetleń: 3258
  • [atmega8] Jak uzyskać 40kHz dla paczek impulsów w ATmega8 z Bascom?

    64 takty to o połowę krócej. :) W każdym razie, rzeczywiście obsługa tego przerwania w asemblerze powinna się spokojnie zmieścić poniżej 2us. Ewentualnie można jeszcze dodać bramkę AND sterowaną z drugiego timera i załatwić to sprzętowo.

    Mikrokontrolery AVR   04 Wrz 2009 23:40 Odpowiedzi: 12    Wyświetleń: 2740
  • Atmega8 - Mikrokontroler nie chce wyjść z uśpienia

    Nie pamiętam, jak działa makro sleep_mode(); ale przecież przechodzisz do trybu uśpienia w przerwaniu od timera a jak wiadomo wejście w dowolną procedurę obsługi przerwania blokuje globalne zezwolenie na obsługę przerwań, wiec prawdopodobnie w chwili uśpienia skutecznie blokujesz także przerwanie zewnętrzne, przez co nie możesz później wzbudzić procesora...

    Mikrokontrolery AVR   25 Sie 2014 00:00 Odpowiedzi: 4    Wyświetleń: 1014
  • Atmega8 - Regulacja fazowa, 230V, fluktuacje natężenia światła

    No, nie zupełnie. Kiedy kończy się półokres, pojawia się zbocze narastające na INT, a moment póżniej sieć przechodzi przez zero. Ciężko oszacować ile wynosi ten "moment", ale jeżeli nie zdążysz wyłączyć sygnału triaka (obsługa przerwania się opóźni itp.) zanim sieć przejdzie przez zero, to triak włączy się ponownie i pozostanie włączony przez cały następny...

    Mikrokontrolery AVR   02 Mar 2015 17:40 Odpowiedzi: 17    Wyświetleń: 2031
  • Jak uzyskać precyzyjne przerwanie 1 kHz na ATmega8 przy 16 MHz?

    Odpowiedź na przerwania ma szansę być precyzyjna (bo samo przerwanie JEST preczyzyjne) jeśli procesor będzie czekał na przerwanie w uśpieniu, a nie w niepustej "pętli głównej" ze sprawdzaniem zdarzeń. Niektóre modele uC z rdzeniami Cortex mają mechanizm sprzętowy gwarantujący determinizm czasu odpowiedzi dla jednego przerwania o najwyższym priorytecie,...

    Mikrokontrolery AVR   26 Cze 2016 16:44 Odpowiedzi: 32    Wyświetleń: 2856
  • [C] Jak zaimplementować przerwania dla 2 wyświetlaczy 7-segmentowych w C?

    To co dawid512 napisał jest najprawdopodobniej na atmega32. Musisz poczytać dokumentację i zmienić ten kod, gdyż timer0 na atmega8 ma trochę mniejsze możliwości. [dodano] Można też skorzystać z timer2, jego obsługa będzie łatwiejsza.

    Mikrokontrolery AVR   28 Gru 2008 16:16 Odpowiedzi: 14    Wyświetleń: 2428
  • ATmega8a - program zawiesza się po otrzymaniu przerwania od timera0

    Witam, W programie przedstawionym poniżej nie zostaje wywołana obsługa przerwania. Próbowałem na innych timerach tez bez skutku. AvrStudio 6, Atmega8a, optymalizacja O2. [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> #include "utils.h" #include "display.h" int main(void) { LEDInit( ); Display(0); //Init Timer 0 TCNT0 = 6; TCCR0...

    Mikrokontrolery AVR   30 Gru 2012 11:19 Odpowiedzi: 8    Wyświetleń: 1692
  • ATmega8 USART w C: Jak skonfigurować przerwanie odbioru danych?

    Nie mogę znaleźć uchwytu przerwania od USART, jest jedynie od UART i nie chce działać. O ile mi wiadomo to nie ma żadnego rozróżznienia między przerwaniem od USART a UART. Niewazne czy Uklad transmisji szeregowej pracuje synchronicznie czy asynchronicznie i tak zawsze jest to samo przerwanie generowane. A moze by tak odblokowac przerwania od odbioru...

    Mikrokontrolery   24 Maj 2007 23:22 Odpowiedzi: 2    Wyświetleń: 8310
  • Atmega8 - Timer0 nie odlicza 1 sekundy przy 12MHz i preskalerze 256

    Poza tym to: TCNT0 = 130; Powinna być pierwszą instrukcją w przerwaniu, a tak w ogóle polecam poczytanie o trybie CTC - nie będzie trzeba martwić się o ciągłe ładowanie wartości timera. EDIT: A problemem właściwym jest nadmiarowy średnik, o tu: if(licznik == 375); jak go wywalisz to będzie w miarę OK. A zmienna nie musi być w tej sytuacji volatile,...

    Mikrokontrolery Początkujący   19 Lut 2013 14:47 Odpowiedzi: 4    Wyświetleń: 1140
  • Czy mikrokontrolery ATmega mają określony rdzeń jak ARM7 czy ARM9?

    Ja osobiście nie mam problemów z przenaszalnością kodu w firmowym asemblerze Atmela, nawet pomiędzy różnymi wersjami rdzenia, gdyż są w nim wbudowane definicje pozwalającej na asemblację warunkową. Przykład - instrukcja lpm , zamiast której używam następujące makro: .macro LpmPlus #if ((__CORE_VERSION__==V2E)|...

    Mikrokontrolery AVR   20 Sty 2011 18:23 Odpowiedzi: 6    Wyświetleń: 2552
  • Dlaczego przerwanie przepełnienia timera 0 nie działa na Atmega8 w avr-gcc?

    1. czy typ int jest domyślnie 1- czy 2- bajtowy? Może lepiej dla pewności stosować uint_8t oraz uint_16t 2. czy obsługa przerwania zdąży się wykonać zanim przyjdzie następne?

    Mikrokontrolery   08 Mar 2011 14:44 Odpowiedzi: 18    Wyświetleń: 3138
  • Atmega8 klawiatura matrycowa + przerwania wewnętrzne

    Ja do obslugi klawiatury uzywam przewaznie kodu, ktory jest w plikach w zalaczniku. W głownej peti programu musisz umiescic wywołanie Key_Service(); i zadbać o to, aby w przerwaniach od timera odpowiednie zmienne byly deinkrementowane.

    Mikrokontrolery AVR   24 Lis 2011 10:38 Odpowiedzi: 5    Wyświetleń: 4608
  • Gasniecie LCD przy dużej czestotliwośći. atmega8

    Jednym z wielu błędów w Twoim kodzie jest przetwarzanie w pętli głównej zmiennych adc1 i adc2 zapisywanych w przerwaniu timera. To są zmienne 16-bitowe, więc pomiędzy odczytem jednej i drugiej połówki przerwanie timera może zmienić wartość zmiennej. Blokuj przerwania na czas ich odczytu, czytaj je w pętli głównej raz, skopiuj do innej zmiennej roboczej...

    Mikrokontrolery   25 Lut 2015 00:03 Odpowiedzi: 7    Wyświetleń: 927
  • [atmega8] Obsługa przerwań zewnętrznych. Jedno przerwanie następujące po drugim.

    Witam Otóż mam taki dylemat ... Mam taki prosty programik robiący mi za licznik modulo 8. Samo liczenie odbywa się w przerwaniu timer'a ale to nie jest kwestia którą chce poruszyć. Po wywołaniu zewnętrznego przerwania, nie da się go przez czas paru/parunastu sekund wywołać. Czego to może być wina ? (pomijając że moja). Czy przypadkiem nie powinno to...

    Mikrokontrolery AVR   01 Lis 2011 00:15 Odpowiedzi: 48    Wyświetleń: 6635
  • Atmega8: Jak poprawnie obsłużyć przerwanie w C?

    Witam. Próbuję uczyć się C na Atmedze 8 i mam problem z obsługą przerwania. Kod wygląda następująco (z resztą pisany na podstawie kursu z EdW): #include <c:\WinAVR-20090313\avr\include\a... #include <c:\WinAVR-20090313\avr\include\a... #define F_CPU = 1000000 int volatile wyjscia; int indeks; int main (void)...

    Mikrokontrolery AVR   02 Paź 2009 23:17 Odpowiedzi: 6    Wyświetleń: 1344
  • atmega8[C] - Niedziałające przerwania od przepelnienia licznikow T0 i T1

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

    Mikrokontrolery AVR   09 Lis 2012 19:40 Odpowiedzi: 4    Wyświetleń: 1413
  • [atmega8][c] przerwanie na zbocze opadające nie reaguje

    Witam wszystkich bardzo serdecznie. Chcę zaprogramować uC ATmega8 w taki sposób aby mierzył mi długości sygnałów podawanych na wejście. Oczywiście przy użyciu przerwań. Nie wiem dlaczego program nie reaguje przerwaniem na zboczu opadającym sygnału. Poniżej zamieszczam kod programu. Jeśli mógłbyś zobaczyć i podpowiedzieć w czym tkwi problem byłbym dozgonnie...

    Mikrokontrolery AVR   25 Lut 2012 17:10 Odpowiedzi: 13    Wyświetleń: 2368
  • [ATMEGA8][BASCOM] Wyłączenie przerwań nie do końca działa ..

    Witam. Mam pewien problem z programem. Generalnie układ posiada 3 przyciski. Kontaktron - generuje przerwania (nie sugerować się nazwą, testuję to na zwykłym switchu) P_zeruj - Przycisk od zerowania wyniku P_mierz - Jeśli jest w stanie 1 to przerwania są włączone jeśli nie to wyłączone. I tu pojawia się problem. Jeśli P_mierz ustawię w stan 0, to przy...

    Mikrokontrolery AVR   06 Mar 2010 22:16 Odpowiedzi: 7    Wyświetleń: 1857
  • [Atmega8] [Atmega8][ASM] Przerwania zewnętrzne INT0 nie działają po wgraniu programu

    Witam Piszę program, który ma mierzyć długość impulsu podawanego z zew. źródła jakim jest odbiornik RC, częstotliwość impulsów to 50Hz, a ich długość mieści sie w przedziale 1ms-2ms. To mój pierwszy program na AVR w którym obsługuje przerwania zew. i mam pewien problem, program już napisałem, sprawdziłem go na symulatorze i wydaje się działać poprawnie,...

    Mikrokontrolery AVR   28 Maj 2008 21:42 Odpowiedzi: 8    Wyświetleń: 3953
  • ATmega8: Zawieszanie przy obsłudze RS232 na przerwaniach - jak rozwiązać?

    Jest sobie układ na ATMEGA8 na defaultowym zegarze, z LCD, MAX232, i przekaźnikiem podłączonym do portu B. MAX232 jest połączony poprawnie z prockiem, bez przerwań jestem w stanie odbierać dane z RS232, nic się nie wiesza, ogólnie działa. Jednak żeby nie było mi zbyt dobrze, to wymyśliłem sobie że umieszczę obsługę RS232 na przerwaniu, po to by oczekiwanie...

    Mikrokontrolery   03 Mar 2008 00:28 Odpowiedzi: 3    Wyświetleń: 1485
  • ATmega8/ADC/przerwanie - uC nie wchodzi w procedurę przerwania

    Witam, Tak jak w tytule mam dość dziwny problem. Napisałem sobie bardzo prosty program w którym chciałem zobaczyć jak działa ADC + sterowanie serwem modelarskim. Doświadczenia robię na płytce stykowej. Wygląda to tak że jeśli odczytuję rejestr ADCH w nieskończonej pętli programu (mam ustawiony tryb free running) to wszystko działa ok. Natomiast jeśli...

    Mikrokontrolery AVR   20 Sty 2013 16:02 Odpowiedzi: 8    Wyświetleń: 2286
  • atmega8 - blokowanie przerwania int0 i int1 w asm

    Jak po przyjęciu int0 ,zablokować go na czas (500 ms), odblokowując int1, po tym czasie ponownie odblokować int0, blokując int1 itd.? czas dowolny (rcall czas).

    Mikrokontrolery AVR   11 Maj 2013 16:29 Odpowiedzi: 4    Wyświetleń: 1674
  • ATmega8A - Budzenie w przerwaniu bez korzystania z zewnętrznych bibliotek

    Witam Mam pytanie jak obudzić procesor w przerwaniu. Jak usypiam w głównej pętli while usypianie i budzenie działa jak powinno. Ale chciałem usypiać na INT1 a na INT0 budzić lub na INT0 budzić i usypiać (co chyba jest bardzo trudne). [syntax=c] void sleepNow() { MCUCR|=(1<<SM1); MCUCR|=(1<<SE); asm volatile ("sleep"::); } int main(){ serialInit(9600);...

    Mikrokontrolery   15 Sie 2013 11:39 Odpowiedzi: 8    Wyświetleń: 1842
  • ATMega8 nie widzi procedury obsługi przerwania - ROZWIĄZANE

    Buduję prosty sterownik na atmedze 8, chcę obsługiwać klawiaturę w przerwaniach od timera0 ale atmega nie widzi procedury obsługi przerwania i resetuje się. Jeżeli zatrzymam timer albo wyłączę przerwanie timera, albo wyłączę globalnie przerwania to nie resetuje się. Kod procedury obsługi przerwania (funkcje do LCD są w pełni sprawne, nawet gdy ISR jest...

    Mikrokontrolery   18 Kwi 2008 10:19 Odpowiedzi: 2    Wyświetleń: 1204
  • [ATmega8][C] - Wybudzanie mikrokontrolera ze stanu uśpienia

    Witam. Problem pewnie jest banalny ale nie mogę znaleźć nigdzie rozwiązania. W ramach ćwiczeń buduję na ATmedze8 zegar. Mam problem z wybudzeniem mikrokontrolera ze stanu uśpienia SLEEP_MODE_PWR_SAVE przerwaniem. Chcę aby po uśpieniu wykonujące się co ok. 250ms przerwanie obudziło mikrokontroler i zmieniło zmienną. Wtedy chciałbym aby wykonała się główna...

    Mikrokontrolery Początkujący   25 Mar 2013 16:29 Odpowiedzi: 2    Wyświetleń: 1527
  • [atmega8][c] Przechodzenie i wybudzanie z power-down.

    Witam. Projekt, który realizuje wymaga minimalizacji poboru energii. Stąd tez chcę usypiać procek i w razie potrzeby budzić zewnętrznym przerwaniem INT1. Układ się usypia, po wybudzeniu (przerwanie stanem niskim) wykonuje raz pętlę while(1), a następnie łapie zwiechę. jakby było ciągle wyowływane przerwanie. Próbowałem, bezskutecznie, ręcznie ustawiać...

    Mikrokontrolery AVR   28 Cze 2011 06:23 Odpowiedzi: 8    Wyświetleń: 2730
  • Atmega8 - przerwania nie działają przy sterowaniu LED i przyciskami PC0-PC2

    Witam. Tak jak w temacie podłączyłem Atmege8.Pod PB0 podpiąłem LED,a do PC0, PC1 i PC2 przyciski zwierające wejście do masy. Układ ma generować miganie diody w następujący sposób: -wciskam PC2 uruchamia się generowanie częstotliwości co widać na diodzie LED -za pomocą przycisków PC0 i PC1 zwiększam lub zmniejszam częstotliwość migania diody. Kod napisany...

    Mikrokontrolery AVR   04 Gru 2010 13:28 Odpowiedzi: 7    Wyświetleń: 1280
  • Przerwania USART na AtMega8 - problem z obsługą diody LED

    Witam. Temat wątku wziął się stąd, że na forum znalazłem już kilka o podobnej tematyce jednak żaden nie pomógł mi z tym zagadnieniem. Programuję na Linuksie na AtMega8. Napisałem sobie proste biblioteki do obsługi USART oraz TWI jednakże chciałbym teraz spróbować popracować z przerwaniami i tutaj jest problem. Mam taki oto kod: [syntax=c] ISR(USART_RXC_vect)...

    Mikrokontrolery   18 Kwi 2011 16:22 Odpowiedzi: 4    Wyświetleń: 1068
  • [bascom][atmega8] problem z przerwaniem zewnetrznym

    Taki fragment schematu: http://obrazki.elektroda.net/27_12637303... Koncepcja jest taka: mega8 pracuje i w momencie gdy zaniknie zasilanie, to dostanie sygnał (opadające zbocze) na INT1 i w przerwaniu zapisze kilka bajtów do eeprom (bo ma jeszcze zasilanie z kondensatora za diodą). Kod do tego: dim e_impulsy as eram word dim impulsy as word...

    Mikrokontrolery AVR   17 Sty 2010 22:52 Odpowiedzi: 10    Wyświetleń: 1905