wyrównanie stm32

Znaleziono około 56 wyników dla: wyrównanie stm32
  • [STM32] Jak wymusić kolejność danych w sekcji eeprom STM32 przy optymalizacji GCC?

    Standard C nic nie mówi o kolejności zmiennynch w pamięci. Przyzwoity kompilator i linker będzie rozmieszczał dane w kolejności malejącego rozmiaru, a nieupywane będzei eliminował całkowicie. Chcesz mień znany rozkład danych - użyj struktury - kompilator nie ma prawa jej zoptymalizować, ale będzei stosował wyrównanie naturalne, czyli np. int32_t będzie...

    Mikrokontrolery ARM   28 Lip 2014 10:05 Odpowiedzi: 4    Wyświetleń: 1305
  • [STM32] - Jak poprawnie zapisać i odczytać float w EEPROM?

    Możesz zrobić to np. tak: [syntax=c] typedef __packed struct { uint8_t byte_1 :8; uint8_t byte_2 :8; uint8_t byte_3 :8; uint8_t byte_4 :8; }ftobytes_t; float dana; ftobytes_t *zapis; zapis=(ftobytes_t*)(&dana); eeproma=zapis->byte_1; eepromb=zapis->byte_2; eepromc=zapis->byte_3; eepromd=zapis->byte_4; [/syntax] Ja opierałem się na kompilatorze RelView...

    Mikrokontrolery ARM   29 Kwi 2014 08:53 Odpowiedzi: 35    Wyświetleń: 6123
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [STM32] Jak wgrać skompresowany obraz .jpg do flash przez Atollic?

    jak to zrobić aby te dane znajdowały się w drugiej połowie 128kB flash i zaczynały się dokładnie od początku drugiego 64kB?. A po co Ci takie coś? Adres wgranych danych możesz sobie pobrać ze wspomnianych symboli, nie musi to być więc jakaś stała wartość. No chyba że chodzi Ci o to, żeby dane nie zostały nigdy skasowane podczas wgrywania nowej wersji....

    Mikrokontrolery ARM   22 Sty 2019 23:59 Odpowiedzi: 8    Wyświetleń: 600
  • [STM32] - zwis przy próbie użycia przerwania (używam jednego stosu?)

    Nawet dla takiego małego Miki jak ja już na pierwszy rzut oka jest jasne że te kody to potężne źródło problemów. Co widać bez wgłębienia się w szczegóły: * Funkcja main() jako rozbiegówka to słaby pomysł. Kolega stmx napisał coś na ten temat (nawet podaje link w promowanych tematach), warto to przeczytać. * Stos musi mieć odpowiednie wyrównanie, zwykle...

    Mikrokontrolery Początkujący   10 Maj 2019 08:53 Odpowiedzi: 20    Wyświetleń: 993
  • [Eclipse] Jak zaimplementować FreeRTOS w Eclipse z Codesourcery G++ dla STM32?

    Zmieniając łańcuch wywołań zmieniasz zużycie stosu. Coś mi świta, że kiedyś ktoś pisał coś o FreeRTOSie który jednak NIE wyrównywał sobie stosów do 8... Heap chyba też musi być do 8 wyrównany, bo przecież chyba właśnie na nim są stosy dla tasków... No generalnie pogoogluj, to powinieneś znaleźć - na 99% problemem jest wyrównanie, więc to jest hasło...

    Mikrokontrolery ARM   10 Lut 2012 14:44 Odpowiedzi: 20    Wyświetleń: 6768
  • REKLAMA
  • [ARM/STM32] [ARM/STM32][GCC] memcpy czy DMA w FreeRTOS dla kopiowania 15 bajtów?

    Przecież pisałem na początku, aby odpowiednim atrybutem wyrównywać bajtowe tablice do 32bitów. Nie wszystko da się zawsze wyrównać, dostęp od początku danych nie ma problemu, ale jak dostęp jest do danych gdzieś np ze środka tablicy to już tego nie wyrównasz. Można napisać własną funkcje kopiującą która sprawdza wyrównanie i w razie czego niewyrównane...

    Mikrokontrolery ARM   05 Paź 2011 13:53 Odpowiedzi: 13    Wyświetleń: 3702
  • REKLAMA
  • Jak działa Stack Align w STM32F103?

    Dziękuję za pomoc. Mnie nie szkodzi włączenie jednego bitu, więc mogę dopisać na starcie i faktycznie nie będzie kłopotu. Mogę Cię prosić o jeszcze takie coś, bo nie mogę tego zrozumieć i może mi pomożesz. 1. Co będzie jak nie wyrównam stosu, kiedy natknę się na problem? 2. Jeśli procesor odkłada coś na stos co co ile jest adres jego zwiększany? I jeśli...

    Mikrokontrolery ARM   04 Sty 2021 08:13 Odpowiedzi: 15    Wyświetleń: 1152
  • [STM32] Dziwne działanie ADC na STM32F100RB - problem z odczytem kanału PA1

    gaskoin - pytam dlatego, bo gdzieś kiedyś czytałem że w procesorach 32 bitowych dla każdego char itp. kompilator i tak rezerwuje całą komórkę 32 bit, nie używając po prostu reszty. Z tego wynika że adresowane są nie słowa 32 bit, ale pojedyńcze bajty, jeżeli dobrze rozumiem? Adresować możesz poszczególne bajty, a korzystając z bitbandingu - w ograniczonym...

    Mikrokontrolery ARM   07 Wrz 2012 08:48 Odpowiedzi: 17    Wyświetleń: 1905
  • [STM32][eclipse z CodeSourcery]błedna kompilacja programu do komunikacji USB HID

    Problem to jest taki, że keil nie spełnia standardów języka C dotyczących kilku całkiem istotnych spraw. Jeśli kod o którym mówisz jest tym samym o którym myślę (nie chce mi się ściągać 14MB, bo pewnie wrzuciłeś tam pliki bin, elf i nie wiadomo jakie jeszcze zupełnie nie potrzebne do niczego) to w kodzie Keila jest mnóstwo operacji typu: Według mnie...

    Mikrokontrolery ARM   14 Lip 2012 14:57 Odpowiedzi: 38    Wyświetleń: 7957
  • [STM32F405] - Problem z użyciem zmiennej w wyliczaniu fizycznego adresu.

    A najlepiej połączyć strukturę z sekcją. Wtedy już jest zupełnie łatwe. Nie ma tu się czego uczyć więc to nie argument :D (obsługuje się jak zwykłe zmienne) Tylko w tej sekcji trzeba by wymusić dostęp jedynie z wyrównaniem do 4. Jak to wymusić nie wiem, ale na pewno się da.

    Mikrokontrolery ARM   11 Lut 2015 18:36 Odpowiedzi: 32    Wyświetleń: 2223
  • REKLAMA
  • [OpenOCD] [OpenOCD][STM32] Błąd debugowania po dodaniu funkcji sscanf_ w kodzie

    Twój układ się wykrzacza. Przy używaniu funkcji variadic (ze zmienną liczą argumentów) KONIECZNE jest wyrównanie WSZYSTKICH stosów do 8. Poza tym w tej funkcji jest na stosie sporo zmiennych, przede wszystkim ten 100bajtowy bufor. To też może być problemem jeśli pamięć się kończy. 4\/3!!

    Mikrokontrolery ARM   08 Lut 2012 10:32 Odpowiedzi: 7    Wyświetleń: 2964
  • [STM32][C] - Dwie wersje bin w pamięci FLASH, skok pod wybrany adres

    Wiesz że dane zapisane w ten sposób zajmują 2x lub 3x więcej pamięci flash niż rozmiar struktury? Chodzi o wyrównanie Flasha do 4 bajtów? Próbowałem zapisać rzutując na int a nie char i dać size jako: [syntax=c] int size = sizeof(EEPROM_Data)/sizeof(int); [/syntax] I zapisywać do Flasha po 4 bajty ale nie działało. Dostawałem śmieci. [/quote]

    Mikrokontrolery ARM   26 Lut 2016 17:10 Odpowiedzi: 70    Wyświetleń: 5076
  • STM32 - ZL29ARM - Uruchamianie płytki bez bibliotek

    Ok, nie zauważyłem tego v7-M. Racja. Ale dalej nie rozumiem, co dobrego robi __interrupt. Ew nie rozumiem, z jakiego powodu Twój kompilator bez __interrupt zapamiętuje rejestry, których nie musi zapamiętywać (bo przy wyjątku zrobi to procesor, a w innym przypadku - procedura wołająca). Aha, już wiem, co robi dodatkowy kod u mnie - to, o czym piszą w...

    Mikrokontrolery ARM   13 Lut 2013 10:14 Odpowiedzi: 99    Wyświetleń: 15504
  • STM32 - USB przesiadka z uvision

    A dla czego? Pamiętam, że jak kiedyś przygotowywałem strukturę która miała różnej wielkości zmienne (1, 2 i 4 bajtowe), to przy wysyłce struktury nie były ułożone dokładnie jedne za 2 gimi tylko miały wyrównanie do 32 bitów. Ale to może kwestia kompilatora. Robiłem to w uvision. Jestem tak blisko uruchomienia, a nie mogę sobie poradzić... Usunąłem więc...

    Mikrokontrolery ARM   07 Mar 2016 16:41 Odpowiedzi: 12    Wyświetleń: 1518
  • [STM32F4][C] - Zamiana bajtów miejscami "w locie"

    michalko12 napisał: uint32_t *_fb = (uint32_t*)((uint32_t)fb & 0x03); Ta linia wcale nie robi tego co oczekujecie. Robi coś dokładnie odwrotnego. No masz rację, dla mnie już późnawo było i już kiepsko wczoraj myślałem. Nawet jak to poprawicie, to kod ten _NIE_ jest poprawny, ponieważ w pewnych wypadkach będzie on pisał poza danymi z tego całego "fb",...

    Mikrokontrolery ARM   18 Mar 2015 15:53 Odpowiedzi: 59    Wyświetleń: 3384
  • [STM32] Tablica wielowymiarowa - wysyłanie przez USART

    to nie wiem jak jest pod STM-owymi ARM-ami, ale na większości (jeśli nie wszystkichi) nie 8-bitowych platformach, taka struktura wyrówna swoje membersy do granicy słowa platformy/rozmiaru adresowania, więc będzie dziura między nimi. Chyba, że się wyłączy lub wyspecyfikuje konkretny packing/aling. A niby czemu miałaby to zrobić, skoro tablica i pojedynczy...

    Mikrokontrolery ARM   30 Mar 2017 23:05 Odpowiedzi: 13    Wyświetleń: 1410
  • [LPC1768][CodeSourcery lite/Yagarto] Wykorzystanie sprintf, kłopoty z działaniem

    chodzi o ALIGN ? Dokładnie, chodzi o ALIGN, ale nie tylko, bo generalnie ALIGNem wyrównujesz początek, a chodzi o wyrównanie końca... <: Wszystko zależy od konkretnej konstrukcji skryptu linkera i startupa... Zobacz jak to jest zrobione w moich przykładach (stm32). jaką flage trzeba dodać, aby kompilator ignorował przypisywanie do samego siebie?...

    Mikrokontrolery ARM   22 Lis 2011 23:50 Odpowiedzi: 10    Wyświetleń: 2341
  • STM32F042 - HardFault przy wywołaniu VL53L1X_StopRanging

    (at)szelus Wiekszość startupów ma ten sam adres obłsugi tych wyjątków. Dlatego nazwą się nie sugeruj o ile nie zostały napisane ich handlery Nie wiem jak za bardzo działa "Instrution Stepping Mode", Nie. Normalnie wykonuje to na uC Macie pomysł co może być winą albo jak dojść do problemu? 1. Jeżeli masz zainstalowany Atolloc albo CubeIDE to znajdź...

    Mikrokontrolery ARM   02 Gru 2019 23:29 Odpowiedzi: 4    Wyświetleń: 471
  • CMSIS stm32f103 obsługi drgań styków w przerwaniu

    To da się bardzo prosto zrobić z przerwaniem od zbocza: - przerwanie od zbocza blokuje przerwanie od zbocza i uruchamia timer w trybie one shot, - przerwanie timera włącza przerwanie od zbocza. Jak widać wystarczy dedykowany timer i dwa przerwania i już można obsługiwać przycisk przerwaniem od zbocza. Zamiast dedykowanego timera może być programowy...

    Mikrokontrolery ARM   18 Maj 2018 08:26 Odpowiedzi: 49    Wyświetleń: 2319
  • [STM32] Bit Banding vs GPIOx_BSRR/BRR - korzyści i różnice w użyciu

    Macie może pomysł na zautomatyzowanie tworzenia nagłówka ? No generalnie ciężko... myślę że nad skryptem spędziłbyś tyle czasu co robiąc to "pół-automatycznie". Do tego taki skrypt działałby tylko na nagłówkach od danego producenta, bo np NXP w nagłówku dla LPC17xx nie ma definicji bitów w ogóle, więc tylko manual. Mogłbyś Freddie cos wiecej napisać...

    Mikrokontrolery ARM   29 Maj 2012 09:20 Odpowiedzi: 58    Wyświetleń: 13441
  • [STM32][Keil][C]Filtrowanie CAN po ID - nie przepuszcza ramek

    Nie zwykłem używać tych funkcji bibliotecznych jako że zaciemniają widok na zawartość rejestrów. Jak widzisz, identyfikator który wpisałeś jest wyrównany do prawej, podczas gdy według [url=http://www.st.com/stonline/products... powinien być wyrównany do lewej. Dokładne informacje znajdziesz w RM0008; bxCAN; 23.7.4 Identifier...

    Mikrokontrolery ARM   04 Lip 2011 09:20 Odpowiedzi: 2    Wyświetleń: 2839
  • [STM32][C/asm] - Zarządzanie stosem w funkcji obsługi przerwania

    Stos "w każdym momencie" musi być wyrównany do 8 bajtów. Czemu do 8 a nie do 4?

    Mikrokontrolery ARM   22 Maj 2014 09:55 Odpowiedzi: 5    Wyświetleń: 1956
  • [stm32F2] Błędy odczytu zewnętrznego RAM IS61LV25616AL na STM32F2 120MHz

    Witam Mam mały problem z odczytem ramu IS61LV25616AL, ram jako 16 bitowy 10ns, ustawienia Stm32F2 120Mhz Bank3 is enabled: BCR3_MBKEN bit set to ‘1’ Memory type is SRAM: BCR3_MTYP is set to ‘00’ to select the SRAM memory type Databus width is 16 bits: BCR3_MWID is set to ‘01’ to select the 16-bit width The memory...

    Mikrokontrolery ARM   08 Sty 2012 21:58 Odpowiedzi: 6    Wyświetleń: 2201
  • [STM32F4][C] Coś zawiesza ADC po pierwszej konwersji

    Co do stosu to nie jestem pewien. Wziąłem ten skrypt linkera: https://github.com/PaxInstruments/STM32C... Widzę tam tylko: _Min_Stack_Size = 0x400;; /* required amount of stack */ Czy rozmiar stosu jest jeszcze gdzieś indziej? Bo...

    Mikrokontrolery ARM   22 Lut 2018 22:44 Odpowiedzi: 16    Wyświetleń: 1275
  • Bezpieczny zakres adresów do zapisu danych we flashu na ARMach?

    Z kolei modyfikacja skryptu linkera ma tą wadę, że jeśli przeniosę kod na inny MCU to znowu bedę musiał ten skrypt modyfikować. Emulacja oparta na czystm C po prostu zadziała. No... bo każdy mikrokontroler ma dokładnie ten sam rozmiar strony i dokładnie ten sam kontroler pamięci, więc z pewnością zadziała Ci ten kod bez żadnych zmian... Ehe... Kupę,...

    Mikrokontrolery ARM   28 Gru 2017 17:55 Odpowiedzi: 86    Wyświetleń: 3075
  • [STM32F100] STM32F100 - błędy przy programowaniu pamięci FLASH w gcc/eclipse

    Prawdopodobnie adres przekazywany w argumencie src jest nieparzysty. Zadeklaruj bufor danych, które chcesz zapisać w pamięci jako wektor uint16_t albo unię uint16_t i uint8_t, ew wymuś wyrównanie przez _Alignas.

    Mikrokontrolery ARM   20 Gru 2017 20:55 Odpowiedzi: 22    Wyświetleń: 999
  • [stm32f4,linaro] [STM32F4, Linaro] - Hard fault przy printf z parametrami w LWIP_DEBUGF

    O rozmiar stosu, bo printf to lekko licząc zwykle sobie zajmuje z 750B. No i jeszcze dochodzi wyrównanie stosu do 8, co również może być czasem problemem przy printf(), choć tutaj akurat nie. Proponuję na początek zamiast printf() stosować iprintf(), bo raczej żadnych zmiennoprzecinkowych liczb nie będziesz używał w takim zastosowaniu. 4\/3!!

    Mikrokontrolery ARM   03 Lut 2013 18:46 Odpowiedzi: 8    Wyświetleń: 2046
  • [STM32F4] [STM32F4][C] - ADC - niezerowy odczyt przy VBAT zwartym do masy

    Chciałbym zmierzyć napięcie na końcówce VBAT w STM32F427. VBAT jest podłączone wewnętrznie do kanału 18 ADC1. Napięcie VBAT jest za pomocą wewnętrznego dzielnika napięcia dzielone przez 4. Na potrzeby testów zamiast baterii podłączyłem potencjometr: skrajne końcówki do zasilania, ślizgacz do VBAT. Ogólnie ADC działa, odczytywana wartość zmienia się...

    Mikrokontrolery ARM   11 Paź 2014 09:11 Odpowiedzi: 1    Wyświetleń: 1545
  • Ilu bitowe są wskaźniki w STM32F4xx? Dostęp do pamięci powyżej 64kB

    Wskaźniki są 32 bitowe, wystarczy spojrzeć do jakiegokolwiek manuala jak adresowana jest pamięć. http://www.st.com/web/en/resource/techni... Żeby dostać się pod dowolny adres wystarczy [syntax=c] uint8_t* wskaznik = (uint8_t*)(0xADRESS_KOMÓRKI); [/syntax] i potem [syntax=c] *wskaznik = zapis; odczyt = *wskaznik;...

    Mikrokontrolery ARM   20 Wrz 2015 19:01 Odpowiedzi: 19    Wyświetleń: 1113
  • STM32F4 [C] Eclipse - Dostęp i zarządzanie pamięcią ram.

    Do CCM dostęp ma tylko procek. Więc jakby to było możliwe chętnie bym tam zasadził stosy. Dzięki ze info. Tylko pytanie co do sekcji bo tworzenie ich jest dla mnie jak na razie czarną magią. Już znalazłem część sections w linkerze i podejrzewam że tam powinienem zrobić swoją własną sekcje tylko jak. .bss : { . = ALIGN(4); __bss_start...

    Mikrokontrolery ARM   05 Sty 2014 12:55 Odpowiedzi: 16    Wyświetleń: 3030
  • STM32F4 - UART: Przerwanie trafia do Default Handler zamiast obsługiwać UART

    Niedawno stoczyliśmy z Freddiem potyczkę, w wyniku której wyszło, że w niektórych Cortexach STM nie jest włączone domyślnie wyrównanie stosu przy wyjątkach, i z tego powodu procedury obsługi przerwań powinny być na nich deklarowane z atrybutem interrupt. Nie wiem, czy dotyczy to również M4F. Co prawda w takim przypadku problem byłby przy wywołaniu innej...

    Mikrokontrolery   08 Sty 2013 23:05 Odpowiedzi: 18    Wyświetleń: 2463
  • Konfiguracja STM32F103VCT6 z JLink i Segger GDB Server - linker script

    Czyżby? Czy dla AVR ktokolwiek przejmuje się skryptami linkera, startupem, tablicą wektorów i Makefilem? Przecież dla tej platformy jest DOKŁADNIE TAK SAMO jak dla ARM, a jakoś nikomu nawet na myśl nie przyjdzie zajmować się tymi plikami - każdy korzysta z gotowców zawartych w pakiecie avr-gcc. Te pliki tam fizycznie są, nikt nie zajmuje się tym jak...

    Mikrokontrolery ARM   23 Paź 2012 21:46 Odpowiedzi: 27    Wyświetleń: 3863
  • [STM32L4] [GCC, FreeRTOS] Hardfault podczas korzystania z sprintf z floatami.

    Ja bym się tam nie poddawał. Jeśli nie działa Ci printf() z floatami, to - jak pisałem - jest spora szansa, że w projekcie masz poważny problem związany z wyrównaniem stosów. Zignorujesz semihosting to w końcu trafisz na inny objaw tego samego, nierozwiązanego problemu. W każdym razie problem z wyrównaniem stosów objawia się też tak, że czasem takie...

    Mikrokontrolery ARM   25 Kwi 2017 06:12 Odpowiedzi: 14    Wyświetleń: 1872
  • [STM32F303][C]Atomic blocks - sekcje krytyczne w STM32

    Po kilkunastogodzinnych zmaganiach z wyrzucaniem programu do Default Handler Dzieje się to dlatego, że: 1. modyfikujesz stos, choć nie informujesz o tym kompilatora w sekcji "clobber" Twoich dyrektyw, 2. zostawiasz stos niewyrównany do 8 (na niektórych rdzeniach to nie jest problem, w sumie z STM32 domyślnie to jest problem chyba tylko na F1). Efekt...

    Mikrokontrolery ARM   04 Sty 2020 21:56 Odpowiedzi: 16    Wyświetleń: 1317
  • STM32 bootloader - Jak relokować tablicę przerwań dla bootloadera i aplikacji?

    Podsumowując... Loader umieszczony jest we flash od adresu 0 i nie ma od tego odstępstw. Aplikacja umieszczona jest pod dowolnym adresem we flash z wyrównaniem do 512. Żadne biblioteki nie maja kodu na stałe przypisanego pod konkretny adres, nawet SPL, wszystkie startupy i tak zależą od linkera, no chyba, że ktoś sobie coś udziwił i coś na stałe przypisał....

    Mikrokontrolery ARM   12 Lis 2014 21:49 Odpowiedzi: 17    Wyświetleń: 2721
  • STMF4, I2S - UDA1334BT - charczący dźwięk, konfiguracja Master Clock?

    Co do konfiguracji PLL to nie wiem bo u mnie kodek był masterem i nie potrzebowałem konfigurować PLL. Możesz wymusić wyrównanie bufora przez: [syntax=c] __attribute__ ((aligned(4))) [/syntax] Na stm32f1 na pewno jest problem z DMA i SDIO w przypadku niewyrównanych buforów do 4. Ten bug jest o tyle nieprzyjemny, że w przypadku dużych transferów z/do...

    Mikrokontrolery   20 Maj 2014 15:20 Odpowiedzi: 41    Wyświetleń: 5685
  • STM32H753 - brak transmisji UART z DMA1, konfiguracja DMAMUX

    1. Konfiguracja kanału DMA1_Stream1, ale bez włączania go. 2. Konfiguracja multipleksera DMAMUX1_Channel1 i tutaj chyba trochę brakuje. Sprawdziłbym jeszcze ustawienia pozostałych bitów z rejestru. 3. Włączenie DMA1_Stream1 poprzez: DMA1_Stream1->CR = DMA_SxCR_EN; 4. Włączenie żądania transferów DMA z UART poprzez UART4->CR3 = USART_CR3_DMAT; Jak wygląda...

    Mikrokontrolery ARM   08 Sty 2019 23:32 Odpowiedzi: 23    Wyświetleń: 1206
  • stm32f407 - DMA wyzwalane TIM4 w trybie PWM nie działa, co sprawdzić?

    mi nie chodziło o rozmiar elementy tablicy,tylko połozenie w pamięci (wyrównanie). Chodziło mi o liczbe transferów do wykonania - czy sie zmieniła po odpaleniu.

    Mikrokontrolery ARM   28 Maj 2016 16:02 Odpowiedzi: 18    Wyświetleń: 1227
  • STM32L151 - GCC deklaracja zmiennych w pamieci eeprom

    Zakładając, że nigdzie w skrypcie linkera nie masz dyrektyw ALIGN(), to zapewne jest to narzucone przez model pamięci i/lub algorytm programowania w OpenOCD. Możesz ewentualnie spróbować wprowadzić w tej sekcji wyrównanie do bajta (ALIGN(1)), jednak nie wiem czy coś to da, a istnieje pewne szansa, że zaszkodzi... W każdym razie jeśli masz uint32_t i...

    Mikrokontrolery ARM   05 Maj 2014 13:11 Odpowiedzi: 7    Wyświetleń: 1437
  • STM32G431 USB PMA - wyrównany zapis 16bit liczb nie działa poprawnie

    Jeśli zapis pod 0x40006000 zmienia wartości pod Może adresowanie tej pamięci od strony CPU jest co drugie słowo 16b , tj. ADDR0_TX jest pod adresem 0x40006000, a COUNT0_TX jest pod adresem 0x40006004? Zastanawia mnie tylko, na ile sposobów vendor spierniczył dostęp do tych adresów, bo może tylko busmaster CPU jest dotknięty zarazą, a np. transfer DMA...

    Mikrokontrolery   12 Lis 2024 21:02 Odpowiedzi: 4    Wyświetleń: 255
  • [STM32] [STM32][C] Różnice w obliczaniu CRC32 między STM32 a Linuxem

    Cześć, Pozwolę sobie oszczędzić trochę czasu innym, którzy spotkają się z tym problemem. Nie wiem jak wygląda sprawa ze starszymi mikrokontrolerami, ale w F7 rozwiązano problem odwróconej kolejności bitów, rejestry modułu CRC pozwalają na ustawienie sprzętowego odwrócenia bitów i bajtów. Przykład konfiguracji pod CRC32[zip, itp] dla biblioteki HAL:...

    Mikrokontrolery ARM   08 Lip 2017 17:22 Odpowiedzi: 18    Wyświetleń: 6153
  • Budowa pompy ciepła z jednostki zewnętrznej klimatyzatora - szczegóły konstrukcji

    Gdzieś to już słyszałem ;) https://www.elektroda.pl/rtvforum/viewto... Strona 32 defrost czyli rozmrażanie. https://planetaklimata.com.ua/instr/Tosh... Zebrali się chłopaki, dyskutowali, ale do konkretów nie doszli, a część nawet nie załapała o jakie ciśnienie chodziło....

    Wentylacja i Klimatyzacja   04 Mar 2021 19:53 Odpowiedzi: 71    Wyświetleń: 52509
  • Optymalizacja wykorzystania czcionek we flash dla wyświetlacza eink na kontrolerze ssd1619

    Przecież ten wyświetlacz pozwala zapalić i zgasić dowolny pixel. Tylko, że ram X adresujesz co 8 bitów, czyli na raz operujesz 8 pikselami. Jeżeli wyświetlacz ma w X 400 pikseli, to adresy w ram są od 0 do 49. Nie musisz się też ograniczać do znaków o szerokości będącej wielokrotnością 8 bitów. Możesz rozważyć drukowanie znaków proporcjonalnych do...

    Mikrokontrolery   04 Sty 2021 23:22 Odpowiedzi: 15    Wyświetleń: 645
  • [STM32] - DMA wysyła połowę słowa na GPIO, jak to naprawić?

    Wydaje mi się, iż jest to spowodowane tym, że to 16 bitowy timer taktuje DMA Niet :) Reference manual, opis rejestrów GPIO: The peripheral registers have to be accessed by words (32-bit). Dalej rozdział o "rozmiarach i wyrównaniach" danych DMA: Addressing an AHB peripheral that does not support byte or halfword write operations Czyli dokładnie to co...

    Mikrokontrolery ARM   25 Lip 2014 06:32 Odpowiedzi: 1    Wyświetleń: 2397
  • Nieprawidłowa konwersja pliku *.elf na *.bin narzędziem arm-none-eabi-objcopy

    Wyrównanie stosujesz domyślnie dla każdej sekcji ? Czy tylko .text ? Aktualnie stosuję dla wszystkich które lądują w takiej lub innej formie we flash i zawierają kod. Natrafiłes na podobny problem czy dałeś wyrównanie profilaktycznie ? W commicie jest to opisane - obiekt z odpowiednio dużym wyrównaniem potrafił sprawić, że kod przestawał działać prawidłowo,...

    Mikrokontrolery ARM   05 Sie 2019 11:30 Odpowiedzi: 15    Wyświetleń: 831
  • [STM32F1] - Obsługa zewnętrznego SRAM przy pomocy FSMC

    Witam Ja zapisuje i odczytuje też przez wskaźnik, np dla 16 bitów zapis liczby 22: [syntax=c] // write *(uint16_t *) ( WriteAddr) = 22; //read uint16_t dataRead = *(__IO uint16_t*) ( WriteAddr);[/syntax] zapis i odczyt może być 8, 16(adres wyrównany do 2 ) lub 32 bitowy(adres wyrównany do 4 ) Pozdrawiam

    Mikrokontrolery ARM   21 Lut 2014 12:32 Odpowiedzi: 11    Wyświetleń: 1779
  • Przykładowe projekty ARM dla NXP LPC2103 i ST STM32F103RB w Eclipse

    No to przykładowe projekty w wersji 1.2.0-rc1 zamieściłem na swojej stronie - www.freddiechopin.info w Download > ARM > Przykłady Czekam na komentarze dotyczące nowości czyli: 1. Kompilacja plików w dowolnych folderach 2. Nieco bardziej standardowe nazwy w pliku Makefile 3. Możliwość definiowania rozszerzeń plików z kodem 4. Możliwość wywołania...

    Mikrokontrolery ARM   21 Maj 2013 09:25 Odpowiedzi: 341    Wyświetleń: 101268
  • [STM32] STM32 TrueStudio - Hardfault przy sprintf, jak poprawić kod?

    Pewnie się "o dziwo kompiluje", bo nie masz dołączonego nagłówka stdio.h Tak czy siak: - za mały stos - stos nie wyrównany do 8 - za mało pamięci na stertę to trzy przyczyny które odpowiadają za 99% problemów. Aha - no i doprecyzuj, czy układ się sypie PRZED czy PO sprintf(), bo nie do końca jest to jasne. Kolejna sprawa - istnieje pewna niewielka szansa,...

    Mikrokontrolery ARM   26 Lip 2012 11:38 Odpowiedzi: 6    Wyświetleń: 5412
  • Jak profesjonaliści używają bibliotek CMSIS w projektach STM32?

    Problemem w M0 jest brak opcji unaligned access. Jeśli funkcja jako argument dostaje adres i jest to adres dowolny tzn. niekoniecznie wyrównany do 4(2) bajtów to w przypadku M0 próba odczytania danych 32b(16b) z pod takiego adresu skończy się wygenerowaniem wyjątku. M3 i M4 wspierają unaligned access i dlatego funkcje dla obydwu rdzeni mogą mieć jednakowe...

    Mikrokontrolery ARM   29 Wrz 2018 07:17 Odpowiedzi: 43    Wyświetleń: 11724
  • STM32 - ten sam adres dla różnych zmiennych const uint8_t w debuggerze

    To jest ARM. Instrukcja LDRB/STRB. Tablica bajtów powinna się zaczynać w miejscu wyrównanym do 4 (lub do czegokolwiek), ale dalej jest dokladnie jeden adres na bajt, i ani rdzeń ani kompilator nie komplikują dostępu do adresów nie wyrównanych do 4, niezależnie od tego, czy dane są we flashu czy w ramie. Przestrzeń adresowa ARMów jest ciągła, instrukcje...

    Mikrokontrolery ARM   21 Cze 2011 14:24 Odpowiedzi: 8    Wyświetleń: 2655
  • [STM32] STM32F103RB: HardFaultException przy przerwaniu DMA channel 1 po ADC

    Nie. Architektura ARMv7-M obsługuje niewyrównany dostęp 16 i 32bitowy. Tylko dostęp na słowa większe niz 32bity (LDRD/STRD, LDM/STM) z niewyrównanym do 4 bajtów adresem rzucają fault. Inna sprawa, że w STM32 SFRy ogólnie nie lubią niewyrównanych zapisów lub zapisów o szerokości innej niz sam SFR. Ale to się nie kończy faultem, tylko dziwną wartością...

    Mikrokontrolery ARM   20 Paź 2013 22:51 Odpowiedzi: 17    Wyświetleń: 4061
  • Dźwięk z PCM1808 i PCM5102A na STM32F407 brzmi jak przez filtr dolnoprzepustowy

    (...) gnał, widzę tylko cyfry w debugerze. Z kolei do PCM5102 jeszcze nie pisałem prostego kodu, chociażby sinusoidy, to jest w planach. 7. Połączenia są poprawne. Zasilanie zgodne z dokumentacjami technicznymi, PCM1808 respektywnie ma dostarczone zarówno 5 V jak i 3.3 V, PCM5102A ma dostarczone tylko 3.3V. Dziękuję za dodatkowe informacje i szczegółowy...

    Mikrokontrolery ARM   16 Wrz 2024 21:44 Odpowiedzi: 4    Wyświetleń: 234
  • Jak podłączyć i skonfigurować MCP4822 z Nucleo F103RB przez SPI?

    Witam! Mam następujący problem. Podłączam gitarę do przetwornika ADC w mikrokontrolerze Nucleo f103rb. Podpinam ją w taki oto sposób: https://obrazki.elektroda.pl/4729012400_... Wzmacniacz zasilam niesymetrycznie więc należało dodać 1,65V do sygnału dla symetryzacji. Ustawiłem odpowiednie wzmocnienie w sprzężeniu zwrotnym i teraz kiedy...

    Mikrokontrolery Początkujący   24 Kwi 2019 17:13 Odpowiedzi: 2    Wyświetleń: 504
  • [stm32] [STM32F101CB][Keil] Procesor resetuje się co kilka sekund - jak zdiagnozować?

    Co to są za brednie? Watchdog reset nie powoduje wyjątku HardFault , tylko SYSRESETREQ (sygnal wewnetrzny resetujący procesor). Po raz setny napiszę, kiedy hardfault wystepuje najczęsciej: - zapis nieprawidlowego adresu (instrukcje STR,STRB,STRH,STREX,STM...) - niedozwolone kombinacje przy PSR - wykrzaczenie się stosu lub źle wyrównany stos - użycie...

    Mikrokontrolery ARM   15 Cze 2011 06:20 Odpowiedzi: 7    Wyświetleń: 2439
  • Nucleo f103rb, ADC z 2 wyjściami PWM, przesył danych

    A jaką precyzję mają te rezystory? Mierząc ich wartości dokładnie wyszło mi, że stosunek wyszedł około 64,3 do 1. Jeden z nich miał 1%, drugi chyba 5%, akurat takie miałem. A z innej beczki powstał mi nowy problem, ogólnie kod został dosyć skopiowany z jakiegoś artykułu, więc może być parę błędów w odniesieniu do moich zapotrzebowań. [syntax=c] #include...

    Mikrokontrolery Początkujący   07 Sie 2018 14:36 Odpowiedzi: 14    Wyświetleń: 519
  • STM32F1 - Jak rozróżnić dane z kanałów ADC1 przy użyciu DMA?

    Witam, prosił bym o pomoc. Potrzebuję robić 5 pomiarów napięć i chcę do tego wykorzystać 5 kanałów ADC1. O ile wydaje mi się że poprawnie wszystko konfiguruję, tak nie wiem w jaki sposób odbierać dane z ADC1->DR. Wiem, że przez DMA, lecz jeśli podaję do DMA adres źródłowy ADC1->DR i adres docelowy np. &do_adresu, to nie wiem z którego kanału...

    Mikrokontrolery ARM   08 Paź 2013 18:35 Odpowiedzi: 1    Wyświetleń: 1416