kasowanie flagi przerwania

Znaleziono około 453 wyników dla: kasowanie flagi przerwania
  • [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ń: 618
  • [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ń: 939
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [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ń: 2440
  • REKLAMA
  • 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
  • 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ń: 2525
  • REKLAMA
  • [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ń: 633
  • [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ń: 996
  • 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ń: 1755
  • 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ń: 2965
  • 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ń: 2873
  • 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ń: 894
  • 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ń: 1080
  • 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 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ń: 2299
  • REKLAMA
  • 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ń: 1725
  • [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ń: 1851
  • 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ń: 888
  • 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ń: 1696
  • [ATMega128] [ATMega128][C] Przerwanie INT1 wyzwalane ciągle zamiast na narastające zbocze

    Proponuję poczytać o EIFR... I proszę zastanowić się, czy warto (i dlaczego) kasować flagi przerwań w procedurze jego obsługi...

    Mikrokontrolery AVR   28 Mar 2010 21:25 Odpowiedzi: 15    Wyświetleń: 1501
  • Przerwanie Int0 w Atmel Bascom - jak zakończyć podprogram przy niskim stanie?

    '51 nie wymaga sprzętowego kasowania flagi przerwania, załatwia to rozkaz RETI Wystarczy spojżeć do dokumentacji. I tak było od wieków istnienia '51

    Mikrokontrolery   21 Lip 2004 18:14 Odpowiedzi: 21    Wyświetleń: 1548
  • STM32 F303VC6 - Konfiguracja przerwań TIM7 na rejestrach, problem z częstotliwością

    Tablicami NVIC się nie przejmuj. Korzystaj z funkcji dostarczonych przez CMSIS, w tym przypadku nie warto stosować rejestrów wprost. Konfiguracja Timera OK, choć kolejność nie należy do poprawnych. Przyjrzyj się jeszcze rejestrowi EGR. Przerwanie? Brak kasowania flagi skutkuje ciągłym jego wywoływaniem. Flagę kasuje się na początku przerwania. I taka...

    Mikrokontrolery   28 Lip 2015 21:58 Odpowiedzi: 4    Wyświetleń: 933
  • Atmel/ATmega644PA-AU/BASCOM - [BASCOM] Wielokrotne wywołanie przewań

    Pierwszy pomysł nic nie dał. Za to drugi rewelacja :D Wstawiłem kasowanie flag przerwań tuż przed Enable Interrupts i działa jak należy. Czyli coś skopane w kompilatorze Bascoma... Wielkie dzięki.

    Mikrokontrolery AVR   28 Lis 2016 11:54 Odpowiedzi: 14    Wyświetleń: 867
  • 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ń: 1053
  • [STM32F2] [STM32F217] Przerwanie DMA nie działa mimo poprawnej transmisji danych

    Dawałem breakpointa, również dioda na płytce zasygnalizuje mi wejście do void DMA2_Stream1_IRQHandler(void) W kodzie obsługi przerwania jest tylko włączenie diody, a potem kasowanie flagi przerwania. Ale gafa...zapomniałem ustawić bit TCIE w rejestrze CR :| ehh

    Mikrokontrolery ARM   15 Cze 2012 07:03 Odpowiedzi: 2    Wyświetleń: 1562
  • 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ń: 750
  • ATxmega - jak podłączyć i zainicjalizować pomiar różnicowy napięcia?

    Jakiego typu jest zmienna adc? float? Jakie jest taktowanie IO? Jaki model XMEGA? Generalnie nie podoba mi się to kasowanie flagi przerwania, podobnie odblokowanie układu wzmacniacza na wejściu ADC. Odpal powyższy kod w symulatorze i sprawdź po inicjalizacji czy rejestry ADC wyglądają rzeczywiście tak jakbyś sobie tego życzył.

    Mikrokontrolery AVR   06 Paź 2014 21:20 Odpowiedzi: 23    Wyświetleń: 2613
  • STM32F407 - Menu postawione na przerwaniach zewnętrznych

    tadzik85 odniosę się do twojej wypowiedzi. 1. Dlaczego nie powinienem kasować flagi przerwania wewnątrz programu? Przerwanie odblokowane zostaje wtedy dopiero po wykonaniu zadania, które zostało za jego pomocą wykonane. 2. Skoro tak skrytykowałeś moją metodę wykonania menu, może podasz mi jakieś inne rozwiązanie, które nie jest herezją?

    Mikrokontrolery ARM   28 Kwi 2016 14:25 Odpowiedzi: 5    Wyświetleń: 906
  • [PIC 18F452] Jak poprawnie skonfigurować przerwania timera0 w PIC 18F452?

    Ja pisze w C18 Microchipa i nie korzystam z zadnych wbudowanych funkcji w stylu setup_timer_0(RTCC_INTERNAL|RTCC_DIV_16)... sprobuj wlaczyc timer wpisujac wartosci bezposrednio do rejestrow cos jak: TMR1IF = 1; TMR1IE = 1; T1CON = 0b01110000; TMR1L = 0xEF; // 20 ms TMR1H = 0xD8; TMR1ON = 1; Nie widze u Ciebie kasowania flagi TMR0IF w obsludze przerwania

    Mikrokontrolery   25 Kwi 2007 11:00 Odpowiedzi: 4    Wyświetleń: 2109
  • ARM9 + Linux: Jak przyspieszyć sterownik SPI dla MCP2510?

    spróbuje zastosować pacha ze stronki, którą podałem wyżej i wtedy zobaczę. Przerzucę się też w najbliższym czasie na mcp2515 bo widzę że jest szybszy dzięki automatycznemu kasowaniu flag przerwań. Szkoda, że nie mam pakietu SocketCan. Muszę spróbować go jakoś dodać do Buildroota

    Mikrokontrolery ARM   03 Gru 2010 09:04 Odpowiedzi: 63    Wyświetleń: 10196
  • 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ń: 1956
  • 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ń: 1155
  • Jak odczytać dane z EEPROM 64k za pomocą TWI na Atmega8?

    Co do kasowania przez wpisywanie jedynki - to jest jak najbardziej poprawne: http://www.elektroda.pl/rtvforum/viewtop... Nie analizowałem kodu zbyt dokładnie, ale jakkolwiek brakuje właśnie kasowania flagi przerwania TWINT. Dodatkowo (z tego co wyczytałem) trzeba flagę kasować po wprowadzeniu dodatkowych danych do transmisji....

    Mikrokontrolery   19 Sie 2007 13:52 Odpowiedzi: 10    Wyświetleń: 2108
  • [STM32] Jak skonfigurować NVIC dla przerwań w STM32 bez biblioteki ST?

    1. Dla SysTicka nie włączasz NVIC, bo to przerwanie jest w NVIC zawsze włączone (w ogóle nie da się go wyłączyć inaczej niż wyłączając globalne zezwolenie na jakiekolwiek przerwania). 2. Generowanie przerwania włączasz w SysTicku [; Reasumując: - SysTick->LOAD - wartość "przeładowania" - SysTick->CTRL - dla takiego działania jak chcesz ustawiasz tam...

    Mikrokontrolery ARM   05 Gru 2011 15:49 Odpowiedzi: 7    Wyświetleń: 2433
  • [BASCOM] - UART- dwu kierunkowy przesył zmiennych.

    Nie widzę zamieniania Long na Byte. W tym przypadku trzeba zrobić albo: 1. Odpytywać układ po kolei o każdą część zmiennej Long (czyli 4 razy). 2. Zrobić ramkę danych która to prześle w całości (coś jak mój kod tylko jakoś prościej może na początek). Da to kontrolę błędów a więc pewniejszą transmisję jak się przesyła raz zmienne Byte a raz Long. 3....

    Mikrokontrolery Początkujący   11 Sie 2013 14:14 Odpowiedzi: 38    Wyświetleń: 5433
  • STM32F429I-DISCO EXTI zewnętrzne przerwanie

    Witam mam lekki problem, mianowicie staram się oprogramować zewnętrzne przerwanie, standardowo wywoływane po wciśnięciu przycisku, reagujące na zbocze opadające. Okej, wszystko elegancko ale po wejściu w przerwanie nie jest kasowana flaga przerwania. Przeglądając RM, nie odnalazłem żadnego rejestru w EXTI, który by za to odpowiadał. Pytanie brzmi zatem:...

    Mikrokontrolery Początkujący   07 Paź 2015 23:26 Odpowiedzi: 6    Wyświetleń: 1317
  • Bascom, DS18B20 – jak zastąpić waitms 750 obsługą Timer0 przy odczycie temperatury

    Kasować licznik- a nie przerwania- na początek. Kasować licznik i musisz zastosować dwie flagi, inaczej nie da rady. Jedna sprawdzająca czy już możesz odczytać dane, drugie sprawdzająca czy już możesz wysłać żądanie odczytu:)

    Mikrokontrolery   04 Kwi 2010 21:36 Odpowiedzi: 26    Wyświetleń: 4846
  • [LPC1114] Jak skonfigurować GPIO jako źródło przerwania w LPC1114?

    W cośtam - kasowanie flagi przerwania. Stwierdzam na podstawie takiej, że ustawiłam sobie break point'a na cośtam i nigdy się nie zatrzymuje. Zresztą używam Keila i tam na zielono zaznacza linijki kodu, które zostały chociaż raz wykonane, a ta nie jest nigdy. Zmieniam w debugerze w I/O port, bo wydaje mi się, że to wychodzi na to samo jak i na sprzęcie....

    Mikrokontrolery ARM   20 Gru 2011 02:01 Odpowiedzi: 10    Wyświetleń: 2404
  • Zawieszanie się ATmegi 128 przy przerwaniu INT2 na płytce stykowej

    zgodność z M103C jest również wyłączona Dodano po 4 http://obrazki.elektroda.pl/6058123100_1... ustawienie fusów Dodano po 30 Podstawa programowa do obsługi tego przerwania wygląda wydaje mi się standardowo. Dodano po 2 Schemat czujki podałem wyżej. http://www.elektroda.pl/rtvforum/topic20...

    Mikrokontrolery AVR   22 Maj 2011 21:00 Odpowiedzi: 26    Wyświetleń: 4140
  • STM32F0 - Przerwanie, a ustawianie globalnej zmiennej

    Wg RM0091 (strona 629) m.in. bit RXFRQ w rejestrze RQR USART'u kasuje flagę przerwania. [syntax=c] USART1->RQR |= USART_RQR_RXFRQ; [/syntax] Flagi new_data nie chcę kasować póki co. Ważne żeby po opuszczeniu przerwania była ustawiona na true i żeby dioda się zapaliła. Wtedy będę rozbudowywać program i dodam kasowanie flagi zaraz po zapaleniu diody.

    Mikrokontrolery ARM   24 Sie 2013 09:26 Odpowiedzi: 6    Wyświetleń: 1683
  • [lpc2368][C][Keil] Przerwanie ADC0 - kasowanei flagi AINT

    Witam ! Jest gdzieś udokumentowane zjawisko samoczynnego kasowania flagi przerwania ADC (ADINT) przy odczycie przetworzonej wartosci ? np.: void isr_handler_adc(void) __irq { odczyt = (AD0DR1 & AD0DR1_RESULT_MASK)>>AD0DR1_RE... // jakis kod VICAddress = 0; /* Acknowledge Interrupt */ } Wykładowca kazał mi udokumentować...

    Mikrokontrolery ARM   20 Mar 2010 22:06 Odpowiedzi: 17    Wyświetleń: 1341
  • MSP430 - symulacje. Przykładowy kod. Przerywanie z portu P1.0.

    Witam. U mnie zrobone jest to w ten sposb. Nie sprawdzalem tego na symulatorze, kodzik dziala w makiecie. Korzystam z IAR v3.20. #define INT_PIN 0x01 [....] P1IFG = 0x00; // Kasowanie flag przerwań na P1 P1DIR &= ~INT_PIN; P1IES |= INT_PIN; P1IE |= INT_PIN; // Zezwolenie na przerwanie _BIS_SR(GIE); // Globalny bit przerwania [...] #pragma vector = PORT1_VECTOR...

    Mikrokontrolery   19 Mar 2006 16:44 Odpowiedzi: 1    Wyświetleń: 1407
  • [STM32] Konfiguracja przerwania co 10ms na płytce st32f401-c disco

    Jeśli faktycznie TIM2 jest taktowany z częstotliwością 42MHz to Twoje przerwanie powinno być wywoływane co 10ms (konfiguracja RCC). Niemniej jednak kasowanie flagi przerwania powinno być pierwszą czynnością jaką przerwanie wykonuje a Ty kasujesz flagę raz na 100 wywołań. Poza tym umieszczanie funkcji USART_putint i USART_SendData wewnątrz przerwania...

    Mikrokontrolery ARM   21 Lut 2015 10:14 Odpowiedzi: 7    Wyświetleń: 1308
  • STM32F746G-DISCO - przerwanie od UART kasowanie flagi

    Cenna uwaga z tym |=, bo to przeciez też operacja odczytu A błąd był w konfiguracji bo przecież ostatnia linijka psula wszystko: USART3->BRR = freq/4/115200; USART3->CR1 |= (USART_CR1_RE | USART_CR1_TE); USART3->CR1 |= USART_CR1_UE; USART3->CR1 = USART_CR1_TCIE; Dodano po 1 Włączenie przerwania usuwało całą konfigurację..... jednak...

    Mikrokontrolery   09 Lip 2021 11:17 Odpowiedzi: 3    Wyświetleń: 393
  • Błąd kompilacji BASCOM-AVR 1.11.9.5 na Atmega8 - instrukcja warunkowa if

    Bascom powinien po wywołaniu procedury obsługi przerwania skasować flagę a tego nie robi...i po obsłużeniu przerwania znów jest ono natychmiast wywoływane i program się zapętla. Trzeba ręcznie ustawić flagę w rejestrze GIFR.. Ale posłuchaj, Bascom nie wywołuje żadnej procedury obsługi przerwania. To ty piszesz ją w Bascomie i jest ona wywoływana automatycznie...

    Mikrokontrolery AVR   07 Lut 2011 19:49 Odpowiedzi: 13    Wyświetleń: 1860
  • [AVR ext interrupt] AVR Mega8: Przerwanie INT1 wywoływane bez powodu w symulatorze

    A tuż przed "enable interrupt" kasujesz obie flagi od przerwań INTX ?? Kasowanie flagi oczywiście poprzez wpisanie do niej "Jedynki". Mam nadzieję że PIND3 i PIND4 nie wisi w powietrzu, aaaaaa napisałeś że włączyłeś podciąganie.

    Mikrokontrolery   31 Mar 2008 19:41 Odpowiedzi: 5    Wyświetleń: 1067
  • 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ń: 3078
  • [xmega128a3u][int0] - PORT_ISC_LEVEL_gc - podwójne przerwanie

    Generalnie przy LEVEL przerwania są tak długo emitowane, aż zniknie ich przyczyna, w efekcie wywoływane jest ISR i natychmiast zgłaszane jest kolejne przerwanie. Musiałbyś więc po zmianie z LEVEL na RISING jawnie kasować flagę przerwania. W większości przypadków się więc nie używa LEVEL. Piszesz strasznie skomplikowany kod - nie prościj dać BOTH_EDGES...

    Mikrokontrolery AVR   30 Lip 2014 08:16 Odpowiedzi: 3    Wyświetleń: 1206
  • STM32F334 DISCO - włączenie przerwania generowanego przez timer

    No i mamy przykład jak nie wolno kasować znaczników przerwań: TIM7->SR &= ~TIM_SR_UIF; // clear UIF flag Poprawnie robi się to tak: TIM7->SR = ~TIM_SR_UIF; Jeśli używasz przerwania końca okreu (update), to w przypadku TIM1 będzie to: TIM1_UP_TIM16_IRQn

    Mikrokontrolery ARM   11 Lis 2018 00:23 Odpowiedzi: 17    Wyświetleń: 705
  • [stm32] jak się kasuje bit przerwania w TIM4->SR?

    Pomóżcie, bo nie mogę doczytać, jak się kasuje flagę przerwania od output compare match w ISR? (...) W dokumentacji stm32 zapomnieli napisać czy 0 czy 1 Npalisali :) kasuje się na pewno poprzez zapisanie bitu zerem. Przy opisie rejestru masz zawsze odpowiedni "komentarz" przy każdym bicie. W tym przypadku rc_w0. read/clear (rc_w0) Software can read...

    Mikrokontrolery ARM   06 Paź 2010 07:50 Odpowiedzi: 3    Wyświetleń: 1799
  • [STM32] - Problemy z odbiorem danych SPI na TFT ILI9341 z STM32F103/F407

    Ciekawe - ja u siebie mam wszystkie transmisje działające przy CPOL/CPHA=1 - no, ale może ten wyświetlacz ma inne wymagania. Przydałby się podgląd tego co wychodzi ze scalaka za pomocą analizatora stanów logicznych. Zmiana baudrate nie powinna na nic wpływać poza samą prędkością transmisji. Ja u siebie szybkość zmieniam tak: [syntax=c] //======================================...

    Mikrokontrolery ARM   14 Mar 2015 10:21 Odpowiedzi: 57    Wyświetleń: 9630
  • [LPC2378] Przerwanie timera0 wywołuje się tylko raz - analiza kodu ARM

    tak, musisz kasować ją ręcznie - tak samo jak VICVectAddress. Inaczej nie da się tego zrobić - jedno przerwanie może zostać wywołane przez wiele źródeł (przepełnienie, porównanie, złapanie nowej wartości, ...), więc nie ma innego uniwersalnego sposoby niż ręczne kasowanie odpowiednich flag Dodam może, że przy debuggowaniu wewnątrz przerwania, czasem...

    Mikrokontrolery ARM   07 Kwi 2009 15:16 Odpowiedzi: 11    Wyświetleń: 2020
  • Bascom - Atmega 128 i zerowanie flagi przerwania zewnętrznego

    ldi R16,0 Out &H38 , R16 spróbuj to zamienić na : ldi R16,1 Out &H58 , R16 Co do tłumaczeń to jednak w oryginale brzmi to tak: -When an edge or logic change on the INT7:0 pin triggers an interrupt request, INTF7:0 becomes set (one). Co dla mnie w wolnym tłumaczeniu brzmi -Kiedy zbocze lub poziom logiczny na pinie przeniwania 7-0 się zmieni wywoła to...

    Mikrokontrolery AVR   10 Gru 2012 11:39 Odpowiedzi: 10    Wyświetleń: 3579
  • [STM32] - Jak skonfigurować przerwanie przy uszkodzeniu kwarcu 8MHz w STM32F100RB?

    Zegar z kwarcem 8MHz. Chciałbym aby w przypadku uszkodzenia (lub np. wyjęcia) kwarcu, zostało wywołane przerwanie w którym mógłbym skonfigurować PLL z HSI. Ale nie wiem do którego kanału NVIC jest ono przypisane. Inicjalizuję RCC_IRQn: Dodano po 52 Dodam, że po wyjęciu kwarcu system prawidłowo przełącza się na HSI i procesor nadal pracuje, tyle że 3x...

    Mikrokontrolery ARM   23 Wrz 2014 21:08 Odpowiedzi: 7    Wyświetleń: 1128
  • 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ń: 6057
  • [AVR] Nieaktywny Auto Trigger ADC na ATmega168 przy użyciu Timer0 w trybie CTC

    Masz na myśli kasowanie flagi zgłoszenia przerwania ADC poprzez wpisanie jedynki na bit flagi? Robiłem na 328P, nie działa. Jutro spróbuję na m168...r Dodano po 26 W projekcie z ATtiny zdarzenie porównania generuje przerwanie i pewnie tutaj jest "pies pogrzebany". To przerwanie kasuje sprzętowo flagę porównania...ale to bez sensu, żeby angażować przerwanie...

    Mikrokontrolery AVR   16 Gru 2020 20:52 Odpowiedzi: 19    Wyświetleń: 504
  • Jak efektywnie zarządzać przerwaniami i zadaniami w dużych projektach na uC?

    Myślę, że istnieje taki kod. Coś podobnego co napisałem poniżej praktycznie załatwia sprawę. Jedyna możliwość "zgubienia" zdarzenia będzie w momencie włączenia przerwań. Myślę, że i ten przypadek można wyeliminować. ... nop; nop; __disable_irq; test globalnej flagi ustawianej we wszystkich przerwaniach, jak ustawiona to goto skip_it __enable_irq; ---->tutaj...

    Mikrokontrolery   01 Lip 2013 11:18 Odpowiedzi: 39    Wyświetleń: 6111
  • STM32F100RB - Jak aktywować przerwania RXNE dla USART1?

    Jak pisałem nie mam jak teraz sprawdzić na sprzęcie. Może to tylko błąd wyświetlania. Mogę także wpisać bezpośrednio wartość dla tego przerwania (37). Więc ta linia jest ok? Dodano po 3 Dodano po 2 Dla upewnienia - nie trzeba kasować flagi przerwania, jest kasowana czytaniem DR, tak?

    Mikrokontrolery ARM   02 Wrz 2013 16:49 Odpowiedzi: 10    Wyświetleń: 1491
  • ATmega8A-PU - Czy przerwania INT0 są kolejkowane podczas obsługi?

    Wielkie dzięki. A da się jakoś wyczyścić (ew. zablokować) to przerwanie? Próbowałem juz wpisywać w procedurze przerwania cli(), wyłączać INT0 w rejestrze GICR, ustawiać flagę w GIFR. Póki co z marnym skutkiem. możesz zarówno zarówno zablokowac każde przerwanie z osobna, a także wyczyścić flagę od ich zgłoszenia. Możesz to uczynić także w przerwaniu....

    Mikrokontrolery Początkujący   10 Sty 2013 06:20 Odpowiedzi: 4    Wyświetleń: 1653
  • Konfiguracja jednego timera TCA0 do dwóch częstotliwości.

    Ten rejestr CTRLC jest chyba ogólny ale coś nie mogłem dobrać się do wybranego pinu ,którym w moim przypadku jest PA2 to chyba powinno kryć się pod nazwą "CMP2OV" . Próbowałem TCA.SINGLE.CMP2OV = 0; i TCA0_SINGLE_CTRLC = ale tutaj w ogóle nie miałem czegoś adekwatnego no i kompilator nie przyjmował moich wypocin. Tutaj pytanie czy jest to prawidłowe...

    Mikrokontrolery   09 Mar 2025 18:32 Odpowiedzi: 17    Wyświetleń: 426
  • STM32F4: Podwójne przerwania AWD przy optymalizacji -Os, dlaczego?

    Ja się z tym spotkałem przy obsłudze CAN'a. Do chwili gdy używałem bibliotek od ST to było OK. Jak z nich zrezygnowałem to nagle jedna ramka CAN generowała 2 przerwania. Wstawienie kasowania flagi na początek załatwia sprawę.

    Mikrokontrolery ARM   02 Kwi 2013 15:49 Odpowiedzi: 41    Wyświetleń: 5370
  • Jak skonfigurować PCF8563 do generowania przerwań co sekundę?

    W c to wygląda tak: Konfiguracja: [syntax=c]PCFwrite(0x00, 0);//kasowanie testc PCFwrite(0x01, 0b00000001);//tie PCFwrite(0x0f, 64); PCFwrite(0x0e, 0b10000001);//64hz [/syntax] I w procedurze obsługi przerwania kasowanie flagi [syntax=c] PCFwrite(0x01, 0x01);// tf=0 [/syntax]

    Mikrokontrolery   24 Lut 2012 15:17 Odpowiedzi: 13    Wyświetleń: 4008
  • AT90S2313 INT0 - Podwójne wywołanie przerwania przy opadającym zboczu w Bascom AVR

    Miałem identyczny problem. Rozwiązanie jest proste. Jedną z ostatnich instrukcji procedury obsługi przerwania było kasowanie flagi INT0. Potem powrót RETI i wszystko chodziło ok. Pozdrawiam.

    Mikrokontrolery   18 Kwi 2004 18:13 Odpowiedzi: 5    Wyświetleń: 1144
  • BASCOM - przerwanie zewnętrzne, niezrozumiałe działanie

    Ten typ tak ma- wpisanie 1 kasuje ustawioną flagę - a była ustawiona na 1. Tak że w komentarzu wpisz- kasowanie flagi. Str.68 datasheet. Zresztą większość flag tak się w AVR kasuje.

    Mikrokontrolery   17 Gru 2009 14:14 Odpowiedzi: 4    Wyświetleń: 3271
  • Przeniesienie projektu Bascom z Atmega8 na Atmega48 - potencjalne różnice?

    Witam ewentualnych czytelników tego tematu. Zamykam temat, jako że problem rozwiązałem. Obsługa timerów została poprawnie zrealizowana po skompilowaniu projektu w Bascomie dla procesora Atmega48, Jedynie przy obsłudze przerwań pojawił się problem. W moim programie była konieczność "ręcznego" kasowania flagi przerwania INT1 za pomocą instrukcji: SET...

    Mikrokontrolery AVR   19 Lip 2011 11:32 Odpowiedzi: 10    Wyświetleń: 2213
  • [ATmega32] Jak napisać protokół RC5 dla ATmega32 z odbiornikiem IR na PD3?

    MODI, zrobiłem tak jak mówiłeś, teraz mam na same zera. Żadna dioda na PORTA się nie zapala. (Wysoki poziom zapala diodę) Aktualny kod programu: #include <avr/io.h> // dostęp do rejestrów #include <avr/interrupt.h> #define F_CPU 16000000 volatile uint8_t RC5cmd; volatile uint8_t RC5addr; //volatile unsigned char T; volatile unsigned char...

    Mikrokontrolery AVR   01 Gru 2009 12:15 Odpowiedzi: 4    Wyświetleń: 2401
  • Jak uzyskać równe przerwania 1 ms w PIC18F2320?

    Witam, Mam taki problem, że chciałem ustawić przerwania równe 1 ms (1000 us), ale zależnie od ilości instrukcji w przerwaniu trwa ono 1000us lub 1001us, czyli 1000 lub 1001 cykli zamiast zawsze 1000. Jeżeli w funkcji przerwań, poza ustawianiem Timera i kasowaniem flagi przerwania, jest nieparzysta liczba instrukcji (np. 1,3,5,...itd.), to trwa ono 1000...

    Mikrokontrolery PIC   04 Gru 2014 09:17 Odpowiedzi: 21    Wyświetleń: 3098
  • AVRStudio, PonyProg, ATmega32 - problem z Timerem T0 i T1, zmiana czasu nie działa

    W obsłudze przerwania nie musisz kasować flagi, to robione jest sprzętowo. A przeciwnie może spowodować wygenerowanie kolejnego przerwania. Zmień i daj znać.

    Mikrokontrolery   19 Paź 2006 07:48 Odpowiedzi: 5    Wyświetleń: 1501
  • [ATtiny45][C/Avr Studio4] Komparator dziwnie się zachowuje.

    Dobry pomysł z tą dodatkową flagą. Muszę się zastanowić w jaki sposób mógłbym go wykorzystać. Jeszcze jedno pytanie. Padło hasło "kasowanie przerwań", rozumiem to jako programowe zerowanie flagi wystąpienia przerwania od komparatora (ACI), czy mam rację ?? Jeżeli nie to jak wykonuje się takie kasowanie przerwań ? Co jeśli wystąpi kilka przerwań po sobie...

    Mikrokontrolery AVR   26 Maj 2011 07:58 Odpowiedzi: 7    Wyświetleń: 1635
  • AVR - Czy printf zakłóca przerwania i transmisję RS232?

    Jeśli poprawność transmisji przez UART jest ważniejsza niż terminowa obsługa przerwań to ustawianie/kasowanie bitu 7 w SREG (a więc CLI i SEI) ma sens. Pamiętaj że flagi przerwań są zapamiętywane (można je kasować wpisując jedynki w zapalone flagi) i po wyjściu z procedury objętej CLI/SEI i podprogramy ich obsługi i tak zostaną wykonane. http://impuls.elektroda.eu/joomla/index....

    Mikrokontrolery   28 Lip 2013 06:06 Odpowiedzi: 12    Wyświetleń: 1962
  • atmega8 - blokowanie przerwania int0 i int1 w asm

    i to może być powód, nie kasowałem flagi ;) , dzięki, sprawdzę w poniedziałek

    Mikrokontrolery AVR   11 Maj 2013 16:29 Odpowiedzi: 4    Wyświetleń: 1665
  • [STM32F3][C] - Przerwanie zewnętrzne, kilka zdarzeń od jednego przerwania

    Choć dopiero zaczynam przygodę z STM32 to po mojemu nadpisujesz strukturę i dlatego zawsze działa Ci ostatnie zdefiniowane przerwanie. O ile przed napisanie jest funkcja inicjująca przerwanie nic takiego nie ma miejsca. Prędzej brak kasowania flag.

    Mikrokontrolery ARM   09 Lis 2013 10:08 Odpowiedzi: 7    Wyświetleń: 1743
  • [ATmega48] Czy przerwania muszą być włączone do konwersji ADC w ATmega48?

    Ab ovo. Cli wyłącza zezwolenie obsługi przerwań- a czym innym jest ustawianie flagi że przerwanie było. Jak ponownie włączysz obsługę przerwań- SEI- to zostaną "obsłużone". Można kasować poszczególne flagi- jeśli jest to potrzebne- zwykle wpisując 1 do odpowiedniego bitu w odpowiednim rejestrze.

    Mikrokontrolery AVR   13 Kwi 2010 20:45 Odpowiedzi: 8    Wyświetleń: 1445
  • [C][ATmega8]Zmiana sekwencji programu button switch

    Przerwanie od INT0 powinno aktywować przerwania od timera, które co 50ms będą zmieniać stan portu c: INT0: - blokuj przerwania INT0 - licznik sekwencji na portc = 0 - aktywuj przerwanie timera INT TIMERA: - switch (licznik sekwencji) ..... w ostatnik case czy default: 1) blokuj przerwania timera 2) kasuj flagę INT0 3) włącz przerwania int0

    Mikrokontrolery AVR   01 Paź 2019 17:57 Odpowiedzi: 26    Wyświetleń: 1431
  • [2051] Procedury zapisu i odczytu RS232 dla AT89C2051 w C - szukam przykładów

    Witam, Programuję sobie procesorek AT89C2051 i magistralę 1-Wire. O ile z odczytem danych z magistrali nie było problemów, o tyle z wysłaniem tego przez RS-232 jest problem. Czy ktoś z użytkowników ma jakieś gotowe procedury zapisu i odczytu do porty RS232? W BASCOM wszystko działa, ale chcę to zrobić w C. Na razie doszedłem do: //funkcja obsługująca...

    Mikrokontrolery   29 Kwi 2009 20:41 Odpowiedzi: 3    Wyświetleń: 3219
  • 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
  • Bezpieczne kopiowanie zmiennych 16-bitowych w C na 8051 przy przerwaniach UART

    A dlaczego boisz się wyłączania przerwań? Normalną procedurą jest globalne wyłączanie przerwań na czas krytycznych operacji np. kasowanie w programie głównym flagi, która jest ustawiana w przerwaniu. Oczywiście nie można ich blokować na zbyt długo, bo można coś zgubić. Najważniejsze jest, aby w czasie gdy przerwania są zablokowane nie pojawiły się DWA...

    Mikrokontrolery   01 Cze 2008 07:29 Odpowiedzi: 12    Wyświetleń: 1743
  • [C] Attiny13 ADC - Dlaczego na ADC2 pokazuje 0V mimo włączonego ADC?

    Bo nie zerujesz flagi przerwania. Podczas porównania ustawia Ci się flaga przerwania OCF0A w TIFR0. Normalnie w czasie obsługi przerwania taka flaga się kasuje samoistnie ale u Ciebie nie ma obsługi przerwania od Timer/Counter Compare Match A więc flaga zostaje ustawiona. Musisz w obsłudze przerwania od zakończonej konwersji ADC dołożyć ręczne kasowanie...

    Mikrokontrolery AVR   14 Gru 2011 23:19 Odpowiedzi: 13    Wyświetleń: 5417
  • [STM32F439] Dziwne podwójne przerwanie TXE przy nadawaniu SPI w trybie MASTER

    Kasowanie flagi z & nie podoba mi się bardzo (TXE się nie kasuje bitem tylko zapisem do DR może zbyt blisko końca obsługi to robisz) . Gdzie funkcja wysyłania?

    Mikrokontrolery ARM   05 Paź 2017 11:06 Odpowiedzi: 21    Wyświetleń: 843
  • [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ń: 1761
  • Maksymalna częstotliwość odczytu pinu w AT91SAM7 przy 24 MHz CPU?

    Jesli chodzi o rejestr ICCR to nie pomaga. Jestes pewien ze trzeba kasowac te flage? Bo w procedurach obslugi przerwan z projektow przykladowych nie ma na koncu kasowania zadnej flagi. Doczytalem sie ze kasowanie flagi zdaje egzamin tylko przy przerwaniach wyzwalanych poziomem, mi natomiast jest potrzebne wyzwalanie zboczem. Jak w takim razie sygnalizuje...

    Mikrokontrolery   18 Sty 2008 20:32 Odpowiedzi: 13    Wyświetleń: 1623
  • [STM32F107] - Po włączeniu przerwań program zatrzymuje się

    To zanim zabierzesz się za 2 UARTy oprogramuj 1? obsługa takiego UARTu do zaledwie 50 linii kodu z obsługą buforów. Masz przykładu w SPLu skorzystaj. W przerwaniu od obioru nie odczytujesz rejestru DR. Kasujesz flagę na końcu przerwani - błąd. Uporządkuj ten program. Włączenie przerwania TXE i nie obsłużenie go to poważny błąd, zawiesisz się. A jego...

    Mikrokontrolery ARM   13 Maj 2015 12:14 Odpowiedzi: 8    Wyświetleń: 921
  • [atmega8] Przerwanie INT1 nie reaguje na zmiany stanu portu po kilku przejściach

    Śmiem twierdzić, że w (0<<ISC11) | (1<ISC10) jest błąd, powodujący, że wyrażenie to ma wartość równą 1 (podczas gdy powinno mieć wartość równą 4). Jeśli flaga jest ustawiana na zbocze, to w kodzie głównym powinny występować jakieś opóźnienia albo zmiana algorytmu, bo inaczej flaga zostanie sprawdzona raz - będzie ustawiona,...

    Mikrokontrolery AVR   07 Sie 2008 21:04 Odpowiedzi: 12    Wyświetleń: 4150
  • STM32F107 konfiguracja zegara w Keil uVision - błędy kompilacji kodu

    Tak tak, wiadomo. Jeszcze dla pewności sprawdziłem co się stanie jeśli w przerwaniu mam tylko kasowanie flagi, i teraz jest już bez push i pop. Wcześniej miałem tam wywoływaną jeszcze jedną funkcję od obsługi timera.

    Mikrokontrolery ARM   20 Kwi 2012 15:36 Odpowiedzi: 55    Wyświetleń: 7364
  • [Bascom] Jak wrócić z przerwania do konkretnego miejsca w programie?

    Albo ustawić flagę i w pętli głównej ją sprawdzać i wykonywać skok, albo ręcznie potem kasować flagę przerwania i ponownie je aktywować

    Mikrokontrolery   13 Mar 2011 23:56 Odpowiedzi: 10    Wyświetleń: 1825
  • STM32F103 - Przerwania EXTI nie działają, Reset_Handler po wywołaniu

    Dzięki za odpowiedzi, wczoraj szybko padłem i zasnąłem:> Też początkowo chciałem obsłużyć przyciski w pętli bo mógłbym, albo timerem, ale dostałem na praktykach sugestię, żeby zrobić wszystko na przerwaniach i tak też się męczę. Co do flagi, wiem i próbowałem kasować ją na początku, ale to nie pomaga. W programie na F4 mam w ogóle pętle sprawdzające...

    Mikrokontrolery   17 Sie 2016 13:53 Odpowiedzi: 23    Wyświetleń: 1134
  • MOS6502 + układy intela. Program zapisany na EPROM nie działa.

    Chodzi o to ze po przyjeciu przerwania nie kasuje automatycznie flagi D wiec zaleca sie w procedurze przerwania ja skasowac Dotyczy to wszystkich flag (poza I). Są takie jakie były w chwili przyjęcia przerwania. I jest kasowane. Warto zaznaczyć, ze w 6502 wejście w przerwanie odkłada na stosom, poza adresem powrotu, także rejestr statusu. Rejestr ten...

    Mikrokontrolery   18 Sie 2018 18:40 Odpowiedzi: 50    Wyświetleń: 1932
  • [Atmega8][C] Przerwanie zewnętrze INT0 nieoczekiwane wyowłanie

    Jeśli funkcja obsługi przerwania powoduje ponowne wyzwolenie samego siebie, to jest to wynikiem tego, że flaga przerwania jest kasowana tylko podczas wchodzenia do przerwania. Podczas wykonywania funkcji obsługi przerwania flaga INTF0 może zostać ponownie ustawiona, co spowoduje ponowne wejście do ISR zaraz po zakończeniu (ISR_BLOCK nie powoduje zablokowania...

    Mikrokontrolery AVR   14 Cze 2011 14:28 Odpowiedzi: 2    Wyświetleń: 1574
  • Nucleo F103RB: Przerwanie timera nie zmienia napisu na wyświetlaczu 16x2

    przerwanie od timera dla przycisku jest ok próba wyświetlania czegoś na wyświetlaczu z przerwania nie jest ok kasuj flagę przerwania na jego początku usuń te trzy tony zduplikowanego kodu który tam masz

    Mikrokontrolery Początkujący   18 Lip 2018 16:44 Odpowiedzi: 13    Wyświetleń: 711
  • [atmega8][c] Przechodzenie i wybudzanie z power-down.

    Cały program może coś da. Powinieneś poza tym w obsłudze przerwania kasować flagę przerwania oraz wyłączać przerwania a nie robić to w programie. Tak jak masz teraz to wydaje mi się że po obsłudze przerwania wyzwalane jest kolejne przerwanie i zanim wykona się kolejna operacja po wybudzeniu procesora znów wykonywana jest instrukcje obsługująca przerwanie...

    Mikrokontrolery AVR   28 Cze 2011 06:23 Odpowiedzi: 8    Wyświetleń: 2694
  • Jak Atmega328p obsługuje kolejne przerwania zewnętrzne INT0 i INT1?

    użycie ich jest tylko wtedy możliwe jak flaga danego przerwania jest automatycznie kasowana przez sprzęt. W innym przypadku najpierw trzeba ją skasować później dopiero włączyć przerwania. Dotyczy to odbiorczych od UART ale od poziomu wejścia INT nie. Nie da się skasować flagi, jest ustawiona tak długo, jak długo wejście INT ma poziom niski. Dodano...

    Mikrokontrolery Początkujący   28 Gru 2018 08:46 Odpowiedzi: 4    Wyświetleń: 1359
  • STM32 - Jak ponownie uruchomić DMA w trybie NORMAL po przerwaniu?

    Może dostajesz jakieś inne przerwanie, i wtedy ten Twój IF nie wchodzi do środka i nie kasuje flagi (oraz nie miga LEDem). Kasowanie flag daj bezpośrednio bez żadnego IFa.

    Mikrokontrolery ARM   20 Lip 2014 12:40 Odpowiedzi: 17    Wyświetleń: 2019
  • Programowa eliminacja drgań przełącznika - gdzie jest błąd?

    O dziwo, gdy taka linijka znalazła sie w porcedurze obsługi przerwania zewnętrznego, to nadal było źle. To nic dziwnego bo te przerwanie samo skasowało tę flagę. Jedynie kasowanie flagi ma sens tylko w momencie kiedy dane przerwanie jest jeszcze nieaktywne bo w każdym innym przypadku ty go nie zdążysz skasować bo zawsze szybsza będzie obsługa tego...

    Mikrokontrolery   22 Paź 2005 15:38 Odpowiedzi: 8    Wyświetleń: 3043
  • operacje programowe niezbędne przed odblokowaniem przerwań

    Ja bym to ujął w takiej kolejności: 1. Konfiguracja priorytetów, rejestrów sterujących itp. (oprócz odblokowania przerwania). 2. Skasowanie flagi sygnalizującej przerwanie. 3. Odblokowanie przerwania. Naistotniejsze jest, aby flaga sygnalizująca przerwanie była kasowana po zmianie rejestrów sterujących/konfigurujących przerwanie, ponieważ częstot jest...

    Mikrokontrolery   25 Cze 2008 06:48 Odpowiedzi: 4    Wyświetleń: 916
  • Przykładowe kody na rejestrach dla STM32F3 Discovery – gdzie znaleźć dokumentację?

    Musisz sprawdzać czy to przerwanie jest włączone. To nie ma znaczenia (przynajmniej dla zawieszania się programu). Skoro przerwanie wystąpiło to czy było włączone czy nie (swoją drogą nie mogło wystąpić gdy było wyłączone) to jego bit trzeba skasować. Generalnie ja mam zwyczaj kasować w przerwaniu wszystkie flagi (wszystkie od danej części, czyli np....

    Mikrokontrolery ARM   23 Cze 2015 22:26 Odpowiedzi: 45    Wyświetleń: 3123
  • Różnice między zdarzeniami a przerwaniami w STM32F103

    Bo ARM to taki składak - kto inny robi rdzeń a kto inny peryferia i jak widać nie skleiło im się to do końca poprawnie. "Dzięki temu" masz kilka różnych miejsc gdzie musisz aktywować przerwanie a flagi od nich musisz sobie sam ręcznie kasować.

    Mikrokontrolery ARM   18 Mar 2016 12:32 Odpowiedzi: 51    Wyświetleń: 4743
  • [atmega8] [atmega8][c] Zmiana zmiennej w pętli nie działa w AVR Studio 4. Dlaczego?

    Tylko, że ja nigdy żadnego problemu nie miałem, bo wiem dokładnie jak wszystko działa. Twoje "ważne że działa" jest wątpliwe, prawdopodobnie sam nie wiesz jak działa Twój kod. Nie spotkałem się, żeby ktoś, kto nie kasował i ustawiał flagi I w przerwaniu miał z tego powodu problemy z programem. ps. Ei incumbit probatio qui dicit, non qui negat.

    Mikrokontrolery AVR   02 Wrz 2008 11:33 Odpowiedzi: 30    Wyświetleń: 3184
  • ATmega8: Problem z pomiarem impulsu z generatora na wejściu PB0 (ICP)

    Witam! W związku z powyższym kodem który zamieściłeś nasunęła mi się jedna uwaga która pewnie nie rozwiąże twojego problemu w jakimkolwiek procencie, aczkolwiek powinieneś sobie z niej zdawać sprawę. Chodzi mi o kasowanie flag przerwań np. tak jak w przykładzie: TIFR|=1<<TOV1; //wyzeryj flage od przepeln Wiadome jest że aby wyzerować flagę od...

    Mikrokontrolery   11 Maj 2006 13:41 Odpowiedzi: 3    Wyświetleń: 2400
  • MSP430 - Jak dobierać sygnały zegarowe i ich źródła?

    Klawisz się sprawdza w przerwaniu timera z uwagi na drgania styków, to raz. Dwa (zakładając, że masz filtry RC na klawiszach) - gdzie kasujesz flagę przerwania od portu (klawisza). One się nie czyszczą przy wejściu do przerwania. Bool a _Bool - w AVR gcc jest <stdbool.h> który należy zainclude'ować. Nie pamiętam jak tutaj. pzdr.

    Mikrokontrolery Pozostałe   10 Kwi 2013 12:28 Odpowiedzi: 19    Wyświetleń: 4359
  • LPC1768, Keil - Czyszczenie flagi przerwania TIM0, startup i inne

    Nie wykonuj operacji logicznych na rejestrach FIOSET i FIOCLR. Powinno być: LPC_GPIO3->FIOCLR3 = 1 << 1 | 1 << 2; Trzymasz włączony reset timera - nie wiem, czy w tym stanie reaguje on poprawnie na zapisz rejestrów. Znacznik przerwania należy kasować na początku obsługi, po wykryciu, że jest ustawiony.

    Mikrokontrolery ARM   08 Sie 2015 07:59 Odpowiedzi: 4    Wyświetleń: 1356
  • Jak zwiększyć częstotliwość próbkowania do 1kHz w Arduino UNO?

    Można opalić timer w trybie CTC z preskalerem 1024 i ICR ustawić na 122. Wtedy osiągniesz przepełnienie zegara miej więcej z częstotliwością 128 Hz. W przerwaniu od timera ustawiać flagę, a w przerwaniu od ADC wysyłać dane tylko gdy flaga jest ustawiona, a następnie ją resetować. Inaczej: włączyć Auto Triggering dla ADC, jako źródło wyzwalania Compare...

    Arduino   16 Sty 2019 23:06 Odpowiedzi: 22    Wyświetleń: 2700
  • Xmega E5 - Podwójne wywołanie przerwania na pinie C1, jak temu zaradzić?

    (at)niveasoft To nie ten przypadek. Wyjaśnienie tej zagadki jest raczej proste - flaga przerwania jest kasowana, ale zwieranie mechaniczne powoduje bouncing, więc zgłaszanych jest więcej niż jedno przerwanie. Samo wyłączenie przerwania nie wpływa na odpowiednią flagę, więc przy kolejnym drganiu jest ona ustawiana, ale przerwanie nie jest obsługiwane...

    Mikrokontrolery Początkujący   02 Sty 2017 21:41 Odpowiedzi: 7    Wyświetleń: 960