flagi przerwania

Znaleziono około 4681 wyników dla: flagi przerwania
  • PIC18LF46K80 Timer1 nie ustawia flagi przerwania przy podłączonym przycisku

    Witam, Ile jeszcze razy trzeba będzie napisać, że przycisków NIE obsługuje się przy użyciu przerwań generowanych przez zmianę stanu wejścia? Temat powraca co kilka dni. Rozwiązanie, które Autor próbuje wdrożyć, po usunięciu błędów związanych z programowaniem timera i tak nie będzie działać, więc po co te starania o poprawne zaprogramowanie niedziałającego...

    Mikrokontrolery PIC   29 Mar 2017 17:09 Odpowiedzi: 6    Wyświetleń: 2871
  • Bascom - Atmega 128 i zerowanie flagi przerwania zewnętrznego

    Rejestr EIFR to rejestr FLAGI przerwania, która jest automatycznie zerowana po zakończeniu przerwania. Badanie jej w przerwaniu musi dac wynik pozytywny. Poza tym masz w tym kodzie błąd: reset eifr.0 if eift.0 = 1 then set led chyba powinno być: if eifr.0 = 1 then set led Napisz jak ustawiasz rejestr EICRA Na końcu przerwania zbadaj If EIMSK.0=1 then...

    Mikrokontrolery AVR   10 Gru 2012 11:39 Odpowiedzi: 10    Wyświetleń: 3549
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [STM32][C] - Flagi przerwań kanałów CC włączają się przy Update Event

    Powtórzę po raz trzeci. Jeśli CCR <= ARR, znacznik ustawia się przy zrównaniu wartości licznika z CCR. W przeciwnym przypadku znacznik CC ustaia się razem z UIF. Co jeszcze nie jest jasne? Z czym właściwie jest problem? W procedurze obsługi przerwania reaguje się na zdarzenia, na które chce się zareagować. Nie chcesz reagować na CC - to nie reaguj....

    Mikrokontrolery ARM   23 Gru 2016 17:31 Odpowiedzi: 30    Wyświetleń: 1554
  • REKLAMA
  • ATmega328 - Jak użyć timera bez przerwań do odmierzania czasu?

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

    Mikrokontrolery AVR   06 Gru 2015 00:46 Odpowiedzi: 8    Wyświetleń: 1011
  • [Stm32f103][C] Błąd TEIFx przy nadawaniu UART z Timer3 i ADC via DMA

    Na początek zastosuj poprawne kasowanie flagi przerwania. Zamiast: TIM3->SR &=~TIM_SR_UIF; Powinno być: TIM3->SR =~TIM_SR_UIF;

    Mikrokontrolery ARM   29 Maj 2019 21:42 Odpowiedzi: 16    Wyświetleń: 606
  • UART - odbiór w przerwaniu zwraca KKKKKKKKKKK, nadawanie działa

    Ja bym zaproponował takie coś : [syntax=c] if ((USART3->SR & USART_SR_TXE) && ( USART3->CR & USART_CR_TXEIE)) . . . [/syntax] I analogicznie dla pozostałych flag przerwań od UARTu.

    Mikrokontrolery ARM   25 Lis 2013 23:58 Odpowiedzi: 24    Wyświetleń: 2970
  • [STM32] - STM32F103 - flaga przerwania od USART RXNE

    Bit RXNEIE włącza przerwanie od dwóch flag: RXNE i ORE (overrun) - patrz tabelka USART interrupt requests . Odczyt z DR kasuje RXNE. ORE jest kasowane przez (cytat z opisu bitu ORE): "an read to the USART_SR register followed by a read to the USART_DR register".

    Mikrokontrolery ARM   18 Paź 2015 20:30 Odpowiedzi: 2    Wyświetleń: 1752
  • [STM32] [STM32][F429xx] - Błąd powrotu z przerwania EXTI0 na STM32F429-Discovery

    W przerwaniu przydałoby się kasowanie flagi od przerwania (rejestr EXTI_PR)

    Mikrokontrolery ARM   19 Paź 2014 01:27 Odpowiedzi: 2    Wyświetleń: 933
  • REKLAMA
  • [m32] Jak emulować komendy RC5 jako przyciski w menu BASCOM?

    Moim zdaniem jakoś dziwnie masz te przerwania sterowane. Po co w przerwaniu masz Enable Interrupts - włączasz raz na początku i nie wyłączasz. Disable Int0 w pętli głównej też raczej nie jest dobrym pomysłem. Przed Enable Int0 proponuję dopisać zerowanie flagi przerwania, a na końcu (pętli) idle - dzięki temu po przerwaniu pętla zacznie "iść" od początku.

    Mikrokontrolery AVR   11 Lis 2009 23:19 Odpowiedzi: 12    Wyświetleń: 1561
  • SPI - jak to zatrzymać? Gdzie w kodzie jest błąd?

    Zerowanie flagi tego przerwania jest wpisywaniem tam wartości 1 a nie zero.

    Mikrokontrolery   29 Sty 2007 20:57 Odpowiedzi: 2    Wyświetleń: 1230
  • xmega - jak zablokować kolejne wywołania przerwania w ISR(PORTC_INT0_vect)?

    cli i sei zmienią globalną flagę przerwań, blokując lub odblokowując wszystkie. Na to nakładają się priorytety przerwań kontrolera przewań i na końcu masz przerwania z danego modułu. Kolejne możesz zablokować tak jak masz, wpisując blokadę do PINCTRL lub w rejestrze kontrolnym przerwań dla danego peryferium (w tym przypadku PORT). Normalnie RETI na...

    Mikrokontrolery Początkujący   17 Lis 2015 11:38 Odpowiedzi: 8    Wyświetleń: 1104
  • Jak poprawnie obsłużyć przerwania INT1 w komunikacji z RFM12B?

    Możesz wyzerować flagę przerwania INT1 przed instrukcją sei(); : Obawiam się, że to nie uchroni przed ustawieniem przez mikrokontroler flagi INTF1, więc po ponownym włączeniu przerwania INT1 ( EIMSK |=_BV(INT1); ) i ustawieniu flagi globalnej ( sei(); ), program natychmiast wejdzie w procedurę obsługi tego przerwania. Wyzerowanie flagi i tak będzie...

    Mikrokontrolery AVR   23 Lut 2013 17:27 Odpowiedzi: 25    Wyświetleń: 8637
  • REKLAMA
  • STM32VLDiscovery - Input capture mode-liczy przy zboczu opadającym i narastający

    TIM2->SR&=!TIM_SR_CC1IF ; // Zeruję flage - to inaczej TIM2->SR &= 0; Ten and to w jakim celu? Do autora ten wykrzyknik to herezja. Poprawne kasowanie : [syntax=c]TIM2->SR = ~TIM_SR_CC1IF; [/syntax] Flagi przerwania nie kasuje się na końcu obsługi. Ponownie się wykona.

    Mikrokontrolery ARM   25 Lis 2014 20:16 Odpowiedzi: 8    Wyświetleń: 1047
  • STM32 - Program na przerwaniach - ilość taktów zegara.

    wychodzi mi jakieś 8 8 cykli to zajmuje pierwsza linijka <; wejście do przerwania to następne kilkanaście + wyjście. Sugerujesz bitbanding dla kasowania flagi przerwania? No przecież właśnie o to chodzi - żebyś nie musiał odczytywać, modyfikować i zapisywać z powrotem. Czyli twiedzisz że 6*10kHz takich przerwań to dla tego procesora pikuś i nie...

    Mikrokontrolery ARM   25 Lip 2012 11:23 Odpowiedzi: 4    Wyświetleń: 2519
  • Jak wyświetlać zmienną co 1,6 sekundy? XMEGA i odmierzanie czasu.

    Samo wejście i wyjście z przerwania nie kasuje sprzętowo flagi w typie Ex. Skasuj flagę przerwania "ręcznie" w przerwaniu i daj znać jak taka akcja się skończyła :D

    Mikrokontrolery   10 Paź 2017 08:36 Odpowiedzi: 6    Wyświetleń: 609
  • [STM32F2] Dlaczego kasowanie flagi przerwania wpływa na GPIO?

    Witam! Timer generuje przerwanie periodyczne. W procedurze obsługi testowo chciałem przełączać stan na jednej z linii portu GPIO (prymitywny debug na LED), ale... okazało się, że nie działa. W pierwszej chwili szukałem błędów w inicjalizacji timera, ale później się okazało, że przerwania się generują, tylko ja tego nie widzę, bo nie wykonuje się przełączenie...

    Mikrokontrolery ARM   13 Lis 2011 22:43 Odpowiedzi: 7    Wyświetleń: 2437
  • Jak trwale wyłączyć przerwanie INt0 w procesorze ATMega8?

    Nie działa Ci, bo nie przeczytałeś dokumentacji... http://obrazki.elektroda.net/0_118799421... Flagi przerwań czyści się przez wpisanie do nich logicznej jedynki. Trochę może paradoksalnie to wygląda, ale ma swoje logiczne uzasadnienie. Chodzi o to, że czyszcząc flagi w ten sposób da się to zrobić o wiele szybciej i co najważniejsze - bezpieczniej....

    Mikrokontrolery   04 Wrz 2007 09:35 Odpowiedzi: 5    Wyświetleń: 2947
  • STM8S - Resetowanie flagi przerwania przy ciągłym sygnale na pinie PB7

    Przekaźnik reaguje w ciagu 10..30ms. Czy pętla główna wykonuje się dłużej niż 30ms? Czy reakcja "natychmiastowa" jest konieczna? Jeśli chodzi o czas samej pętli, to przyznam szczerze nie wiem jak zmierzyć. Czas pomiędzy przełączeniem przekaźników, a tym samym zadziałania czujnika krańcowego wynosi kilka sekund. Przez ten czas, jeden przekaźnik ma działać....

    Mikrokontrolery Początkujący   05 Kwi 2018 21:21 Odpowiedzi: 8    Wyświetleń: 870
  • LPC1768, Keil - Czyszczenie flagi przerwania TIM0, startup i inne

    1. W obsłudze przerwania flaga powinna być czyszczona jako jedna z pierwszych. 2. Należy sprawdzać od, którego rejestru porównyjącego wystąpiło przerwanie i na tej podstawie podejmować dalsze działanie. Zależnie od ustawień prescalera i wartosci MR0 timera niektóre wartości nie były prawidłowo wpisywane- ale najpierw zajmijmy się najprostszym przykładem...

    Mikrokontrolery ARM   08 Sie 2015 07:59 Odpowiedzi: 4    Wyświetleń: 1353
  • Jak zmierzyć okres sygnału prostokątnego AVR 90S2313? Kod w C nie działa

    W programie przytoczonym powyzej jest tylko jedno zrodlo przerwania wiec nie ma co tu wogole sie rozwodzic nad priorytetami. Kolega napisal ze blokuje przerwania na czas nadawania. Problem w tym ze gdy nadawanie trwa za dlugo to flaga przerwania jest ustawiana ale nie nastepuje skok do przerwania. Dopiero gdy skonczy sie nadawanie przerwania sa odblokowane,...

    Mikrokontrolery   19 Sie 2005 22:07 Odpowiedzi: 9    Wyświetleń: 1943
  • STM32 - Przerwanie GPIO zlicza podwójnie przy dłuższym przytrzymaniu przycisku

    Zerowanie flagi na końcu przerwania - niedopuszczalne

    Mikrokontrolery Początkujący   28 Sie 2015 20:05 Odpowiedzi: 7    Wyświetleń: 888
  • [STM32] - STM32L052K8Tx - EXTI Przerwania dla pinu PA2

    Wiem jak działają przerwania, nie wiem z kolei jak je konfigurować. W takiej sytuacji, najprostsza droga to HAL. Akurat konfigurowanie peryferii dobrze w nim działa. Podejrzysz co robi HAL i po robocie, chyba, ze chcesz na nowo wynajdować koło. Niby wiesz jak działają. Dlaczego więc pytasz o rejestr maski przerwań zewnętrznych? To pytanie nowicjusza...

    Mikrokontrolery ARM   27 Wrz 2018 11:16 Odpowiedzi: 9    Wyświetleń: 630
  • STM32F10x DMA UART - brak aktualizacji bufora odbiorczego

    Wiem, ze odbierasz. Gdybyś chciał wysyłać użyłbyś DMA_Channel7. Ad.1. Czy poprawiłeś punkt 1. i nadal nic nie przesyła? Ad.2. Powiedz gdzie wpisujesz wartość do DMA->CNDTR? Skąd DMA wie ile danych chcesz przesłać? Debuger sam z siebie błędu nie pokazuje. Sprawdź zawartość rejestrów dla wybranego kanału DMA po włączeniu go. Sprawdź flagi przerwań i wtedy...

    Mikrokontrolery ARM   07 Mar 2017 09:39 Odpowiedzi: 4    Wyświetleń: 954
  • [ATMEGA8] Jak zrealizować obsługę przerwań RS232 w ATMEGA8 w języku C?

    Najpierw spróbuj może dodać: ...ale jak ustawię ręcznie bit UDRE w UCSRA który oznacza że bufor jest pusty, także nic się nie wysyła. To nie jest argument. Flag przerwań w AVR generalnie nie da się ustawiać programowo, niektóre można tylko wyzerować. Akurat UDRE można wyzerować tylko poprzez wpisanie bajtu danych do rejestru UDR, flaga ustawiana jest...

    Mikrokontrolery Początkujący   23 Sie 2012 21:45 Odpowiedzi: 2    Wyświetleń: 1497
  • Jak odczytać i ustawić flagi resetu w Atmega16 po nieoczekiwanym resecie?

    Druga sprawa. Skoro ma być reset np. BORF: flaga resetu przy obniżonym napięciu sieci, to czy można wcześniej zapisać do EEproma jakieś ważne dane? Zdecydowanie nie należy nic zapisywać do EEPROM przy obniżonym napięciu. Poza tym BOD nie wystawia żadnej flagi przerwania którą mógłbyś wykorzystać. On po prostu resetuje układ o ile jest włączony a następnie...

    Mikrokontrolery AVR   19 Sty 2012 13:00 Odpowiedzi: 5    Wyświetleń: 1377
  • Czy poprawnie obliczam offset bit-banding dla ARM? Adresacja rejestrów i bitów.

    Może wbiję kij w mrowisko: Po co właściwie Ci ten bitbanding? Wyjmę kij z mrowiska i odrzucę - świat nie składa się tylko z jednowątkowych programików, a w mikrokontrolerach zwykle trzeba zrobić więcej niż machanie GPIO i kasowanie flag przerwań.

    Mikrokontrolery ARM   15 Cze 2017 19:42 Odpowiedzi: 14    Wyświetleń: 1857
  • Zachowanie przerwań zgłoszonych podczas blokady w sekcji krytycznej

    Jeśli nie wykasujesz flagi, to tak.

    Mikrokontrolery   30 Maj 2021 10:29 Odpowiedzi: 6    Wyświetleń: 291
  • RS-485 na Atmega328P - błędne ustawianie stanu pinu w kodzie C

    Kolega R-MIK ma racje. Natomiast ja się zdziwiłem. Zazwyczaj nie czytałem/nie zapisywałem flagi związanej z przerwaniem tylko pisałem obsługę przerwania gdzie flaga sama była kasowana. Jako "Appendix" chciałbym przypomnieć, bo może kiedyś kolega użyje Xmegi serii E, że tam wejście w procedurę obsługi przerwania nie kasuje flagi "sprzętowo" czyli samym...

    Mikrokontrolery AVR   31 Paź 2017 22:29 Odpowiedzi: 17    Wyświetleń: 864
  • Bascom-Atmega16- skok do procedury podczas obsługi przerwan

    Wydaję mi się że jest to możliwe ale procedura umieszczona w podprogramie powinna być bardzo krótka. Pewniejszym sposobem jest stosowanie flagi w przerwaniu a w pętli głównej przetwarzanie jej.

    Mikrokontrolery AVR   28 Maj 2009 18:46 Odpowiedzi: 6    Wyświetleń: 1590
  • AVR - Obsługa przerwań dla enkodera przy dużej prędkości obrotowej

    Do kolegów co podpowiadają mi użycie makr, tak jak pisałem wczesniej, uzywam Codevision a w nim nie ma czegoś takiego - chyba. Jak już wcześniej napisałem, moim zdaniem przy takich procedurach obsługi przerwań program powinien się wyrobić bez konieczności zagnieżdżania przerwań, a przyczyna złego zliczania może leżeć gdzie indziej. Możesz oczywiście...

    Mikrokontrolery   19 Wrz 2015 19:49 Odpowiedzi: 49    Wyświetleń: 4419
  • Atmel/ATmega644PA-AU/BASCOM - [BASCOM] Wielokrotne wywołanie przewań

    Przenieś Enable Pcint0 i Enable Pcint3 zaraz przed Enable interrupts, albo zobacz co sie stanie jak skasujesz flagi tych przerwań. PCIFR.PCIF0 = 1 PCIFR.PCIF3 = 1

    Mikrokontrolery AVR   28 Lis 2016 11:54 Odpowiedzi: 14    Wyświetleń: 852
  • [xmega128a3u][int0] - PORT_ISC_LEVEL_gc - podwójne przerwanie

    0. PORT_ISC_LEVEL - jak sama nazwa wskazuje, generuje przerwanie tak długo, jak długo jest stan niski. Skasowanie flagi przerwania nie eliminuje przyczyny przerwania. Gdybyś blokował przerwania INT0 dla portu, to miałbyś pojedyncze wyzwolenia, a tak to obserwujesz 2 (i pewnie też więcej) dla przytrzymanego przycisku. 1. Xmegi mają sprzętowe odwracanie...

    Mikrokontrolery AVR   30 Lip 2014 08:16 Odpowiedzi: 3    Wyświetleń: 1197
  • [STM32][C]fatfs i najszybszy sposób zapisu danych modyfikowanych w przerwaniach

    Flagi zeruj bezpośrednio po sprintf - wtedy dane w zmiennych nie są już potrzebne i można je zmienić. Dłuższe czekanie może powodować, że w momencie przyjścia przerwania flagi są ciągle ustawione - i gubisz dane. Dość łatwo to wykryć programowo, więc możesz sprawdzić czy taka sytuacja ma miejsce.

    Mikrokontrolery   17 Mar 2012 18:22 Odpowiedzi: 12    Wyświetleń: 2287
  • flaga przerwania wewnetrznego i wyswietlanie co 0,5s

    Teraz przypomniałem sobie, że miałem podobne problemy i wydaje mi się, że coś wspólnego miało z tym Fusing. Spróbuj wyświetlać na razie bez konwersji single na tekst. Ach te problemy miałem na wersji 1.11.9.8 http://www.elektroda.pl/rtvforum/topic17...

    Mikrokontrolery AVR   30 Maj 2011 20:57 Odpowiedzi: 25    Wyświetleń: 2663
  • [Atmega8][ADC] - Przetwornik ADC z przerwaniem nie działa

    Oj pomieszałeś :) Dwie możliwości: Pierwsza wersja (opisałem wyżej): 1. wyłącz Free Running 2. zostaw przerwanie ADC, 3. przed pętlą główną w main() wywołaj pierwszą konwersję, 4. w przerwaniu ADC wykonuj to, co aktualnie wykonujesz w przerwaniu + wystartuj kolejną konwersję. Druga wersja zaproponowana przez BlueDraco: 1. wyłącz Free Running 2. zostaw...

    Mikrokontrolery AVR   20 Cze 2014 12:47 Odpowiedzi: 10    Wyświetleń: 2649
  • Przerwania timera STM32F407VGT6 nie działają bez debugowania w uVision 4

    sprawdź w dokumentacji czy aby po zresetowaniu flagi przerwania timera nie trzeba odczekać kilka instrukcji (2-3 NOP'y). Jeżeli tak jest, to w przeciwnym wypadku zaraz po wyjściu przerwanie otworzy się drugi raz i w tej sposób dioda mrugnie tak że tego nie zauważysz. Możesz to sprawdzić tak że diodę ustawisz na zapłoną (a nie stan przeciwny), to po...

    Mikrokontrolery Początkujący   23 Kwi 2012 06:44 Odpowiedzi: 7    Wyświetleń: 1487
  • Programowa eliminacja drgań przełącznika - gdzie jest błąd?

    ... i skoro ja mu wyłączam INT0, to co prawda go nie obsluguje, ale gdy tylko aktywuję przerwanie INT0, następuje obsługa przerwania sprzed sekundy? Wg mnie, tak być nie powinno, a jednak tak się dzieje. Jak to możlwie? Czy któs zna odpowiedź? Poprostu przed włączeniem przerwania dobrym zwyczajem jest skasowanie ewentualnej flagi tego przerwania. Ja...

    Mikrokontrolery   22 Paź 2005 15:38 Odpowiedzi: 8    Wyświetleń: 3043
  • Ogólny zarys programu, co w przerwaniach? Obsługa przycisków

    Moim zdadniem najlepiej jest w przerwaniach ustawiać flagi zezwalające na wykonanie danej czynności, np. odświerzenie ekranu, a samą czynność wykonywać w programie głównym. Jest z tego taki zysk, że przerwania, które jednak blokują wykonywanie się kodu, wykonują się szybko. Program główny, który może być przerywany wykonuje się w chwilach wolnych. Oczywiście,...

    Mikrokontrolery   28 Wrz 2007 10:23 Odpowiedzi: 9    Wyświetleń: 1868
  • edsim51 - Jak zrobić przerwanie diody w asemblerze?

    Mało danych. Chcesz, żeby dioda migała na przerwaniach? Czyli przerwanie włącza, następne wyłącza - tak to zrozumiałem. Co do obsługi T0 musisz zrobić obsługę przerwania od adresu 0x0BH (czyli wyzwalanie przez flagę TF0). Wstaw coś takiego po LJMP start na początku: [syntax=text]ORG 0Bh ; start przerwania CLR TF0 CPL P1.4 ; zmiana stanu wyjścia sterującego...

    Mikrokontrolery Początkujący   10 Cze 2015 21:16 Odpowiedzi: 2    Wyświetleń: 1269
  • [Atmega2560] [BASCOM] . Jak uzyskać wykrycie przerwania.

    Niestety jak używam w konfiguracji słowa PCINT4 to kompilator generuje błąd i twierdzi że to nieznane źródło przerwania. To dlatego, że w tym procesorze są tylko 3 przerwania tego typu (w innych raczej nie będzie lepiej). Piny oznaczone PCINT0...PCINT7 mogą ustawić tylko pierwszą z wspomnianych 3 flag przerwań (o numerze 0). Kolejne osiem pinów PCINT8...PCINT15...

    Mikrokontrolery AVR   09 Cze 2010 21:37 Odpowiedzi: 8    Wyświetleń: 2820
  • [STM32F103RB][C/Keil] DMA - przerwanie po zakończeniu transferu

    Trzeba jeszcze włączyć przerwanie w NVIC. BTW - nie trzeba czyścić flagi ręcznie - wejście do przerwania kasuje ją. 4\/3!!

    Mikrokontrolery ARM   01 Lut 2012 15:00 Odpowiedzi: 4    Wyświetleń: 1679
  • [stm32][eclipse][gcc] - Konfiguracja i pobieranie danych z DCMI?

    Moim zdaniem konfiguracja DMA jest trochę niepełna, a ponadto brakuje obsługi przerwania od DMA. Przynajmniej w jednym miejscu wpisz jawnie wartość do rejestru sterującego (CR = ...). Na razie wszędzie masz |= lub &=. Zakładając, że pierwszy transfer poleci i przerzucisz 19200 słów, to później DMA się zatrzyma i nic więcej nie prześle. I jak to ma coś...

    Mikrokontrolery ARM   17 Lis 2014 23:24 Odpowiedzi: 24    Wyświetleń: 2826
  • Konfiguracja jednego timera TCA0 do dwóch częstotliwości.

    Przed odpowiedzią to sprawdziłem bo kiedy użyjesz nowszego AVR128DxXX to one mają mechanizm blokady i żeby cokolwiek zmienić w konfiguracji to trzeba to zrobić jak w tańcu - w trzech taktach. Tutaj (w tym uC) jeszcze tego nie ma ale w nastepnych jest. Żeby cokolwiek zmienić musisz czekać na flagę RDY. [EDIT] Co do flag przerwań to trzeba czytać noty....

    Mikrokontrolery   09 Mar 2025 18:32 Odpowiedzi: 17    Wyświetleń: 402
  • Jak przyspieszyć reakcję na przycisk w synchronizacji z siecią elektroenergetyczną?

    Ja też :D W przerwaniu zewnętrznym należy tylko ustawiać jakąś flagę- ew. zwiększać. I w zasadzie nic więcej. A któryś z timerów ustawić tak aby co jakiś czas- xxms czy xxus generował przerwanie od przepełnienia albo CTC. Ustawić na najmniejszy wymagany odcinek czasu. W tym przerwaniu też ustawiać tylko flagę albo inkrementować- zależnie od potrzeb....

    Mikrokontrolery AVR   21 Lip 2010 11:27 Odpowiedzi: 4    Wyświetleń: 1059
  • Ustawianie flag w przerwaniu timera - dobrze, czy źle

    Witam. Moje pytanie tyczy się ogólnie programowania mikrokontrolerów. Oto kod dla STM32: Poprawiłem formatowanie kodu. Proszę używać znaczników syntax, zamiast code, wtedy składnia jest kolorowana i łatwiej czytać taki kod.

    Mikrokontrolery Początkujący   14 Paź 2018 13:31 Odpowiedzi: 1    Wyświetleń: 528
  • [Atmega 2560] Atmega 2560: Skoki w debugowaniu AVR Studio, pomijanie instrukcji w pętli for

    Efekt jest dokładnie taki jak kod - o to mogę się założyć. Twój kod ma po prostu błędy i tyle, więc czego oczekujesz? Poza faktem braku volatile "tu i tam", to zerowanie tej flagi w przerwaniu masz, ale gdzie masz jej ustawianie? Nigdzie. 4\/3!!

    Mikrokontrolery AVR   05 Gru 2010 22:49 Odpowiedzi: 7    Wyświetleń: 1404
  • [Atmega16A] Problemy z elektroniką przy sterowaniu silnikiem CN12-R-XC

    Wyłącz optymalizację. Tak swoją drogą, to styl pisania jest zły. Możesz śmiało wyłączyć przerwanie i usunąć jego wektor, a zamiast tej blokady którą masz na początku wstaw czekanie na ustawienie bitu mówiącego o przerwaniu. Tylko musisz pamiętać o wyczyszczeniu flagi po jej ustawieniu (rejestr r/cw!) while(bit_is_clear(flaga przerwania)){}; wyczyść_flagę;...

    Robotyka Modelarstwo i CNC   05 Wrz 2011 13:19 Odpowiedzi: 7    Wyświetleń: 2918
  • Dlaczego przerwanie 0 w ATmega8 nie działa natychmiast?

    Dokumentacja ATmega8, strona 71: The bit TOV0 is set (one) when an overflow occurs in Timer/Counter0. TOV0 is cleared by hardware when executing the corresponding interrupt Handling Vector. Alternatively, TOV0 is cleared by writing a logic one to the flag. When the SREG I-bit, TOIE0 (Timer/Counter0 Overflow Interrupt Enable), and TOV0 are set (one),...

    Mikrokontrolery   02 Mar 2006 13:01 Odpowiedzi: 3    Wyświetleń: 1203
  • ATmega32: Przerwanie INT2 aktywuje się bez sygnału wyzwalającego

    !. Ustaw PIN-y INT jako wejścia z podciąganiem. 2. Tuż przed aktywacją przerwań wyzeruj ich flagi wpisując logiczne 1.

    Mikrokontrolery AVR   01 Paź 2011 17:46 Odpowiedzi: 3    Wyświetleń: 2108
  • [atmega32][C] - Pomiar częstotliwości z 7 czujników, jaką metodą?

    O ile dorze rozumiem idee tego przerwania (nie miałem okazji wykorzystać go w praktyce) to określona zmiana na którymkolwiek pinie z grupy wywołuje przerwanie... i teraz myślałem, żeby za pomocą prostych warunków zliczać, który wywołał i ile w danym czasie. Problem widzę w momencie, gdy przykładowo czujnik A wywoła przerwanie w bardzo krótkim czasie...

    Mikrokontrolery   17 Lip 2015 23:48 Odpowiedzi: 7    Wyświetleń: 831
  • [STM32] - zwis przy próbie użycia przerwania (używam jednego stosu?)

    Prawidłowe kasowanie flagi w przerwaniu: TIM3->SR = ~TIM_SR_UIF; Prawidłowe używanie rejestrów BSRR: GPIOC->BSRR = GPIO_BSRR_BR13; Piszesz że "NVIC_EnableIRQ(TIM3_IRQn);" zawiesza układ. Używasz debuggera czy wnioskujesz to po tym, że nie zapala się żadna dioda? Jeśli używasz debuggera, to raczej powinieneś widzieć na czym dokładnie się zawiesza. Jeśli...

    Mikrokontrolery Początkujący   10 Maj 2019 08:53 Odpowiedzi: 20    Wyświetleń: 993
  • BASCOM - Cztery wyświetlacze 7-segmentowe i DS18B20 - migotanie

    Jak używasz jakiejś bardzo starej wersji spolszczonej to możliwe, ale Demo2075 już nawet to potrafi. Możesz użyć Twojej poprzedniej konfiguracji z Load Timer, ale dodaj ustawianie tej flagi 5ms w przerwaniu.

    Mikrokontrolery AVR   04 Cze 2016 21:29 Odpowiedzi: 17    Wyświetleń: 1530
  • 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ń: 6027
  • Atmega8-Bascom: Jak poprawnie skonfigurować układ opóźniający na zbocze?

    Niedokładnie przeczytałeś. W zakładce nawigator: Config Timer- uwaga! po ustawieniu prascale licznik natychmiast zaczyna zliczanie. Można użyć start Timerx i stop Timerx Np. Config timerx, prescale 'timer zaczyna liczyć stop Timerx 'timer stoi- ale już coś zliczył Timerx=y 'timer ma wartość początkową =y - np.0 Start timerx ' Timerx zaczyna liczyć od...

    Mikrokontrolery AVR   19 Lut 2010 13:51 Odpowiedzi: 24    Wyświetleń: 2378
  • ATmega32, Timer2 RTC, SLEEP_MODE_PWR_SAVE – powrót do snu po przerwaniu Timer2

    na podstawie flagi z przerwania INT2 na początku pętli głównej wchodzić w uśpienie. Ale pętla główna jest wykonywana powiedzmy 0.5 sek. Co sekundę wykonywane jest przerwanie od Timer2. Więc procesor będzie w uśpieniu tylko ok. 50% czasu. Ale problem z długim wykonywaniem się pętli głównej wystąpi tylko za pierwszym razem po zaniku zasilania (ustawienie...

    Mikrokontrolery AVR   14 Paź 2014 18:47 Odpowiedzi: 8    Wyświetleń: 1173
  • STM32F103RBT6 - Fast PWM1 rozpoczęcie pracy z opóźnieniem

    Za wiele nie pomogę, bo HAL mnie odstrasza, ale to co się rzuca w oczy: - w przerwaniu TIM2 przenieś czyszczenie flagi przerwania zaraz za warunek sprawdzający źródło przerwania (flagi nie należy kasować na końcu procedury) - w przerwaniu TIM3 nie kasujesz flagi przerwania w ogóle

    Mikrokontrolery ARM   25 Sie 2015 10:01 Odpowiedzi: 5    Wyświetleń: 711
  • [Bascom][ATMega8]Serout - brak nadawania w symulacji.

    Chcąc bezproblemowo zmieniać kanały powinieneś zostawić GETADC() i w konfiguracji zmienić na SINGLE . W trybie FREE przetwornik mierzy ciągle (ustawiając flagi przerwania ADI F po każdym pomiarze), a ostatni wynik będzie znajdował się w zmiennej specjalnej ADCD (typu Word ). Jednak zmiana kanału pomiaru jest nieco problematyczna, bo kanały musiałbyś...

    Mikrokontrolery AVR   03 Paź 2009 17:33 Odpowiedzi: 3    Wyświetleń: 1197
  • Konfiguracja płytki z MAX31865 i PT100 - błąd zakresu pomiaru temperatury

    Tak na szybko bez analizy to nie widzę abyś kasował flagi od przerwania. RTC.INTFLAGS = RTC_OVF_bm; RTC.PITINTFLAGS = RTC_PI_bm; I może pokaż kod inicjalizujący, będzie łatwiej analizować niż ze zdjęcia.

    Mikrokontrolery   06 Maj 2025 10:38 Odpowiedzi: 69    Wyświetleń: 1677
  • Attiny2313 konfiguracja watchdoga i wybudzanie uC z trybu uśpienia

    WDTCSR |= (1<<WDCE) | (1<<WD...     WDTCSR &= ~(1<<WDP2) &...     WDTCSR |= (1<<WDIE) | (1<&l... ////ustaw wdt na 0,032s Read-Modify-Write jest tu niepotrzebne i stwarza ryzyko że konfiguracja się nie powiedzie ponieważ... Żeby cokolwiek zmienić w WD potrzebna jest specjalna...

    Mikrokontrolery AVR   24 Maj 2022 06:32 Odpowiedzi: 9    Wyświetleń: 774
  • [STM32] [STM32][C] Jak zapewnić pełną transmisję danych przez USART z DMA i RS485?

    W przerwaniu od DMA oczekujesz na ustawienie flagi oznaczającej zakończenie transmisji (TC). Jeśli chcesz super elegancko, ale niekoniecznie lepiej, to w momencie rozpoczęcia transmisji DMA włącz przerwanie od tej flagi w module UART - nadajnik będziesz wyłączał dopiero w tym przerwaniu. 4\/3!!

    Mikrokontrolery ARM   10 Lut 2012 03:27 Odpowiedzi: 8    Wyświetleń: 3578
  • [LPC2378] Przerwanie timera0 wywołuje się tylko raz - analiza kodu ARM

    To Ci powinno ruszyć, napisałem kiedys pod Keila uVision3 V3.63. Dziala z Makieta Olimex'u LPC-2378-STK-A: // (LPC2378) mandaryn 2009 #include <lpc23xx.h> int flaga=0; // 0 -> dioda OFF, 1 -> dioda ON __irq void przerwanie (void) { if(flaga==0) // Gdy dioda wylaczona { FIO2SET|=0x00000001; // Wlaczenie diody...

    Mikrokontrolery ARM   07 Kwi 2009 15:16 Odpowiedzi: 11    Wyświetleń: 2008
  • Pilot RC-5 na AVR: brak reakcji lub wysyłanie dwóch sygnałów jednocześnie

    Kondensatory przy rezonatorze należy podłączyć do GND a nie do Vcc. Oj, ale babol - przegapiłem go :) Dodam jeszcze, że to nadawanie 2 razy jest efektem drgań styków (jak się ich pozbyć podałem Ci link w poprzednim poście). Twoje przerwania długo trwają. Gdy styk drga, to wywoła pierwsze przerwanie, a po rozpoczęciu jego obsługi zerowana jest flaga...

    Mikrokontrolery AVR   17 Maj 2012 20:55 Odpowiedzi: 9    Wyświetleń: 1431
  • [C++] Jak uzyskać PWM na innym pinie ATmega8535 po uszkodzeniu domyślnych?

    Witam, Uruchom normalnie Timer w trybie PWM. Teraz dodadkowo potrzebne Ci będa dwa przerwania tego timera: CTC i Timer Overflow. W przerwaniu CTC ustawiaj pin a w przerwaniu OVF go zeruj lub odwrotnie jeśli chcesz tryb invert PWM. Nie zapomnij o od maskowaniu przerwań i ustawieniu globalnej flagi zezwalającej na przerwania oraz nie przesadź z częstotliwością...

    Mikrokontrolery AVR   24 Mar 2011 18:50 Odpowiedzi: 2    Wyświetleń: 942
  • ATMega 32 nie wykrywa szybkiego impulsu z czujnika szczelinowego przy 120m/s

    Czekaj, czekaj. Jeden czujnik odpali przerwanie INT0 a w tym przerwaniu sie uruchomi timer. Drugi czujnik po INT1 ma go wyłączyć. Raczej o tym myślałem. Lepiej tak: czy ktoś by mi dokładnie wytłumaczył jak wywoływać timery, zbierać z nich czas, do czego służą poszczególne rejestry. Noty katalogowej tego procka po polsku nie znalazłem, a dobrego poradnika...

    Mikrokontrolery AVR   07 Paź 2017 14:55 Odpowiedzi: 32    Wyświetleń: 3747
  • Jak bezpośrednio przypisać zmienną bitową do pinu PORTD7 w WinAVR?

    Rozwiązanie z postu powyżej jest najlepszym według mnie: if(v) PORTB |= (1<<PB3); else PORTB &=~(1<<PB3); Żeby jednak traktować pojedynczy bit portu jako osobną zmienną można wykorzystać fakt, że rejestry io posiadają swój adres w przestrzeni danych, przez co można uzyskać adres i rzutować wskaźnik na jakąś bardziej...

    Mikrokontrolery AVR   05 Kwi 2010 16:57 Odpowiedzi: 7    Wyświetleń: 1337
  • Komparator analogowy + ograniczenie prądowe - XMEGA

    Jeśli dobrze rozumiem, chcesz by przerwanie pochodzące od komparatora wywołało szybką reakcję ( np. odcięcie zasilania czy ograniczenie prądu do zewnętrznego, sterowanego obwodu ), czy tak ? Więc wybierasz przerwanie zboczem narastającym, w obsłudze przerwania ustawiasz flagę i.. tyle. Resztę realizujesz za pomocą tej flagi. Resetować ta flagę możesz...

    Mikrokontrolery   04 Lis 2017 18:54 Odpowiedzi: 25    Wyświetleń: 1422
  • Atmega 32 - dlaczego przerwanie INT1 nie działa poprawnie?

    W ogóle nie używamy _delay() -nie tylko w przerwaniach. Poza tym- po co jest to kasowanie flagi przerwania w przerwaniu- po obsłudze przerwania ta flaga sama się kasuje.

    Mikrokontrolery AVR   22 Maj 2011 08:17 Odpowiedzi: 10    Wyświetleń: 2861
  • [Atmega32] [Atmega32][Eclipse/C] Problem z przerwaniami INT1 i INT0 w bramie świetlnej

    Właczasz/ wyłączasz flagi zezwolenia na obsługę przerwań. A nie kasujesz flag przerwań- tych w rejestrze GIFR. One tam zostają- i jak tylko ponownie zezwolisz na obsługę przerwania- to się wykona, no bo flaga przerwania jest ustawiona. Czym innym jest flaga przerwania a czym innym flaga zezwolenia na obsługę przerwania. Co zresztą pozwala na obsługę...

    Mikrokontrolery AVR   07 Cze 2011 08:08 Odpowiedzi: 12    Wyświetleń: 3053
  • STM32F4 - Obsługa wielokrotnych przerwań EXTI dla dwóch czytników kart

    Flagi przerwań czyści się na początku przerwania.

    Mikrokontrolery   16 Maj 2015 16:22 Odpowiedzi: 7    Wyświetleń: 1125
  • LPC4088 - I2S odbiór i wysyłanie dźwięku - trzaski, szumy

    A gdzie masz kasowanie flagi przerwania ?

    Mikrokontrolery ARM   26 Sty 2015 20:39 Odpowiedzi: 2    Wyświetleń: 888
  • Obsługa jednoczesnych przerwań w ATMEGA88 z biblioteką PinChangeInterrupt

    Po pierwsze, co to za biblioteka? Co do przerwań - dokładnie dla użytego procesora masz to opisane w nocie. Najlepiej tam sprawdzić. Generalnie jest coś takiego jak priorytet przerwań - przerwanie o wyższym priorytecie jest wykonywane najpierw. Przerwania mogą być "kolejkowane" o ile mają różne flagi przerwań - czyli są to np. różne przerwania z pinu....

    Mikrokontrolery AVR   29 Gru 2023 08:29 Odpowiedzi: 4    Wyświetleń: 249
  • [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
  • STM32F407 - Menu postawione na przerwaniach zewnętrznych

    Menu opiera się na przerwaniach EXTI, które generuję za pomocą joysticka 5 położeniowego. I tu zakończyłem dalsze czytanie. Obsługa przerwań też skopana. Skasowanie flagi w warunku, który może się nie wykonać oraz na końcu przerwania? PS. Menu tworzy się inaczej Dodano po 1 Umieszczenie kasowania flagi tylko w warunku else powinno według mnie likwidować...

    Mikrokontrolery ARM   28 Kwi 2016 14:25 Odpowiedzi: 5    Wyświetleń: 903
  • [AVR][Atmega328]Przerwania w trybie asynchronicznym

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

    Mikrokontrolery   13 Lis 2020 17:29 Odpowiedzi: 4    Wyświetleń: 354
  • Przerwania proste i przyjemne - część 1 - dobre praktyki programowania

    (at)lazor Dlaczego patrzysz przez pryzmat architektury, którą znasz, a nie odnosisz się do artykułu? Wszystkie 3 części dotyczą prostych struktur 8-bitowych jakie były na rynku 10-20 lat temu, gdzie jedynym efektem przejścia do obsługi przerwania jest załadowanie licznika rozkazów adresem ISR i ustawienie flagi obsługi przerwania. A jeśli robisz w userlandzie...

    Artykuły   23 Lut 2022 13:10 Odpowiedzi: 11    Wyświetleń: 3072
  • PIC16F883 - Jak zapalić diodę po naciśnięciu uSWITCH?

    AVE... Prawda, ale dla prostych programów. W bardziej zaawansowanych jednak lepiej zadania zwalać na pętlę główną, a w przerwaniach tylko sobie flagi ustawiać. Bardziej elegancko wtedy jest...

    Mikrokontrolery PIC   08 Sie 2013 12:38 Odpowiedzi: 30    Wyświetleń: 5373
  • Jak odczytać dane z EEPROM 64k za pomocą TWI na Atmega8?

    ... A jak się sprawa przedstawia kiedy sam TWI wpisze tam 1, czy przerwanie nie powinno się wtedy wyzwolić?... Powinno , ale pod warunkiem że : flaga I w SREG=1 i flaga TWIE w TWCR=1.Przed opuszczeniem procedury przerwania , należy wyzerować(wpisać 1) do flagi TWINT w TWCR , by uniknąć kolejnego przerwania. Piotrek

    Mikrokontrolery   19 Sie 2007 13:52 Odpowiedzi: 10    Wyświetleń: 2090
  • [AVR-GCC] [AVR-GCC][Attiny2313] Obsługa przycisków w przerwaniu INT0 dla RC5

    Brutus_gsm : Radził bym Ci przeprojektować trochę ten kod: ustawianie flagi I (sei()) w przerwaniu jest największym błędem (chyba, że wiesz co robisz oraz to kontrolujesz). Przed wyjściem z funkcji przerwania ustawiasz flagę I (jeśli przyjdą kolejne przerwania, pojawią się kolejne wywołania i przepełni się stos - błąd), po czym usypiasz procesor (zakładając...

    Mikrokontrolery AVR   16 Lut 2011 19:27 Odpowiedzi: 16    Wyświetleń: 4499
  • Jak zarejestrować pierwsze zbocze wyzwalające na PIC18LF46K80 bez przerwań?

    Nie musi to być stricte funkcja przerwania tylko sprawdzanie flagi przerwania w pętli, która zapisuje wyniki. Po wykryciu przerwania INT od przycisku niech od razu zablokuje to przerwanie i zgasi jego flagę.

    Mikrokontrolery   29 Mar 2017 20:14 Odpowiedzi: 7    Wyświetleń: 879
  • AVR [ATMEGA48] , Assambler - samoistna zmiana taktowania uC

    Rejestr SREG zawiera podstawowe flagi mówiące o stanie procesora potrzebne do kontroli wykonywania programu (warunki, skoki itd.) Na czas obsługi przerwania należy zapamiętać te flagi gdyż kod w przerwaniu je oczywiscie może zmienić. Po powrocie z przerwania procesor podejmuje program w miejscu wystąpienia przerwania i musi wiedzieć co sie działo wcześniej....

    Mikrokontrolery AVR   19 Wrz 2010 19:24 Odpowiedzi: 11    Wyświetleń: 2277
  • STM32F103C8 przerwanie od TIM2 odpala się na starcie

    pomiędzy włączeniem licznika a kasowaniem flagi przerwań miałem opóźnienie, które powinno spowodować to że zdążą sie wpisać nowe wartości do rejestrów. Mógłbyś pokazać ten kod z opóźnieniem o którym piszesz?

    Mikrokontrolery ARM   16 Lut 2021 08:29 Odpowiedzi: 29    Wyświetleń: 1077
  • Dlaczego wyświetlane są inne kody przycisków? LPC1114, obsługa pilota RC5.

    (at)KamilCWK: nadal kasujesz flagi poza blokiem if {} sprawdzającym źródło przerwania, najlepiej kasuj flagę zaraz po if. [syntax=c] void PIOINT3_IRQHandler (void) { LPC_TMR16B0->TCR = 0;// stop timer CTB0 if (RC5_PORT->MIS & RC5_PIN)// sprawdzenie czy przerwanie od P3.0 { RC5_PORT->IC = RC5_PIN;// zerowanie flagi przerwania od P3.0 // ... dlasza czesc...

    Mikrokontrolery ARM   23 Wrz 2015 19:34 Odpowiedzi: 22    Wyświetleń: 1947
  • AtMega 128 - problem z odczytem UART i przerwaniami RXCIE, TXCIE

    W zasadzie dlugiiii chyba robisz w tym przerwaniu "masło maślane". To chyba będzie działać bo kasowanie flagi przerwania następuje po obsłudze ale rozumiem irytację tadzik85. Mnie taki kod też nieco irytuje.

    Mikrokontrolery AVR   05 Maj 2011 22:22 Odpowiedzi: 26    Wyświetleń: 1722
  • USART3 - STM32F4 Złe dane przy odbieraniu w przerwaniu

    Zaraz po wejściu do procedury przerwania odczytuj dane z rejestru odbiorczego UART (DR) co jednocześnie "czyścli" flagi przerwań. Może to pomoże :)

    Mikrokontrolery ARM   08 Sie 2014 11:07 Odpowiedzi: 4    Wyświetleń: 993
  • Jak zerować flagę przerwania w asm dla Atmega8? Zerowanie TIFR w kodzie

    Witam mam mały problem z programem w asm dla Atmega8. Program napisany na zajęciach, więc jego przeznaczenie to nauka. Problem pojawił się taki, iż nie rozumiem sposobu zerowania rejestru TIFR (a tym samym flagi przerwania - zaznaczyłem miejsce w kodzie). .INCLUDE "m8def.inc" .ORG $0000 RJMP RESETaddr .ORG $0013 RESETaddr: LDI R16,High(RAMEND) OUT SPH,R16...

    Mikrokontrolery   17 Sty 2009 13:50 Odpowiedzi: 2    Wyświetleń: 990
  • Obsługa wielu przerwań w asemblerze PIC – jak sprawdzać flagi po org 0x04?

    Dobrze rozumiesz. Są nawet przykładowe kody w Reference Manualu dla PIC midrange.

    Mikrokontrolery PIC   16 Mar 2011 22:00 Odpowiedzi: 1    Wyświetleń: 1026
  • Jak przerobić kod w j. ASM aby działał tak jak chcę

    Nie widzę, jak robisz tu opóźnienie o 64 sekundy - czy TIFR to rejestr flag przerwań z timerów? Nie widzę sensu używania zmiennej 'toggle' - poza tym, że podwaja czas między zmianami stanów wyjść (zmiany są co drugie przerwanie z timera, o ile dobrze zgaduję, co to jest TIFR).

    Początkujący Elektronicy   25 Sie 2021 22:38 Odpowiedzi: 48    Wyświetleń: 1833
  • Błędne pomiary odległości z LPC1114 i HC-SR04 - analiza kodu i przerwań

    Napisz coś podobnego jak poniżej: [syntax=c] // zmienne globalne dostepne rowniez w przerwaniu volatile uint32_t PulseWidth; volatile uint8_t zakonczono_pomiar = 0; // obsluga przerwania TMR32B0 void TIMER32_0_IRQHandler(void) { static uint32_t LastCapture = 0; if ( LPC_TMR32B0->IR & (0x1<<4) ) // sprawdzenie czy przerwanie od kanalu zliczajacego...

    Mikrokontrolery Początkujący   02 Maj 2017 19:55 Odpowiedzi: 9    Wyświetleń: 1740
  • Gdzie znajdę opis bitów rejestrów SFR Atmega8 dla USART i Timerów?

    Masz rację ;-)... brakuje tylko trzeciej flagi - przerwania od RX :-). Tej poszukam niebawem ;-)... robiw

    Mikrokontrolery   21 Lis 2007 16:39 Odpowiedzi: 5    Wyświetleń: 2791
  • Różnice między zdarzeniami a przerwaniami w STM32F103

    OK, ale skąd mam wiedzieć które peryferia kasują same flagi a które nie? I ważna też sprawa, doczytałem że są dwie flagi przerwania. Jedna którą ustawia dany układ sam z siebie i druga która znajduje się w NVIC od tego układu? Jedna i druga jest ustawiana podczas przerwania, ALE dlaczego kasuje się tylko flagę w układzie a nie w NVIC? 2. Co będzie jak...

    Mikrokontrolery ARM   18 Mar 2016 12:32 Odpowiedzi: 51    Wyświetleń: 4728
  • 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ń: 3294
  • Stabilizacja pomiaru częstotliwości na ATmega16 z użyciem timerów 0 i 1

    Generalnie posługujesz się flagami przerwań w sposób, który utrudnia pisanie kodu. Zamiast sprawdzać w pętli głównej flagi przerwań, po prostu definiuj funkcje obsługi przerwań, a w nich ewentualnie (jeżeli musisz) ustawiaj flagi w zmiennych globalnych i je sprawdzaj w pętli głównej. Dotyczy to zarówno Timera jak i ADC. Dodatkowo nie będziesz sobie...

    Mikrokontrolery AVR   02 Sty 2012 12:40 Odpowiedzi: 38    Wyświetleń: 4670
  • [ATMEGA8][BASCOM] Wyłączenie przerwań nie do końca działa ..

    Dzięki ;) Faktycznie, kasowanie flagi przerwań pomogło. Jedna linijka załatwiła problem. Co z tym przyciskiem zerującym ? Jakaś podpowiedź ?

    Mikrokontrolery AVR   06 Mar 2010 22:16 Odpowiedzi: 7    Wyświetleń: 1821
  • Jak wyłączyć inne przerwania podczas obsługi ISR w AVR?

    Miałem kiedyś podobne problemy i może chodzić o kasowanie flagi przerwania. Ja w Atmega8 po prostu kasowałem tę flagę przez wpisanie 1 do całego rejestru na końcu przerwania i problem zniknął: GIFR=0xff;

    Mikrokontrolery   03 Sty 2008 20:57 Odpowiedzi: 8    Wyświetleń: 2281
  • PIC18F45K50 i PIC16F1619 - Spadek częstotliwości przełączania pinu przy przerwaniach

    flagi przerwania czyści się po obsłużeniu przerwania, bo inaczej mona mieć przerwanie w trakcie obsługi przerwania. To zależy od wielu czynników, tj np. typ przerwania, rodzaju peryferium, budowy kontrolera przerwań... Tego typu podejście może spowodować zgubienie jakiegoś zdarzenia.

    Mikrokontrolery PIC   05 Gru 2016 23:18 Odpowiedzi: 30    Wyświetleń: 4665
  • atmega16, AVR Studio, C - różne czasy wykonania fragmentu kodu

    Napisz to porządnie na przerwaniach , ale nie poprzez sprawdzanie flagi przerwania tylko przez funkcje ISR() i gdy będą kłopoty to wklej cały kod.

    Mikrokontrolery AVR   04 Cze 2011 19:11 Odpowiedzi: 13    Wyświetleń: 2042
  • Czy przerwanie jest "przechowywane"? Uszkodzona Atmega?

    Idzmy głównym wątkiem bez cofania sie. Tak, uaktywnia ale już wiem, ze było ono przechowywane w SREG. To jest wyjaśnione. W SREG przechowywana jest informacja o fladze I, czyli fakt włączenia lub wyłączenia przerwań globalnych. Nie ma to nic wspólnego z "przechowywaniem" informacji o przerwaniach INTx. Instrukcjami operującymi na fladze I w SREG są:...

    Mikrokontrolery AVR   06 Sie 2019 15:46 Odpowiedzi: 21    Wyświetleń: 1149
  • [STM32L0] - RTC Alarm B nie działa w trybie deep sleep w STM32L051

    Flag przerwań nie kasujemy na końcu przerwania, PWR->CSR &= PWR_CSR_EWUP2; a to co?????? Popraw kod usuń magic numbers

    Mikrokontrolery ARM   16 Sty 2017 19:06 Odpowiedzi: 6    Wyświetleń: 777
  • Jak wywołać programowe przerwanie w ATMEGA644 bez użycia wolnych pinów?

    Powiedzmy, że mam nieużywany SPI, flagi przerwania w nim nie ustawię, bo zapis flagi kasuje ją. . Flaga SPIF jest tylko do odczytu, dlatego nie możesz programowo zmienić jej stanu. Natomiast flagi w rejestrze EIFR można zapisywać i odczytywać, więc proponuję spróbować.

    Mikrokontrolery AVR   18 Sty 2018 21:38 Odpowiedzi: 51    Wyświetleń: 2295
  • Atmega16 - błędny odczyt z EEPROM po odłączeniu zasilania

    Dobra praktyka nakazuje aby po grzebaniu w konfiguracji któregoś z peryferii które obsługuje przerwania, kasować na końcu flagi, tak samo dobra praktyka nakazuje kasować flagi przerwań gdy włączamy zezwolenie na nie czy to globalne czy lokalne (dla danego zasobu).

    Mikrokontrolery AVR   02 Kwi 2009 16:01 Odpowiedzi: 10    Wyświetleń: 1693