Dzięki za odpowiedzi i uwagi ! Na pewno nastepnym razem zwrócę na nie uwagę, ale szczerze mówiąc teraz zależy mi bardzo na czasie, żeby to jakoś posklejać, jak to się mówi jakoś na ślinę i żebym mógł trochę danych zebrać. (at)BlueDraco: Tu jest aktualny kod odbioru danych GPS: void USART1_IRQHandler() { if (USART_GetITStatus(USART_GPS,...
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....
Wyłącz przerwanie od TXE skoro nie chcesz wysyłać. 4\/3!!
Witam, Konfiguracja projektu oparta o stm32_blink_led autorstwa Freddie Chopin. Układ STM32F103. Uruchomiłem proste przerwanie z UARTa żeby sterować przepływem programu podczas testów. Problemem jest to wywołanie funkcji z przerwania: typedef struct { u8 print_test_1; u8 print_test_2; u8 print_test_3; } sys_flag_t; volatile sys_flag_t sys_flag;...
Zacznij od sprawdzenia stosu. No właśnie - w skrypcie linkera jest nawet opis, ale widzę że nikt go nie czyta... 4\/3!!
Zaczynam zabawę z stm32. Chciałbym obsłużyć USART przez przerwania. Większość przykładów opiera się na stdperiph lib, chciałbym uniknąć stosowania tej biblioteki. Używam tylko nagłówka stm32f10x. Wydaje się że włączyłem przerwanie przez NVIC_EnableIRQ(USART1_IRQn) bit w rejestrze USART1->CR1 również został ustawiony i w zasadzie na tym utknąłem. Prosiłbym...
Witam, Próbowałem na podstawie książki "Mikokontrolery stm32 w praktyce" uruchomić na STM32F107 transmisję z wykorzystaniem USART-a. Połączyłem Rx i Tx ze sobą i próbuję wysyłać a następnie odczytywać wysłane dane. Poniżej jest mój kod: int main(void) { SetSysClockTo72(); EnablePerypherialClocks(); ConfigureNVIC();...
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...
Ok. Ostatnio badałem dla STM32L czas wyjscia ze STOP mode. Mierzyłem oscylskopem i sekwencja: - wyjscie ze STOP mode - przełaczenie zegara procka z MSI na HSI zajmuje 150us. Jak masz system w którym możesz sobie na to pozwolić to nie ma problemu ze "zgubionymi" zdarzeniami. Nie wiem tak naprawde o co Ci chodzi. Naprawdę zdaje sobie sprawe że przerwanie...
W amatorskich aplikacjach nigdy nie bawiłem się w liczenie sum kontrolnych, ani tworzenie jakiś super wymyślnych formatów ramki. Twój uK ma sprzętową obsługę USART i może być widziany jako wirtualny port COM, to najprostszy sposób komunikacji z PC. Możesz sobie przesyłać bajt po bajcie, albo zdefiniować jakiś bufor, który po wypełnieniu wywołuje przerwanie...
Witam, chciałbym mieć przerwanie zewnętrzne na PE0 a cały czas cokolwike bym nie zrobił, przełączył, zmienił itd jest na PA0, moglby ktos rzucic okiem na kod i powiedziec co jest zle... wydaje mi sie ze w tym syscfg jest cos zrabane, albo nie chce sie ustawic etc... swoje wnioski opieram na tym ze PA0..2 normalnie smiga tylko nie mogeprzejsc jakby na...
Witam, jak w temacie zaaplikowałem następujący kod do ARM przycisk mam na PORTA pin 0 [syntax=c] #include"stm32f0xx.h" int main(void) { RCC->AHBENR |= RCC_AHBENR_GPIOAEN|RCC_AHBENR_GPIOCEN; SYSCFG->EXTICR[0] |= SYSCFG_EXTICR1_EXTI0_PA; GPIOC->MODER |= GPIO_MODER_MODER8_0; GPIOC->ODR |= GPIO_ODR_8; EXTI->IMR |= EXTI_IMR_MR0; EXTI->RTSR |= EXTI_RTSR_TR0;//Rissing...
Zacznij od opisania formatu danych. Po czym odbiorca ma poznać, że zakończono przesyłanie liczby? Tego ne napisałeś powyżej. Odbiór łatwo zrobisz w przerwaniu, pisząc obsługę przerwania w konwencji automatu. Najpierw poczytaj, co oznacza poprzednie zdanie. Potem możesz zacząć pisać automat. Potrzebne tylko dwa stany: - oczekiwanie na 'L' - skanowanie...
sprawdziłem w dokumentacji. FIFO ustawiane jest w trybie z DMA, którego nie używasz. Więc ten aspekt odpada. Dla uporządkowania tematu. PC-t wysyła do stm32f1.. ramkę z 8 bajtów z 1 bitem stopu bez parzystości. 8 bajtów wyjechało i masz je w buforze odbiorczym pc-ta jako echo. 1. czy arm widzi tylko wybrane bajty ? 2. czy arm widzi wszystko? 3. czy...
Witam. Walczę z przerwaniami zewnętrznymi od kilku dni i niestety przegrywam walkę... Jeżeli konfiguruję po jednym zdarzeniu dla każdego przerwania (np. PA0, PA1, PA2) jest wszystko ok. Problem się zaczyna jak chcę skonfigurować kilka zdarzeń od jednego przerwania ( w moim przypadku: PA1, PB1 i PC1). Przerwania PA1 i PB1 nie działają w ogóle, natomiast...
Witam, Mam problem z komunikacją STM32 z komputerem. Moja płytka to STM32L-Discovery [url=http://www.st.com/internet/evalboar... Chciałem napisać sobie najprostszy program do komunikacji z komputerem. Jak na razie nic nie działa. Pisałem program z pomocą książki "Mikroprocesory STM32 w praktyce" Krzysztofa Paprockiego. Musiałem...
Witam, Jestem poczatkujacy jesli chodzi o programowanie pod architekture Cortex. Posiadam zestaw ewaluacyjny STM32 Butterfly. Probuje skonfigurowac przerwanie, aby wykonało się po naciśnięciu przycisku. Debugujac program widac, ze po nacisnieciu przycisku flagi sa ustawiane, ale funkcja obslugujaca przerwanie nie jest wywolywana. tak wyglada moj kod...
Witam Mam następujący problem przy płytce STM32F0Discovery. Celem programu jest na poziomie obsługi przerwania ustawienie globalnej zmiennej, a następnie po powrocie do maina sprawdzenie zmiennej i wykonanie instrukcji. Kod pliku main.c [syntax=c] #include "stm32f0xx.h" #include "setup.h" volatile bool new_data = false; int main (void){ setup(); while(1){...
Czesc, mam problem z konfiguracja przerwan zewnetrznych. Sprawdzalem kilka przykladow znalezionych w necie i zaden (prawie) nie dziala. Jedynym przykladem ktory dziala jest gotowiec z Atollic studio, i generowanie przerwan na porcie PA0. Niestety zadne modyfikacje na inne porty nie dzialaja. Oto moj kod: Inicjalizacja GPIO na porcie PB12: [syntax=c]void...
mam ustawione przerwanie zewnętrzne ustawione na wyzwalanie zboczem opadającym i narastającym w funkcji obsługi przewania zapisuję sobie do bufora: void EXTI0_IRQHandler(void) { //Check if EXTI_Line0 is asserted if(EXTI_GetITStatus(EXTI_Line0... != RESET) { Buffer[iWriteIdx] = 'I'; GoToNextElement(&iWriteIdx);...
[syntax=c] RCC_APB2ENR_ADC1EN_bb = 1; ADC1->CR2 |= ADC_CR2_ADON; // adc1 calibration ADC1->CR2 |= ADC_CR2_RSTCAL; while (ADC1->CR2 & ADC_CR2_RSTCAL); ADC1->CR2 |= ADC_CR2_CAL; while (ADC1->CR2 & ADC_CR2_CAL); // setting adc channels ADC1->SQR3 |= 8; ADC1->CR1 |= ADC_CR1_EOCIE; NVIC_EnableIRQ(ADC1_2_IRQn); //... while (1)...
Cześć Przyszła pora na konfigurację USARTA i pojawił się problem polegający na tym, że nie dostaję tego co chcę przy odbiorze danych przez stm'a. W przerwaniu chcę odebrać ciąg znaków np. "Ala ma kota\n" i zapisać do bufora, jednak odbieram tylko "A" po czym program już nie wchodzi do procedury obsługującej przerwanie (chyba że ponownie coś wyślę z...
Programiści wykorzystujący STM32 z serii L najczęściej korzystają z biblioteki HAL do obsługi tego typu przerwań. Chciałbym skonfigurować przerwanie które resetowałoby procesor po rozłączeniu zasilania bez jej wykorzystania. Układ zaprojektowany mam tak aby na pinie PA2 pojawiła się jedynka w momencie odcięcia zasilania. Według dokumentacji załączonej...
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};)...
Cześć, Mam taką funkcję jak poniżej, która powinna przełączyć procesor w tryb STOP2. Testowo wywołuję ją zaraz przed wejściem w pętle główną for(;;) w main.c Problem polega na tym, że jak bym tego nie robił, to procesor w ogóle nie reaguje na WFE. Przerwania są jak widać wyłączone, żadna flaga pending w EXTI nie jest podniesiona. Żadne przerwanie 'nie...
Witam. Od pewnego czasu walczę z chińską płytką (blue-pill) z STM32F103 na pokładzie i z tego co już się nauczyłem oraz co sobie w ReferenceManualu wyczytałem to wiem, że AVR'y odłożę na półkę:) Moja nauka jest w stylu 'bare-metal' wykorzystuję jedynie pliki nagłówkowe stm32f103xb.h i kilka od CMSIS które można wydobyć z STM'owych bibliotek, więc ich...
Witam Zaczynam zabawę z STM32 i HALem. Mam następujący dylemat. Otóż uruchomiłem przerwania od dwóch UARTów funkcją: [syntax=c] HAL_UART_Receive_IT(&huart1, &znak, 1); HAL_UART_Receive_IT(&huart2, &znak, 1); [/syntax] Po pojawieniu sie jednego znaku w Uarcie 1 lub Uarcie 2 uruchamia mi się wspólna procedura: [syntax=c] void HAL_UART_RxCpltCallback(UART_HandleTypeD...
witam, Mam następujący problem: Do Pinu 3 portu GPIOC mam podłączony sygnał 1kHz i chcę generować przerwanie od zbocza opadającego. moja konfiguracja: [syntax=c] GPIO_InitTypeDef GPIO_InitStructure; NVIC_InitTypeDef NVIC_InitStructure; EXTI_InitTypeDef EXTI_InitStructure; RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GP... ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_SY...
Witam, Gdy próbuje skonfigurować dwa USART i przerwania do nich powstaje konflikt. Wystarczy, że odłącze kabel od USART1 i wtedy wysłanie komendy do komputera wraca do normy. Definiowanie: [syntax=c]RCC_AHBPeriphClockCmd(RCC_AHBP... ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_US... ENABLE); RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIO... ENABLE);...
Cześć. To mój pierwszy post na forum dlatego witam wszystkich. Post można podzielić na dwie części: to działa i to co nie działa. Zacznę od tego co działa. Do pinu PD0 przypisałem przerwanie. W procedurze obsługi tego przerwania zwiększam zmienną o 1 i wyświetlam na LCD. Kabelkiem połączeniowym połączyłem pin od przycisku tj. PB7 do PD0. Przerwanie...
Witam, przy ustawionym preskalerze np na 80 przerwanie zostaje wywołane, ale gdy zmniejsze preskaler to przerwanie się nie wykonuje. #include "stm32f10x.h" void RCC_Conf(void); void Show(int); void GPIO_Conf(void); void NVIC_Conf(void); void TIM_Conf(void); . . . int main(void) { #ifdef...
Witam kolegów, mam problem z transmisją szeregową z wykorzystaniem DMA. Chciałbym osiągnąć następujący wynik, po każdym zdarzeniu TXE wysyłana będzie ramka poprzez USART3. Poniżej zamieszczam kod: Ustawienie USART3: [syntax=cpp] RCC->APB1ENR |= RCC_APB1Periph_USART3; USART3->SR =(USART3->SR & 0xffbf); USART3->CR1 = (1 << 2) | //Włączenie...
Pisałem gdzieś jak się je włącza, na co Freddie napisał, że są funkcje w CMSIS, które z resztą na forum też już wklejałem. [syntax=c]/** * (at)brief Enable Interrupt in NVIC Interrupt Controller * * (at)param IRQn The positive number of the external interrupt to enable * * Enable a device specific interupt in the NVIC interrupt controller. * The interrupt...
Witajcie, moją przygodę z STM32 zacząłem stosunkowo niedawno, praktycznie od samego początku staram się stworzyć "protokół" do bezawaryjnej komunikacji po USARcie, który wykorzystany będzie do transmisji danych z małego robota typu LineFollower. Nie mam większej wiedzy, ani doświadczenia z tej dziedziny. Stworzyłem trochę kodu na podstawie własnych...
Zastanawiam się tylko po co sprawdzać to: [syntax=c]USART3 -> CR1 & USART_CR1_TCIE[/syntax] nie rozumiem powodu. Przecież to jest "This bit is set and cleared by software." Programista nie wie czy ustawił to przerwanie czy nie? Dodatkowo ten zapis: [syntax=c]if(( USART3 -> CR1 & USART_CR1_TCIE) && (USART3 -> SR & USART_SR_TC ))[/syntax] wygląda dość...
Witam, Próbuję pożenić template Freddiego (stm32_blink_led) z StdPeriph z racji, że pracuję pod Linuxem i jest to chyba jedyny template jaki działa :) Problem pojawia mi się przy próbie wywołania przerwania od USART1. W pewnym fragmencie kodu ustawiam flagę przerwania: USART_ITConfig(USART1, USART_IT_TXE, ENABLE); Kod obsługi przerwania jest...
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!!
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!!! Czytam czytam. Na razie rozumiem to w ten sposób: Generuje przerwanie od Timera co 25µs: 1 przerwanie - próbkowanie 1 kanału i transmisja DMA do tablicy 1 2 przerwanie - próbkowanie 2 kanału i transmisja DMA do tablicy...
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".
void USART2_IRQHandler(void) { while (!(USART2->SR & USART_S... ... To chyba oczywiste, czemu przestaje działać przerwanie od USART1 jak włączysz to od USART2.
Ja ostatnio rozwiązałem to tak do transmisji danych z 3 osiowego akcelerometru: [syntax=c] sprintf((char *)buforTx,"X%03iY%03iZ%03iE%1c%1c",Buffe... USART_ITConfig(USART1, USART_IT_TXE, ENABLE); //Przerwanie-transmisja [/syntax] Potem w programiku napisanym w C# wyłuskuję z ciągu interesujące mnie dane: http://www.youtube.com/watch?v=d-q6DuQH-...
Pomysł, żeby nadawać znak wtedy, gdy odbiornik jest gotowy i nie wiedząc, co jest w buforze nadawania, niekoniecznie musi być poprawny. Pomyśl, co będzie wysłane po odbiorze pierwszego znaku. Bufor odbioru ma u Ciebie raz 16, a raz 17 znaków. Cyz odebranodane ma atrybut volatile? Czy włączyłeś przerwanie UART? Takie inicjowanie UART działa poprawnie...
Witam mam trywialny problem, ale chciałbym się upewnić: Otóż postanowiłem zrobić sobie wysyłanie danych przez port szeregowy. Mam w związku z tym pytanie odnośnie USART na STM32. Jeśli ustawię sobie przerwanie USARTA na aktywny stan TXE (USART_ITConfig(USART1, USART_IT_TXE, ENABLE); ), to ono od razu mi się wykona, bo w TDR nie ma danych. Przerwanie...
Odpowiedź A
Czy pamiętałeś o włączeniu portów w ODPOWIEDNIM rejestrze APBENR? volatile nie ma nic wspólnego z AVR. Tego atrybutu używa się np. wtedy, kiedy zmienna modyfikowana przez obsługę przerwania jest testowana przez inny fragment kodu. Pokaż kod procedury przerwania, bo coś tam narozrabiałeś.
1.Czy w CMSIS jest jakieś makro wywołania, czy trzeba to pisać ręcznie? Ręcznie. O tak - https://github.com/DISTORTEC/distortos/b... 2.Czy to przerwanie się inicjalizuje? Co przez to rozumiesz? 3.Czy trzeba mu ustawiać priorytet (domyślny ma chyba najniższy i o to mi chodzi)...
Prawdopodobnie nie włączyłeś przerwania odbioru danych w USART - bit RXNEIE w rejestrze CR1. A poza tym . oczekiwanie w procedurze obsługi przerwania to nie jest dobry pomysł, a właśnie to robisz. Masz poniżej tablicę do zainicjowania USART z przerwaniem odbioru w STM32F0 - adresy rejestrów i ich zawartości - wychodzi to sporo krócej niż przy użyciu...
Witam, Chcę wykorzystać w uK Uart4 do pracy w przerwaniu jednak wszystkie moje wysiłki jak na razie kończą się niepowodzeniem. Skonfigurowałem Uart4 do pracy z prędkością 9600/rx/tx włączyłem odpowiednio taktowanie i ustawiłem porty. Wysyłam znaki do uK i z uK wszystko idzie poprawnie dopóki nie ustawię przerwania UART4_IRQHandler. // włączenie portów...
Lepiej tak: void USART1_IRQHandler(void) { if (USART1->ISR & USART_ISR_TXE) { // jeśli zakończona wysyłka to coś... USART1->CR1 &= ~USART_CR1_TXEIE; // kasowanie flagi tak mi się wydaje że to to. } } A to jest źle każde przerwanie powinno wyglądać tak: [syntax=c] void XXXX_IRQHandler(void) { uint32_t isr; isr = XXX->ISR & XXX->IER; if( isr & flag)...
Sporo się namęczyłem, zanim ruszył mi slave transmitter w STM32F103. W 107 będzie tak samo. Po pierwsze zobacz do errat - tam między innymi napisali, że przerwanie i2c musi mieć najwyższy priorytet, bo inaczej się wiesza. Poza tym przykłady nie zadziałały mi od razu, a problemy mają też inni, o czym możesz poczytać na main.c // main.c main()...
Najpierw zdecyduj się, czy chcesz obsługiwać UART w przerwaniu, czy testować znaczniki poza przerwaniem. Proponuję zacząć od zwykłej obsługi z aktywnym oczekiwaniem, a kiedy ta ruszy - uruchomić przerwania. W obecnej postaci po włączeniu przerwania nadawania jest ono natychmiast zgłaszane, procedura przerwania wysyła bajt, co powoduje wyzerowanie znacznika...
Witam, chciałbym przesyłać dane przez USART za pomocą DMA (STM32F4). DMA jest aktywowane w przerwaniu od TIM2 w odstępach co 100 ms. Program wykonuje się, natomiast dane nie są przesyłane. Wiem, że na pewno przerwanie od TIM2 działa poprawnie. Jeśli ktoś wie gdzie może być błąd/braki w konfiguracji proszę o odpowiedź. Z góry dzięki. Poniżej kod: [syntax=c]...
Cześć, Od jakiegoś czasu borykam się z takim problemem: chciałbym odbierać po CANie ramki, wpisywać je w gotowy szablon i dalej wysyłać po USARCie na kompa w kodzie ASCII. Czegoś mi brakuje w tym kodzie i za każdą wskazówkę będę wdzięczny. Z góry dzięki:) To mój main: [syntax=c] unsigned char tx_uart[]=" ID: DL: F: T: DATA: ";//54 char ramka[55]; unsigned...
Cześć, Nie dawno zacząłem przygodę z STM32. I mam duży problem nad którym siedzę już parę dni. Chciałem stworzyć prostą komunikację z komputerem gdzie przez terminal odpowiednimi komendami będzie można gasić i zapalać diody i w drugą stronę przesyłać które diody są zapalone. nie wiem gdzie jest tu błąd więc Ustawienie GIPO void GPIO_Conf(void) { GPIO_InitTypeDef...
Ja jestem ciekawy jak wygląda "Reset_Handler", jakbyś mógł dodać jak obsługujesz to przerwanie.
Rozważajmy tu moment gdzie przerwanie zawiesi się w wykonaniu i jednak nie opuszcza przerwania.
Przerwanie bym raczej właczył przed odpaleniem DMA. Odbiór przez DMA to raczej tylko w przypadku kiedy masz zawsze tę samą ilość danych. nie wiem jak w Twoim przypadku bo nic o tej "ramce" nie piszesz. Rozmiem że ma dokładnie 30 bajtów. Jezeli ma więcej lub mniej o choćby jeden bajt to Twój algorytm nie zadziała. - jezeli mniej np o 5 bajtów to odbierze...
Witam Napotkałem na dziwny problem. Napisałem programik gdzie używam kilku przerwań m.in przerwania USART4. Jak wgram program przez JTAG-a i debuguje to wszystko działa bez zarzutów natomiast po zaprogramowaniu hexa do procka nie działa przerwanie od UART-a przy czym inne przerwania działają ok. Sam uart działa bo wysyła znaki natomiast przerwanie się...
Witam ponownie Troche czasu minelo i zdazylem bardziej doglebnie poznac ten zestaw ref. jak i sam procesor STM32. Niestety wraz z rozrastaniem sie projektu powracaja stare bledy i tak: W trybie SC USART nie generuje mi przerwan dla kazdego znaku, tzn.: Przy wysylaniu przez karte ATR w stanie RSTIN LOW moj soft dostaje tylko jeden bajt (pierwszy z ATR)...
Z problemem poradziłem sobie w 90% stosując sztuczki z wpisami hook w pliku ".gdbinit" oraz dodatkowym wpisem do pliku konfiguracyjnego openocd dla eventu "old-pre_resume". Chodzi o użycie "cortex_m3 maskisr on/off". Dopiero najnowsza poprawka do OpenOCD 0.5.0 z 28 czerwca dodała automatyczne włączanie/wyłączanie bitu C_MASKINTS w Debug Halting Control...
Proponuję Ci zerknąć na ten kod - https://github.com/DISTORTEC/distortos/b... - robi dokładnie to co chcesz osiągnąć i w dokładnie ten sam sposób. Tutaj kod przerwania - https://github.com/DISTORTEC/distortos/b...
Zmienne globalne zajmują...... Pewnie ram dla led jest rezerwowany w chwili uruchomienia biblioteki przez memalloc. Gdybyś sam pisał obsługę led to użyłbyś tablicy o określonym rozmiarze dzięki czemu wiedziałbyś ile ram zajmuje program. Poszukaj jak wyświetlić ilość wolnej pamięci ram w czasie działania programu. Jakiś freemem jest. Trochę oszuka ale...
Witam, walczę z UART i natrafiłem na przeszkodę w postaci odbioru danych (wysyłanie działa). Analizując mój kod przynajmniej teoretycznie powinien działać, ale w praktyce tego nie widać, więc proszę o zdjęcie mi klapek z oczu i wytknięcia błędów. Zamieszczam kod, który ma za zadanie sterowanie diodą w zależności od odebranego rozkazu. Konfiguracja UART...
Hej, nie mogę znaleźć na forum podobnego problemu. Otóż pracuję z mikrokontrolerem STM32F100RB (płytka stm32vldiscovery) i chciałbym wykorzystać przerwanie od USART podczas pracy z FreeRTOS. Problem polega na tym, że nie wiem, w którym miejscu zdefiniować przerwanie. Uruchamiam je funkcją USART_ITConfig(USART2, USART_IT_TXE, ENABLE) i niestety program...
Temat można potraktować jako zamknięty. Problem polegał na tym, ze flagi od przerwania odbioru USART co prawda były kasowane automatycznie, ale zanim zostały skasowane przychodziło już nowe przerwanie... Dodatkowo CLK na USART2 był uruchamiany dwa razy i jak się okazało ma to duży wpływ na pracę tego ukłądu. Dlaczego? nie wiem ...
Witam, Próbuje skomunikować się z modułem SIM800 przy pomocy STM32F100RBT6B. Mam skonfigurowane peryferia i wysyłam dane do modułu. Niestety problem pojawia się przy odbiorze, Odbieram tylko pierwszą literę i nie wiem dlaczego. Wykorzystuje przerwania do transmisji UART. Komunikacja z poziomu PC <-> SIM800 przebiega bez problemów, prosiłbym o...
stm32 usart przerwanie stm32 przerwanie usart usart przerwanie
łączenie ładowarek vestel gaśnie podświetlenie k7s5a manual
Zbyt wysoki poziom oleju w silniku – tryb awaryjny, objawy, skutki, diagnostyka ECU Depollution System Faulty w Peugeot 207 1.6 benzyna - przyczyny i rozwiązania