Cześć, przy próbie montowania dysku (f_mount) software próbuje odczytać pierwszy sektor karty SD, w którym teoretycznie powinny znajdować się informacje do jakiego systemu plików karta została sformatowana. Jednak, gdy podglądam ten sektor to wszystkie wartości są zerami , oprócz 'rejestru' BS_55AA, który faktycznie zawiera wartość 0x55AA, co oznacza,...
Aa fakt, overflow. Nie patrzyłem powyżej 255, bo aż tak daleko nie musiałem, ale masz rację, niedopatrzenie. [syntax=c] // Write block of data to the SD card // input: // addr - start address of the block (must be power of two) // pBuf - pointer to the buffer with data // len - buffer length // return: SDR_xxx SDResult_TypeDef SD_WriteBlock(uint32_t...
Witam Kiedyś skorzystałem z eepromu z noty stm`a, który używa dwóch stron pamięci i zapisuje je naprzemiennie. Ogólnie działa, ale pojawił się pewien problem. Powoli z pamięcią kodu zaczynam się rozrastać i teraz pytanie. Mam 512k pamięci czyli mapa wygląda tak: Sector 0 0x0800 0000 - 0x0800 3FFF 16 Kbytes Sector 1 0x0800 4000 - 0x0800 7FFF 16 Kbytes...
Walczę już kilka dni próbując różnych podejść i niestety się nie udaje, więc postanowiłem spytać, może ktoś miał coś podobnego. Mikrokontroler stm32F407VGT6, potrzebuję zapisać bajt w pamięci flash pod określonym adresem. Mam 2 funkcje do zapisu i odczytu jednego bajtu w sektorze 2 pamięci flash: void flash_init(void) { FLASH_PrefetchBufferCmd(ENABLE);...
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, Stworzyłem płytkę z mikrokontrolerem STM32F407. Próbowałem ja zaprogramować przykładem "blink_led" ze strony Frediego i nie chciało działać. Oprogramowanie Eclipse + bleeding toolchain + openocd 0.7.0 zostało skonfigurowane wg tutoriala Frediego na Ubuntu. Nie chciało się poprawnie programować, więc próbowałem różnych porad z internetu, ale to...
Do działającej konfiguracji FATFS z SDIO zapragnąłem dodać obsługę DMA będąc twardym gdyż 1 raz go używam. Jednak nie działa to jak powinno. Przeanalizowałem już wszelkie pomysły i do nowych niestety nie doszedłem. Kod funkcji read: [syntax=c]uint32_t SD_SDIO_read(uint8_t *buff, /* Pointer to the data buffer to store read data */ uint32_t sector, /*...
Przecież nie ma różnicy czy gadasz do karty po SPI czy po SDIO. To jest tylko interfejs fizycznego dostepu do danych . W obu przypadkach masz wystawione 'API', które obsługuje podstawowe 4 operacje, niezbędne do pracy i FAT, i MSC: - read sector - write sector - erase sector - ioctl gdzie ten ostatni sluzy do sterowania zasilaniem i udostepnieniem parametrow...
myślałem, żeby same dane przesyłać przerwaniami nie rozumiem tylko funkcji disk_write, a konkretnie jej argumentów. DRESULT disk_write ( BYTE drv, /* Physical drive nmuber (0) */ const BYTE *buff, /* Pointer to the data to be written */ DWORD sector, /* Start sector number (LBA) */ BYTE count /* Sector count (1..255) */ ) Pierwsze to wiem, że nr dysku...
Witam, mam taki problem. Walczę z obsługą karty SD na stm32f4 discovery. Niestety po wywołaniu funkcji f_open w najlepszym przypadku otrzymuję wynik FR_NOT_READY oczywiście bez względu na to czy karta jest czy jej nie ma. Załączam kod funkcji main oraz funkcje związane z spi. Kody są pobrane z forum, ja dopisałem jedynie obsługę SysTick do wywoływania...
Próbuję uruchomić komunikację pomiędzy uC a SD. Mam taką płytkę: http://arduinosolutions.com/pl/p/EVK407I... pobrałem kod z postu 6 z tego tematu: http://www.elektroda.pl/rtvforum/topic23... używam SPI2 na pinach PI1-PI3 a CS na pin PI4. Tutaj plik odnośnie komunikacji po SPI, zmieniłem tylko piny. [syntax=c]/*----------------------------...
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, Zaczynam przygodę z mikrokontrolerami STM32, posiadam STM32F429IDISCOVERY. Zaczynam pracę z kursem na youtube: https://www.youtube.com/watch?v=kSVNG3sC... Wykonałem konfigurację środowiska jak w poprzednim odcinku, jednak gdy teraz próbuję wgrać program (zwykłe zapalenie diody) to w STM32CubeIDE 1.3.0 pojawia się komunikat: Debugger connection...
Problemem z c++filt i addr2line się nie przejmuj - zawsze tak było i pewnie zawsze tak będzie - to nie problem. W dalszej części zakładam, że mówimy o projekcie przykładowym z mojej stronki. Co do głównego problemu - czy "konfigurację" całości masz zaimportowaną wraz z projektem, czy może robiłeś ją sam? Czy masz zainstalowaną wtyczkę GDB Hardware...
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...
========================================... Option Bytes Programming functions ========================================... This group includes the following functions: - void FLASH_OB_Unlock(void) - void FLASH_OB_Lock(void) - void FLASH_OB_WRPConfig(uint32_t OB_WRP, FunctionalState...
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...
Pamięć jest podzielona na obszary: 0x00000000 do 0x00002A40 0x08000000 do 0x08002A40 Po drugim obszarze mogę pisać. We wspomnianym menu mogę włączać i wyłączać zabezpieczenie przed zapisem tylko dla drugiego obszaru, ponadto są do ustawienia bity: WDG_SW nRST_STOP nRWST_STDBY nBoot1 VDDA_Monitor nSRAM_Parity Domyślnie wszystkie były włączone, próbowałem...
Już wszystko jasne. Przyznaje, jestem ciamajda! eeprom.h [syntax=c] /* EEPROM start address in Flash */ #define EEPROM_START_ADDRESS ((uint32_t)0x08002000) /* EEPROM emulation start address: from sector2, after 8KByte of used Flash memory */ [/syntax] Ludzie z STMu radośnie założyli, że skoro chce emulować eeprom to na pewno będę chciał zapisywać wartości...
PAGE_SIZE w eeprom.h mam na 0x400: No przecież piszę, że PAGE_SIZE jest złe: wymaga 2 fizycznych stron pamięci do poprawnego działania ( jeśli się jedna zapełni, ważne dane są przepisywane do tej drugiej, ta pierwsza jest kasowana itd. ) To tyle, niczego więcej nie musisz zmieniać. Pozdrawiam, QuadMan.
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...
Jak w temacie wgrałem program startowy w którym ustawiłem w rejestrze FLASH_OPTCR na bitach RDP wartość 0xF0. Udało się to co zamierzałem czyli zablokowanie możliwości czytania pamięci procka. Teraz niestety nie mogę się skomunikować z urządzeniem program działa dioda miga ale nie mogę go już przeprogramować, próbowałem: Mass Erease Sector Erease Flash...
Staram się połączyć STM32F0 z kartą SD (w sumie to mikroSDHC), ale niestety marne są tego skutki. Próbowałem już kilka kodów znalezionych w internecie ale w końcu zatrzymałem się na znalezionym na jakiejś niemieckiej stronie.. Skompilowałem, wyskoczyło mi kilka błędów związanych z nazewnictwem i deklaracjami funkcji to je poprawiłem. Kod teraz wygląda...
sector protection pending sector reallocated sector
antena ogrzewanie tylnej szyby prosty pilot włącz wyłącz wyciek amica
mikrofalówka przestała grzać mikrofalówka przestała grzać
Domyślny kod instalatora dla central DSC Podłączenie WLZ w puszce pomiarowej instalacji odgromowej