stm32 przerwanie timera

Znaleziono około 415 wyników dla: stm32 przerwanie timera
  • [STM32] [STM32][Eclipse] Debugowanie krokowe przerywane przez przerwanie Timera

    W STM32 domyślnie podczas zatrzymania rdzenia timery pracują, więc podczas twojej pracy krokowej zgłaszane są setki kolejnych przerwań. Aby to zwalczyć należy w rejestrze DBGMCU->CR (w manualu DBGMCU_CR) zapalić stosowny bit dotyczący stosownego timera. Niestety nie zawsze jest to możliwe (bo aplikacja może wymagać aby timer naprawdę stale pracował...

    Mikrokontrolery ARM   11 Lip 2011 21:12 Odpowiedzi: 7    Wyświetleń: 3739
  • STM32 - Timer One Pulse Mode: Przerwanie Generowane Od Razu, Nie Po 1s

    Witam, Po inicjalizacji timera i przed jego włączeniem przeładuj timer (zapisz bit UG do rejestru EGR),a następnie wyczyść flagę w Status Register (TIM4->SR &=~TIM_IT_Update). Dopiero po tych czynnościach włącz timer - przerwanie powinno przyjść dopiero po odmierzonym czasie.

    Mikrokontrolery ARM   26 Sie 2012 18:36 Odpowiedzi: 2    Wyświetleń: 3096
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (2min)...
  • [STM32] Konfiguracja EXTI w STM32 - przerwanie od zbocza opadającego i narastającego?

    Debouncing w przerwaniu - tylko nie mów, że robisz to przez aktywne oczekiwanie wewnątrz przerwania. Jeśli tak, to zauważ, że to, że skasowałeś flagę przerwania i jesteś w przerwaniu wcale nie oznacza, że flaga nie może zostać ustawiona ponownie. Możliwy jest taki scenariusz: wciskasz przycisk, pojawia się zbocze opadające które ustawia flagę a więc...

    Mikrokontrolery ARM   28 Wrz 2011 20:20 Odpowiedzi: 5    Wyświetleń: 4167
  • REKLAMA
  • [STM32] Jak skonfigurować NVIC dla przerwań w STM32 bez biblioteki ST?

    Jak to zrobić: 1. włączasz przerwanie od timera w NVIC 2. Konfigurujesz timer, żeby generował jakieśtam przerwanie Odpowiedzi na pytania: 1. No bez timera raczej nie zrobisz przerwań co jakiś czas [; 2. Funkcja przerwania po prostu musi nazywać się DOKŁADNIE TAK SAMO jak jest wpisana w tablicy przerwań (zwykle CośtamCośtam_IRQHandler() ) 3. Hę? Przykłady...

    Mikrokontrolery ARM   05 Gru 2011 15:49 Odpowiedzi: 7    Wyświetleń: 2472
  • REKLAMA
  • 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ń: 1544
  • [STM32][C++] - Obsługa peryferii / Wzorce projektowe

    Timery i dokładne odmierzanie czasu w różnych miejscach kodu. Zamiast korzystać z kilku timerów, można w różnych blokach kodu konfigurować 1 timer i wstrzykiwać odpowiednią funkcję przerwania. Oczywiście pod warunkiem, że nie będziemy musieli odmierzać czasu dla dwóch bloków jednocześnie. Wygląda na to, że potrzebujesz po prostu callbacka w jednym...

    Mikrokontrolery ARM   09 Lut 2018 15:58 Odpowiedzi: 9    Wyświetleń: 2040
  • STM32 F303VC6 - Konfiguracja przerwań TIM7 na rejestrach, problem z częstotliwością

    Rada praktyczna: ustaw preskaler tak, żeby podzielony zegar timera miał jakiś "okrągły" okres, np. 1, 10 lub 100 us, wtedy nie będziesz musiał pracowicie wyliczać wartości okresu timera, np. preskaler 7200 -> okres zegara 100 us; w celu uzyskania jednej sekundy ładujesz do ARR 10000-1. Twój problem, jak napisano wyżej, wynika z braku kasowania znacznika...

    Mikrokontrolery   28 Lip 2015 21:58 Odpowiedzi: 4    Wyświetleń: 942
  • STM32 - Konfiguracja timera 16-bitowego do przerwań co 59,6 sekundy

    Wykorzystując timer 16-bitowy oraz preskaler 65535 chciałbym wywołać przerwanie co 1 minute(59,6 sekundy) i w efekcie naprzemiennie zapalać i gasić diodę: [syntax=cpp] void Clock_init(void); void GPIO_init(void); void Tim1_init(void); int main(void) { Clock_init() ; GPIO_init(); Tim1_init(); while(1){;} } void Tim1_init(void) { TIM_TimeBaseInitTypeDef...

    Mikrokontrolery Początkujący   21 Kwi 2014 14:16 Odpowiedzi: 5    Wyświetleń: 1659
  • REKLAMA
  • [STM32] [STM32 Primer I] Jak uruchomić przerwania zewnętrzne i timery co 1 sek?

    Witam, Zacząłem niedawno zabawę z STM32 i mam problem z przerwaniami oraz timerami. Chciałem uruchomić przerwanie zewnętrzne, a dalej przerwanie od timera co np 1sek. Jednak nie działa ani jedno ani drugie, czy ktoś mógłby nakierować mnie na dobrą drogę i powiedzieć co robię źle? Przeglądałem przykładowe aplikacje jednak dalej nie potrafię tego uruchomić....

    Mikrokontrolery ARM   05 Sty 2011 00:57 Odpowiedzi: 10    Wyświetleń: 6663
  • [stm32] Konfiguracja przerwań TIM2 w STM32 - brak reakcji na przerwania

    Witam, Próbując się posiłkować reference manualem (RM0008) oraz książką "Mikrokontrolery stm32 w praktyce" próbowałem odpalić okresowe wykonywanie przerwania na TIM2 i niestety nic z tego nie wyszło. Proszę o rade gdzie szukać błedu. Wygląda to tak: Konfiguracja NVIC // Wlacz przerwanie od Timera 2 NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemp...

    Mikrokontrolery ARM   18 Lis 2010 22:21 Odpowiedzi: 11    Wyświetleń: 3268
  • [STM32] Przerwanie od timera co 1 sekundę - warunek if(write_bit_tim2==10)

    Czyli gdzie może być problem? :)

    Mikrokontrolery ARM   08 Paź 2016 19:14 Odpowiedzi: 7    Wyświetleń: 1161
  • REKLAMA
  • Mini oscyloskop DIY na STM32

    https://obrazki.elektroda.pl/3252078300_... Poniższy artykuł przedstawia – krok po kroku – wykonanie niewielkiego, kieszonkowego oscyloskopu cyfrowego. Nie jest on tak dobry jak zwykły warsztatowy oscyloskop, ale z drugiej strony można zabrać go niemalże wszędzie. Poza tym – nie wszystkie projekty DIY muszą mieć sens....

    DIY Zagranica   11 Wrz 2020 06:03 Odpowiedzi: 15    Wyświetleń: 27945
  • Stare na nowe czyli kod z ATMEGA 32 usiłuje wziąć do STM32F103

    Po kilku godzinach program odpaliłem ..... podświetlanie się załącza dopiero po naciśnięciu kilka razy klawisza, monitor pokazuje start i numery naciśnietych klawiszy i to nie za każdym naciśnięciem. nie wiem jak "zatrzymać" dany ekran menu żeby zrealizować inna funkcje np; zmiana stanu wyjścia /* * sterownik który wykończy mnie i innych ..............

    Mikrokontrolery ARM   09 Sie 2024 15:25 Odpowiedzi: 330    Wyświetleń: 7128
  • STM32F103C8 przerwanie od TIM2 odpala się na starcie

    Cześć. Nie potrafię sobie poradzić. Prosty program z przerwaniem od przepełnienia TIM2, Nie wiem dlaczego, ale przerwanie odpala mi się zaraz po inicjalizacji timera. Nie pomaga czyszczenie flag w żadnym momencie tzn. ani przed ani po uruchomieniu licznika. Kod jest taki. [syntax=c] int main(void) { RCC->APB1ENR |= RCC_APB1ENR_TIM2EN; TIM2->PSC = 65000-1;...

    Mikrokontrolery ARM   16 Lut 2021 08:29 Odpowiedzi: 29    Wyświetleń: 1119
  • STM32F030K6T6 - Przerwanie TIM3 wpływa na działanie PWM na kanałach TIM1 (1, 2, 3)

    Cześć, mam dziwny problem z STM32F030K6T6. Są dwa timery TIM1 i TIM3. TIM1 ma podpięte 4 kanały PWM. Sytuacja jest następująca: zezwolenie na przerwania pochodzące od TIM3 powoduje zaprzestanie działania PWM na kanałach 1,2,3. 4 działa poprawnie. W agonicznym poszukiwaniu problemu wyłączyłem wszystkie inne przerwania a kod obsługi IRQ TIM3 wygląda teraz...

    Mikrokontrolery   21 Paź 2022 19:02 Odpowiedzi: 2    Wyświetleń: 429
  • [STM32F030] Przerwanie od porównania TIM1_CC_IRQHandler

    Mam taki prosty programik: [syntax=c]void TIM1_BRK_UP_TRG_COM_IRQHandler(void) { TIM1->SR &= ~TIM_SR_UIF; GPIOA->ODR ^= GPIO_ODR_2; //led PA2 if(TIM1->CR1 & TIM_CR1_DIR) TIM1->CNT = 0; //blokuję licznik przed przeładowaniem else TIM1->CNT = 20; } void TIM1_CC_IRQHandler(void) { TIM1->SR &= ~TIM_SR_CC1IF; GPIOA->ODR ^=...

    Mikrokontrolery ARM   06 Mar 2018 22:08 Odpowiedzi: 3    Wyświetleń: 678
  • stm32f103c8 - Nie odpala się obsługa przerwania TIM3 update.

    Witam, Moja konfiguracja: Eclipse, bazuje na przykładzie od freddiego, Linaro z 28.IX, optymalizacja -O0, [syntax=c] __main_stack_size = 2048; __process_stack_size = 2048; rom (rx): org = 0x08000000, len = 64k ram (rwx): org = 0x20000000, len = 20k[/syntax] [syntax=c]void TIM3_Conf(void) { TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; RCC_APB1PeriphClockCmd(RCC_APB1Periph_TI...

    Mikrokontrolery ARM   16 Paź 2015 08:32 Odpowiedzi: 1    Wyświetleń: 813
  • STM32 - dziwne zachowanie obsługi przerwania od timera

    Witam Dlaczego podczas obsługi przerwania TIM2 dwukrotnie jest ustawiana flaga "tim_up" ? Pierwszy raz natychmiast (błędnie) oraz drugi raz po ustawionym w preferencjach czasie (prawidłowo) [syntax=c]volatile uint8_t tim_up = 0; int main(void) { myinit (); TIM_Cmd(TIM2, ENABLE); while (1) { /* * You can do whatever you want in here */ if( tim_up ==...

    Mikrokontrolery ARM   22 Kwi 2017 20:43 Odpowiedzi: 2    Wyświetleń: 993
  • STM32F334 DISCO - włączenie przerwania generowanego przez timer

    Witam. Uczę się programować mikrokontroler F334 i chciałem spróbować napisać kod który za pomocą przerwania, macha wyjściem. Kod jak na razie wygląda tak : [syntax=c]#include "stm32f30x.h" int main(void) { RCC->AHBENR = RCC_AHBENR_GPIOBEN; RCC->APB2ENR = RCC_APB2ENR_TIM1EN; GPIOB->MODER = GPIO_MODER_MODER7_0; TIM1->PSC = 999; TIM1->ARR = 35999; TIM1->DIER...

    Mikrokontrolery ARM   11 Lis 2018 00:23 Odpowiedzi: 17    Wyświetleń: 732
  • stm32 - timer sprzętowy - sprzętowy timer nie działa

    Witam mam problem z miganiem dwoma diodami, ale czysto sprzętowo, za pomocą timera 3 w trybie outpu compare. Pisząc program wzorowałem się na kodzie ze strony http://en.radzio.dxp.pl/stm32vldiscovery... . Mój kod różni się tylko tym, że nie wykonuje tutaj remmapu, ponieważ w moim uC (stm32f103vct6) TIM3_CH3 i TIM3_CH4...

    Mikrokontrolery   28 Maj 2014 17:29 Odpowiedzi: 6    Wyświetleń: 2022
  • [stm32] [stm32][keil] Konfiguracja timera i przerwania zewnętrznego na PE0

    Witam. Chciałbym prosić o sprawdzenie kodu. Chciałem uzyskać dwie rzeczy mianowicie: 1. Ustawić tak timer by 100 razy na sekunde wystąpiło przerwanie. 2. Ustawić przerwanie zewnętrzne od zbocza opadającego na którymś pinie (np. PE0). Skonfigurowałem tak peryferia: stm32f10x_it.c : [syntax=c]void EXTI0_IRQHandler(void) { static unsigned int i=0; //.....//...

    Mikrokontrolery ARM   23 Wrz 2011 21:33 Odpowiedzi: 6    Wyświetleń: 2808
  • STM32F3 - Jak uruchomić enkoder sprzętowy na TIM8

    Witam Was, jak uruchomić enkoder w wersji sprzętowej. Spędziłem z dwa dni nad tym i nie działa. Zacznę od początku enkoder: http://www.china-xinze.com/ecpzs/prod404... EC11-1B-18T Konfiguracja portów nie ma żadnej reakcji na obracaniem gałką enkodera Cokolwiek się dzieje jak mam ustawione TIM_SMCR_SMS_1 | TIM_SMCR_SMS_2 jak inna opcja to CNT pokazuje...

    Mikrokontrolery ARM   29 Cze 2015 22:36 Odpowiedzi: 11    Wyświetleń: 1065
  • STM32F0Discovery - Jak rozwiązać konflikt przerwań TIM2 i TIM3?

    Witam. Mój problem dotyczy jak widać w nazwie tematu konfliktu między przerwaniami. Poniższa konfiguracja spełnia swoje zadanie i wszystko działa jak powinno. TIM2 [syntax=c] RCC->APB1ENR |= RCC_APB1ENR_TIM2EN; TIM2->PSC = 47999; // Set prescaler TIM2->ARR = 600; // Auto reload value TIM2->DIER = TIM_DIER_UIE; // Enable update interrupt...

    Mikrokontrolery ARM   31 Paź 2013 10:15 Odpowiedzi: 91    Wyświetleń: 7821
  • stm32103vct6 - Przerwanie TIM4 wpada do Default_Handler poza main.c

    Skonfigurowałem TIM4 aby wywoływał przerwanie. Jeżeli definicję przerwania umieszczę w main.c to wszystko działa. Jeżeli definicja zostanie umieszczona w innym pliku to każde wywowałnie wpada do Default_Handler. Przerwanie definuję w ten sposób: [syntax=c]void TIM4_Handler(void) __attribute__((interrupt)); void TIM4_Handler(void) { ... }[/syntax] Czy...

    Mikrokontrolery ARM   27 Lis 2016 12:00 Odpowiedzi: 3    Wyświetleń: 822
  • stm32f051r8 - Konfiguracja przerwania TIM14 i ustawienia NVIC

    Witam Zaczynam się bawić z moim stm32 discovery i mam problem z konfiguracją przerwania. [syntax=c] #include "stm32f0xx.h" #define zapal GPIOC->BSRR|=(1<<9);//zapal diode #define zgas GPIOC->BSRR|=(1<<25);//zgas diode int main(void) { RCC->AHBENR |=(1<<19);//wlacz port C RCC->AHBENR |=(1<<17);//wlacz port A GPIOC->MODER...

    Mikrokontrolery Początkujący   13 Kwi 2013 21:43 Odpowiedzi: 11    Wyświetleń: 1575
  • [stm32][C/TrueStudio] Błędna częstotliwość przerwania od TIM1

    To mój pierwszy post na tym forum, więc witam wszystkich użytkowników. Od jakiegoś tygodnia bawię się ARMami, używam płytki ZL31ARM z prockiem STM32F103RBT6. Po kilku próbach zdałem sobie sprawę, że standardowa biblioteka ST to jakieś nieporozumienie i zacząłem pisać programy po prostu operując na rejestrach. Zatrzymałem się na pewnym problemie częstotliwością...

    Mikrokontrolery ARM   26 Gru 2011 12:08 Odpowiedzi: 2    Wyświetleń: 1566
  • STM: Przerwy w działaniu programu co 300 mln cykli zegara - jak rozwiązać?

    Witam. Zawsze używałem "mało zaawansowane" i "proste" STM32F1, teraz zakupiłem nucleo H5 i mam z nim pewien "drobny" problem. Program prosty jak drut: 1. TIM2 32bity zapętlony liczy sobie wg zegara systemowego bez preskalera 2. TIM1 16bit taktowany zegarem systemowym z preskalerem 62 (61) wywołuje przetwanie co 2000 cykli 3. w przerwaniu tim1 zapisuję...

    Mikrokontrolery ARM   22 Paź 2024 19:08 Odpowiedzi: 18    Wyświetleń: 417
  • stm32f3discovery - Prośba o sprawdzenie kodu uruchomienia TIM2

    Witam, stm32f3discovery. Proszę o sprawdzenie kodu, próbuję uruchomić TIM2 . Nie wykonuje się kod z obsługi przerwania więc coś tu jest nie tak. Wykorzystuję wewnętrzny zegar 8Mz. Założenia są takie aby jedna dioda zmieniała stan co 1s , a druga w 0,25 s. [syntax=c] void TIM2_Init() { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TI... ENABLE); TIM_TimeBaseInitTypeDef...

    Mikrokontrolery ARM   15 Mar 2014 12:40 Odpowiedzi: 7    Wyświetleń: 1155
  • STM32 - Timer opozniający start bez zatrzymania programu.

    Witam, mam problem z obsługą timera w STM32f103ZET6 na płycie ewaluacyjnej HY RedBul v3.0. Problem polega na opóźnionym zapłonie jednej z funkcji. Realizuje to na przykładzie samozamykającej się bramy po 15 sekundach, tak aby nie zatrzymać całego programu. Generalnie udało mi się skonfigurować przerwania od TIM1, ale timer liczy cały czas, czyli jeżeli...

    Mikrokontrolery ARM   31 Sty 2015 12:23 Odpowiedzi: 4    Wyświetleń: 1032
  • STM32 - Konfiguracja przerwań zewnętrznych EXTI15_10_IRQn, GPIOC, linie 13 i 15

    Nie można by. Zrób sobie przerwanie od timera albo dołóż filtry RC na wejściu albo wyłączaj przerwanie po jego złapaniu i włączaj timeout (na przerwaniu od timera), który go ponownie włączy za chwilę. 4\/3!!

    Mikrokontrolery ARM   11 Paź 2013 15:00 Odpowiedzi: 12    Wyświetleń: 3159
  • Nucleo F103RB: Przerwanie timera nie zmienia napisu na wyświetlaczu 16x2

    Witam! Raczkuje z stm32 i próbuje ustawić przerwanie od przycisku, które da jakiś efekt na wyświetlaczu 16x2 (np zmieni napis kiedy przycisk będzie przyciśnięty). Ustawiłem przerwanie od timera reagujące na stan wysoki i niski portu PB1 (TIM3_CH4) i port PD2, do którego podpiąłem diodę led, która miała by gasnąć i zapalać się po naciśnięciu lub puszczeniu...

    Mikrokontrolery Początkujący   18 Lip 2018 16:44 Odpowiedzi: 13    Wyświetleń: 732
  • STM32 - Silniki krokowe równoległe sterowanie - STM32

    (at)natrov Musisz zacząć od skasowania tego co masz i napisania tego programu od nowa :) Przede wszystkim podbdź się wszelkich opóźnień, od tego są timery. Ustal sobie co ile ma być przerwanie i w jego handlerze steruj silnikami, w sposb nieblokujący. Tzn. jeśli masz odczekać jakiś czas to użyj wielokrotności okresu przerwań timera i co odpowiednie...

    Mikrokontrolery ARM   22 Wrz 2016 13:06 Odpowiedzi: 11    Wyświetleń: 1830
  • STM32 - Przerwanie zewnętrzne: konfiguracja przycisku na PA9 i diody na PA10

    Przyciski "floating" - czyli pryz zwolnionym przycisku mamy losowy stan wejścia z możliwymi oscylacjami. W dodatku używasz przerwań od przycisków, o których co tydzień tu piszę, że to nie jest dobry sposób na przyciski. Ignorowania drgań ani śladu w oprogramowaniu. To chyba nie ma prawa działać. Zacznij od przerwania timera - tam testuj stan przycisku...

    Mikrokontrolery Początkujący   18 Sty 2015 17:43 Odpowiedzi: 18    Wyświetleń: 3123
  • Przetwornik ADC w połączeniu z USART na STM32F411RE

    Co do propozycji timera to masz na myśli, żeby uruchomić timer, który jak widzę jest na schemacie niżej(a dokładnie parę multipleksowanych): https://obrazki.elektroda.pl/6873035400_... On zaczyna liczyć z częstotliwością powiedzmy 100 cykli na sekundę, po doliczeniu generuje przerwanie i robi pomiar przetwornikiem ADC? Tylko właśnie...

    Mikrokontrolery ARM   06 Mar 2018 21:43 Odpowiedzi: 14    Wyświetleń: 963
  • Odtwarzanie plików WAV PCM na STM32 – jak ustawić PWM: wypełnienie czy częstotliwość?

    Niech samplowaniem zajmie się lepiej przerwanie od timera i tak jak wspomniał Albert z odpowiednią częstotliwością. Próbki z jaką częstotliwością przygotowane ?

    Mikrokontrolery   21 Sty 2015 10:12 Odpowiedzi: 48    Wyświetleń: 6681
  • [STM32] Dlaczego TIM5 generuje przerwanie co 150ms zamiast 300ms?

    gaskoin, ale piszemy o różnych rzeczach. Czym innym jest struktura procesora a czym innym struktura wiedzy czy nabywania wiedzy o nim. Instrukcja obsługi nie musi mieć struktury procesora. Przytoczony fragment: "The timer clock frequencies are automatically fixed by hardware. There are two cases: 1. if the APB prescaler is 1, the timer clock frequencies...

    Mikrokontrolery ARM   29 Kwi 2014 08:55 Odpowiedzi: 20    Wyświetleń: 2812
  • [STM32 F411RE Nucleo] STM32 F411RE Nucleo: Problem z konfiguracją przerwania zewnętrznego GPIOB_PIN2

    Podłączenie przez kondensator faktycznie pomaga, jednak jest to sygnał który zmienia się ~200 razy na sekundę, dlatego niestety odpada. Swoją drogą jakim cudem na czujniku szczelinowym są drgania "styków" ( tam nie ma styków ). Taki sam problem miałem z czujnikiem HC-sr04 tam też przerwanie na wejściu głupiało. może problemem być to że te sygnały są...

    Mikrokontrolery ARM   23 Maj 2017 08:20 Odpowiedzi: 10    Wyświetleń: 1509
  • Jak mierzyć amplitudę impulsu PWM? Pracuję na STM32F072CB.

    Witam, próbuje znaleźć dobry sposób na pomiar amplitudy impulsu PWM. Zakres zmian wypełnienia 5 % do 95 %. Czestotliwosc sygnalu sie nie zmienia i wynosi 1 KHz. Mój pomysł polega na tym, że po wychwyceniu zbocza narastajacego odpalam ( w przerwaniu od input capture) timer ktory co 10 us ( 5 % z 1 ms to 50 us) trigeruje pomiar ADC poprzez DMA (czyli...

    Mikrokontrolery   26 Wrz 2020 07:14 Odpowiedzi: 9    Wyświetleń: 585
  • [STM32] Czy memcpy w STM32 blokuje przerwania timera przy kopiowaniu?

    memcpy nie ma prawa blokować jakiegokolwiek timera. To jest zwykła funkcja biblioteczna, i na pewno nie sprawdza ktory akurat timer masz włączony i również nie ma kodu aby go wyłączyć. Memcpy jest najpewniej napisany w assemblerze i został odpowiednio zoptymalizowany. Kopiowanie duzej tablicy bajtów w pętli spowoduje kopiowanie się bajtu po bajcie,...

    Mikrokontrolery ARM   09 Mar 2011 11:36 Odpowiedzi: 6    Wyświetleń: 1975
  • STM32F103 - Jaki RTOS (uzycie ADC wyzwalanego z Timera + transfer przez DMA)

    Czy moze po prostu olac w tym momencie HAL... utawic sobie ADC, TIMER, DMA po swojemu i obslugiwac przerwanie z DMA w CH_FAST_IRQ_HANDLER (dotyczy chibios)... No właśnie (; tylko w takim wypadku chyba lepiej by mi bylo zastosowac jakis sam kernel ktory zalatwi mi same przelaczanie watkow... Np FreeRTOS. Ne wiem, po co do takiego zadania angażować RTOS,...

    Mikrokontrolery ARM   21 Sty 2013 11:38 Odpowiedzi: 6    Wyświetleń: 3621
  • [Stm32f103][C] Błąd TEIFx przy nadawaniu UART z Timer3 i ADC via DMA

    1. Jaka jest różnica między tymi dwoma zapisami, czy dobrze to rozumiem? TIM3->SR &=~TIM_SR_UIF; (tu zerujemy?) Powinno być: TIM3->SR =~TIM_SR_UIF; (tu rozumiem,że zmienia stan na przeciwny?) efekt powinien być w tym wypadku ten sam. Różnica opisana jest w RM, w którym opisana jest sekwencja zerowania bitów rejstru SR timerów. Zapisanie zera kasuje...

    Mikrokontrolery ARM   29 Maj 2019 21:42 Odpowiedzi: 16    Wyświetleń: 636
  • [STM32F429] - Timer nie wyzwala przerwań powyżej 400kHz, SYSCLK 180MHz

    Nie mogę rozwiązać problemu maksymalnej częstotliwości wyzwalania przerwania od timera (Update). Timer nie wyzwala przerwania z częstotliwością większą niż ok. 400kHz. Testuje zwykłą funkcjonalność wyzwalania przerwania w momencie zakończenia zliczania do góry lub na dół (update), bez PWM. Wszystkie próby prowadzę na jednej płycie (oryginalnej). Testowałem...

    Mikrokontrolery ARM   06 Maj 2016 20:36 Odpowiedzi: 8    Wyświetleń: 951
  • PIC18F45K50 i PIC16F1619 - Spadek częstotliwości przełączania pinu przy przerwaniach

    Witam, Widzę, że wywiązała się całkiem spora dyskusja i nie wiem do czego najpierw się odnieść. 1. Ten przypadek to maksymalne taktowanie timera i ciągłe wywoływanie przerwania, jednak nadal nie usprawiedliwia to czasu przełączania portu z ns do us. Nie zrobię teraz pomiarów więc nie podam dokładnych wyników ale przy wywoływaniu przerwania co 10us czas...

    Mikrokontrolery PIC   05 Gru 2016 23:18 Odpowiedzi: 30    Wyświetleń: 4722
  • STM32 + FreeRTOS - zastosowanie trybów uśpienia w zadaniu Idle

    Cześć, czy ktoś z Forumowiczów trudził się z usypianiem mikrokontrolera w zadaniu Idle? Mój problem wygląda następująco: podmieniłem przerwanie dla ticku systemowego z timera SysTick na przerwanie od alarmu RTC. W Idle Hook chcę wprowadzić uC w tryb uśpienia Stop. Na moje oko uC powinien się sam wybudzić po wystąpieniu przerwania od alarmu, a nie robi...

    Mikrokontrolery ARM   12 Lut 2015 15:16 Odpowiedzi: 2    Wyświetleń: 1797
  • [STM32] Jak ustawić priorytety przerwań w STM32 bez użycia bibliotek?

    Jako że niestety, wszystkie przyklady jakie znalazłem o ustawianiu priorytetów przerwań są z wykorzystaniem funkcji bibliotecznych, a to co znalazłem jest baaardzo niepewne i dziwne, więc musze zapytać. Czy takie coś: Dodano po 19 P.S. Jak widzę domyślnie rejestry priorytetów ustawione są na 0000, więc wystarczy np. wpisać 1 na czwarty bit (lub oczywiście...

    Mikrokontrolery ARM   26 Lip 2012 18:42 Odpowiedzi: 10    Wyświetleń: 3636
  • [STM32] Konfiguracja SysTick dla FATfs na STM32 - problem z dekrementacją Timer1

    Witam, staram sie wykorzystac karte SD do przechowywania danych uzywanych przez wyswietlacz (bitmapy etc). Korzystam z biblioteki FATfs i komunikacja SPI. Aby moc tego dokonac modul FATfs korzysta z sygnalu zegarowego, ktory co 10ms bedzie wywolywal funkcje [syntax=c]disk_timerproc()[/syntax] Do cyklicznego wywolania tej powyzszej funkcji staram sie...

    Mikrokontrolery ARM   26 Mar 2011 21:14 Odpowiedzi: 4    Wyświetleń: 2657
  • [STM32F2] Dlaczego kasowanie flagi przerwania wpływa na GPIO?

    To kod, który u mnie na STMF107 działa - może znajdziesz jakieś róznice... W przerwaniu mam obsługę klawiatury 4x4 + kilka liczników, ale to tutaj nieistotne, więc nie zamieszczam. [syntax=c] //--------------------------------------... // Inicjalizacja TIM2 //--------------------------------------...

    Mikrokontrolery ARM   13 Lis 2011 22:43 Odpowiedzi: 7    Wyświetleń: 2461
  • STM32 - timer wykorzystywany do zliczania impulsów

    Mam problem z programem w którym timer ma zliczać impulsy (zbocza opadające). Konkretnie zegar timera ma działać w rytm impulsów podawanych na piny TIM4_CH1 i TIM4_CH2, z tym, że osobno liczę impulsy z każdego kanału i generuję osobne przerwanie dla każdego kanału. Liczenie impulsów z dwóch kanałów powinno działać jednocześnie. Impulsy pochodzą od 2...

    Mikrokontrolery ARM   06 Wrz 2012 10:42 Odpowiedzi: 4    Wyświetleń: 4128
  • STM32 - Systick i RTC - wspólnie śmigają, oddzielnie zwisają

    To, że ty chcesz mieć 12 mHz nie znaczy że twoje środowisko tak to zrobi. na rozkręcenie pętli trzeba dość sporo kodu i przynajmniej w domyślnym projekcie jest to jakoś tam ustawione. Startup.S system_init() tam może się odbywać ustawienie zegarów na poszczególne peryferia. I skoro chcesz mieć taktowanie rdzenia na 12MHZ przy kwarcu 12MHz to na pewno...

    Mikrokontrolery ARM   05 Kwi 2014 16:44 Odpowiedzi: 7    Wyświetleń: 2322
  • STM32 - Konfiguracja modułu Bluetooth dla wysokiej częstotliwości próbkowania

    Witam, mam problem z poprawną konfiguracją modułu Bluetooth. Chodzi o to, że na przetwornik ADC wyzwalany timer1 podaje sygnał z GPIOB i chcę próbkować go wg ustawień timera z częstotliwością co najmniej 500Hz. Dane pobierane są z rejestru ADC przez DMA do zadeklarowanego wcześniej buforADC (unsigned short int buforADC buforTx (unsigned char buforTx[4]={0};)...

    Mikrokontrolery ARM   09 Lis 2012 23:07 Odpowiedzi: 24    Wyświetleń: 4029
  • [STM32][C] TIM1 taktowany dwa razy niższą częstotliwością

    Czy aby na pewno częstotliwość przerwań od timera powinna wynosić 1kHz? Skoro masz (w teorii) 24MHz podzielone przez 24000 (preskaler), to faktycznie zegar dochodzący do samego timera będzie równy 1kHz, ale wg mnie przerwanie timera będzie co dwa jego cykle, bo timer liczy tak: 0 ... 1 (przerwanie) ... 0 ... 1 (przerwanie) ... EDIT: sekundy... normalnie...

    Mikrokontrolery ARM   07 Lip 2011 06:41 Odpowiedzi: 23    Wyświetleń: 3461
  • Optymalizacja wydajności silnika elektrycznego: Wyjaśnienie technik sterowania PID

    Optymalizacja wydajności silników elektrycznych: Wyjaśnienie technik sterowania PID Kiedy przyglądamy się dronom, deskom balansującym, inteligentnym samochodom i odwróconym wahadłom, ciągle pojawia się ten termin - PID. Ale czym u licha jest PID i do czego służy? Cóż, w tym artykule stworzyłem prosty sterownik silnika, aby zagłębić się w zasadę działania...

    Elementy Elektroniczne - zamienniki i identyfikacja   22 Lis 2024 04:30 Odpowiedzi: 0    Wyświetleń: 567
  • STM32 Przerwanie SYSTICK. Jak wrócić do funkcji main?

    OK, dzieki użyłem gotowca Nie używaj gotowców w takiej banalnej sytuacji. Doczytaj co to jest ten Systick. W dużym skrócie to licznik 24 bitowy - to ważna informacja, może zliczyć maksymalnie do ok. 16 mln (2 do 24). Po doliczeniu do zaprogramowanej wartości zgłasza przerwanie. Do ustawiania wartości można użyć funkcji Systick_Config(), ale najlepiej...

    Mikrokontrolery ARM   09 Cze 2019 00:09 Odpowiedzi: 11    Wyświetleń: 1017
  • [STM32][F4] - Przerwanie od timera, wskakiwanie do "__Default_Handler"

    A rozmiar stosu ustawiłeś? To taka słynna pułapka Freddiego na początkujących. Lepiej dowiedzieć się wcześniej niż później (; 4\/3!!

    Mikrokontrolery ARM   16 Mar 2013 10:19 Odpowiedzi: 4    Wyświetleń: 3078
  • [STM32][USART][DMA] - Nadawanie przez USART z wykorzystaniem DMA STM32DISCOVERY

    Dlatego właśnie każdy z nas pisze Ci tu o dwóch buforach na dwa komplety próbek, albo o jednym o podwójnej pojemności - czytaj!!! Timer inicjuje przetwarzanie, a potem kolejne przerwanie timera lub przerwanie od zakończenia transmisji DMA z ADC inicjuje transmisję świeżych pomiarów przez UART. W tym czasie ADC już robi następne pomiary do drugiego bufora....

    Mikrokontrolery ARM   14 Mar 2013 07:47 Odpowiedzi: 125    Wyświetleń: 26535
  • [STM32] Timer 4 - przerwanie nie wraca do main po konfiguracji NVIC

    Cześć Chciałem odpalić timer i podłączyć do niego przerwanie ale napotkałem na pewien problem, a mianowicie konfiguruję sam Timer a następnie NVIC i po włączeniu zezwolenia na przerwanie procek skacze od razu do obsługi przerwania i już z tamtąd nie wraca. Umieściłem w obsłudze przerwania zmianę stanu pinu i wstawiłem breakpointa w main-ie zaraz po...

    Mikrokontrolery ARM   07 Paź 2010 18:33 Odpowiedzi: 1    Wyświetleń: 1806
  • [STM32] Jak skonfigurować przerwanie po przepełnieniu licznika TIM1 w STM32?

    Mnie tam brakuje ustawienia przerwania: [syntax=c]TIM1->DIER = 0x00000001;// enable update interrupt[/syntax] Ogólnie takie coś powinno działać: [syntax=c]TIM1->CR1 = 0x00000000;// default TIM1->PSC = 0x000000FF;// set max prescaler TIM1->ARR = 0x00000FFF;// set max reload count TIM1->CCMR1= 0x00000068;// set PWM mode 1 TIM1->CCR1= 0x000000FF;// set...

    Mikrokontrolery ARM   05 Lip 2011 22:15 Odpowiedzi: 7    Wyświetleń: 3987
  • STM32 - Odczyt kierunku obrotu silnika z enkodera inkrementalnego

    1. Jeśli kierunek ma wartość 0 to to przerwanie nigdy nie jest wykonane. 2. Używanie biblioteki SPL dla potencjalnie szybkiego sygnału mija się z celem. 3. Jeszcze bardziej z celem mija się używanie Exti dla enkodera skoro STM32 ma timery z wejściami enkoderowymi.

    Mikrokontrolery   10 Cze 2014 11:03 Odpowiedzi: 4    Wyświetleń: 2121
  • [STM32][HAL] UART , optymalna metoda odbioru danych

    jest jakaś prosta metoda na timeout ? Nie wiem jaki masz STM, ale niektóre mają sprzętowy timeout. Wystarczy w rejestrze RTOR podać po ilu nieodebranych znakach ma zostać wygenerowane przerwanie. Ewentualnie musisz się posiłkować jakimś timerem - np. w trybie OPM. Szczerze mówiąc chyba lepiej Ci będzie napisać tę cześć kodu bezpośrednio na rejestrach...

    Mikrokontrolery ARM   30 Gru 2019 16:52 Odpowiedzi: 15    Wyświetleń: 1566
  • [STM32] - SysTick: Jak stworzyć timery softwarowe i funkcję delay?

    jeśli chodzi o inne przerwania od układów peryferyjnych to poza ustawieniem rejestrów tego układu muszę włączyć to przerwanie i czy tu wystarczy funkcja z core_cm3 np. NVIC_EnableIRQ( RTC_IRQn ); tak I dlaczego nie musiałem włączyć globalnych przerwań żeby SysTick działał?;] Przerwanie SysTick jest w grupie exceptions, ich się nie da wyłączyć w NVIC....

    Mikrokontrolery ARM   06 Lut 2013 16:49 Odpowiedzi: 8    Wyświetleń: 2064
  • [STM32] Jak optymalnie wyzwalać dwa DAC MCP4728 przez I2C z STM32?

    Do pasma EKG układ w zupełności wystarczy. W kwestii punktu 4, chodziło mi o taką konfigurację licznika: - licznik zlicza w jednym kierunku, np. w górę. - Czas pełnego okresu (PSC i ARR) to trochę więcej niż czas transmisji + impuls LDAC (=210ns). - Do jednego z rejestrów porównujących ładujesz wartość, która odpowiada impulsowi LDAC, a wyjście konfigurujesz...

    Mikrokontrolery ARM   15 Sie 2016 11:06 Odpowiedzi: 6    Wyświetleń: 1314
  • Jak uzyskać precyzyjne przerwanie 1 kHz na ATmega8 przy 16 MHz?

    Albert: dość mocno mijasz się z prawdą. Niektóre uC z rdzeniami Cortex mają sprzętowy mechanizm gwarantujący czas odpowiedzi na przerwanie, który umożliwia redukcję drżenia (jitter) przerwania o najwyższym priotrytecie do zera również wtedy, kiedy mamy w systemie inne przerwania. Jeśli użyjesz tego mechanizmu, to sam decydujesz jawnie o czasie od przerwaia...

    Mikrokontrolery AVR   26 Cze 2016 16:44 Odpowiedzi: 32    Wyświetleń: 2865
  • [STM32] [STM32][C] - Obsługa HC-SR04 na STM32F103C8 z jednym Timerem

    Kod składniowo jest dobry. Chodziło mi że nie rozumiem idei jego działania. Np. po co sprawdzać czy TIM4->CNT <= 9? To by oznaczało że za każdym razem TIM4->CNT zmienia się o 1 (i każda taka zmiana to potem programowe sprawdzenie). A to bez sensu: w takim przypadku Timer pracuje jak zwykła zmienna, czyli po co Timer skoro można po prostu dać...

    Mikrokontrolery ARM   21 Lut 2016 22:18 Odpowiedzi: 12    Wyświetleń: 1434
  • [STM32/STM32L100RC] - Timer z zewnętrznym zegarem.

    Nawet jeżeli nie generuje jednego tylko więcej, to po jakimś czasie licznik powinien zliczyć do 5, w moim przypadku nic się nie dzieje, przerwanie się nie wywołuje.

    Mikrokontrolery   30 Cze 2016 10:24 Odpowiedzi: 13    Wyświetleń: 900
  • [STM32] detektor zera sieci + pomiar adc wyzwalany timerem = zła ilość pomiarów

    Po co ci ta sekcja krytyczna w EXTI9_5_IRQHandler ? Czy jeszcze jakies przerwanie korzysta ze zmiennych ktore chcesz chronic ? Jesli jest faktycznie potrzebna )w co watpie) to obliczaj pierwiastek poza nia, skopiuj wynik do zmiennej lokalnej i dopiero w sekcji krytycznej przekopiuj zmienna lokalna do globalnej. Nieliniowe funkcje biblioteczne potrafia...

    Mikrokontrolery ARM   13 Mar 2012 10:51 Odpowiedzi: 18    Wyświetleń: 3559
  • [STM32] Jak obliczyć czas reakcji na przerwanie zewnętrzne w STM32?

    A wejście wyzwalające timer również potrzebuje tylu cykli ??

    Mikrokontrolery ARM   09 Lip 2011 14:36 Odpowiedzi: 3    Wyświetleń: 1714