W seriach STM32F domyślnym trybem prawie wszystkich linii (poza interfejsem SWD) jest floating input. W seriach STM32L i STM32G - analog! Ta informacja jest jawnie podana w manualu, w sekcji GPIO.
Zworki na CN2 założone? Spróbuj uruchomić trzymając przycisk reset.
Reasumując: 1. Włączasz zasilanie = nie działa 2. Wykonujesz reset STM'a = działa ? Mógłbyś jeszcze "main'a" pokazać, albo najlepiej odchudź kod do obsługi tylko SPI i wrzuć cały projekt.
Jak wygląda obwód resetu mikrokontrolera? Kondensatory sprzęgające tuż przy mikrokontrolerze oczywiście masz? Przy AVR-ach czasem pomaga zastosowanie się do noty [url=www.atmel.com/Images/doc1619.pdf]AV... EMC Design Considerations. Być może u Ciebie też odpowiedni obwód przy pinie resetu poprawi sytuację.
Problem jest taki - po sygnale reset program się uruchamia ponownie. Natomiast po wyłączeniu i włączeniu zasilania program nie rusza. Dopiero po wydaniu komendy "reset and debug" program ponownie rusza. Masz wpisaną dyrektywę preprocesora: STARTUP_FROM_RESET ?
W module RCC masz rejestry odpowiedzialne za reset peryferiów (RCC_APBxRSTR)
Spróbuj zaprogramować układ trzymając przycisk reset. Może być konieczne dodanie do linii komend OpenOCD -c srst_nogate
w tej samej komendzie (flash write_image) możesz też używać plików .elf. Niemniej jednak o jednej rzeczy przy tej komendzie zapomniałem erase c:/eclipse/_PROJEKTY_/stm32_blink_led-1.... reset run; shutdown;" (;
A co robisz z pinami Boot ? Reset podciągnięty do Vcc ?
Z kodu wynika pewna ciekawa rzecz... Otóż z tego co widzę stos znajduje się... w środku sekcji .bss - nie wiem czy to normalne, ale nie sądzę... 4\/3!!
a spróbuj przy odpiętym debuggerze, chyba że jest odpięty?
zmień w ustawieniach z 1 obrazka na under reset i HW reset. 3 zakładka sprawdź czy masz odpowiedni programming algorithm. może sprawdź połączenie USB? zmień port i/lub kabel
Czyli jeżeli dobrze rozumiem to w przypadku resetowania powinienem ustawić bit RST. Następnie włączyć zegar RCC (ponieważ w konfiguracji po restarcie jest on wyłączony) Resetujesz konkretne peryferium a nie RCC. Tak że w RCC nic się nie zmieni. Mogłbyś mi jeszcze podać źródła gdzie znalazłeś takie informacje o resecie Takich jak Ty podałeś to nie znalazłem...
Witam, z czego kolega wnosi ze "druga" opcja jest pewniejsza ? Akurat w tym układzie to nie ma znaczenia, ale na przykład w STM32 jeśli podepniesz reset pod VCC, to nie będziesz w stanie zresetować układu, nawet programowo. Reset tam jest wejściem i wyjściem. Ergo, jeśli zawsze podpinasz reset przez rezystor to zawsze będzie działać, a jak bezpośrednio...
Wygląda na problem sprzętowy. A może nim być wszystko - od zwarcia do spalenia dowolnego komponentu "po drodze". 4\/3!!
Ale jesteśmy nadal w dziale "mikrokontrolery"? Bo wiesz - PC może i są podobne do mikrokontrolerów, jednak nie w 100%. Na STM32 jednak reset to reset.
A w trybie "Connect Under Reset"?
Prawie by działało, tylko zapisując to tak pokrętnie musisz użyć nawiasów z powodu drobnego dziwactwa w priorytetach operatorów w C, no i najpierw czytający kod musiałby zgadnąć, co to jest (uint32_t)RESET. Byłoby to zbędne, gdybyś napisał po prostu: while (ADC1->CR2 & ADC_CR2_CAL); - bez dziwnych porównań z tajemniczą stałą RESET.
Cześć To co opisałeś robisz dobrze. Reset podaje się dlatego że stan wejść boot jest sprawdzany po zboczu narastającym resetu. Problem jest pewnie trywialny, może brak masy, vcc. Sprawdź dokładnie PCB.
Te wcześniejsze Ci nie działały zgodnie z podpowiedzią aplikacji - zanim ich użyjesz musisz zatrzymać układ. Ta późniejsza próba zadziałała, bo układ był zatrzymany - dzięki "reset init". 4\/3!!
przy włączaniu debuga można od razu robić reset - wtedy breakpoint na pewno zatrzymałby program
Witam RUN->Run/Debug Configurations->AC6 STM32 ... dla stworzonej konfiguracji zakładka Debugger Show generator options Reset mode: Software system reset https://obrazki.elektroda.pl/7593618200_... Pozdrawiam
Zerknij tu http://www.elektroda.pl/rtvforum/viewtop... I nie rozdzialaj "reset" od "halt" - nie ma to żadnych korzyści, a może mieć wady, daj więc po prostu jedną linią "monitor reset halt". 4\/3!!
Funkcja NVIC_SystemReset() z CMSIS.
Zasilanie VBAT ma za zadanie podtrzymać zawartość segmentu pamięci BACKUP i umożliwia ciągłą pracę RTC. Żadne inne rejestry niż BACKUP SRAM oraz RTC nie zachowują wartości po wyłączeniu głównego zasilania. Rdzeń nie może pracować, gdy zasilanie jest tylko na VBAT; nie ma takiej możliwości. Co do schematu, to dławik na zasilaniu AVDD ma za dużą wartość....
OMG, ale po co ładujesz wciąż plik .bin... Załaduj po prostu plik .hex czy .elf - parametr offset nie ma wtedy żadnego znaczenia (jest ignorowany), bo pliki te zawierają adresy. Co do parametru "unlock" - jeśli masz układ z zablokowaną pamięcią, to ta komenda nie zadziała zawsze - jak widzisz - w niektórych układach po odblokowaniu pamięci konieczny...
1. ustawienia boot-pinów i bitów nie mają wpływu na działanie SWD (generalnie debug interface) 2. zmieniają one tylko miejsce skąd staruje procesor po resecie.
Włączył Ci się "hardware watchdog". Zrób "mass erase" a następnie albo wyłącz "hardware watchdog", albo skasuj też obszar "option bytes" (lub przywróć tam wartości domyślne).
Zależy jaki reset :)
daj "monitor reset halt" zamiast osobnych komend. Ale nie mam pojęcia czy to pomoże...
Niestety to nie rozwiazuje problemu. Dodalem dyrektywe STARTUP_FROM_RESET, mimo to program nie startuje po resecie.
Na końcu zamiast "reset" użyj "reset run".
Podłącz się do niego gdy linia reset jest stale w stanie niskim.
No własnie nie wiem... Piszę programy w Keil 4 z płytką MCBSTM32 i nawet jak korzystam z gotowych programów, wgrywam je to działają dopiero po resecie.
Jak masz podłaczony SWD + Reset (ten właściwy reset, bo stlink v2 ma osobny reset dla STM8 z jakiegoś powodu), i w programatorze wybrane "connect under reset" to powinno wystarczyć na 99% przypadków.
A jak ten Twój ST-Link wygląda? Sareph już wspominał o tym, że w chińskich wersjach nie działa "Connect under reset".
Jest jakiś sposób? Bootloader na UART, programik od ST i kasowanie całej pamięci. Ewentualnie można próbować połączyć się z wciśniętym przyciskiem RESET. 4\/3!!
Nic nie skasowałeś ani nic nie zepsułeś. W opcjach ST-Link ustaw "Connect under reset" i hardware reset.
Trzy rodzaje wyjątków: przerwania, pułapki, błędy - używając w miarę spójnej terminologii z jakimiś sensownymi definicjami pojęć. Niestety producenci ne stosują tutaj spójnej terminologii. Przerwania są asynchroniczne, pozostałe - synchroniczne. Przy pułapce instrukcja się kończy, przy błędach - nie. W architekturach RISC granica pomiędzy pułapkami...
Bo może wektor przerwań dla tego akurat kanału DMA się nazywa inaczej? Porównaj nazwę Twojej funkcji z zawartością tablicy wektorów. Jeśli masz w projekcie pliki C++, to trzeba przerwania deklarować jako extern "C". 4\/3!!
Nie pracuję w jakimś noisy environmencie :) timeouty próbowałem różne z resetem i dalej mam w kółko slave mode z zajętą linią :| Chyba, że pullup jest za mocny, ale coś nie wydaje mi się. A sprawdzałeś napięcie na linii? Start condition Setting the START bit causes the interface to generate a Start condition and to switch to Master mode (M/SL bit set)...
IWDG ma timeout dopiero po 1,6s, a jest resetowany w tasku FreeRTOSa, który pstryka co 1ms, oraz w innym, który pstryka co 1s lub częściej, jeśli ma coś w kolejce... Jeśli używasz w ten sposób watchdoga, to w sumie możesz go nie używać wcale. Nie zabezpieczy Cię to wcale przed tym, że zawiesi się jakikolwiek inny task, a nawet jeśli zawiesi się jeden...
Ok, problem został po części rozwiązany. Resetowanie mastera w trakcie komunikacji nie powoduje zatrzymania transmisji. Zostało to rozwiązane permanentnym włączeniem przerwania od RX na slave. Wcześniej w pętli while wołana była funkcja która włączała przerwanie, czekała na dane i wyłączała przerwanie. Problem za to pojawił się po drugiej stronie. Teraz...
Spróbuj programować płytkę trzymając przycisk reset.
To zależy od konfiguracji narzędzi (np. w skrypcie OpenOCD: "halt" / "reset halt").
Sprawdz 2 opcje: 1. Kolega arduinowiec z hackspace stwierdził ze po co sie "pałowac" sketchami - tylko trzeba reset do gnd podłaczyć (w procku arduino) i mamy "czystą" przejściówkę. podobno on tak programuje te procki w domu i działa. 2. Poprawić sketch bo podobno bez CDC tak latwo nie pójdzie.
Przecież 1 timer może wykonywać kilka (naście) zadań. Np. odmierzać kilka czasów, obsługiwać wyświetlacze LED, przyciski, odtwarzać muzykę. I to tylko 1 timer odpowiednio oprogramowany.
Witam Dlaczego przy włączeniu zasilania lub po resecie STM32 zawsze spełniony jest warunek mimo, że nigdzie nie jest wywoływana funkcja osSemaphoreRelease() ? [syntax=c]static void SemaphoreTest(void const * argument) { osSemaphoreId semaphore = (osSemaphoreId) argument; for(;;) { if (semaphore != NULL) { if (osSemaphoreWait(semaphore , 0) == osOK)...
Początek programu FreeRtos wygląda tak: /* Private define ----------------------------------------... #define LED_TASK_STACK_SIZE ( configMINIMAL_STACK_SIZE ) #define LCD_TASK_STACK_SIZE ( configMINIMAL_STACK_SIZE ) #define USART_TASK_STACK_SIZE ( configMINIMAL_STACK_SIZE ) #define LED_TASK_PRIORITY ( tskIDLE_PRIORITY + 1 ) #define...
reset to reset i już, może pokaż jakiś schemat ?
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...
Witam Panowie czy mógłby ktoś sprawdzić na swoim stm32, jak "wkładacie" go USB ile razy pojawia się przerwanie od USB reset request. W programie z reguły jest tak: /* USB Reset Request */ if (istr & USB_ISTR_RESET) { // USB_Reset(); _SetISTR((uint16_t)CLR_RESET... U mnie jest koło 100 razy. Na SAM7X256, przy wkładaniu...
Może zadam takie głupie pytanie. Jesteś pewien, że bateria jest dobra?
Kiedyś wgrałem program do STM32 który zmieniał konfigurację pinów SWDIO i SWCLK . Potem nie mogłem połączyć się z mikrokontrolerem poprzez STLink. Pomogła opcja "Connect under reset". Musiałem przy łączeniu na starcie przytrzymać przez chwilę reset mikrokontrolera. Parę prób i połączył się.
Pewnie przyjdą tu mądrzejsi i rozkminą sprawę, ale zanim to się stanie przypomnę, że problemem można wyeliminować sprzętowo. Wystarczy sobie zbudować obwody wyjściowe tak aby włączać coś tam zerem, a wyłączać jedynką.
Witam Problem występuje na obu wersjach. Z początku myślałem to że po czasami resecie program gdzieś wisi to może wina kontrolera, ale sprawdziłem na płytce STM32F249Disco i również zdarzają się zwisy po resecie
Witam. Na początku muszę zaznaczyć, że jestem raczej początkującym w temacie mikrokontrolerów i ogólnie elektroniki. Kupiłem sobie stm32f0 discovery oraz termometr ds18b20, podłączyłem wszystko jak trzeba - pin 1-wire do pc7, oraz piny zasilania odpowiednio do 3v i GND na płytce. Korzystam z IAR Embedded Workbench EWARM. Termometr działa, bo procedura...
1. Układy mają zazwyczaj na wejściu diody do VCC/GND. Mogłeś zasilać ten układ DP83... z pina resetu ;P Oczywiście oznacza to, że jak wykorzystywałeś tylko słabe wewnętrzne podciąganie to ono nie dawało rady (mierzyłeś tam napięcie?) 2. Kondensatory zazwyczaj nie są niezbędne do działania układu. Są natomiast niezbędne do PRAWIDŁOWEGO działania układu....
wiec mozliwe ze to drgania Więc na początek je wyeliminuj. Jeśli nie potrafisz programowo, to zrób to sprzętowo - link z postu #33. Gdy debuguje kod w pracy krokowej widze ze co pewna liczbe pustych skokow (petla nieskonczona while(1); ) program zaczyna sie od nowa a zgaszone diody (sa wysterowywane masa -czyli stan wysoki=zgaszone) co pewien czas...
Tylko teoretycznie RS485 jest symetryczne, sygnały różnicowe, ale powinno się stosować połączenie masy sygnału. Nigdy nie wiadomo jakie powstanie napięcie common mode i czy nie doprowadzi do uszkodzenia transceivera. Moduł RS-485 powinien być separowany galwanicznie. Miałem naprawiać moduł wejścia analogowego do s7-1200, uszkodzony wzmacniacz instrumentacyjny...
Właśnie próbuje napisać program i nie chce mi się nawet zapalić LED, opieram się na STM32 w praktyce. Może podpowiecie co źle zrobiłem [syntax=c]#include "stm32f10x_gpio.h" #include "stm32f10x_rcc.h" #include "stm32f10x_flash.h" void RCC_Conf(void) { ErrorStatus HSEStartUpStatus; // reset ustawien RCC RCC_DeInit(); // Wlacz HSE RCC_HSEConfig(RCC_HSE_ON);...
A nie masz tam czasem włączonego jakiegoś Watchdoga czy czegoś takiego co Ci resetuje procka? :)
[syntax=c]#define ONE_WIRE_SET_LOW ( GPIOA->BRR |= ( 1 << 3 )) #define ONE_WIRE_SET_HIGH ( GPIOA->BSRR |= ( 1 << 3 ))[/syntax] Powinieneś użyć normalnego przypisania "=", a nie logicznej sumy "|=". Nie ma to tutaj specjalnego znaczenia, ale warto o tym pamiętać. Sprawdź w manualu, czy timer którego używasz (jak wszystkie timery na...
Hmm podłączam do napięcia procesor, później jtaga i wszystko działa, a chwile temu nie działo... dobra jak zwykle zimny lut. Nie wiem dlaczego jak próbuje wgrać do flash, czasem mam stary program(nie wgrywa mi nowego) i muszę dać "Teraminate and Relanuch". Gdzieś czytałem ze tak się dzieje ale nie wiem dlaczego. Myślałem ze to przez ten soft reset halt,...
"odwieszania" procka? NRST to jest najwzyklejszy RESET całego układu jak w każdym innym mikrokontrolerze. TRST jest resetem JTAGa. Nie musi on byc podłączony, bo SW ma zamiast pinu, rozkaz, i w efekcie wykonuje się ten sam reset JTAG.
(at)_lazor_ Reset Handler Raczej ciężko nazwać to przerwaniem. Stany wyjątkowe, jakim jest NMI i RESET, to przerwania o ujemnym priorytecie. Przerwań tych nie można wyłączyć. w ARM RESET jest przerwaniem.
SPI zawsze coś "zwraca", niezależnie od tego, czy ktoś do niego nadaje. Ten temat jest tu wałkowany co 2 miesiące. Transmisja SPI jest ZAWSZE dwukierunkowa, nawet wtedy, gdy nie jest. ;) SystemInit jest wołany przez asemblerowy kod startowy zaraz po resecie uC, zanim zostanie zawołany main. Nie wierzysz - to sprawdź, co jest pod ResetHandler w pliku...
Odpowiedź na Twoje pytanie jest trywialnie prosta. Rejestry które są buforowane (ARR, PSC i chyba jeszcze jakieś) aktualizują swój realny stan w momencie update'u, który występuje automatycznie w momencie przekręcenia licznika, czyli (w uproszczeniu) doliczenia do ARR. Ty w swoim wyjątkowo dziwnym kodzie fizycznie uniemożliwiasz wystąpienie update'u,...
Jeżeli zadajesz pytanie, to zamykanie tematu uniemożliwia uzyskanie odpowiedzi. Odblokowałem. Źródło taktowania po zwolnieniu sygnału reset jest określone sprzętowo. W przypadku STM32F302 jest to opisane w sekcji 9.2.6 w [url=https://www.st.com/content/st_com/e...
System elektrody atakuje Mnie żebym napisał odpowiedź z informacją jak rozwiązałem ten problem. Prawdę mówiąc ten problem wracał do mnie co jakiś czas i sam powiedzmy się rozwiązywał, kombinowałem, zmieniałem kod i coś zawsze pomaga. Usuwam zmienne, zmniejszam tablice. Robię wiele rzeczy po prostu kopię w kodzie i patrzę kiedy coś się poprawi. Jakoś...
Witam. Poskładałem Jtaga ze strony Freediego Chopina. Niestety nie mogę zaprogramować targeta(płytka HY-Mini z STM32F103VCT6). Wszystko jest konfigurowane wg tutoriala. To pokazuje mi konsola eclipse: Open On-Chip Debugger 0.5.0 (2011-08-09-23:26) Licensed under GNU GPL v2 For bug reports, read http://openocd.berlios.de/doc/doxyge...
Pierwszy blok mówi tylko, że znalazło oczekiwane urządzenia podłączone do linii JTAGa Drugi bloczek jest dosyć typowy - niektóre narzędzia zewnętrzne uparcie próbują dostawać się do nieistniejących zasobów, u ciebie do obszarów o adresach 0xE..., co powoduje błędy, ale zasadniczo nie jest to nic groźnego, niezwykłego czy złego... Wygląda więc dobrze......
1. po połączeniu resetów masz jeden pin wolny do innych zastosowań, a debuggować można z jednym resetem, choć jest nieco gorzej. 2. Są zbędne, z tego co wiem przydają się do "pokazywania" się na magistrali. 3. zbędny, ponoć zmniejsza nieco pobór prądu przez układ generatora 5. Nie, STM32 ma wbudowane pullupy, zewnętrzne nie są więc potrzebne. Te od...
Ej, pisałem abyś zmienił "... STR3x" na "... STR73x", a Ty zmieniłeś na "... STR7x". Przy STM32 na "dzień-dobry" wypróbowałbym komendę "reset halt", a nie samo "halt". 4\/3!!
3. W razie popełnienia jakiegoś błędu przy konfiguracji zegara istnieje potrzeba uruchomienia cpu w trybie bootlandera. Czy warto dodać przycisk z podciągnięciem do vcc, czy może można to rozwiązać w inny sposób? Wyprowadź reset na SWD, i jeśli nie planujesz używać bootloadera, możesz wyrzucić rezystor na BOOT1. 4. Jeśli chodzi o podłączenie programatora,...
hmm, przepraszam ale z racji tego, że nie jestem taki biegły jeszcze w te numerki, czy mógł bym prosić oto by ktoś przerobił dla mnie te biblioteki hd44780.h i hd44780.c które załączyłem do tego postu i mi je odesłał ? Być może nie tylko ja się porwałem na 4x20 na stm32. A może ktoś po prostu ma bibliotekę hd47780.c i .h ?
Jest ustawione. SPI1->CR2 ma domyślnie (reset value) ustawione 8 bitów. Na jakiej podstawie tak twierdzisz? Rzutowanie na (uint8_t) czy "(0xFF) & data" nie zmienia działania układu. A jak rzutujesz? Rzutować masz lewą stronę podstawienia, a nie prawą. Powyższy kod działa na stm32f103 z wyjątkami jak podałem w pierwszym poście. Ale Ty podobno masz F030,...
Witam, a więc działam sobie na płytce ZL31 z kamami, w wersji z odłączonym st-linkiem, za programator i debugger służy mi jtag-arm z andtechu, jest to urządzenie na bazie ft2232. Soft to toolchain skonfigurowany podług tutka freddiego chopina. Wszystko ładnie działało jak trzeba do dzisiaj, gdy w którymś momencie zauważyłem, że skompilowany program...
Testuję urządzenie składające się m.in z płytki STM32 Discovery oraz modułu ethernet na ENC28j60. Problem jest taki, że gdy włączę np. lampkę biurkową ( z transformatorem do halogenu 20W) która znajduje się w odległości ok. 40 cm bądź ją wyłączę, resetuje się kontroler ethernet. STM32 dalej wykonuje program. Dolutowałem już kondensator (47uF) między...
GDB i debugger niczego nie zwalniają, tyle że pod kontrolą debuggera układ startuje: - ze stabilnym napięciem, nie z powodu power-on-reset - zależnie od konfiguracji debuggera układ może startować tylko po resecie programowym, który nie resetuje układów peryferyjnych 4\/3!!
Reset procesora wywołany był kwestią sprzętową.
Moze nastepuje reset µkontrolera od watchdog-a?
(at)miszcz310 jednak widzę, że lubisz się katować. Jakoś przywykłem do pisania w atomie lub vimie i tylko zmapowanymi klawiszami myk. Zainstaluj sobie np. https://marketplace.eclipse.org/content/... i masz vim-a w eclipse. Ale jeżeli już naprawdę chcesz to debugować to wydrukuj sobie informacje dwarf (dwarfdump-em np), zobacz czy te symbole...
Naprawdę wolałbym nic nie pisać w wątku w którym udziela się (at)osctest1 z wiadomych stałym bywalcom Elektrody względów. Chciałbym jednak podzielić się uwagami i rozwiązaniami z autorem tematu (at)adamusx oraz (at)Sareph i (at)Smashing . Używam modułów W5100 i W5500. Nigdy w rękach nie miałem USR..coś tam z W5500, ale od początku używam Wiz850io i...
Witam mam problem z obsługą magistrali 1Wire a dokładnie z odczytem temperatury przez DS18B20, napisałem funkcje do podstawowej obsługi 1Wire, RESET działa poprawnie natomiast przy odczycie danych mam zawsze same 1. Dodam iż korzystam z płytki STM32DISCOVERY a czujnik szynę danych ma podciągniętą do 3,3V za pomocą rezystora 4,7K według noty katalogowej....
Witam, skonfigurowałem środowisko wg instrukcji FreddieChopina czyli GDB+elcipse+OpenOCD pod płytkę STM32Discovery Po wielu bojach udało mi się odpalić debbuger. Dioda kontrolna zaczyna migać z zielonego na czerwony - czyli komunikacja jest gdy wcisnę reset na płytce to i eclipse przeskakuje na początek programu (co potwierdza powyższe). Załadwałem...
Generalnie jak wyskakuje Ci double fault, to raczej możesz w debuggerze klikać co chcesz, sesja debuggowania jest "zepsuta" - to tak jakbyś wcisnął podczas debuggowania reset. 4\/3!!
Pomijając ustawienia z artykułu to Initialization Commands dla ładowania i debugowania: monitor reset halt load A dla debugowania kodu załadowanego wcześniej: monitor reset halt Dla STM32 of course... 4\/3!!
hmm... a to plywanie wystepuje 'stale' bez rezystora, czy moze przez jakis czas po resecie jedynie? 4\/3!!
Tom RealTime Akurat mam Telit-a GL865. Komunikacja wygląda tylko na zasadzie zapytanie-odpowiedź, jedyną sytuacją jest połączenie przychodzące i ewentualnie dane GPRS które przychodzą asynchronicznie. Program piszę bez żadnego OS-a. Z mojego punktu widzenia wykorzystanie DMA może być problematyczne ponieważ nie mam stałej komend wysyłanych do modułu,...
Twoje problemy rozwiązałby jakiś TMS320 z serii C2000. Ale to tylko moje dywagacje. Jeśli chodzi o STM32F4 to musisz przemyśleć czy rzeczywiście 4 MHz jest niezbędne dla ADC. Kiedyś bawiłem się timerami w Keil'u więc kod wstępny na pewno Ci się przyda (kanały timera3 działają na GPIO->C6-C9): odznacz NVIC_EnableIRQ !!! ): [syntax=c]void TIM3_IRQHandler(void)...
if( EXTI_GetITStatus( EXTI_Line5 != RESET ) ) Przyjrzyj się dobrze. 4\/3!!
Witam, Wykorzystuje procesor STM32 do komunikacji z kartą SD przez interfejs SDIO w trybie DMA. Używam programatora ZL30PRG. Po zaprogramowaniu układu program działa tak jak powinien. Sprawdziłem z wieloma rodzajami kart SD. Niestety po resecie zasilaniem (wyłączenie i powtórne włączenie) nie startuje obsługa karty SD. Program zawsze staje na jeden...
bo jednak reset powinien być podciągnięty rezystorem do V+, Tylko gdy środowisko pracy uC jest silnie zakłócone.
Jest jakiś powód dla którego używasz WWDG (okienkowego watchdoga) a nie IWDG? WWDG zresetuje układ jeśli wartość licznika spadnie poniżej 0x40 lub kiedy uaktualniasz licznik, ale jego wartość podczas aktualizacji jest większa niż to co zapisałeś do CFR. Do CFR zapisałeś 1. Więc masz "wieczny reset". Zainteresuj się IWDG lub zapisz do CFR jakąś sensowną...
I pomyśleć, że wystarczyłoby napisać: if (RTC_GetITStatus(RTC_IT_SEC)) i problem by znikł... Ogólnie proponuję zacząć od usunięcia tej chorej definicji SET i RESET oraz wszelkich odwołań do tych stałych, bo wynikają z nich wyłącznie problemy (porównania z SET niemal zawsze są błędne), a kod staje się nieczytelny.
[syntax=c]RCC->CFGR &= (uint32_t)0x88FFC00C; RCC->CR &= (uint32_t)0xEEFEFFFE; RCC->CR &= (uint32_t)0xFFFBFFFF; RCC->CFGR &= (uint32_t)0xFF02FFFF;[/syntax] Brawo i kto będzie to czytał? Ale mało ambitnie podszedłeś do tematu bo kopiuj wklej z HAL-a. Napisz sam, bo na razie to taki Twój "własny" szablon, jak cesarza Japonii. Gdzie jest reset handler?
Ok,czyli pin NRST z Discovery do ogólnego resetu układu? Dzięki za opowiedź!
Ale OpenOCD właśnie MA chodzić w tle, bo bez tego GDB nie ma się z kim połączyć. No i masz złą komendę w tym skrócie, powinno być "monitor reset halt" (ewentualnie "monitor reset init"). 4\/3!!
Mogę odbić piłeczkę i zapytać, ludzie co wy macie do tych bibliotek? Są po prostu beznadziejne, prowadzą do daleko idącego odmóżdżenia i vendor-lock-in, do tego są WYJĄTKOWO nieoptymalne i WYJĄTKOWO głupio napisane, a wygoda ich stosowania jest WYJĄTKOWO niska (żeby nie powiedzieć zerowa). Wystarczy czy mam się rozpisać bardziej? <; Jedna kupiłem...
reset stm32 reset timera stm32 reset handler stm32
skrzynka przekaźników ustawienia ekran laptop 800x600 schemat pralka bosch
logitech z5500 trzaski logitech z5500 trzaski
Brak świecenia czerwonej diody w Onkyo TX-SR504E: diagnostyka i rozwiązania Wymiary pasków do Technics RS-TR265 - szczegóły i porady