Faktycznie, rozwiązanie kwestii działania SPI było dosyć proste i po sprawdzeniu - SPI działa. Odczytuję zapisany wcześniej rejestr poprawnie. Teraz mam inny problem. Poniżej zamieszczam program z pliku main.c, w którym są dodane miejsca wysyłania kolejnych numerów przez UART i program zatrzymuje mi się po wysłaniu numeru 88. Nic więcej się nie dzieje,...
Zmieniłem trochę w projekcie. Zastosowałem najnowszą wersję FatFS. Plik z konfiguracją funkcji zadeklarowanych diskio.h pobrałem ze [url=http://www.siwawi.arubi.uni-kl.de/a... strony i przerobiłem go by pasował do STM32L. Po testach objawy wyglądają tak: Karty 512MB i 16GB: porgram mniej...
Witam! Mam problem z fatfs 0.09b (najnowsza; wersja 0.07 też nie działa) pod stm32f103vet6. Komunikacja SPI. Maksymalny prescaler SPI do debug'u. (Na każdej prędkości to samo). Disk timer proc na SysTick'u (działa). Karta formatowana na różne jednostki alokacji, FAT, FAT32 zawsze to samo. Nie korzystam z LFN. Strona kodowa 852, 125x, 1 (ANSI) bez znaczenia....
Wykonywanie jekichkolwiek zmian w pliku integer.h dostarczanego wraz z biblioteką fatfs - to raczej średnio dobry pomysł, zwłaszcza, że są tam tylko definicje niezależne od platformy. Jedyne co trzeba zmienić / napisać to kilka funkcji w diskio.c (lub jak w twoim przypadku sd_spi_stm32.c. Poniżej zawartość pliku diskio.c z innego projektu, ale nie wiem...
Co do rady abym zaczął od małych kroczków , to akurat robię łącząc jeden odczyt z adc i zapis do karty (Póki co Rs'a - bedzie to następny etap).Wyświetlacz mam ale on pracuje na drugim spi i na wszelki wypadek nie używam , z diodami to pomyśle, natomiast debuger jest mi obcy ( mam programator zl30prg i niepełnego keila ) Co do kolejności rozbudowywania...
(at)qaz88 Probuje najprostsza komende CMD19 metoda pulling po ktorej wg. noty powinienem dostac 64 slowa a zamiast tego mam CMD timeout error. Co robie nie tak? To nie jest najprostsza metoda odczytu bloku. CMD19 is defined for Send Tuning Block Command. R1 type response is defined. CMD19 can be executed in transfer state of 1.8V signaling mode while...
pobrałem coocox z oficjalnej strony, zainstalowałem wszelkiego rodzaju sterowniki tak jak to jest pokazywane w tutorialach, aczkolwiek w dalszym ciągu próbując wgrać program do procesora wyskakuje błąd: Error: Flash driver function execute timeout Program Download Failed ! Erase:[ 0%] komputer widzi płytkę (jest to STM32 L1 Discovery), program STM32...
Bardzo fajne rozwiązanie. Systick i tak hula więc można się pod niego podpiąć. Patrzcie to: [syntax=c] HAL_StatusTypeDef HAL_I2C_Master_Receive(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t *pData, uint16_t Size, uint32_t Timeout) { if(hi2c->State == HAL_I2C_STATE_READY) { if((pData == NULL) || (Size == 0)) { return HAL_ERROR; } if(__HAL_I2C_GET_FLAG(hi2c,...
Edit: DMA nie działało bowłączałem DMA2 a nie DMA1. Napiszę jak dalej pójdzie :] Cześć, mam pewne problemy z I2C, bazowałem na zmodyfikowanym kodzie od ST (jak mnie pamięć nie myli) najpierw używałem samych przerwań na najwyższym priorytecie jak ST przykazało, niestety od czasu do czasu zdarzało się że RTOS wyłączał wszystkie przerwania i przy odbiorze...
Mam problem z wgraniem programu do procesora po tym jak wrzuciłem do niego program mający zapisywać dane do pamięci flash w trakcie jego działania (kod do emulacji eeproma zaczerpnąłem: http://www.elektroda.pl/rtvforum/topic21... Aktualnie każdorazowo po próbie przeprogramowania procesora wyskakuje mi komunikat „Flash timeout. Reset and...
Poniżej jest przytoczony fragment zapisu startu ARMputera BF210. Jak widać bootloader U-boot również raportuje błąd w czasie wykonywania komendy 8, ale radośnie go zlewa i ty uczyń podobnie. Komendę podaj, wyniki zlej. U-Boot 1.3.3 (Dec 15 2008 - 18:17:51) DRAM: 32 MB Atmel: Flash: 0 kB DataFlash:AT45DB011 Nb pages: 512 Page Size: 264 Size= 135168 bytes...
Ok, compiling cppsupport.c... ..\..\..\Libraries\ISIX_RTOS\include\isi... warning: #260-D: explicit type is missing ("int" assumed) ..\..\..\Libraries\ISIX_RTOS\include\isi... error: #65: expected a ";" ..\..\..\Libraries\ISIX_RTOS\include\isi...
Chcę użyć biblioteki fatfs do współpracy z kartą SD. Mam problem ze skompilowaniem dwóch funkcji, przy których dostaję dziwny błąd: ...\src\fatfs\sd_stm32.c:181:6: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'rcvr_datablock' Dodam jeszcze, że podczas pracy w uVision owe funkcje kompilowały się prawidłowo i bez zastrzeżeń, a urządzenie...
Witam, mam problem z odbieraniem danych przez i2c z użyciem mikrokontrolera stm32f103. Sytuacja wygląda tak, że potrafię przesyłać dane po i2c, (wysyłam adres, czujnik odpowiada, wysyłam mu komendę wykonania pomiaru, wiem że go wykonuję ponieważ wtedy "mruga" diodą), niestety mam problem z odbieraniem danych. Testowałem już wiele funkcji z sieci, ale...
Witam. Piszę właśnie program, którego zadaniem jest pobranie 1 klatki (zrobienie zdjęcia) z kamery MT9D111 (nota katalogowa: http://www.dragonwake.com/download/camer... ) Klatki z kamery będzie pobierał mikrokontroler STM32F429, taktowany częstotliwością 180MHz. Wzoruję się na informacjach zawartych na stronie: http://www.stm32.eu/node/307...
A co jeśli HSEStartUpStatus != SUCCESS? Taktowanie zostanie pozostawione jako domyślne. Prawdopodobnie taktowanie zostaje na 8MHz. I czasami tak się właśnie dzieje, program rusza ale chodzi dużo wolniej. Jaki masz czas oczekiwania na start HSE? Dokładnie nie wiem. Wykorzystuję bibliotekę STMa więc wydaje mi się prze powinien być poprawny ale dołączę...
Witam, Ucze sie I2C i probuje zainterfejsowac czujnik BME280 . Zaden kod z neta ani wlasny nie dziala, na czujniku UV tez nie. Na oscyloskopie jakies krzaki (na zdjeciu.)(Edit:na lini SDA) SCL podpiete na PB6, SDA na PB7 3V Wygenerowane z CubeMX wiec nie daje reszty kodu. Przykładowy kod: while (1) { uint8_t i; for (i=1; i<248; i++)...
Zazwyczaj używam tej funkcji: [syntax=c]/** * Brief This function configures RTC. * Param None * Retval Clock source: 0-none, 1-LSE, 2-LSI, 3-HSI */ uint8_t rtcInit(void) { uint32_t timeStart; if((RTC->BKPREG[BKUP_DISP_MODE] & 0x40000000) == 0) {// Enable PWR clock RCC->APB1ENR1 |= RCC_APB1ENR1_PWREN; // Disable backup domain protection PWR->CR1...
Wykrzacza się tutaj i ląduje w HardFault... status = FLASH_OB_RDP_LevelConfig(rdptmp); W chwili wywołania rdptmp = 0xA5, czyli bez ochrony przed odczytem... Potem robi erase, czyli ustawia 0xFFFF, po czym znów próbuje tam wpisać 0xA5 w ramach przywrócenia :-/ Przechodząc przez kolejne kroki funkcji HALa dla OB stwierdzam, że to jakaś masakra.. wchodzi...
Nie pokazujesz inicjalizacji - na takim kawałku kodu nic się nie da powiedzieć. Mój błąd. Jeśli chodzi o inicjalizacje to tak [syntax=c]static void MX_SPI1_Init(void) { hspi1.Instance = SPI1; hspi1.Init.Mode = SPI_MODE_MASTER; hspi1.Init.Direction = SPI_DIRECTION_2LINES; hspi1.Init.DataSize = SPI_DATASIZE_8BIT; hspi1.Init.CLKPolarity = SPI_POLARITY_LOW;...
Środowisko to Eclipse MARS z nakładką dla stm32. Jeśli chodzi błędy to są tego typu, że kompilator informuję, że jest brak zadeklarowanej zmiennej lub funkcji. Funkcję są zadeklarowane w pliku .h, który jest dołączony do pliku .c ( w którym wywala błąd). Uznaje, że informacja kompilatora o tym błędzie jest troche dziwna ponieważ w kodzie w tym samym...
Do tematu musiałem wrócić, dalej kopie się z koniem... Tym razem STM32F411VE i akcelerometr LSM303DLHC który jest na płytce STM32F411E-DISCO. W związku z tym problem hardwarowy można od razu wykluczyć. Transmisja w trybie pooling działa, odczytuje dane z akcelerometru. Natomiast przy próbie pracy w przerwaniu I2C zgłasza przerwanie I2C1_ER_IRQn i błąd...
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...
Witam serdecznie. Proszę o poradę. Programuje STM32L051 w Atolicu. Wstępna konfiguracja została wykonana poprzez Cube. Kod to tylko i wyłącznie ustawianie w pętli: naprzemiennie stanu wysokiego i niskiego na dwóch pinach z opóźnieniem i wygląda tak: SEGGER J-Link GDB Server V6.44i Command Line Version JLinkARM.dll V6.44i (DLL compiled May 17 2019 17:34:22)...
Pierwsze pytanie (jeszcze nie dotyczące bootloadera ale pobliskie temu. Pamięć FLASH w STM32F4 jest 32 bitowa? 16? 64? Nie mogę znaleźć jasnej odpowiedzi na to pytanie w reference manualu. Jest coś takiego w rejestrze FLASH_CR jak PSIZE. Gdzie deklaruje się jakieś zapisywanie, że niby uzupełnia się wolną przestrzeń wielokrotnością tego co wpisałem....
Witam posiadam płytkę Butterfly2, z procesorem STM32F107VCT6, do programowania używam CooCox IDE i stlinka (ustawione przez swd) po zaprogramowaniu układu dziś kilka razy, w pewnym momencie zaczął pojawiać się komunikat: Error: Flash driver function execute timeout Wie może ktoś jak można to naprawić lub co się stało...? proszę o pomoc. problem pojawił...
Witam serdecznie, Posiadam płytkę HY-Mini z prockiem STM32F103VCT6 i programator zgodny z CoolinkEx. Po tym jak kilkanaście razy zaprogramowalem układ zaczął pojawiać się następujący komunikat (czy to z CooCox IDE czy CoFlash): Error: Flash driver function execute timeout Nie udaje się też debugowanie w RAM (ale wczesniej nie probowalem, wiec moze po...
Witam wszystkich, Próbuję uruchomić wyświetlacz LCD znakowy 2x40 ze sterownikiem hd44780 na procesorze STM32L na płytce STM32L-Discovery. Korzystałem z książki "STM32 Aplikacje i ćwiczenia w języku C" Marka Galewskiego. Do książki były dołączone pliki biblioteczne do obsługi właśnie hd44780. Wykorzystałem te pliki, zmieniłem jedynie port pod który podpiąłem...
Cześć, mam problem ze startem zewnętrznego kwarcu 16 MHz w STM32F030K6T6. Nota katalogowa mówi, że akceptuje on oscylatory z przedziału 8 - 32 MHz. Przy kwarcu są oczywiście dwa kondensatory 15 pF. W domyśle chciałbym uruchomić PLL x3, żeby mikrokontroler pracował z prędkością 48 MHz. Zmienna HSEStatus zostaje ustawiona na 0 po wygaśnięciu timeoutu...
[syntax=c]/** ****************************************... * File Name : main.c * Date : 29/04/2014 14:07:00 * Description : Main program body ****************************************... * * COPYRIGHT(c) 2014 STMicroelectronics * * Redistribution and use in source and binary forms,...
Mam taką konfigurację (też w Keilu): static void RCC_Configuration(void) { __IO uint32_t StartUpCounter = 0, HSEStatus = 0; /* SYSCLK, HCLK, PCLK2 and PCLK1 configuration ---------------------------*/ /* Enable HSE */ RCC->CR |= ((uint32_t)RCC_CR_HSEON)... /* Wait till HSE is ready and if Time out is reached exit */ do...
https://obrazki.elektroda.pl/5694434400_... Moduły zasilaczy warsztatowych, takie jak DPS5005, dostępne są od dłuższego czasum.in. na AliExpress. Doczekały się wielu recenzji, w większości pozytywnych. Jednakże często wskazywanym problemem z tymi modułami jest kiepskiej jakości oprogramowanie – interfejs użytkownika pozostawia...
Generalnie zawsze czekam na OK lub ERROR ponieważ moduł zawsze odpowiada w ten sposób, oczywiście wszystko z określonym timeout-em. Czas odpowiedzi modułu to min 70ms na prostą komendę więc w tym czasie "robię" pozostałe rzeczy. Sprawdzanie flagi i timeout-u znacznie przyspieszy mi działanie całości w porównaniu do przeszukiwania bufora odbiorczego...
Dobry wieczór Korzystałem z RM, DS i taki kod wyszedł - wybaczcie. Na ekranie mam wyświetlone Timeout error pomiar. Mogę sobie nawet wyświetlić wartość LoopGuard - tylko po co ? Czyli wywala się na kodzie : [syntax=c] // start pomiaru ADC1->CR |= ADC_CR_ADSTART; //0x4 LoopGuard = 0; while( 0 == (ADC1->ISR & ADC_ISR_EOC) ) // 0x4 { if( ++LoopGuard >...
Jak możesz to podeślij te artykuły. Zawsze to można znaleźć jakieś nowe informacje :) Dodałem funkcję: [syntax=c]uint8_t SDSPI_Init(SPI_HandleTypeDef *phandle) { HAL_GPIO_WritePin(SDSPI_CSPORT, SDSPI_CSPIN, GPIO_PIN_SET); HAL_Delay(10); uint8_t buf[] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; if(HAL_SPI_Transmit(phandle, buf, 10,...
Miałeś problem z HAL, wydłubałem funkcję, która adresuje układ do odczytu, zapisuje rejestr/rejestry, generuje ponowny start, adresuje do odczytu i odczytuje bajt/bajty. Może się przyda. [syntax=c] /** * (at)brief Read an amount of data in blocking mode from a specific memory address * (at)param hi2c Pointer to a I2C_HandleTypeDef structure that contains...
Witam Zacząłem pisać obsługę pamięci MMC korzystając z kodu zamieszczonego tu [url=https://www.elektroda.pl/rtvforum/t... Dokładniej to w #6 poście tego tematu. Jednak pojawia się błąd w linijce: [syntax=c]/*----------------------------... /* Select the card and wait for ready */ /*--------------------------------------...
Witam chciałem wykorzystać DMA do odczytywania wartości z akcelerometru poprzez I2C. Na stronie ST udostępniono przykładowy kod wykorzystujący DMA. Poniżej udostępniam przykład funkcji wysyłania danych. No i niby wszystko rozumiem, oprócz jednej podstawowej rzeczy. W którym miejscu jest to niby szybsze niż zwykły transfer poprzez i2c, tzn. wysyłanie,...
Moje Eclipse + reszta załogi (LPC2364) chyba toporne jest :wink:. Pomysł z plikami .lunch do bezpośredniego wgrania u mnie nie funkcjonuje, więc musiałem "ręcznie" przeczytać tego xml. Mam nadzieje że o to chodziło target remote localhost:3333 monitor reset monitor soft_reset_halt monitor mwb 0xE01FC040 0x01 monitor mwb 0xE01FC000 0 monitor mwb...
To jest z przykładu dołączonego do noty: [syntax=c] #define OAR1_ADD0_Set ((uint16_t)0x0001) Status I2C_Master_BufferWrite(I2C_TypeDef* I2Cx, uint8_t* pBuffer, uint32_t NumByteToWrite, I2C_ProgrammingModel Mode, uint8_t SlaveAddress ) { ... else if (Mode == Polling) /* I2Cx Master Transmission using Polling */ { Timeout = 0xFFFF; I2Cx->CR1 |= CR1_START_Set;...
Tych kroków jest trochę więcej, na przykład włączenia zegara dla domeny RTC. Poniżej daję kod do analizy (STM32G0xx) i czekam na krytykę. [syntax=c]/** * Brief This function configures RTC. * Param WakeUp period * Retval error code (0 = no errors) * PrereqSysTick serves as timebase for timeouts */ __INLINE uint8_t rtcInit(uint16_t timeToWake) {// set...
To może wgraj oryginalną zawartość z Nucleo F411 jaka jest w nówkach na dzień dobry, by przynajmniej sprawdzić Nucleo plus ST-link. On tam miga i reaguje na przycisk może pamiętasz: No jest jakiś postęp chociaż nie wiem czy można to nazwać postępem. Wgrałem ten program, wyrzucił mi jakiś błąd elf loadera ale ostatecznie znalazł się w pamięci: Dodano...
Witam [syntax=actionscript]Open On-Chip Debugger 0.8.0-dev-00094-gc658229 (2013-07-21-11:25) Licensed under GNU GPL v2 For bug reports, read http://openocd.sourceforge.net/doc/doxyg... Info : only one transport option; autoselect 'jtag' adapter speed: 1000 kHz adapter_nsrst_delay: 100 jtag_ntrst_delay: 100 cortex_m3 reset_config sysresetreq...
Dzięki za pomoc, Biblioteki sciągnałem i przerobiłem ale pojawia sie problem a mianowicie funkcja disk_initialize zwraca 0 tak jak powinna ale kolejna funkcja check_fs zwraca wartość 2 powodując że nie mogę iść dalej z pracą na "Facie". Error jest zwracany przy komentarzu : Dodano po 2 Problem rozwiązany musiałem poprawić obsługę SPI ale teraz funkcja...
Witam, otóż mam problem, a mianowicie chciałbym obsłużyć przerwanie z pinu ALRT z przetwornika ADS1115 w celu wyeliminowania opóźnienia które teraz stosuje przy odczycie każdego z kanału (delay(20)) dokumentacja: https://cdn-shop.adafruit.com/datasheets... z góry dziękuję za pomoc mój dotychczasowy kod: [syntax=c] /* Includes ----------------------------------------...
Bo jest napisana na magicznych hexach (po części) :) Kawałek tejże inicjalizacji: [syntax=c]void SystemInit (void) { /* Reset the RCC clock configuration to the default reset state(for debug purpose) */ /* Set HSION bit */ RCC->CR |= (uint32_t)0x00000001; /* Reset SW, HPRE, PPRE1, PPRE2, ADCPRE and MCO bits */ #ifndef STM32F10X_CL RCC->CFGR &=...
Witam W jednej wersji elektroniki zdarza mi się, że dostaję ramki z PHY z błędnym CRC. Generalnie kiedy elektronika i kabel są ok to błędów CRC nie miałem więc dla mnie ten problem to nowość. Ramki z błędnym CRC widzę w rejestrze: Ethernet MMC received frames with CRC error counter register (ETH_MMCRFCECR) W momencie jak przychodzi taka 'uszkodzona'...
Witam wszystkich, Mam pewien problem z zaprogramowaniem uC STM32F0x. uC chce zaprogramować za pośrednictwem SWD wykorzystując tylko linie SWDIO i SWCLK, nie wykorzystuje nRST i SWO. Używam STlinka v2. Na początek podam konfigurację komend openocd: -f board/stm32f0discovery.cfg -c "init; halt; flash write_image erase test_prog.elf" -c "mww...
Już od wielu lat znam problem ale nigdy nie chciało mi się do niego przysiąść. Czyli lenistwo poziom expert. Do obsługi FLASHa używam nieznacznie przerobionych kodów autorstwa w123456xy (nie z elektrody, tylko gdzieś w internecie znalazłem). I problem taki: Dam optymalizację -O0, działa. Dam -Os, nie działa. Do tej pory radziłem sobie po prostu pozostawiając...
ładnie. nowa kompilacja pierwszy rozruch Wchodzę do initLog()... Polecenia zarejestrowane! initLog() wykonane! Ostrzeżenie: Sprawdzanie nagłówka sektora nie powiodło się. Sformatuj ten sektor (0x001db000). Ostrzeżenie: Sprawdzanie nagłówka sektora nie powiodło się. Sformatuj ten sektor (0x001dc000). Ostrzeżenie: Sprawdzanie nagłówka sektora nie powiodło...
timeout error error timeout cmsis stm32 error
pozioma linia wyświetlacz zegar wyświetlacz segmentowy błąd p0638
saeco aulika tauron dodatkowe opłaty
Brak dźwięku w nawigacji Mazda CX-5: przyczyny i rozwiązania Mercedes W238 Coupe – niedomykająca się szyba, wycieraczki pracują stale, żółty check engine po postoju