stm32 zmienna pamięć

Znaleziono około 26 wyników dla: stm32 zmienna pamięć
  • [stm32] [CrossStudio] Zmienna char - alokacja pamięci

    1) Czy dla zmiennych o rozmiarze poniżej 32bity zawsze przydzielane jest 4 bajtowy rozmiar pamięci? To kwestia wyrównania. Gdyby nie te int-y wcześniej nie byłoby problemu. A że są, to kompilator stara się by każda zmienna 32bitowa była umieszczona pod adresem podzielnym przez 4 - tak by się dało ją odczytać/zapisać w jednym cyklu. Wielkość całej struktury...

    Mikrokontrolery ARM   09 Mar 2012 07:32 Odpowiedzi: 3    Wyświetleń: 1532
  • REKLAMA
  • STM32F0DISCOVERY - brak możliwości zapisu do pamięci Flash po modyfikacji kodu

    Witajcie, właśnie się bawię pamięcią Flash w STM32F0DISCOVERY (chcę się nauczyć obsługi). Efekt? Chyba zablokowałem możliwość zapisu... Kod (dopiero się uczę, więc komentarze mogą zawierać błędy): [syntax=c]#include "stm32f0xx.h" #include "stm32f0_discovery.h" int main(void) { RCC -> AHBENR |= RCC_AHBENR_GPIOCEN;//LEDY GPIOC -> MODER |= GPIO_MODER_MODER8_0...

    Mikrokontrolery ARM   09 Maj 2017 20:29 Odpowiedzi: 10    Wyświetleń: 1197
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [STM32][C/uVision] problem z deklaracjami zmiennych

    bez apelacyjne operator extern powinno się tam znaleźć. To zleży jak przebiega proces kompilacji. Jeżeli kompilujemy wszystkie pliki na raz to w sumie ta dyrektywa o której wspominasz działa tak jak oczekujesz i rzeczywiście zmienna jest zadeklarowana tylko raz. Natomiast jak kompilujemy każdy plik źródłowy osobno do postaci pośredniej i później linkujemy...

    Mikrokontrolery ARM   18 Maj 2011 23:40 Odpowiedzi: 5    Wyświetleń: 2701
  • [Stm32] Jak zapisać liczby float w emulowanej pamięci EEPROM na STM32?

    unsigned int *ple=(unsigned int*)&ulamek; wszystko jest ok, bo to mówi mniej więcej tyle, co "postaw wskaźnik na unsigned int na adresie zmiennej ulamek". Jeśli tylko zadeklarowałeś 'ple' nie definiując go, to musisz zmienić wskaźnik (czyli samo ple), a nie to co pod nim jest (czyli *ple), i ten wskaźnik postawić na adresie zmiennej ułamek (czyli &ulamek)....

    Mikrokontrolery ARM   03 Paź 2011 18:46 Odpowiedzi: 10    Wyświetleń: 2657
  • REKLAMA
  • Zmienna const w STM32 - czy zajmuje miejsce w RAM czy tylko w FLASH?

    Pewnie używałeś wcześniej AVR, tam jest to bardziej zagmatwane. To nie kwestia procesora, a kompilatora. Równie dobrze możnaby na arm-gcc to zagmatwać, w końcu standard C nigdzie nie definiuje, że stałe muszą być we FLASH. Właśnie procesora. AVR pod jednym adresem może mieć trzy różne przestrzenie adresowe, pamięć programu, danych lub IO. W ARM adres...

    Mikrokontrolery ARM   16 Mar 2019 16:05 Odpowiedzi: 16    Wyświetleń: 960
  • dsPIC vs STM32 - zastoswanie w energoelektronice i automatyce napędu elektrycz.

    Też nie aż tak 'znacznie'. - dsPIC marnuje mniej czasu na wejście w ISR i na wyjście z niego, więc STM32 nadrabia zegarem i wychodzi podobnie. - W dsPICu instrukcja MAC wykonuje się w jednym cyklu, w STM32 w trzech (chyba). - dsPIC ma podzieloną pamięć na X i Y, z dodatkiem, że pewne przestrzenie adresów są dwuportowe i DMA nie kradnie cykli rdzenia...

    Mikrokontrolery   10 Cze 2011 12:52 Odpowiedzi: 18    Wyświetleń: 4097
  • [STM32][CodeSourcery]Deklaracja struktury w pamięci flash.

    Z tym rzutowaniem to wolę jednak "ręcznie" to robić....jakoś tak wydaje mi się bezpieczniej. U mnie akurat sizeof zawsze będzie mniejsze niż 256 gdyż jest to po prostu ilość bajtów do zapisania jednej zmiennej/tablicy/struktury i nie zamierzam robić większych :wink:. Biblioteki z ST są zakręcone..niestety. Zaletą mojego pomysłu jest to że struktura...

    Mikrokontrolery ARM   13 Lut 2010 15:11 Odpowiedzi: 21    Wyświetleń: 7694
  • REKLAMA
  • [STM32F103][keil][C] nieznany atrybut przerwania SysTick

    Jezeli po operecji atomowej zmienna1 = zmienna2 oczekujesz że zmienna1 == zmienna2 to w przypadku kiedy trzeba odczytac pamięć i ją zapisać to taka operacja nie jest atomowa. Czy trzeba wyłaczyc coś co może zmodyfikować zmienną 2 zależy od tego czy taka zmiana może coś zmienic w przebiegu wykonywana programu. To już zależy od konkretnego rozwiązania....

    Mikrokontrolery ARM   30 Gru 2017 10:38 Odpowiedzi: 63    Wyświetleń: 2439
  • [STM32] Czy korzystać z firmowych bibliotek stlib?

    Biblioteki to jeden ze sposobów na pisanie kodu. Z tego co widziałem na forum to właśnie jest to sposób na szybki start, a krytyka jest związana raczej z nieumiejętnym korzystaniem z biblioteki w tym również w przykładach. Za przykład podam tutaj przykład GPIO - IO Toggle (stm32f4_dsp_stdperiph_lib). Definicja zmiennej GPIO_InitTypeDef GPIO_InitStructure;...

    Mikrokontrolery ARM   10 Kwi 2012 19:12 Odpowiedzi: 49    Wyświetleń: 10368
  • [stm32f0] Kiedy używać dynamicznej alokacji pamięci w FreeRTOS na STM32F0?

    1. Dynamicznej alokacji pamięci używaj wtedy gdy potrzebujesz dużej ilości pamięci przez określony czas. Jak pamięć nie jest Ci już potrzebna to ją zwalniasz. Jeżeli masz jakieś zmienne, które używasz przez cały czas działania programu to malloc nie ma sensu. Zmienna statyczna zadeklarowana w funkcji ląduje w tym samym obszarze pamięci co zmienne globalne...

    Mikrokontrolery   05 Kwi 2014 16:38 Odpowiedzi: 8    Wyświetleń: 1431
  • Atmega128L i SRAM BS62LV1024 - Jak poprawnie podłączyć i używać pamięć?

    Można użyc ich jako wstawek asemblerowych, bo ja piszę w C? Myślisz, że zatrzask 74HC573 wydoli dla Atmegi128L(3.3V,8MHz)? Czy może zaopatrzec się w wersje AHC? Jak najbardziej można operować asemblerem i w sumie jest to dość przejrzyste (trzeba sobie zmontować proste wstawki przeładowania zmienna<->RAM. Sorry za brak szczegółów co do samego...

    Mikrokontrolery   29 Lip 2008 12:05 Odpowiedzi: 25    Wyświetleń: 3486
  • [STM32F1][C] - Lista jedokierunkowa - wyciek pamięci

    Witam! Kilka słów o projekcie. Urządzenie wykonuje odczyt z czujników - częstotliwość pomiarów i ilość punktów pomiarowych jest zmienna. Pomiary następnie są wysyłane do urządzenia nadzorującego w odpowiedzi na jego zapytanie. Moim założeniem jest kolejkowanie pełnych ramek z pomiarami i czasem ich wykonania w postaci listy jednokierunkowej, a gdy jest...

    Mikrokontrolery ARM   01 Lip 2014 12:02 Odpowiedzi: 30    Wyświetleń: 3336
  • REKLAMA
  • Wywołanie printf() skutkujące wywołaniem obsługi wyjątku Hard Fault

    Jeśli chcesz to zdebuggować, to możesz się "zaopatrzyć" w bleeding-edge-toolchain ( https://github.com/FreddieChopin/bleedin... ). Jest on kompilowany praktycznie tak samo jak toolchain ARMowy, z tym że biblioteki zawierają wszystkie symbole, a więc można je spokojnie debuggować i widzisz co się dzieje. Z Twojego opisu wynika, że problem...

    Mikrokontrolery ARM   03 Cze 2019 21:29 Odpowiedzi: 7    Wyświetleń: 579
  • [F0] EEPROM - zapisuje tylko pierwsze 256 komórek we FLASH

    Bazując na https://obrazki.elektroda.pl/4178510200_... https://obrazki.elektroda.pl/8769073400_... main.c [syntax=c] /* Virtual address defined by the user: 0xFFFF value is prohibited */ uint16_t VirtAddVarTab[NB_OF_VAR]={0}; uint16_t Virtval[NB_OF_VAR]={0}; uint16_t VarValue= 0; int main(void) { HSE_init(); //systick_init();...

    Mikrokontrolery ARM   19 Lip 2020 23:30 Odpowiedzi: 8    Wyświetleń: 804
  • stm32 - zapis zmiennych do trwałej pamięci, podczas pracy procesora.

    Co oznacza to że mam czegoś szukać we flagach - co to flagi? Niestety nie poradziłem sobie jeszcze z zapisaniem zmiennej na stałe w pamięci. [syntax=c]short int d; short int *c = &d;[/syntax] [syntax=c]if((GPIOA->IDR & 0x1) == 0) { //FLASH->WRPR; //Ochrona zapisu jest standardowo nie włączona. Więc nie dotykam jej. //************ Czyszczenie...

    Mikrokontrolery ARM   16 Gru 2011 22:43 Odpowiedzi: 29    Wyświetleń: 6682
  • [stm32f4] Jak zarezerwować sektory 3 i 4 dla EEPROM w STM32F4 bez nadpisywania kodu?

    Ok panowie. Skutecznie namówiliście mnie na wygospodarowanie kawałka miejsca na kartę microsd :) Dzięki za pomoc. Dodano po 16 PS. (at)tplewa ten temat ogólnie dla setek się sprawdza bardzo dobrze bo tam pamięć jest podzielona na jednorodne bloki (po 1k dla LD i 2k dla HD) i nie wyobrażam sobie mając urządzenie wielkości karty SD pchać tam baterię (jak...

    Mikrokontrolery ARM   04 Sie 2015 16:57 Odpowiedzi: 20    Wyświetleń: 1416
  • [stm32] Keil umieszczenie przeskalowanego sinusa w pamięci flash

    Wolałbym zapis: Dobry wniosek (tak sądzę). Skąd kompilator ma wiedzieć jaką wartość ma zmienna i ?

    Mikrokontrolery ARM   26 Maj 2011 22:08 Odpowiedzi: 8    Wyświetleń: 2553
  • Jak stworzyć stoper na STM32F407 z użyciem HAL i timerów TIM6/TIM7?

    Ewentualnie odpal timer z przerwaniem od przepełnienia i tam w przerwaniu wsadź zmienną która będzie zerowana w momencie naciśnięcia "start pomiar" i zwiększana co powiedzmy 1ms przez przerwanie (nie wiem jaką chcesz dokładność, możesz dać np. 0,1ms i masz większą precyzje). Potem jak naciśniesz "stop pomiar" to timer przestanie zwiększać tą zmienną...

    Mikrokontrolery ARM   10 Lut 2017 13:55 Odpowiedzi: 11    Wyświetleń: 1068
  • [STM32L1] [STM32L1][C] Wskaźnik na funkcję inicjowany niepoprawnym adresem (0x8800ecd1)

    Mam dziwny problem ze wskaźnikiem na funkcję. W kodzie jak poniżej pole initDriver nie jest inicjowane adresem funkcji (0x0800ecd0), tylko jakby popsutym (0x8800ecd1). Wygląda jakby coś niepotrzebnie ustawiało dwa bity w adresie, najmłodszy i najstarszy. Jakie może być wytłumaczenie? [syntax=c] drv = (struct at_ble_drv_t*) ble_memalloc(sizeof(struct...

    Mikrokontrolery ARM   27 Lut 2017 14:32 Odpowiedzi: 18    Wyświetleń: 1440
  • stm32 Discovery Board SW4STM32 - Przechowywanie plików z obrazem w pamięci MCU

    Dlaczego nie użyłeś po prostu typu int? int i long mają na Cortexach po 32 bity. Chciałem mieć pewność że zmienna będzie "długa" bez zagrożenia, że znów się przepełni. :idea: można dołączyć nagłówek <stdint.h> i użyć typu int32_t albo uint32_t. Świetny pomysł! :D Zwłaszcza, że w tych deklaracjach widać długość zmiennych, chociaż tutaj takie małe...

    Mikrokontrolery   04 Mar 2016 08:44 Odpowiedzi: 11    Wyświetleń: 819
  • [STM32] Jak przechowywać stałe wskaźniki w pamięci FLASH na STM32 w C++?

    Ja w takich przypadkach stosuję metodę którą na swoje potrzeby nazwałem "split objects". Obiekt u mnie składa się po prostu z dwóch części - stałej i zmiennej. Zwykle "główny" obiekt jest stały, a ten "zmienny" fragment jest podrzędny, jednak są sytuacje w których robię to odwrotnie, głównie wynikające z polimorfizmu lub dlatego że łatwiej/lepiej jest...

    Mikrokontrolery ARM   31 Lip 2016 22:30 Odpowiedzi: 23    Wyświetleń: 2658
  • Wybór mikrokontrolera ARM do nauki po AVR - łatwo dostępny i niedrogi sprzęt

    Zniechęcił mnie brak eepromu. Kompletnie nie jest dla mnie zrozumiałe, aby w takich nowoczesnych procesorach robić takie ograniczenia. Po prostu coś takiego przydaje się wbrew pozorom nie tak często, a jak już jest potrzebne, to łatwo zastąpić czymś innym: - pamięcią zewnętrzną (chip, karta SD, ...) jeśli i tak jest na płytce, - pamięć podtrzymywana...

    Mikrokontrolery   11 Sty 2017 21:51 Odpowiedzi: 165    Wyświetleń: 10005
  • Zmienne globalne wykorzystywane przez przerwania i inne.

    Chyba zaczyna się ujawniać wyższość procesorów o możliwie długim słowie danych - nawet operacje 32 bitowe będą atomowe. Nie będą niestety o ile operacja RMW będzie realizowana przez kilka rozkazów, które mogą być przerwane. Będzie natomiast w systemie, który będzie modyfikować pamięć jednym rozkazem, który nie może być przerwany (a często mogą być...

    Mikrokontrolery Początkujący   28 Kwi 2021 13:48 Odpowiedzi: 47    Wyświetleń: 2841
  • [C] - Jak przypisać zmiennej określony adres fizyczny?

    Pamięć BKP_SRAM w kontrolerach STM32F4xx zaczyna się od adresu fizycznego 0x40024000. Jak przypisać zmiennym które muszą się w tym obszarze mieścić adresy fizyczne? np. takie cos nie działa: [syntax=c] #define BKP_SRAM_BASE 0x40024000 uint32_t zmienna; void main(void) { &zmienna = BKP_SRAM_BASE; --- -- - [/syntax]

    Programowanie   09 Sty 2015 09:48 Odpowiedzi: 10    Wyświetleń: 1599
  • Jak umieścić tablicę unsigned char w pamięci Flash STM32 w Keil?

    Witam! Chciałem umieścić stałe w pamięci flash ale coś mi nie wychodzi. [syntax=c] // Funkcja wykorzystująca stałe uint8_t Search(const char data[]); [/syntax] Przy wywołaniu funkcji w kilkunastu miejscach w programie w taki sposób: [syntax=c] Search("OK\r\n"); [/syntax] Zajętość flash=47428 i ram=10760 Po zmianach: [syntax=c] const char(* const AT_OK)[]...

    Mikrokontrolery ARM   11 Cze 2014 18:34 Odpowiedzi: 28    Wyświetleń: 5419
  • Duży kod wynikowy przy pustej funkcji main w STM32F103 na Linuxie - czy to normalne?

    Po prostu przechodzę z avr a tam przy pustej main bylo nieco ponad 100 bajtów. Bez sensu to Twoje porównanie. To przecież dwa różne światy. Sama tablica wektorów przerwań w F103 to 200bajtów (ok. 50 wektorów * 32 bitowy adres). Plus inicjalizacja rejestrów i samego C, plus ustawienie zegara. Wychodzi 1k, jest bardzo dobrze. Nie ma się co tym przejmować,...

    Mikrokontrolery ARM   12 Mar 2017 10:05 Odpowiedzi: 14    Wyświetleń: 1239