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...
19.3.1 Hardware watchdog If the “Hardware watchdog” feature is enabled through the device option bits, the watchdog is automatically enabled at power-on, and will generate a reset unless the Key register is written by the software before the counter reaches end of count.
Mikroprocesor nawet bez kwarcu Ci zadziała. Ale generalnie dobrze by było zadbać o odpowiednie filtrowanie zasilania, ustalić stan pinów RESET i BOOT. Sprecyzuj swoje pytanie.
Czy spotkaliście się może z takim problemem? Teraz zrobiłem test i jest tak jak piszesz. Akurat mam pod ręką Nucleo (jako programator) i osobną płytkę z osobnym procesorem (F0 ale to chyba nie jest ważne) to widzę że po ustawieniu zabezpieczenia Level1, faktycznie poprzez odłączanie i załączanie Nucleo do USB, procesor nie startuje. Nie pomaga reset...
Ok no to zaczynamy na początku (po konfiguracji itp.) powinieneś mieć coś takiego: [syntax=c] if (BKP_ReadBackupRegister(BKP_DR1) != 0xA5A5) /* Sprawdzamy czy trzeba ustawić zegarek */ { /* Zawartosć licznika RTC nie jest prawidłowa, należy ustawić zegar */ /* Konfiguracja oscylatora, preskalera itp. */ RTC_Configuration(); /* Funkcja w której ustawiasz...
po 20 sekundach lub naciśnięciu jakiegokolwiek klawisza program przestaje działać a ldka mrugać. RESET i znowu 20 sekund ..........
Dzień dobry, Kiedyś sobie dłubałem z stm32f103 (bluepill). Wtedy udało mi się (na podstawie ukradzionego skądś projektu i Makefile'a) zrobić sobie taki folder szablon i wszystko fajnie działało. Jednak teraz nie mogę w gdb wyświetlić zawartośi rejestrów peryferiów. Kiedyś wystarczyło napisać: p/x GPIOB->ODR i wyświetlał wszystko ładnie. Teraz dostaję:...
Connect under Reset i Reset method: SYSRESETREQ
Można. Potem z 8251 wchodzimy na przejściówkę USB i w ten sposób łatwo osiągamy 1/10 funkcjonalności tego, co ja mam w jednym STM32. ;) Myślałem sobie kiedyś, żeby z chińskiego modułku STM32F103 zrobić tylko generator zegara i RESET dla procesora oraz widziany przez uP jak układ peryferyjny niby UART z USB po drugiej stronie, ale rozwiązanie z całym...
U mnie stm32f103 zaprogramuje tylko wtedy kiedy mam podpięty pin reset bez niego nie widzi procka.
RES_H; delay_ms(20); RES_L; delay_ms(20); Dla sygnału RESET aktywnym stanem jest stan niski więc przed inicjalizacją należało by "puścić" reset (RES_H;).
No niezupełnie. Projekt z programem ma być prawie zwyczajny, tak jak by działał od adresu 0 (czyli 0x8000000), tylko w ustawieniach linkera ma mieć adres większy. Dzięki temu możesz skompilować program na pracę samodzielną (po zmianie ustawień linkera), albo na uruchamianie przez bootloader. Bootloader ma sprawdzać, czy ma co uruchamiać, i jeśli ma...
Chyba nie jest inicjowany 2x bo jedna inicjacja tyczy sie portu B a druga portu C.... Dodano po 2 Wiem, że wielu ludzi nie lubi STM32Cube. Włączyłem generator na parę minut i wygenerowałm 'drivery' dla pinu przycisk i pinu led. Nastepnie skopiowałem "logike" autora postu poprawaijac nazwy pinow. Roboty mało a szybki efekt w tak prostym programie. Nie...
Problem w tym, że RAM kasuje się po resecie więc trzeba to upchnąć gdzieś indziej w przypadku reset programowego albo przez NRST RAM nie jest kasowany. Tylko power on, lub low power o ile zasilanie RAM jest wylaczone.
Sensowne rady były powyżej. SPI, ew. timer, w obu przypadkach z DMA. DMA jest łatwe do ogarnięcia, o ile nie używasz HAL. Poszukaj artykułu z EP sprzed paru lat o sterowaniu WS2812 przez SPI z STM32. Kod też tam znajdziesz. Rozwiązanie z timerem (gorsze, ale przy braku SPI ujdzie): Timer programujesz tak, by po preskalerze mieć zegar 2.4 MHz, okres...
Witam, mam problem z generacją PWM z tablicy z wykorzystaniem DMA. Wcześniej ten sam projekt działał na STM32F103 ale po przejściu na Cortex M4 coś nie działa. Konfiguracja peryferiów wykonana w Cube, wszystko analogicznie do tego co działało mi na F103. W debuggerze cały czas wartości rejestrów CCR mają 0, czyli jakby DMA nie chciało przesłać z tablicy...
Działający kod ale już z DMA z dwoma buforami działającymi na przemian. Powycinałem to co dotyczy ADC. Kod nie jest jeszcze przetestowany. Nie sprawdziłem czy w czasie przełączania buforów nie tracę jakiś próbek. [syntax=c] volatile uint16_t adc_buf0[ADC_BUF_SIZE]; volatile uint16_t adc_buf1[ADC_BUF_SIZE]; volatile int active_buff=0; volatile int new_data[2];...
Jeśli jak piszesz, umiesz analizować kod to pokarz mi gdzie tu jest sedno problemu w moim kodzie. To jest kod z twojego linka:[syntax=c]void PWR_EnterSTOPMode(uint32_t PWR_Regulator, uint8_t PWR_STOPEntry) { uint32_t tmpreg = 0; /* Check the parameters */ assert_param(IS_PWR_REGULATOR(PWR_Regula... assert_param(IS_PWR_STOP_ENTRY(PWR_STOPE...
Dzień dobry, Mam problem z dogadaniem się z ADIS16201. https://www.analog.com/media/en/technica... Zacznę od tego, że korzystam z płytki : https://www.analog.com/en/design-center/... Wyjścia podłączyłem w sposób następujący: ADIS1620...
Na stronie 114 poradnika z tego tematu https://www.elektroda.pl/rtvforum/topic3... masz gotowca, wystarczy podłączyć przez transoptor twoje wejście do portu zliczającego, zamiast diody przez tranzystor i przekaźnik otwieranie dźwi, a do systick (który generuje impulsy) dać reset stanu licznika (i zmienić częstotliwość). Zakładam, że nie ma drgań...
(at)tmf Sprawdziłem twój kod, ale nie działa. Zaprogramowałem XMege żeby nic nie kombinować. Oto kod który próbuję uruchomić: [syntax=c]#include "stm32f10x.h" #define CS_PIN GPIO_ODR_ODR0 #define RS_PIN GPIO_ODR_ODR1 #define WR_PIN GPIO_ODR_ODR2 #define RD_PIN GPIO_ODR_ODR3 #define RST_PIN GPIO_ODR_ODR4 void Init_RA8875(void); void LCD_CmdWrite(uint8_t...
Ja do programowania i prostego debugowania procesora STM32f103 zminimalizowałem JTAG'a do: TDI TDO TMS i TCK. Nawet "twardy" Reset okazał się zbędny. Ale trzeba uważać. Ponieważ pozostałe sygnały mogą być potrzebne w "bardziej wyszukanych" zastosowaniach JTAG'a. Np. (podobno) w niektórych ARM'ach nie da się uruchomić skanowania krawędziowego bez sygnałów...
Napiszę tutaj wg mnie podstawowe czynności jakie należy zrobić aby móc zaprogramować powyższy zestaw za pomoca (prawego, podłączonego do przejściówki USB <> USART) portu USB. 1. Należy zainstalować sterownik tego układu, który robi za przejściówke. Plik ze sterownikiem w moim przypadku to skompresowany PL2303_Prolific_DriverInstaller_v130.zip...
Muszę przemapować TIM4_CH1 na GPIOD_12. AFIO->MAPR |= AFIO_MAPR_TIM4_REMAP; Dlaczego po ustawieniu tego bitu, tracę dostęp do SWD? Muszę programator uruchamiać z wciśniętym reset procesora, inaczej programator nie ma dostępu do procesora. Używam SWD z GPIOA_13 i GPIOA_14. Ktoś wie lub może miał podobny problem? Albo znowu czegoś nie doczytałem w dokumentacji?
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.
Wg schematu na tej płytce masz klasyczną konfigurację na USB Full Speed - jeśli dobrze pamiętam. Rezystor wymusza początkowo wysoki stan na linii D+ i nie ma już możliwości ustawiania innych trybów usb, a trybami steruje host USB, a HAL nic już nie musi wiedzieć, poziomy logiczne oczywiście są podawane różnicowo. Zapomniałem, że PA11 i PA12 to linie...
Jakieś małe opóźnienie i kolejny raz sprawdzenie stanu No przecież po to Ustawilem przerwanie co 30ms. To jest właśnie opóźnienie, którego potrzebujesz :) W kolejnych wywołaniach tego przerwania sprawdzasz sobie stan poprzedni i porównujesz z bieżącym. Jeśli są takie same, to uwzględniasz zmianę. Dodano po 8 Ewentualnie spróbuj podejścia z filtrami...
Kompilacja poszła zmieniłem tool chain editor microsoft visual c++ dalej pozostaje kwestia GDB Hardware debuger target remote localhost:3333 0xfffffffe in ?? () monitor reset halt load No executable file specified. Use the "file" or "exec-file" command. tbreak main No symbol table is loaded. Use the "file" command....
GPIOA->BSRR |= GPIO_BSRR_BS5; To nie źródło problemu ale tak się tego rejestru nie używa. To jest write only rejestr czyli tylko samo przypisanie Zgadza się, dzięki :) Co do głównego problemu, punkt 1. Użyj debugera okazał się bardzo pomocny :) Założyłem, że skopałem coś w Makefile (np. brakuje jakiejś flagi) i podczas debugowania nic ciekawego...
Piszesz o CAN_GetFlagStatus, a ja uzywam CAN_GetITStatus. U mnie ta funkcja wyglada tak: [syntax=c]ITStatus CAN_GetITStatus(CAN_TypeDef* CANx, uint32_t CAN_IT) { ITStatus itstatus = RESET; /* Check the parameters */ assert_param(IS_CAN_ALL_PERIPH(CANx)); assert_param(IS_CAN_IT(CAN_IT)); /* check the enable interrupt bit */ if((CANx->IER & CAN_IT) !=...
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...
Nie chce zakładać nowego tematu z I2C bo tematów jest sporo i dużo jest wałkowane o i2c w stm32. Mam procesor stm32f103 i niestety ale mam duży kłopot z tym interfejsem. Otóż problem dotyczy odczytu i czasami zapisu pamięci eeprom. Czytałem, że problem może być z zakłóceniami na szynie. Stosowałem różne metody DMA, przerwania i odpytywanie. Wszystko...
Witam Opracowałem prosty program, żeby nauczyć się eliminować programowo drgania styków. Idea jest taka, że po starcie wyświetla się napis „Test0 „ po naciśnięciu przycisku „Test1” i „Test2”. Wykorzystałem rozwiązanie z przykładu 9.6 z książki K. Paprockiego, sam przykład po uruchomieniu działa prawidłowo, czyli zlicza...
Od niedawna jestem posiadaczem zestawu ZL31ARM. Po przeczytaniu paru artykułów doszedłem do wniosku że jest to idealny układ do nauki programowania. Jednak mam już z nim sporo problemów (oczywiście biorą się one z mojej niewiedzy). Mianowicie zainstalowałem TrueStudio, wybrałem odpowiedni model uC, i napisałem pierwszy program który kompiluje się bez...
Witam Uruchomilem przykladowy soft od ST (virtual com port) na STM32L151, mój stacjionarny PC bez problemu wykrywa virtaulny port od ST. Zrobilem testy na 5 komputerach (2 stacjonarne 3 laptopy) i okazuje się, że jeden laptop (fujitsu lifebook A) nie wykrywa wogóle urządzenia. Jak podpiąłem przez dodatkowy HUB to jest wykrywany, teraz pytanie co jest...
Wszystkie ustawienia workarea są prawidłowe? Jak wywołujesz OpenOCD? 4\/3!! Raczej tak. Z projektem pod STM32F103 nie mam takiej jazdy. http://obrazki.elektroda.pl/7470025000_1... http://obrazki.elektroda.pl/4089909200_1... http://obrazki.elektroda.pl/2227766200_1... To załadowanie 0x12345678 tak ma być...
O statusie TXE: When set , this flag indicates that the Tx buffer is empty and the next data to be transmitted can then be loaded into it. The TXE flag is reset when the Tx buffer already contains data to be transmitted. It is also reset when the I2S is disabled (I2SE bit is reset). Ładujesz do bufora, kiedy trwa transmisja (rejestr przesuwny). Może...
Mam problem z komunikacją po magistrali CAN. Próbuję uruchomić prosty program do odbioru danych po CANie i niestety nie działa. Uruchomiłem parę przykładów znalezionych w internecie i nic. Program generuję za pomocą SMT32CubeMx i korzystam z biblioteki HAL - bo tak chyba najprościej. Korzystam z gotowej płytki STM32F103C8T6 do której podłączyłem MCP2151...
Masz rację, że szkoda całego tygodnia na taki problem:). Oto cały kod: Main: http://obrazki.elektroda.pl/2257364500_1... podłączenie do STM'a wygląda nastepująco: RxD do PA10, TxD do PA9. Więc nadal stoję w miejscu, ale nie poddaje się;).
Witam wszystkich. Uzywam Eclipse + OpenOCD (0.9.0) + GCC. Do tej pory używałem STM32F103 (Cortex-M3), a teraz przesiadłem się na STM32F373 (Cortex-M4). Wziąłem ze starego programu skrypt linkera, startup, vectors.c i posklejałem do kupy odpowiednio je modyfikując. Program generalnie odpala się, mogę sterować GPIO. Następnie spróbowałem uruchomić SysTicka....
Witam. Na wstępie przepraszam za może głupie pytanie i problem, ale jestem początkujący. Chciałbym móc sterować jasnością świecenia diody LED za pomocą PWM. W późniejszych próbach różne jasności ustawić pod różne przyciski itp, a na końcu sterować programowo. Program nie jest całkowicie mój, wzorowałem się na wielu kodach znalezionych w internecie......
Cześć, od 2 dni zmagam się z modułami NRF24L01 i dwoma płytkami STM32. Płytki STM32 NUCLEO L053R8 i STM32F103 wykorzystujac biblioteki HAL i cubemx. Niby oba układy zwracają poprawne rejestry : https://obrazki.elektroda.pl/1575646300_... Ale sama komunikacja w sobie nie działa. Nie odbieram żadnych pakietów. PYTANIE - czy w biblioteka...
[syntax=c] /** ****************************************... * (at)file system_stm32f10x.c * (at)author MCD Application Team * (at)version V3.5.0 * (at)date 08-April-2011 * (at)brief CMSIS Cortex-M3 Device Peripheral Access Layer System Source File. */ //... /*!< Uncomment the line corresponding to the desired System...
Witam, Korzystajac z .text .global _start _start: (at) Label, not really required mov r0, #5 (at) Load register r0 with the value 5 mov r1, #4 (at) Load register r1 with the value 4 add r2, r1, r0 (at) Add r0 and r1 and store in r2 stop: b stop (at) Infinite loop to stop execution 2. Kompilacja: $ arm-none-eabi-gcc -o program pierwszy.S $ file...
Witam, Zaczynam zabawę z STMami i mam pewien problem. Z kilku kodów w internecie zlepiłem swój kod i niestety jak to zwykle bywa coś jest nie tak. Docelowo chciałem obsłużyć wyświetlacz TFT wykorzystując FSMC. Napotykam problem gdy próbuje zrobić w pętli głównej wysyłanie danych przy użyciu FSMC w pewnych odstępach czasu. Jeżeli w kodzie umieszczam...
Spróbuj dodać komendę: -c "reset_config none" w 'OpenOCD Options:' w oknie konfiguracji debugowania.
Aktualizacja z września 2025: zobacz tutaj, aby uzyskać szczegółowe informacje na temat konwersji STM32 przez UART zamiast J-Link (tj. J-Link nie jest wymagany) https://www.elektroda.com/rtvforum/viewt... (dzięki (at)max4elektroda!) zobacz tutaj, aby uzyskać wyższą wersję przekonwertowanego oprogramowania CK-Link Lite dla STM32...
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.
U żadnego z kolegów nie zauważyłem podciągania linii LCD_Reset do plusa zasilania. Na płytce HY-smart linia LCD_Reset jest wprost podłączona do linii NRST procesora (linia NRST podciągnięta jest do 3,3V przez rezystor 10k). W załączonym pdf-ie płytki Open103Z LCD_RESET opisany jest jako PB1. Jeżeli to się zgadza to w załączonych kodach kolegów nie widzę...
a widzisz różnicę między 'must be' a 'must have been' czy nie za bardzo ? W każdym bądź razie przetwornik musi być załączony.
Chiński stlink, więc polecam sprawdzić: reset_config none separate
http://obrazki.elektroda.pl/4288887800_1... Witam. Tym razem przedstawiam Bootloader USB MSC (Mass Storage Class) dla tanich modułów na mikrokontrolerze STM32F103C8T6. Aby uruchomić bootloader dwukrotnie wciskamy szybko(!) przycisk RESET. W managerze plików kasujemy plik FIRMWARE.BIN i wgrywany własny (nazwa dowolna). Wrzucany soft...
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ść....
OK. Ja też jestem w pracy i nie zawsze mogę o tej porze coś robić. Ale dalej: Do testowego używania UARTA przyda się "podmienienie" standardowej obsługi funkcji printf na taką, która wysyła dane przez UARTA do naszej Windowsowej konsoli. Możesz to wpisac standardowo przed obsługą assert_failed() /** * (at)brief Retargets the C library printf function...
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.
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!!
No niezupełnie. Ostatni raz, kiedy to sprawdzałem, kod startowy dla F1 nie ustawiał bitu wyrównania, a po resecie był on wyzerowany. Można oczywiście dopisać odpowiednią linijkę samemu. Problem dotyczy wyłącznie STM32F1.
Nie - jeśli Twój JTAG podobny jest pinologią do jakiegoś już istniejącego w OpenOCD (np JtagKey), to po prostu podłączasz i działą (ewentualnie w pliku konfiguracyjnym zmieniasz VID, PID czy nazwę). Jeśli zaś JTAG ten jest zupełnie inny, to raczej trzeba pogrzebać w kodzie i przekompilować OpenOCD - chodzi o funkcje inicjalizacji, resetowania, obsługi...
Procesor STM32F103ZET6 jest mikrokontrolerem ARM z rodziny Cortex M3, który jest taktowany zegarem o maksymalnej częstotliwości 72 MHz i zasilany napięciem +3,3 V z wyjścia stabilizatora napięcia LT1117-3.3 (oznaczony desygnatorem U10 ). Poniżej przedstawiam napisany przeze mnie kod pliku main.c na procesor STM32F103ZET6, który steruje steruje dwiema...
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 rozumiem ze mozna szarpać się z darmowymi toolchainami, ale zeby z keilem?... Postawienie darmowego toolchaina trwa minute :)
Dzięki za odpowiedź. Lutowanie nie wchodzi w grę zatem kupuje przejściówkę usb-uart. Mając Nucleo nie potrzebujesz żadnej przejściówki jeśli chcesz "pogadać" z ESP z komputera, bo Nucleo ma więcej Uartów niż tylko ten jeden podpięty do ST-Linka i wystarczy tylko prosty programik by te Uarty programowo połączyć. I co wyślesz do Nucleo, wyląduje w ESP...
Nie ma jakiegoś sposobu na sprawdzenie co go kieruje na default handler? Pewnie że jest i to nie jeden (; Dorzuć do swojego projektu gdzieś coś takiego: w okolicy miejsca które spowodowało problem. Patrzysz wtedy do pliku .lss i patrzysz co znajduje się w zakresie +/- 3 instrukcje od tego miejsca. 4\/3!!
Witam, właśnie zacząłem przerabiać kurs ze strony http://forbot.pl/blog/artykuly/programow... układ na jakim pracuje to stm32f103c8t6 w środowisku Eclipse. Niestety moja nauka stanęła na przerwaniach od przycisku. Mianowicie mimo wciśnięcia przycisku przerwanie się nie wykonuje. Kod programu: http://obrazki.elektroda.pl/8705005600_1...
No więc zasadniczo w każdym przypadku (w sensie niezależnie od tego jakiego ARMa masz) musisz zmienić skrypt linkera. Z grubsza wywalasz z niego definicję pamięci rom, a następnie wszystkie sekcje umieszczasz w ram ("... } > ram AT > ram"). Poniżej różnice między skryptem dla rom i dla ram z projektu STM32: >diff -u stm32f103rb_rom.ld stm32f103rb_ram.ld...
Dlaczego w zasadzie nie wolno wykonać skoku do adresu resetu(a sprzęt wykonuje tą operację w przypadku startu z drugiego Flasha), skoro chcę w zasadzie zasymulować takie zdarzenie? Dlaczego musi to być skok do samej procedury RESETU? Bo to nie jest AVR. Rdzeń robi tak samo, sprzętowo pobiera wektor procedury startowej i skacze do niej! Zarówno w urządzeniu...
Witam Dodam że mcp jest zasilany 5V a stm 3,3. Nie wiem czy tak może być... Może tak być to cała konfiguracja Can bez filtrów, czyli przepuszcza wszystko [syntax=cpp]void CAN_Config(void) { gpio_pin_cfg(GPIOA, 12, GPIO_CRx_MODE_CNF_ALT_PP_50M_value); //GPIO_OType_PP gpio_pin_cfg(GPIOA, 11, GPIO_CRx_MODE_CNF_IN_PULL_U_D_value); // af tylko /* Setting...
No sam napisałeś, że debuggowanie jest lekko problematyczne. No ale napisałem też, że to dosyć specyficzny projekt, więc problem może nie być kwestią bootloadera, tylko kombinacji kilku czynników [; Zresztą - mój problem można rozwiązać, dopisując w konfiguracji debuggera dodatkowe "monitor reset init", ale mi się nie chce tego robić, bo tak mało mi...
Prawidłowa konfiguracja jest opisana w manualu... Jest tam taka linijka: reset_config srst_only srst_pulls_trst Przypuszczam że coś może pomóc. Przydałoby się też żebyś określił, co dokładnie nie działa, bo same komunikaty OpenOCD nie świadczą o niczym szczególnym w sumie... 4\/3!!
Dorzuć do wywołania OpenOCD coś takiego: openocd -f ... -f ... -c "reset_config trst_and_srst" Może pomoże. Jak nie, to może jakimś sposobem zablokował Ci się flash - jak masz wyprowadzony UART i piny BOOT to podłącz się przez ST Flash Loader i zobacz. 4\/3!!
HOST_CMD_ACTIVE(); wlacza zegar ft,. HOST_CMD_WRITE(CMD_CLKEXT); ustawia zegar zewnetrzny, nie ma efektu jezeli juz zostal wybrany zegar zewnetrzny, w przeciwnym wypadu generowany jest reset . Wyglada na to, ze u ciebie ft startuje z zegara wewnetrznego a pozniej nastepuje reset. Prawdopodobnie ft wciaz pracuje na wewnetrznym zegarze, ktory jak pisalem...
Zrób reset za pocą pinu Reset podczas działania płytki (czyli bez odłączania napięcia zasilania) i zobaczy zareaguje.
Tak na przyszłość, to miej świadomość, że linie które masz na tym schemacie tak naprawdę nie są w ogóle połączone - gdyby były to Eagle w punktach do których dochodzą 3 linie stawia kropkę, a u Ciebie nie ma ani jednej. A wracając do tematu: Połączenia wydają się dobre, tylko co u Ciebie dzieje się z pinem BOOT1 (PB2)? Też jest ściągnięty do masy? Możesz...
Masz zapewne źle podłączonego JTAGa (brak połączenia linii SRST). Zamiast mieszać w plikach konfiguracyjnych wystarczy nową komendę dodać do wywołania OpenOCD: $ openocd -f ... -f ... -c "reset_config none"
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,...
Nie wiem po co tutaj piszę... [url=https://www.google.com/url?sa=t&rct... FFS!!! A siódmy pin U4 to RESET, na 99,9%.... STM32F103 i wszystkie chińskie klony w budzie...
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...
Nie wiem czy zadziałało ale na końcu wypisało coś takiego: Length must be >0 flash erase_address Dziwne, manual do OpenOCD twierdzi, że length może być 0 i oznacza to (w specyficznym przypadku, który jest tutaj spełniony) kasowanie całej pamięci... No cóż - może to kwestia tego, że Ty masz OpenOCD 0.9.0, a ja przeglądam manual do najnowszej wersji...
Raz uruchomionego watchdoga nie da się zatrzymać :) Dla trybów uśpienia trzeba użyć WWDG i jest tam taka opcja jak wywołanie przerwania od WWDG na krótki czas przed resetem przez niego systemu. W przerwaniu resetujesz watchdoga i tyle.
Cofnij wszystkie zmiany jakie wprowadziłeś w tych konfigach - wszystko można zmienić przez linię komend, bez modyfikacji tych plików. openocd -f ... -f ... -c "adapter_khz 480; reset_config srst_only srst_nogate;" Reszty opcji nie zmieniaj. Niestety po zastosowaniu tych dodatkowych parametrów dostawałem błąd jak poniżej: srst_only jak napisano [url=http://www.openstm32.org/forumthrea...
In case of a noisy environment in which unwanted bus errors can occur, it is recommended to implement a timeout to ensure that after the START control bit is set, the SB (start bit) flag is set. In case the timeout has elapsed, the peripheral must be reset by setting the SWRST bit in the I2C_CR1 control register. It should also be reset in the same...
To co jest w tym pliku zip na pewno nie miga diodą (niczym innym zresztą tez nie) W pętli while jest następujący kod, którego brakło w paczce: [syntax=c] while (1) { /* USER CODE END WHILE */ HAL_Delay(1000); HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET); HAL_Delay(1000); HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET); /* USER CODE BEGIN...
Witam, Post dość stary ale może mój wpis pomoże komuś kto tu trafi. Sam miałem podobny problem z płytą od endera 4.2.2. Zaczęło się od włożenia karty z plikiem o rozszerzeniu bin. Drukarka przestała reagować. Postanowiłem wgrać na nowo firmware. Wcześniej miałem drukarkę, gdzie aktualizacja firmware odbywała się przez ISP. tutaj zobaczyłem, że jest...
Witam, Niedawno przesiadłem się na programowanie STM32, z arduino, i już na samym początku spotkałem problemy. Aby nie było niedociągnięć że robię coś źle, opisze wszystko jak mam ustawione. Posiadam moduł STM32F103C8T6 ARM STM32 Cortex-M3 oraz programator ST-LINK STLINK V2. Piny podłączone następująco: ST-Link - Moduł 3.3V - 3V3 SWCLK - SWCLK GND -...
Szanowni koledzy. Od kilku godzin próbuję uruchomić przetwornik C/A stosując poniższy kod bez żadnego rezultatu. Co robię źle? Pozdrawiam [syntax=c] #include <stddef.h> #include "stm32f10x.h" void RCC_Conf(void) { ErrorStatus HSEStartUpStatus; RCC_DeInit(); RCC_HSEConfig(RCC_HSE_ON); HSEStartUpStatus = RCC_WaitForHSEStartUp(); if(HSEStartUpStatus...
Nie wiem czy to co napiszę coś pomoże Koledze, ale mam pewne przemyślenia. Podobny problem też na początku swojej drogi miałem, tzn. problemy przy programowaniu klonem ST-Link do płytki z STM32F103C8T . Objaw polegał na tym, że musiałem ustawiać w STlink Utility opcję Connect Under Reset i co gorsza w odpowiednim momencie musiałem nacisnąć przycisk...
Na schemacie jest przycisk oznaczony jako BOOT0, musisz go przytrzymać przy resetowaniu, żeby uaktywnił się wbudowany bootloader.
Witam, mam pytanie odnośnie zewnętrznego oscylatora. Ostatnio wszedłem w debugerze Keila w z Peripheals-> Power, reset and clock control, i zdziwiło mnie to, że pomimo ustawiłem używanie zewnętrznego oscylatora to owszem zaznaczony mam bit HSEON, ale nadal zaznaczony jest także bit HSION, który świadczy o włączonym wewnętrznym oscylatorze. Czy to jest...
Załatwiłem już 3 takie procki. Moze macie jakiś pomysł co jest nie tak i jak ożywić tamte procki ? Sprawdzałem na dwóch chinskich programatorach i one uwalają komunikacje z prockiem. Zgóry dziękuje za odpowiedź Ustaw w sofcie programatora opcje "connect under reset", podłącz pin reset do programatora, ale tego z nucleo, bo chińskie nie mają go wyprowadzonego...
Witam Moje pytania dotyczą mikrokontrolerów z rodziny stm32f103. Czy właściwą praktyka jest wyłączanie zegara RCC danego peryferium np. ADC w trakcie działania programu w celu rekonfiguracji ADC w trakcie działania programu? Ogólnie triggeruje pomiar ADC co ściśle określony okres czasu (wyzwalanie timerem) na jednym kanale ale czasami potrzebuje się...
Niestety, program działa tak jak zakładam dopiero, kiedy preskaler jeszcze pomnożę x8 (56) a dzielnik szyny APB1 ustawię na 8 tak jak poniżej: Nie wgryzałem się dokładnie w Twój opis, ale obstawiam standardowy problem przy pierwszym podejściu do timerów, którego rozwiązanie znajduje się pod obrazkiem "Figure 8. Clock tree", w rozdziale "7. Low-, medium-,...
Cytat z Datasheet do STM32F405xx oraz STM32F407xx: All packages, except for the LQFP64 and LQFP100, have an internal reset controlled through the PDR_ON signal. LGFP100 z sercii (rev A) posiada jednak pin PDR_ON na nodze 99, a errata podaje, że rev Z już nie ma: On revision-Z devices, the PDR_ON pin (pin 99) available on LQFP100 package is replaced...
Szanowni Forumowicze, Mam problem z Virtual Port COM. Używam procesora STM32F103VBT6. Na nim chcę zrobić taki sterownik uniwersalny kilka wejść wyjść oraz USB do wysyłania komend i odczytu stanu wejść i wyjść. Chcę zrobić to tak że np mam wyjście powiedzmy PA0 i jest tam podłączona dioda i po wysłaniu komendy "LEDON" włączy się. Niestety mając do dyspozycji...
Witam, Próbuje uruchomić obsługę karty SD pod STM32f103ZET6. Wykorzystuje do tego bibliotekę, używaną wcześniej pod STM32f407. Zmodyfikowałem tylko inicjalizacje SPI i dorzuciłem testową funkcję zapisu do karty. Mimo to karta nie chce ruszyć. Przy próbie otwarcia jakiegokolwiek pliku dostaje: FR_NOT_READY. Próbowałem już na dwóch kartach SD, formatowałem...
No cóż, zaufam starszym i mądrzejszym i tak też zrobię. Jednak, jeżeli to nie problem, to prosiłbym o jakąś argumentacje, żebym mógłbym w przyszłości wnukom opowiedzieć "dlaczego" akurat tak mają robić :) Co do moich postępów: Na chwilę obecną udało mi się wgrać do procka dwa proste programy. Jeden w sektorze: 0x08000000 do 0x08003000 a drugi w: 0x08003000...
Teraz już nie pamiętam jaka była wpisana wartość początkowego adresu, ale obecnie to już działa poprawnie. Dopiero teraz zwróciłem uwagę na: Boot sobie daruj. Jeśli nie przestawię Boot0 to program ST-LINK Utility pokazuje błąd. Więc o co chodzi? Jedynie zauważyłem że jeśli chcę programować z nieprzestawionym Boot0 to muszę posiłkować się resetem.
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,...
To znalazłem już, ale nie jest napisane co będzie jak domyślna wartość zmienię na zwykłe GIPO? Czy on wtedy w chodzi w typ programowania? Chyba nie, to co wtedy? czy np trzymanie resetu i odpalenie SWD pomaga?
Witam, mam dziwny problem z komunikacją I2C. Przed stworzeniem tematu przetestowałem przykłady użycia I2C udostępnione przez ST (komunikację I2C1 z I2C2 itp.) i wszystko było ok, niestety pod drobnych zmianach i podłączeniu RTC DS1307, uC nie może się z nim skomunikować. Nie wiem w czym jest problem, a siedzę już nad tym ze 2 dni, więc prosiłbym żeby...
Cześć Mnie ta odpowiedź 0xFF wygląda na brak wprowadzenia pina RESET Atmegi do stanu niskiego. Nie znam STM'ów. Może kody na poniższych linkach coś Ci wyjaśnią, pomogą: http://www.fourwalledcubicle.com/LUFA.ph... https://www.fischl.de/usbasp/
stm32f103 schemat bootloader stm32f103 stm32f103 eeprom
ekspres bosch wyczyść zaparzacz sterownik jazda wózek sprzedam głośniki eminence
wzmacniacz audio wzmacniacz audio
Audi A4 B7 TDI: Temperatura Włączenia Świec Żarowych Pilarka Stihl ciężko zapala i gaśnie po dodaniu gazu